blob: 369107f9287ed0074cbbcb9ee964c3cfe5108d0c [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.ibm.com"
xmlns:po="http://www.ibm.com">
<annotation>
<documentation xml:lang="en">
Purchase order schema example from XML Schema Part 0: Primer
Copyright 2001, IBM Corp. All Rights reserved.
Copyright 2001, World Wide Web Consortium
(Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University).
All Rights Reserved.
</documentation>
</annotation>
<element name="purchaseOrder" type="po:PurchaseOrderType"></element>
<element name="comment" type="string"></element>
<complexType name="PurchaseOrderType">
<sequence>
<element name="shipTo" type="po:USAddress"></element>
<element name="billTo" type="po:USAddress"></element>
<element ref="po:comment" minOccurs="0"></element>
<element name="items" type="po:Items"></element>
</sequence>
<attribute name="orderDate" type="date"></attribute>
</complexType>
<complexType name="USAddress">
<sequence>
<element name="name" type="string"></element>
<element name="street" type="string"></element>
<element name="city" type="string"></element>
<element name="state" type="string"></element>
<element name="zip" type="decimal"></element>
</sequence>
<attribute name="country" type="NMTOKEN" fixed="US"></attribute>
</complexType>
<complexType name="Items">
<sequence>
<element name="item" minOccurs="0" maxOccurs="unbounded">
<complexType>
<sequence>
<element name="productName" type="string"></element>
<element name="quantity">
<simpleType>
<restriction base="positiveInteger">
<maxExclusive value="100"></maxExclusive>
</restriction>
</simpleType>
</element>
<element name="USPrice" type="decimal"></element>
<element ref="po:comment" minOccurs="0"></element>
<element name="shipDate" type="date" minOccurs="0"></element>
</sequence>
<attribute name="partNum" type="po:SKU" use="required"></attribute>
</complexType>
</element>
</sequence>
</complexType>
<simpleType name="SKU">
<restriction base="string">
<pattern value="\d{3}-[A-Z]{2}"></pattern>
</restriction>
</simpleType>
</schema>