<?xml version="1.0" encoding="UTF-8"?>
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  <xs:element name="ProductCatalogImport">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Products"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Products">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="Product"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Product">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Name"/>
        <xs:element ref="ProductAttributeGroupCode"/>
        <xs:element ref="Description"/>
        <xs:element ref="ActiveFlag"/>
        <xs:element ref="Style"/>
        <xs:element ref="DisplayMsrp"/>
        <xs:element ref="DisplayPrice"/>
        <xs:element ref="ImageFile"/>
        <xs:element ref="Keyword"/>
        <xs:element ref="MetaDescription"/>
        <xs:element ref="MetaKeywords"/>
        <xs:element ref="MoreInfoContent"/>
        <xs:element ref="ProductTypeId"/>
        <xs:element ref="PromoGroupCode"/>
        <xs:element ref="DisplayAttribute1"/>
        <xs:element ref="DisplayAttribute2"/>
        <xs:element ref="SiteId"/>
        <xs:element ref="CategoryToProducts"/>
		<xs:element ref="ProductSwatches"/>
        <xs:element ref="ProductVariants"/>
        <xs:element ref="Attributes"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Name" type="xs:string"/>
  <xs:element name="ProductAttributeGroupCode" type="xs:NCName"/>
  <xs:element name="Description" type="xs:string"/>
  <xs:element name="Style" type="xs:string"/>
  <xs:element name="DisplayMsrp" type="xs:string"/>
  <xs:element name="DisplayPrice" type="xs:string"/>
  <xs:element name="ImageFile" type="xs:string"/>
  <xs:element name="Keyword"/>
  <xs:element name="MetaDescription"/>
  <xs:element name="MetaKeywords"/>
  <xs:element name="MoreInfoContent">
    <xs:complexType/>
  </xs:element>
  <xs:element name="ProductTypeId" type="xs:integer"/>
  <xs:element name="PromoGroupCode">
    <xs:complexType/>
  </xs:element>
  <xs:element name="DisplayAttribute1" type="xs:NCName"/>
  <xs:element name="DisplayAttribute2" type="xs:NCName"/>
  <xs:element name="SiteId" type="xs:integer"/>
  <xs:element name="CategoryToProducts">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="CategoryToProduct"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CategoryToProduct">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="CategoryCode"/>
        <xs:element ref="SequenceNo"/>
        <xs:element ref="ActiveFlag"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CategoryCode" type="xs:NMTOKEN"/>
  <xs:element name="SequenceNo" type="xs:integer"/>
  <xs:element name="ProductSwatches">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="ProductSwatch"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ProductSwatch">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="ColorName"/>
        <xs:element ref="SwatchImageFile"/>
        <xs:element ref="RecoloredImageFile"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SwatchImageFile" type="xs:string"/>
  <xs:element name="RecoloredImageFile" type="xs:string"/>
  <xs:element name="ProductVariants">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="ProductVariant"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ProductVariant">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Sku"/>
        <xs:element ref="Price"/>
        <xs:element ref="ColorName"/>
        <xs:element ref="InventoryLevel"/>
        <xs:element ref="SizeName"/>
        <xs:element ref="ColorCode"/>
        <xs:element ref="SizeCode"/>
        <xs:element ref="TaxableFlag"/>
        <xs:element ref="TaxCode"/>
        <xs:element ref="ActiveFlag"/>
        <xs:element ref="OriginalPrice"/>
		<xs:element ref="UPC"/>
        <xs:element ref="HazMatClass"/>
		<xs:element ref="ShipInBag"/>
		<xs:element minOccurs="1" ref="ProductVariantPrices"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Sku" type="xs:integer"/>
  <xs:element name="ColorName" type="xs:string"/>
  <xs:element name="InventoryLevel" type="xs:integer"/>
  <xs:element name="SizeName" type="xs:string"/>
  <xs:element name="ColorCode" type="xs:integer"/>
  <xs:element name="SizeCode" type="xs:integer"/>
  <xs:element name="TaxableFlag" type="xs:NCName"/>
  <xs:element name="TaxCode" type="xs:NCName"/>
  <xs:element name="OriginalPrice" type="xs:decimal"/>
  <xs:element name="UPC"/>
  <xs:element name="HazMatClass"/>
  <xs:element name="ShipInBag"/>
  <xs:element name="ProductVariantPrices">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="ProductVariantPrice"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ProductVariantPrice">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="SourceId"/>
        <xs:element ref="Quantity"/>
        <xs:element ref="Price"/>
        <xs:element ref="ActiveFlag"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SourceId" type="xs:integer"/>
  <xs:element name="Quantity" type="xs:integer"/>
  <xs:element name="Attributes">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="Attribute"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Attribute">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="ProductAttributeCode"/>
        <xs:element ref="ProductAttributeValue"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ProductAttributeCode" type="xs:integer"/>
  <xs:element name="ProductAttributeValue" type="xs:string"/>
  <xs:element name="ActiveFlag" type="xs:NCName"/>
  <xs:element name="Price" type="xs:decimal"/>
</xs:schema>
