<?xml version="1.0" encoding="UTF-8"?>

<!-- Revision="$Revision: #6 $" -->

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tnt="urn:schemas:tnt" targetNamespace="urn:schemas:tnt" elementFormDefault="qualified">

    <!--
        $Date: 2007/01/18 $

        AMAZON.COM CONFIDENTIAL.  This document and the information contained in it are
        confidential and proprietary information of Amazon.com and may not be reproduced,
        distributed or used, in whole or in part, for any purpose other than as necessary
        to list products for sale on the www.amazon.com web site pursuant to an agreement
        with Amazon.com.
        -->

    <xsd:include schemaLocation="amzn-base.xsd"/>
    <xsd:include schemaLocation="amzn-header.xsd"/>
    <xsd:include schemaLocation="FulfillmentCenter.xsd"/>
    <xsd:include schemaLocation="Inventory.xsd"/>
    <xsd:include schemaLocation="Listings.xsd"/>
    <xsd:include schemaLocation="OrderAcknowledgement.xsd"/>
    <xsd:include schemaLocation="OrderAdjustment.xsd"/>
    <xsd:include schemaLocation="OrderFulfillment.xsd"/>
    <xsd:include schemaLocation="Override.xsd"/>
    <xsd:include schemaLocation="Price.xsd"/>
    <xsd:include schemaLocation="ProcessingReport.xsd"/>
    <xsd:include schemaLocation="ProductImage.xsd"/>
    <xsd:include schemaLocation="Product.xsd"/>
    <xsd:include schemaLocation="Relationship.xsd"/>
    <xsd:include schemaLocation="SettlementReport.xsd"/>
    
    <xsd:simpleType name="MessageOpType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="FulfillmentCenter"/>
            <xsd:enumeration value="Inventory"/>
            <xsd:enumeration value="Listings"/>
            <xsd:enumeration value="OrderAcknowledgement"/>
            <xsd:enumeration value="OrderAdjustment"/>
            <xsd:enumeration value="OrderFulfillment"/>
            <xsd:enumeration value="Override"/>
            <xsd:enumeration value="Price"/>
            <xsd:enumeration value="ProcessingReport"/>
            <xsd:enumeration value="Product"/>
            <xsd:enumeration value="ProductImage"/>
            <xsd:enumeration value="Relationship"/>
            <xsd:enumeration value="SettlementReport"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="UpdateOperationType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="Update"/>
            <xsd:enumeration value="Delete"/>
            <xsd:enumeration value="PartialUpdate"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:complexType name="MessageBodyType">
        <xsd:sequence>
            <xsd:element name="MessageID" type="tnt:IDNumber"/>
            <xsd:element name="OperationType" type="tnt:UpdateOperationType" minOccurs="0"/>
            <xsd:choice>
                <xsd:element ref="tnt:FulfillmentCenter"/>
                <xsd:element ref="tnt:Inventory"/>
                <xsd:element ref="tnt:Listings"/>
                <xsd:element ref="tnt:OrderAcknowledgement"/>
                <xsd:element ref="tnt:OrderAdjustment"/>
                <xsd:element ref="tnt:OrderFulfillment"/>
                <xsd:element ref="tnt:Override"/>
                <xsd:element ref="tnt:Price"/>
                <xsd:element ref="tnt:ProcessingReport"/>
                <xsd:element ref="tnt:Product"/>
                <xsd:element ref="tnt:ProductImage"/>
                <xsd:element ref="tnt:Relationship"/>
                <xsd:element ref="tnt:SettlementReport"/>
             </xsd:choice>
         </xsd:sequence>
     </xsd:complexType>
    
    <xsd:complexType name="AmazonXMLEnvelope">
        <xsd:sequence>
            <xsd:element ref="tnt:Header"/>
            <xsd:element name="MessageType" type="tnt:MessageOpType"/>
            <xsd:element ref="tnt:MarketplaceName" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>
                                            The MarketplaceName is only supported for
                                            Override feeds.
                                            If included here, the MarketplaceName will
                                            apply to all messages in the feed.
                    </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="PurgeAndReplace" type="xsd:boolean" minOccurs="0"/>
            <xsd:element name="EffectiveDate" type="xsd:dateTime" minOccurs="0"/>
            <xsd:element name="Message" type="tnt:MessageBodyType" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>
    
   <xsd:element name="AmazonEnvelope" type="tnt:AmazonXMLEnvelope"/>
       
</xsd:schema>
