diff options
Diffstat (limited to 'test/schemas/derivation-ok-restriction-2-1-1_0.xsd')
-rw-r--r-- | test/schemas/derivation-ok-restriction-2-1-1_0.xsd | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/test/schemas/derivation-ok-restriction-2-1-1_0.xsd b/test/schemas/derivation-ok-restriction-2-1-1_0.xsd new file mode 100644 index 0000000..e91fe43 --- /dev/null +++ b/test/schemas/derivation-ok-restriction-2-1-1_0.xsd @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns="http://FOO" targetNamespace="http://FOO"> + + <xs:element name="foo"> + <xs:complexType> + <xs:complexContent> + <xs:restriction base="typeA"> + <xs:attribute name="barA_1" type="xs:string" use="optional"/> + <!-- OK --> + <xs:attribute name="barA_2" type="xs:string" use="required"/> + <!-- OK --> + <xs:attribute name="barA_3" type="xs:string" use="prohibited"/> + <!-- OK --> + + <xs:attribute name="barB_1" type="xs:string" use="optional"/> + <!-- 2.1.1 inconsistent ( OR 3 ) --> + <xs:attribute name="barB_2" type="xs:string" use="required"/> + <!-- OK --> + <xs:attribute name="barB_3" type="xs:string" use="prohibited"/> + <!-- 3 --> + + <xs:attribute name="barC_1" type="xs:string" use="optional"/> + <!-- 2.2 no match in base --> + <xs:attribute name="barC_2" type="xs:string" use="required"/> + <!-- 2.2 no match in base --> + <xs:attribute name="barC_3" type="xs:string" use="prohibited"/> + <!-- OK --> + + <xs:attribute name="barD_1" type="xs:string" use="optional"/> + <!-- 2.2 no match in base --> + <xs:attribute name="barD_2" type="xs:string" use="required"/> + <!-- 2.2 no match in base --> + <xs:attribute name="barD_3" type="xs:string" use="prohibited"/> + <!-- OK --> + + </xs:restriction> + </xs:complexContent> + </xs:complexType> + </xs:element> + + <xs:complexType name="typeA"> + <xs:attribute name="barA_1" type="xs:string" use="optional"/> + <xs:attribute name="barA_2" type="xs:string" use="optional"/> + <xs:attribute name="barA_3" type="xs:string" use="optional"/> + <xs:attribute name="barB_1" type="xs:string" use="required"/> + <xs:attribute name="barB_2" type="xs:string" use="required"/> + <xs:attribute name="barB_3" type="xs:string" use="required"/> + <xs:attribute name="barC_1" type="xs:string" use="prohibited"/> + <xs:attribute name="barC_2" type="xs:string" use="prohibited"/> + <xs:attribute name="barC_3" type="xs:string" use="prohibited"/> + </xs:complexType> + +</xs:schema> + + |