| <xs:schema |
| xmlns:xs="http://www.w3.org/2001/XMLSchema" |
| xmlns:po="http://openuri.org/easypo" |
| targetNamespace="http://openuri.org/easypo" |
| elementFormDefault="qualified"> |
| |
| <xs:element name="purchase-order"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="customer" type="po:customer"/> |
| <xs:element name="date" type="xs:dateTime"/> |
| <xs:element name="line-item" type="po:line-item" minOccurs="0" maxOccurs="unbounded"/> |
| <xs:element name="shipper" type="po:shipper" minOccurs="0" maxOccurs="1"/> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:element> |
| |
| <xs:complexType name="customer"> |
| <xs:sequence> |
| <xs:element name="name" type="xs:string"/> |
| <xs:element name="address" type="xs:string"/> |
| </xs:sequence> |
| <xs:attribute name="age" type="xs:int"/> |
| <xs:attribute name="moo" type="xs:int" default="100"/> |
| <xs:attribute name="poo" type="xs:int" fixed="200"/> |
| </xs:complexType> |
| |
| <xs:complexType name="line-item"> |
| <xs:sequence> |
| <xs:element name="description" type="xs:string"/> |
| <xs:element name="per-unit-ounces" type="xs:decimal"/> |
| <xs:element name="price" type="xs:decimal"/> |
| <xs:element name="quantity" type="xs:integer"/> |
| </xs:sequence> |
| </xs:complexType> |
| |
| <xs:complexType name="shipper"> |
| <xs:sequence> |
| <xs:element name="name" type="xs:string"/> |
| <xs:element name="per-ounce-rate" type="xs:decimal"/> |
| </xs:sequence> |
| </xs:complexType> |
| |
| </xs:schema> |