blob: 91293d43e80361bf8eae5dbb193a1a69c4e14524 [file] [log] [blame] [edit]
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.example.org"
xmlns:sdo="commonj.sdo"
targetNamespace="http://www.example.org"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xsd:element name="corporation" type="CorporationType"/>
<xsd:complexType name="CorporationType">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="stock" type="StockType" maxOccurs="unbounded"/>
<xsd:element name="development" type="DivisionType"/>
<xsd:element name="sales" type="DivisionType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DivisionType">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="purchaseOrder" type="PurchaseOrderType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="employee" type="EmployeeType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="StockType">
<xsd:sequence>
<xsd:element name="myChangeSummary" type="sdo:ChangeSummaryType"/>
<xsd:element name="symbol" type="xsd:string"/>
<xsd:element name="exchange" type="xsd:string"/>
<xsd:element name="results" type="ResultsType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ResultsType">
<xsd:sequence>
<xsd:element name="dividend" type="DividendType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DividendType">
<xsd:sequence>
<xsd:element name="cash" type="DividendCashType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DividendCashType">
<xsd:sequence>
<xsd:element name="dollarAmount" type="xsd:string"/>
<xsd:element name="currency" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Yard">
<xsd:sequence>
<xsd:element name="squarefootage" type="xsd:string"/>
<xsd:element name="length" type="xsd:string"/>
<xsd:element name="width" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AddressType">
<xsd:attribute name="country" type="xsd:string"/>
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="street" type="xsd:string"/>
<xsd:element name="city" type="xsd:string"/>
<xsd:element name="state" type="xsd:string"/>
<xsd:element name="zip" type="xsd:string"/>
<xsd:element name="phone" type="PhoneType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="yard" type="Yard"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="LineItemType">
<xsd:attribute name="partNum" type="xsd:string"/>
<xsd:sequence>
<xsd:element name="product" type="ProductType"/>
<xsd:element name="quantity" type="xsd:int"/>
<xsd:element name="shipDate" type="xsd:date"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Items">
<xsd:sequence>
<xsd:element name="item" type="LineItemType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PhoneType">
<xsd:sequence>
<xsd:element name="number" type="pnumber" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ProductType">
<xsd:sequence>
<xsd:element name="productName" type="xsd:string" minOccurs="0"/>
<xsd:element name="price" type="PriceType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PriceType">
<xsd:sequence>
<xsd:element name="dollarAmount" type="xsd:string"/>
<xsd:element name="currency" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="EmployeeType">
<xsd:sequence>
<xsd:element name="id" type="xsd:string" />
<xsd:element name="name" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PurchaseOrderType">
<xsd:sequence>
<xsd:element name="myChangeSummary" type="sdo:ChangeSummaryType"/>
<xsd:element name="poId" type="xsd:string"/>
<xsd:element name="shipTo" type="AddressType"/>
<xsd:element name="billTo" type="AddressType"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="items" type="Items"/>
<xsd:element name="buyer" type="EmployeeType" />
</xsd:sequence>
<xsd:attribute name="orderDate" type="xsd:date"/>
</xsd:complexType>
<xsd:simpleType name="pnumber">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
</xsd:schema>