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

<xs:schema xmlns:mule="http://www.mulesoft.org/schema/mule/core" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" targetNamespace="http://www.mulesoft.org/schema/mule/fws">
  <xs:import namespace="http://www.w3.org/XML/1998/namespace"></xs:import>
  <xs:import schemaLocation="http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" namespace="http://www.springframework.org/schema/beans"></xs:import>
  <xs:import schemaLocation="http://www.mulesoft.org/schema/mule/core/current/mule.xsd" namespace="http://www.mulesoft.org/schema/mule/core"></xs:import>
  <xs:import schemaLocation="http://www.mulesoft.org/schema/mule/devkit/current/mule-devkit.xsd" namespace="http://www.mulesoft.org/schema/mule/devkit"></xs:import>
  <xs:simpleType name="integerType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:integer"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="decimalType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:decimal"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="floatType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:float"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="doubleType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:double"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="dateTimeType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:dateTime"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="longType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:long"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="byteType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:byte"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="booleanType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:boolean"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="anyUriType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:anyURI"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="charType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"></xs:minLength>
          <xs:maxLength value="1"></xs:maxLength>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:complexType name="XmlType">
    <xs:sequence>
      <xs:any maxOccurs="unbounded" minOccurs="0" processContents="lax"></xs:any>
    </xs:sequence>
    <xs:attribute name="ref" use="optional" type="xs:string">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:element xmlns:devkit="http://www.mulesoft.org/schema/mule/devkit" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="config" substitutionGroup="mule:abstract-extension" devkit:javaClass="org.mule.module.fws.config.FWSCloudConnectorLifecycleAdapter">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mule:abstractExtensionType">
          <xs:annotation>
            <xs:documentation>With Amazon FWS, merchants can directly integrate with the FBA system, allowing
them to automatically process shipments to Amazon and then out to customers. This
functionality is contained in three key APIs: the inbound service, the outbound
service, and the inventory service.
&lt;/p&gt;
&lt;h2&gt;Inbound Service&lt;/h2&gt;
&lt;p&gt;
The inbound service allows merchants to create and send inbound shipments of
inventory to Amazon&amp;#8217;s fulfillment centers.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Create shipments of inventory to Amazon fulfillment centers&lt;/strong&gt;&lt;br&gt;
Our tools make it easy for merchants to ship inventory to Amazon with everything
from label creation to packing slips. Merchants in the U.S. can also take
advantage of Amazon&amp;#8217;s discounted UPS shipping rates.&lt;br&gt;
&lt;br&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Outbound Service&lt;/h2&gt;
&lt;p&gt;
The outbound service allows merchants to use Amazon&amp;#8217;s fulfillment processing
for orders sold on the merchant&amp;#8217;s website or other non-Amazon channels.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Submit fulfillment order/shipment requests&lt;/strong&gt;&lt;br&gt;
By integrating the outbound service API into merchant software, customer orders
are processed in real time, informing Amazon what to ship and where to ship it.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Track and manage shipment requests&lt;/strong&gt;&lt;br&gt;
After orders leave our fulfillment centers, merchants can track shipments and keep
their customers aware of arrival times.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Inventory Service&lt;/h2&gt;
&lt;p&gt;
The inventory service allows merchants to stay up to date on the status of
inventory in Amazon‚Äôs fulfillment centers.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Check Inventory Status&lt;/strong&gt;&lt;br&gt;
Merchants can discover when inventory items change status and get the current
availability status to keep product listing information up to date.&lt;/li&gt;
&lt;/ul&gt;</xs:documentation>
          </xs:annotation>
          <xs:attribute name="name" use="optional" type="xs:string">
            <xs:annotation>
              <xs:documentation>Give a name to this configuration so it can be later referenced by config-ref.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="client-ref" use="optional" type="xs:string">
            <xs:annotation>
              <xs:documentation>The FWSClient. You may change it for mocking purposes</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="accessKey" use="required" type="xs:string">
            <xs:annotation>
              <xs:documentation>The Amazon AWS account public key</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="secretKey" use="required" type="xs:string">
            <xs:annotation>
              <xs:documentation>The Amazon AWS account private key</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-inbound-shipment-items" substitutionGroup="mule:abstract-message-processor" type="DeleteInboundShipmentItemsType">
    <xs:annotation>
      <xs:documentation>Removes items from a pre-existing shipment specified by the ShipmentId.

