libxml2 2.9.1 clean sources
[tomato.git] / release / src / router / libxml2 / test / schemas / item_1.xsd
blob3cf966e47b5789d08482849214ce2a6b372827ae
1 <?xml version="1.0"?>
2 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
3 <xsd:element name="comment" type="xsd:string"/>
4 <!-- Stock Keeping Unit, a code for identifying products -->
5 <xsd:simpleType name="SKU">
6 <xsd:restriction base="xsd:string">
7 <xsd:pattern value="\d{3}-[A-Z]{2}"/>
8 </xsd:restriction>
9 </xsd:simpleType>
10 <xsd:element name="Item">
11 <xsd:complexType>
12 <xsd:sequence>
13 <xsd:element name="productName" type="xsd:string"/>
14 <xsd:element name="quantity">
15 <xsd:simpleType>
16 <xsd:restriction base="xsd:positiveInteger">
17 <xsd:maxExclusive value="100"/>
18 </xsd:restriction>
19 </xsd:simpleType>
20 </xsd:element>
21 <xsd:element name="USPrice" type="xsd:decimal"/>
22 <xsd:element ref="comment" minOccurs="0"/>
23 <xsd:element name="shipDate" type="xsd:date" minOccurs="0"/>
24 </xsd:sequence>
25 <!-- attributeGroup replaces individual declarations -->
26 <xsd:attributeGroup ref="ItemDelivery"/>
27 </xsd:complexType>
28 </xsd:element>
29 <xsd:attributeGroup name="ItemDelivery">
30 <xsd:attribute name="partNum" type="SKU" use="required"/>
31 <xsd:attribute name="weightKg" type="xsd:decimal"/>
32 <xsd:attribute name="shipBy">
33 <xsd:simpleType>
34 <xsd:restriction base="xsd:string">
35 <xsd:enumeration value="air"/>
36 <xsd:enumeration value="land"/>
37 <xsd:enumeration value="any"/>
38 </xsd:restriction>
39 </xsd:simpleType>
40 </xsd:attribute>
41 </xsd:attributeGroup>
42 </xsd:schema>