| <?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> |