This operation removes the items
specified in each MerchantSKU parameter from the shipment in their entirety, no matter the quantity.
If the MerchantSKU is not currently a part of the shipment, then that particular line item is ignored, but others are still processed.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteInboundShipmentItemsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="merchantSku" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the msku of the items to delete</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the id of the shipment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-fulfillment-identifier" substitutionGroup="mule:abstract-message-processor" type="GetFulfillmentIdentifierType">
    <xs:annotation>
      <xs:documentation>Gets the Fulfillment Network SKU (FNSKU) for the supplied merchant item - creating it if needed.

This operation is  idempotent in that it can be called multiple times without any adverse effects. This operation is required whenever you need to register items
for Amazon fulfillment that require labeling and when you need to get the identifier prior to creating an offer. This operation is necessary to register items for Amazon
fulfillment in order to send them to Amazon, but does not do the work of marking any offer for this item as Amazon fulfilled.
A response does not imply that the item has an offer for which it can be fulfilled; only that the Amazon Fulfillment Network can track it. An inactive item can have a
quantity in the fulfillment center, but will never be fulfilled.
Use this operation instead of getFulfillmentIdentifierForMSKU if an offer does not already exist for the MerchantSKU.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetFulfillmentIdentifierType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="asin" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory Aamzon's identifier</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="itemCondition" use="required" type="ItemConditionEnumType">
          <xs:annotation>
            <xs:documentation>the mandatory item's condition</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="merchantSku" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory merchant's sku</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-fulfillment-identifier-for-msku" substitutionGroup="mule:abstract-message-processor" type="GetFulfillmentIdentifierForMskuType">
    <xs:annotation>
      <xs:documentation>Gets the Fulfillment Network SKU (FNSKU) for the supplied merchant item - creating it if needed.

This operation is idempotent in that you can call it multiple times without any adverse effects.
This operation is required whenever you need to register items for Amazon fulfillment that require
labeling. This operation is necessary to register items for Amazon fulfillment in order to send them to Amazon, but doesn't mark any offer for this item as
Amazon fulfilled.
A response does not imply that the item has an offer for which it can be fulfilled; only that the Amazon Fulfillment Network can track it. An inactive item can have a
quantity in the fulfillment center, but will never be fulfilled.
Use this operation instead of GetFulfillmentIdentifier if an offer already exists for the SKU.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetFulfillmentIdentifierForMskuType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="merchantSku" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the merchant's sku</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-fulfillment-item-by-fnsku" substitutionGroup="mule:abstract-message-processor" type="GetFulfillmentItemByFnskuType">
    <xs:annotation>
      <xs:documentation>Gets fulfillment item data for the provided Fulfillment Network SKU (FNSKU). Throws an FWSException if the fnsku is invalid.

A response does not imply that the item has an offer for which it can be fulfilled; only that the Amazon Fulfillment Network
can track it. An inactive item can have a quantity in the fulfillment center, but will never be fulfilled.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetFulfillmentItemByFnskuType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="fulfillmentNetworkSku" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory fulfillment network sku - aka nsku, aka fnsku</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-fulfillment-item-by-msku" substitutionGroup="mule:abstract-message-processor" type="GetFulfillmentItemByMskuType">
    <xs:annotation>
      <xs:documentation>Gets fulfillment item data for the provided Merchant SKU. Throws an FWSException if the msku is invalid.

A response does not imply that the item has an offer for which it can be fulfilled;
only that the Amazon Fulfillment Network can track it. An inactive item can have a quantity in the fulfillment center, but will never be fulfille</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetFulfillmentItemByMskuType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="merchantSku" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory merchant's sku</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-inbound-shipment" substitutionGroup="mule:abstract-message-processor" type="GetInboundShipmentType">
    <xs:annotation>
      <xs:documentation>Gets inbound shipment data without the item details for a given ShipmentId.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetInboundShipmentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipment id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-inbound-shipment-preview" substitutionGroup="mule:abstract-message-processor" type="GetInboundShipmentPreviewType">
    <xs:annotation>
      <xs:documentation>Gets the information needed to create a set of shipments for a given set of items and the ship from address.

