| <schema targetNamespace="http://www.example.com/IPO" |
| xmlns="http://www.w3.org/2001/XMLSchema" |
| xmlns:ipo="http://www.example.com/IPO" |
| elementFormDefault="qualified"> |
| |
| <annotation> |
| <documentation xml:lang="en"> |
| Addresses for International Purchase order schema |
| Copyright 2000 Example.com. All rights reserved. |
| </documentation> |
| </annotation> |
| |
| <complexType name="Address"> |
| <sequence> |
| <element name="name" type="string"/> |
| <element name="street" type="string"/> |
| <element name="city" type="string"/> |
| </sequence> |
| </complexType> |
| |
| <complexType name="USAddress"> |
| <complexContent> |
| <extension base="ipo:Address"> |
| <sequence> |
| <element name="state" type="ipo:USState"/> |
| <element name="zip" type="positiveInteger"/> |
| </sequence> |
| </extension> |
| </complexContent> |
| </complexType> |
| |
| <complexType name="UKAddress"> |
| <complexContent> |
| <extension base="ipo:Address"> |
| <sequence> |
| <element name="postcode" type="ipo:UKPostcode"/> |
| </sequence> |
| <attribute name="exportCode" type="positiveInteger" fixed="1"/> |
| </extension> |
| </complexContent> |
| </complexType> |
| |
| <!-- other Address derivations for more countries --> |
| |
| <simpleType name="USState"> |
| <restriction base="string"> |
| <enumeration value="AK"/> |
| <enumeration value="AL"/> |
| <enumeration value="AR"/> |
| <enumeration value="PA"/> |
| |
| <!-- and so on ... --> |
| </restriction> |
| </simpleType> |
| |
| <!-- simple type definition for UKPostcode --> |
| <simpleType name="UKPostcode"> |
| <restriction base="string"> |
| <pattern value="[A-Z]{2}\d\s\d[A-Z]{2}"/> |
| </restriction> |
| </simpleType> |
| |
| </schema> |
| |