1<?xml version="1.0" encoding="ISO-8859-1"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
3	xmlns="http://FOO" targetNamespace="http://FOO">
4
5	<xs:element name="foo">
6		<xs:complexType>
7			<xs:complexContent>
8				<xs:restriction base="typeA">
9					<xs:attribute name="barA_1" type="xs:string"  use="optional"/>
10					<!-- OK -->								
11					<xs:attribute name="barA_2" type="xs:string"  use="required"/>
12					<!-- OK -->									
13					<xs:attribute name="barA_3" type="xs:string"  use="prohibited"/>
14					<!-- OK -->	
15
16					<xs:attribute name="barB_1" type="xs:string"  use="optional"/>		
17					<!-- 2.1.1 inconsistent ( OR 3 ) -->							
18					<xs:attribute name="barB_2" type="xs:string"  use="required"/>
19					<!-- OK -->	
20					<xs:attribute name="barB_3" type="xs:string"  use="prohibited"/>
21					<!-- 3 -->									
22
23					<xs:attribute name="barC_1" type="xs:string"  use="optional"/>
24					<!-- 2.2  no match in base -->								
25					<xs:attribute name="barC_2" type="xs:string"  use="required"/>	
26					<!-- 2.2  no match in base -->				
27					<xs:attribute name="barC_3" type="xs:string"  use="prohibited"/>
28					<!-- OK -->	
29
30					<xs:attribute name="barD_1" type="xs:string"  use="optional"/>
31					<!-- 2.2  no match in base -->	
32					<xs:attribute name="barD_2" type="xs:string"  use="required"/>
33					<!-- 2.2  no match in base -->	
34					<xs:attribute name="barD_3" type="xs:string"  use="prohibited"/>
35					<!-- OK -->	
36
37				</xs:restriction>
38			</xs:complexContent>
39		</xs:complexType>
40	</xs:element>
41
42	<xs:complexType name="typeA">
43		<xs:attribute name="barA_1" type="xs:string" use="optional"/>			
44		<xs:attribute name="barA_2" type="xs:string" use="optional"/>			
45		<xs:attribute name="barA_3" type="xs:string" use="optional"/>	
46		<xs:attribute name="barB_1" type="xs:string" use="required"/>		
47		<xs:attribute name="barB_2" type="xs:string" use="required"/>		
48		<xs:attribute name="barB_3" type="xs:string" use="required"/>			
49		<xs:attribute name="barC_1" type="xs:string" use="prohibited"/>	
50		<xs:attribute name="barC_2" type="xs:string" use="prohibited"/>	
51		<xs:attribute name="barC_3" type="xs:string" use="prohibited"/> 
52	</xs:complexType>
53
54</xs:schema>
55
56
57