You might need to create multiple shipments for various reasons, but the most common reason is when there are sortable and non-sortable items.
In this case, there is one shipment for each of the shipment sets returned.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetInboundShipmentPreviewType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="items" maxOccurs="1" minOccurs="1">
            <xs:annotation>
              <xs:documentation>the mandatory items list of MerchantSkuItems to preview. At least one item is required</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:attribute name="value-ref" use="required" type="xs:string"></xs:attribute>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="address-ref" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory destination address</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="labelPreference" use="optional" type="LabelPreferenceEnumType">
          <xs:annotation>
            <xs:documentation>the optional label preference</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-inbound-service-status" substitutionGroup="mule:abstract-message-processor" type="GetInboundServiceStatusType">
    <xs:annotation>
      <xs:documentation>Answers a brief status message from the service</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetInboundServiceStatusType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="list-fulfillment-items" substitutionGroup="mule:abstract-message-processor" type="ListFulfillmentItemsType">
    <xs:annotation>
      <xs:documentation>Lazily lists fulfillment items registered.

If IncludeInactive is set to True, the operation returns both active (available for fulfillment) and inactive (not available for fulfillment) mappings. This parameter defaults to False. You can use inactive mappings to track inventory in Amazon's fulfillment centers; however, inactive items can't be fulfilled.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListFulfillmentItemsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="includeInactive" default="false" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>optional. Whether non available items for fulfillment should be listed</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="list-inbound-shipment-items" substitutionGroup="mule:abstract-message-processor" type="ListInboundShipmentItemsType">
    <xs:annotation>
      <xs:documentation>Lazily retrieved the all the inbound shipment items for the given shipmentId.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListInboundShipmentItemsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipment's id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="list-inbound-shipments" substitutionGroup="mule:abstract-message-processor" type="ListInboundShipmentsType">
    <xs:annotation>
      <xs:documentation>Lazily lists the inbound shipments a merchant has created, according to the specified query parameters.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListInboundShipmentsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="shipmentStatus" use="required" type="ShipmentStatusEnumType">
          <xs:annotation>
            <xs:documentation>the mandatory status of listed items</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="createdAfter" use="optional" type="dateTimeType">
          <xs:annotation>
            <xs:documentation>optional. The min creation date of listed shipment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="createdBefore" use="optional" type="dateTimeType">
          <xs:annotation>
            <xs:documentation>optional. The max creation date of listed shipments</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="put-inbound-shipment-data" substitutionGroup="mule:abstract-message-processor" type="PutInboundShipmentDataType">
    <xs:annotation>
      <xs:documentation>Adds or replaces the merchant's inbound shipment header information
for the given ShipmentId.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="PutInboundShipmentDataType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipment's id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentName" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipment name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="destinationFulfillmentCenter" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory Amazon's fulfillment center where the client's products are stored</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipFromAddress-ref" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory  source address of the shipment to amazon's centers</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="labelPreference" use="optional" type="LabelPreferenceEnumType">
          <xs:annotation>
            <xs:documentation>the optional label preference</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="put-inbound-shipment" substitutionGroup="mule:abstract-message-processor" type="PutInboundShipmentType">
    <xs:annotation>
      <xs:documentation>Adds or replaces inbound shipment for a given shipmentId. If the shipment does not
exist, one will be created. Note, the merchant should call
SetInboundShipmentStatus with a status of 'Shipped' when the shipment is
picked up, or set the status to 'Cancelled' if the shipment is abandoned. The
intial status of a shipment will be set to 'Working'. Once a shipment's status
has been set to 'Shipped', the merchant may make no further changes except to
update the status to 'Cancelled'. Any items not received at the time a
shipment is 'Cancelled' will be sidelined if they arrive at the fulfillment
center.

NOTE: If you are experiencing time-outs due to too many items in the shipment, calling this operation with a subset of
the items should work. You may add more items to the shipment by calling putInboundShipmentItems.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="PutInboundShipmentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="item-quantities" maxOccurs="1" minOccurs="1">
            <xs:annotation>
              <xs:documentation>a mandatory list of MerchantSKUQuantityItem objects, with the amount of item for each merchant sku. At least one item must be passed</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="item-quantity" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:attribute name="value-ref" use="required" type="xs:string"></xs:attribute>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipment's id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentName" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipment name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="destinationFulfillmentCenter" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory Amazon's fulfillment center where the client's products are stored</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipFromAddress-ref" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory source address of the shipment to amazon's centers</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="labelPreference" use="optional" type="LabelPreferenceEnumType">
          <xs:annotation>
            <xs:documentation>the optional label preference</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="put-inbound-shipment-items" substitutionGroup="mule:abstract-message-processor" type="PutInboundShipmentItemsType">
    <xs:annotation>
      <xs:documentation>Adds line items to a pre-existing shipment that the ShipmentId specifies.

