blob: 0d5c85447879fd3f2ac1a743c895b67768c8f486 [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<!--
November 14, 2002
(c) Copyright 2002, The Web Services-Interoperability Organization (WS-I)
Download or use of this file is governed by the Policies and Bylaws of WS-I.
For more information, send email info@ws-i.org.
-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
xmlns:tns="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/RetailOrder.xsd"
targetNamespace="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/RetailOrder.xsd">
<xsd:annotation>
<xsd:documentation xml:lang="en">Definition of PartsOrder types for Retailer component of WS-I</xsd:documentation>
</xsd:annotation>
<xsd:complexType name="PartsOrderType">
<xsd:sequence>
<xsd:element name="Item" type="tns:PartsOrderItem" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PartsOrderItem">
<xsd:sequence>
<xsd:element name="productNumber" type="tns:productNumber" minOccurs="1" maxOccurs="1"/>
<xsd:element name="quantity" type="xsd:nonNegativeInteger" minOccurs="1" maxOccurs="1"/>
<xsd:element name="price" type="xsd:decimal" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PartsOrderResponseType">
<xsd:sequence>
<xsd:element name="Item" type="tns:PartsOrderResponseItem" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PartsOrderResponseItem">
<xsd:sequence>
<xsd:element name="productNumber" type="tns:productNumber" minOccurs="1" maxOccurs="1"/>
<xsd:element name="quantity" type="xsd:nonNegativeInteger" minOccurs="1" maxOccurs="1"/>
<xsd:element name="price" type="xsd:decimal" minOccurs="1" maxOccurs="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="CustomerDetailsType">
<xsd:sequence>
<xsd:element name="custnbr" type="tns:CustomerReferenceType" minOccurs="1" maxOccurs="1"/>
<xsd:element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="street1" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="street2" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="city" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="state" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="zip" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="country" type="xsd:string" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="productNumber">
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="999999"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="CustomerReferenceType">
<xsd:restriction base="xsd:normalizedString">
<xsd:maxLength value="20"/>
<xsd:pattern value="[A-D][0-9]{5}-[0-9A-Z]{7}-[a-z]{3}#*"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:element name="InvalidProductCode" type="tns:InvalidProductCodeType"/>
<xsd:complexType name="InvalidProductCodeType">
<xsd:sequence>
<xsd:element name="Reason">
<xsd:simpleType>
<xsd:restriction base="xsd:NMTOKEN">
<xsd:enumeration value="InvalidProductCode"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ProductNumber" type="tns:productNumber" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="BadOrderReason" type="xsd:string"/>
</xsd:schema>