<?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="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:NMTOKEN"/>
  <xs:element name="DisplayMsrp">
    <xs:complexType/>
  </xs:element>
  <xs:element name="DisplayPrice" type="xs:string"/>
  <xs:element name="ImageFile">
    <xs:complexType/>
  </xs:element>
  <xs:element name="Keyword">
    <xs:complexType/>
  </xs:element>
  <xs:element name="MetaDescription">
    <xs:complexType/>
  </xs:element>
  <xs:element name="MetaKeywords">
    <xs:complexType/>
  </xs:element>
  <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="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="ActiveFlag"/>
        <xs:element minOccurs="0" 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="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>