If the MerchantSKU is already in the shipment, then that particular line item is replaced.
Call PutInboundShipment to create a new shipment.
This call returns an exception if you attempt to add line items to a shipment that is in a status other than Working.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="PutInboundShipmentItemsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="item-quantities" maxOccurs="1" minOccurs="1">
            <xs:annotation>
              <xs:documentation>a mandatory list of MerchantSKUQuantityItem objects, with the amount of item for each merchant sku. At least one item must be passed</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="item-quantity" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:attribute name="value-ref" use="required" type="xs:string"></xs:attribute>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipment's id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="set-inbound-shipment-status" substitutionGroup="mule:abstract-message-processor" type="SetInboundShipmentStatusType">
    <xs:annotation>
      <xs:documentation>Sets the inbound shipment status to the specified ShipmentStatus.
Once a shipment's status has been set to Shipped, you cannot make any further changes except to update the status to Cancelled. Any item not received at the time a shipment is cancelled is put into problem receive at the fulfillment center.

This operation returns a RequestId upon success, otherwise an explicit error is returned.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="SetInboundShipmentStatusType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shipmentId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipment's id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="shipmentStatus" use="required" type="ShipmentStatusEnumType">
          <xs:annotation>
            <xs:documentation>the mandatory new status for the given shipment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="cancel-fulfillment-order" substitutionGroup="mule:abstract-message-processor" type="CancelFulfillmentOrderType">
    <xs:annotation>
      <xs:documentation>Requests Amazon not to fulfill an existing fulfillment order. This is just a hint, already shipped
orders may not be canceled.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CancelFulfillmentOrderType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="orderId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory order's id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-fulfillment-order" substitutionGroup="mule:abstract-message-processor" type="CreateFulfillmentOrderType">
    <xs:annotation>
      <xs:documentation>Generates a request for Amazon to ship items from the merchant's inventory to a destination address.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateFulfillmentOrderType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="emails" maxOccurs="1" minOccurs="0">
            <xs:annotation>
              <xs:documentation>an optional list of email strings</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="email" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:simpleContent>
                      <xs:extension base="xs:string">
                        <xs:attribute name="value-ref" use="optional" type="xs:string"></xs:attribute>
                      </xs:extension>
                    </xs:simpleContent>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
          <xs:element name="items" maxOccurs="1" minOccurs="1">
            <xs:annotation>
              <xs:documentation>a mandatory list of CreateFulfillmentOrderItem. At least one item must be specified</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:attribute name="value-ref" use="required" type="xs:string"></xs:attribute>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="orderId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory fulfillment order id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="displayableOrderId" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the order id displayed in the fulfillment. If not specified, the orderId is used.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="destinationAddress-ref" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory destination address of the fulfillment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="fulfillmentPolicy" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the optional fulfillment policy</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="fulfillmentMethod" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the optional fulfillment method</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shippingSpeedCategory" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory shipping speed category</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="displayableOrderComment" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory comment that will be displayed in the order</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="displayableOrderDate" use="required" type="dateTimeType">
          <xs:annotation>
            <xs:documentation>the mandatory order date displayed in the fulfillment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-fulfillment-order" substitutionGroup="mule:abstract-message-processor" type="GetFulfillmentOrderType">
    <xs:annotation>
      <xs:documentation>Gets the original fulfillment order request, the status of
both the order and its items in the Amazon Fulfillment Network,
and the shipments that have been generated to fulfill the order.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetFulfillmentOrderType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="orderId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory order id of the fulfillment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-fulfillment-preview" substitutionGroup="mule:abstract-message-processor" type="GetFulfillmentPreviewType">
    <xs:annotation>
      <xs:documentation>Answers estimated shipping dates and fees for a given set of merchant SKUs and quantities.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetFulfillmentPreviewType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="items" maxOccurs="1" minOccurs="1">
            <xs:annotation>
              <xs:documentation>the mandatory items list of GetFulfillmentPreviewItem to preview. At least one item is required</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="item" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:attribute name="value-ref" use="required" type="xs:string"></xs:attribute>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="address-ref" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory destination address</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="shippingSpeedCategories" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the optional shipping categories</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="orderItemId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory order item id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-outbound-service-status" substitutionGroup="mule:abstract-message-processor" type="GetOutboundServiceStatusType">
    <xs:annotation>
      <xs:documentation>Answers a brief status message from the service</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetOutboundServiceStatusType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="list-fulfillment-orders" substitutionGroup="mule:abstract-message-processor" type="ListFulfillmentOrdersType">
    <xs:annotation>
      <xs:documentation>Lazily lists all the fulfillment orders</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListFulfillmentOrdersType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="fulfillment-methods" maxOccurs="1" minOccurs="0">
            <xs:annotation>
              <xs:documentation>optional list of FWS fulfillment method strings</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="fulfillment-method" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:simpleContent>
                      <xs:extension base="xs:string">
                        <xs:attribute name="value-ref" use="optional" type="xs:string"></xs:attribute>
                      </xs:extension>
                    </xs:simpleContent>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="startDate" use="optional" type="dateTimeType">
          <xs:annotation>
            <xs:documentation>the start date of the query</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-inventory-supply" substitutionGroup="mule:abstract-message-processor" type="GetInventorySupplyType">
    <xs:annotation>
      <xs:documentation>Gets information about the supply of merchant-owned inventory in Amazon's fulfillment network.

