<?xml version="1.0" encoding="utf-8"?>
<xsd:schema id="OrderStatus_Types" targetNamespace="urn:ws-xwebservices-com:XWebTD:v1:OrderStatus:Types"
	elementFormDefault="qualified" xmlns="urn:ws-xwebservices-com:XWebTD:v1:OrderStatus:Types"
	xmlns:mstns="urn:ws-xwebservices-com:XWebTD:v1:OrderStatus:Types" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	
	<!-- Request OrderStatus Type -->
    <xsd:complexType name="RequestOrderStatusType">
        <xsd:all minOccurs="1" maxOccurs="1">
            <xsd:element name="Header" type="RequestHeaderType" />
            <xsd:element name="Detail" type="RequestDetailType" />
            <xsd:element name="Summary" type="RequestSummaryType" />
        </xsd:all>
    </xsd:complexType>
    
    <!-- Request Header Type -->
    <xsd:complexType name="RequestHeaderType">
        <xsd:all minOccurs="1" maxOccurs="1">
            <xsd:element name="TransControlID">
                <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                        <xsd:minLength value="1" />
                        <xsd:maxLength value="100" />
                    </xsd:restriction>
                </xsd:simpleType>
            </xsd:element>
        </xsd:all>
    </xsd:complexType>
    
    <!-- Request Detail Type -->
    <xsd:complexType name="RequestDetailType">
        <xsd:sequence>
            <xsd:element name="PurposeCode" minOccurs="1" maxOccurs="1">
                <xsd:simpleType>
                    <xsd:restriction base="xsd:integer">
                        <xsd:enumeration value="01" />
                        <!-- PO Status List -->
                        <xsd:enumeration value="02" />
                        <!-- Order/Invoice List -->
                        <xsd:enumeration value="03" />
                        <!-- Ship Detail -->
                    </xsd:restriction>
                </xsd:simpleType>
            </xsd:element>
            <xsd:element name="EDIInd" minOccurs="1" maxOccurs="1">
                <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                        <xsd:enumeration value="Y" />
                        <!-- Only include EDI orders in the Order Status response message -->
                        <xsd:enumeration value="N" />
                        <!-- Only include non-EDI orders in the Order Status response message -->
                    </xsd:restriction>
                </xsd:simpleType>
            </xsd:element>
            <xsd:element name="NonEDIInd" minOccurs="1" maxOccurs="1">
                <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                        <xsd:enumeration value="Y" />
                        <!-- Only include EDI orders in the Order Status response message -->
                        <xsd:enumeration value="N" />
                        <!-- Only include non-EDI orders in the Order Status response message -->
                    </xsd:restriction>
                </xsd:simpleType>
            </xsd:element>
            <xsd:element name="RefInfo" minOccurs="1" maxOccurs="unbounded" type="RequestRefInfoType" />
            <xsd:element name="DateInfo" minOccurs="0" maxOccurs="1" type="RequestDateInfoType" />
        </xsd:sequence>
    </xsd:complexType>
    
    <!-- Request RefInfo Type -->
    <xsd:complexType name="RequestRefInfoType">
        <xsd:all minOccurs="1" maxOccurs="1">
            <xsd:element name="RefIDQual">
                <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                        <xsd:enumeration value="ON" />
                        <!--  Tech Data assigned sales order number -->
                        <xsd:enumeration value="PO" />
                        <!--  Customer assigned Purchase Order number -->
                        <xsd:enumeration value="IN" />
                        <!-- Tech Data assigned invoice number -->
                    </xsd:restriction>
                </xsd:simpleType>
            </xsd:element>
            <xsd:element name="RefID">
                <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                        <xsd:minLength value="1" />
                        <xsd:maxLength value="25" />
                    </xsd:restriction>
                </xsd:simpleType>
            </xsd:element>
        </xsd:all>
    </xsd:complexType>
    
    <!-- Request DateInfo Type -->
    <xsd:complexType name="RequestDateInfoType">
        <xsd:all minOccurs="0" maxOccurs="1">
            <xsd:element name="DateTimeQual">
                <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                        <xsd:minLength value="0" />
                        <xsd:maxLength value="10" />
                    </xsd:restriction>
                </xsd:simpleType>
            </xsd:element>
            <xsd:element name="DateFrom">
				<xsd:simpleType>
					<xsd:restriction base="xsd:token">
						<xsd:pattern value="[0-1]?[0-9]/[0-3]?[0-9]/[0-9][0-9][0-9][0-9]" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="DateTo">
				<xsd:simpleType>
					<xsd:restriction base="xsd:token">
						<xsd:pattern value="[0-1]?[0-9]/[0-3]?[0-9]/[0-9][0-9][0-9][0-9]" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
        </xsd:all>
    </xsd:complexType>
    
    <!-- Request Summary Type -->
    <xsd:complexType name="RequestSummaryType">
        <xsd:all>
            <xsd:element name="NbrOfSegments" minOccurs="1" maxOccurs="1">
                <xsd:simpleType>
                    <xsd:restriction base="xsd:integer">
                        <xsd:totalDigits value="9" />
                    </xsd:restriction>
                </xsd:simpleType>
            </xsd:element>
        </xsd:all>
    </xsd:complexType>
    
    	<!-- Response OrderStatus Type -->
	<xsd:complexType name="ResponseOrderStatusType">
		<xsd:sequence>
			<xsd:element name="Header" type="ResponseHeaderType" minOccurs="1" maxOccurs="1" />
			<xsd:element name="Detail" type="ResponseOrderStatusDetailType" minOccurs="0" maxOccurs="unbounded" />
			<xsd:element name="Summary" type="ResponseOrderStatusSummaryType" minOccurs="1" maxOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	
	<!-- Response OrderStatus Header Type  -->
	<xsd:complexType name="ResponseHeaderType">
		<xsd:all minOccurs="1" maxOccurs="1">
			<xsd:element name="TransControlID">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="100" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:all>
	</xsd:complexType>
	
	<!-- Response OrderStatus Detail Type  -->
	<xsd:complexType name="ResponseOrderStatusDetailType">
		<xsd:sequence>
			<xsd:element name="PurposeCode" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="01" />
						<!-- PO Status List -->
						<xsd:enumeration value="02" />
						<!-- Order/Invoice List -->
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="RefInfo" type="ResponseRefInfoType" minOccurs="0" maxOccurs="unbounded" />
			<xsd:element name="ErrorInfo" type="ResponseErrorInfoType" minOccurs="0" maxOccurs="unbounded" />
			<xsd:element name="OrderStatus" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<!-- the order has been entered into Tech Data's system, but requires attention before it can be released to a distribution center for fulfillment -->
						<xsd:enumeration value="ON-HOLD" />
						<!-- the order has been entered into Tech Data's system and no Holds are currently assigned. The order has not yet been released to a distribution center for fulfillment -->
						<xsd:enumeration value="OPEN" />
						<!-- the order has been canceled -->
						<xsd:enumeration value="CANCELED" />
						<!-- the order has been released to a logistic center and has begun the fulfillment process -->
						<xsd:enumeration value="WHSE RLSE" />
						<!-- the order has been released to a logistic center - fulfillment pending -->
						<xsd:enumeration value="HOLD RLSE" />
						<!-- some but not all the order lines of the order have been shipped by Tech Data's logistics centers -->
						<xsd:enumeration value="PARTIAL" />
						<!-- the order has been shipped and a bill generated -->
						<xsd:enumeration value="INVOICED" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Terms" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="30" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="CurrencyType" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="USD" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipmentDispQual" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="SC" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipmentDisp" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Y" />
						<xsd:enumeration value="N" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="PackageDispQual" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="BS" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="PackageDisp" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Y" />
						<xsd:enumeration value="N" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="BillToAcctNbr" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="9" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToName" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToAddr1" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToAddr2" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToAddr3" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToCity" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="12" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToStateProv" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="2" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToPostalCode" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="9" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ContactName" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="InvoiceTotal" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="StateFee" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="EstimatedShipDate" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:token">
						<xsd:pattern value="[0-1]?[0-9]/[0-3]?[0-9]/[0-9][0-9][0-9][0-9]" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="LineInfo" type="ResponseLineInfoType" minOccurs="1" maxOccurs="unbounded" />
			<xsd:element name="NbrOfOrderLines" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="3" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	
	<!-- Response RefInfo Type -->
	<xsd:complexType name="ResponseRefInfoType">
		<xsd:all minOccurs="1" maxOccurs="1">
			<xsd:element name="RefIDQual">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="ON" />
						<!--  Tech Data assigned sales order number -->
						<xsd:enumeration value="PO" />
						<!--  Customer assigned Purchase Order number -->
						<xsd:enumeration value="IN" />
						<!-- Tech Data assigned invoice number -->
						<xsd:enumeration value="QT" />
						<!-- Tech Data assigned quote number (only orders included manually based on a call or fax will include a quote number)-->
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="RefID">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:all>
	</xsd:complexType>
	
	<!-- Response ErrorInfo Type -->
	<xsd:complexType name="ResponseErrorInfoType">
		<xsd:all minOccurs="1" maxOccurs="1">
			<xsd:element name="ErrorInfoIDQual" nillable="true">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="1Q" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ErrorID" nillable="true">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer" />
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ErrorDesc">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="250" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:all>
	</xsd:complexType>
	
	<!-- Response LineInfo Type -->
	<xsd:complexType name="ResponseLineInfoType">
		<xsd:all minOccurs="1" maxOccurs="1">
			<xsd:element name="AssignedID">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="100" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductIDQual" nillable="true">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="VP" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductID">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="20" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductIDQual2" nillable="true">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="MG" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductID2">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="20" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductDesc">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="50" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="LineStatus" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<!-- the order has been entered into Tech Data's system, but requires attention before it can be released to a distribution center for fulfillment -->
						<xsd:enumeration value="ON-HOLD" />
						<!-- the order has been entered into Tech Data's system and no Holds are currently assigned. The order has not yet been released to a distribution center for fulfillment -->
						<xsd:enumeration value="OPEN" />
						<!-- the order has been canceled -->
						<xsd:enumeration value="CANCELED" />
						<!-- the line item has been released to a logistic center and has begun the fulfillment process -->
						<xsd:enumeration value="RELEASED" />
						<!-- some but not all the order lines of the order have been shipped by Tech Data's logistics centers -->
						<xsd:enumeration value="PARTIAL" />
						<!-- the line item has been shipped and a bill generated -->
						<xsd:enumeration value="INVOICED" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="UnitPrice">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ExtendedPrice">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="WhseDesc">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="30" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipViaDesc">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="QtyOrdered" nillable="true">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="4" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="QtyShipped" nillable="true">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="4" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="QtyBackordered" nillable="true">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="4" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="QtyReturned" nillable="true">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="4" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="DateShipped" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:token">
						<xsd:pattern value="[0-1]?[0-9]/[0-3]?[0-9]/[0-9][0-9][0-9][0-9]" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ItemEstimatedShipDate" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:token">
						<xsd:pattern value="[0-1]?[0-9]/[0-3]?[0-9]/[0-9][0-9][0-9][0-9]" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:all>
	</xsd:complexType>
	
	<!-- Response Summary Type -->
	<xsd:complexType name="ResponseOrderStatusSummaryType">
		<xsd:all>
			<xsd:element name="NbrOfSegments" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="9" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:all>
	</xsd:complexType>
	
	<!-- Response ShipmentStatus Type -->
	<xsd:complexType name="ResponseShipmentStatusType">
		<xsd:all minOccurs="1" maxOccurs="1">
			<xsd:element name="Header" type="ResponseHeaderType" />
			<xsd:element name="Detail" type="ResponseShipmentStatusDetailType" />
			<xsd:element name="Summary" type="ResponseShipmentStatusSummaryType" />
		</xsd:all>
	</xsd:complexType>
	
	<!-- Response ShipmentStatus Detail Type -->
	<xsd:complexType name="ResponseShipmentStatusDetailType">
		<xsd:sequence>
			<xsd:element name="PurposeCode" nillable="true" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="03" />
						<!-- Ship Detail -->
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="RefInfo" type="ResponseRefInfoType" minOccurs="1" maxOccurs="3" />
			<xsd:element name="ErrorInfo" type="ResponseErrorInfoType" minOccurs="0" maxOccurs="unbounded" />
			<xsd:element name="ContainerInfo" type="ResponseContainerInfoType" minOccurs="1" maxOccurs="unbounded" />
		</xsd:sequence>
	</xsd:complexType>
	
	<!-- Response ShipmentStatus ContainerInfo Type -->
	<xsd:complexType name="ResponseContainerInfoType">
		<xsd:sequence>
			<xsd:element name="ContainerID" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="18" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToName" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToAddr1" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToAddr2" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToAddr3" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="25" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToCity" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="12" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToStateProv" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="2" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipToPostalCode" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="9" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="DateShipped" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:token">
						<xsd:pattern value="[0-1]?[0-9]/[0-3]?[0-9]/[0-9][0-9][0-9][0-9]" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="DateInvoiced" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:token">
						<xsd:pattern value="[0-1]?[0-9]/[0-3]?[0-9]/[0-9][0-9][0-9][0-9]" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Weight" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="8" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="WhseDesc" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="30" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipVia" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="100" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ContainerValue" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="HandlingCharge" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="CODCharge" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="DebitCredit" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="NetFreightCharge" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="TaxCharge" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="TotalOrderValue" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ItemInfo" nillable="true" type="ResponseItemInfoType" minOccurs="1" maxOccurs="unbounded" />
			<xsd:element name="NbrOfItems" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="4" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	
	<!-- Response ItemInfo Type -->
	<xsd:complexType name="ResponseItemInfoType">
		<xsd:sequence>
			<xsd:element name="IIAssignedID" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1" />
						<xsd:maxLength value="100" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="AssignedID" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="100" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductIDQual" nillable="true" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="VP" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductID" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="20" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductIDQual2" nillable="true" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="MG" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductID2" minOccurs="0" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="20" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProductDesc" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0" />
						<xsd:maxLength value="50" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="QtyShipped" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="4" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="SerialInd" nillable="true" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Y" />
						<xsd:enumeration value="N" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="SerialInfo" nillable="true" minOccurs="0" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:all minOccurs="1" maxOccurs="1">
						<xsd:element name="SerialNbr">
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
									<xsd:minLength value="1" />
									<xsd:maxLength value="20" />
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
					</xsd:all>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	
	<!-- Response ShipmentStatus Summary Type -->
	<xsd:complexType name="ResponseShipmentStatusSummaryType">
		<xsd:all>
			<xsd:element name="NbrOfContainers" nillable="true" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="4" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="NbrOfSegments" minOccurs="1" maxOccurs="1">
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:totalDigits value="9" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:all>
	</xsd:complexType>
	
</xsd:schema>