Throws a FWSException if inventory is unsellable or
is already bound to a customer order or
bound to internal fulfillment center processing (for example, labeling).</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetInventorySupplyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="merchantSku" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the mandatory merchant's sku</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="responseGroup" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the optional response group</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-inventory-service-status" substitutionGroup="mule:abstract-message-processor" type="GetInventoryServiceStatusType">
    <xs:annotation>
      <xs:documentation>Answers a brief status message from the service</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetInventoryServiceStatusType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/fws" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="list-updated-inventory-supply" substitutionGroup="mule:abstract-message-processor" type="ListUpdatedInventorySupplyType">
    <xs:annotation>
      <xs:documentation>Lazily retrieves all the information about the supply of merchant-owned inventory in Amazon's fulfillment network, for
inventory items that may have had recent changes in inventory levels. The type of inventory data
returned by this operation is the same as that returned by getInventorySupply.
This operation provides the most efficient mechanism for clients to maintain local copies of inventory supply data.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListUpdatedInventorySupplyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/fws" name="startDateTime" use="required" type="dateTimeType">
          <xs:annotation>
            <xs:documentation>the mandatory start date</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="responseGroup" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a response group string</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:simpleType name="ItemConditionEnumType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="NEW_ITEM"></xs:enumeration>
          <xs:enumeration value="NEW_WITH_WARRANTY"></xs:enumeration>
          <xs:enumeration value="NEW_OEM"></xs:enumeration>
          <xs:enumeration value="NEW_OPEN_BOX"></xs:enumeration>
          <xs:enumeration value="USED_LIKE_NEW"></xs:enumeration>
          <xs:enumeration value="USED_VERY_GOOD"></xs:enumeration>
          <xs:enumeration value="USED_GOOD"></xs:enumeration>
          <xs:enumeration value="USED_ACCEPTABLE"></xs:enumeration>
          <xs:enumeration value="USED_POOR"></xs:enumeration>
          <xs:enumeration value="USED_REFURBISHED"></xs:enumeration>
          <xs:enumeration value="COLLECTIBLE_LIKE_NEW"></xs:enumeration>
          <xs:enumeration value="COLLECTIBLE_VERY_GOOD"></xs:enumeration>
          <xs:enumeration value="COLLECTIBLE_GOOD"></xs:enumeration>
          <xs:enumeration value="COLLECTIBLE_ACCEPTABLE"></xs:enumeration>
          <xs:enumeration value="COLLECTIBLE_POOR"></xs:enumeration>
          <xs:enumeration value="REFURBISHED_WITH_WARRANTY"></xs:enumeration>
          <xs:enumeration value="REFUrbished"></xs:enumeration>
          <xs:enumeration value="CLUB"></xs:enumeration>
          <xs:enumeration value="UNKNOWN"></xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="LabelPreferenceEnumType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="AMAZON_LABEL_ONLY"></xs:enumeration>
          <xs:enumeration value="AMAZON_LABEL_PREFERRED"></xs:enumeration>
          <xs:enumeration value="MERCHANT_LABEL"></xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="ShipmentStatusEnumType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="WORKING"></xs:enumeration>
          <xs:enumeration value="SHIPPED"></xs:enumeration>
          <xs:enumeration value="INTRANSIT"></xs:enumeration>
          <xs:enumeration value="DELIVERED"></xs:enumeration>
          <xs:enumeration value="CHECKEDIN"></xs:enumeration>
          <xs:enumeration value="RECEIVING"></xs:enumeration>
          <xs:enumeration value="CLOSED"></xs:enumeration>
          <xs:enumeration value="CANCELLED"></xs:enumeration>
          <xs:enumeration value="ERROR"></xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
</xs:schema>