XDR Schema
The XML-Data Reduced (XDR) schema defines the individual elements, attributes, and relations used in the XML structure.
<Schema name="MSCommerceCatalogCollection" xmlns="urn:schemas-microsoft-
com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">
<AttributeType name="name" dt:type="string" required="yes" />
<AttributeType name="id" dt:type="id" required="yes" />
<AttributeType name="dataType" dt:type="enumeration" dt:values="string
number bignumber datetime money real float currency
boolean enumeration filename" required="yes" />
<AttributeType name="value" />
<AttributeType name="parentCategories" dt:type="idrefs" />
<AttributeType name="Definition" dt:type="string" required="yes" />
<ElementType name="MSCommerceCatalogCollection">
<element type="CatalogSchema" minOccurs="1" maxOccurs="1" />
<element type="Catalog" minOccurs="0" maxOccurs="*" />
</ElementType>
<ElementType name="PropertiesDefinition">
<element type="Property" minOccurs="0" maxOccurs="*" />
</ElementType>
<ElementType name="CatalogSchema">
<element type="PropertiesDefinition" minOccurs="0" maxOccurs="1" />
<element type="Definition" minOccurs="0" maxOccurs="*" />
<element type="AttributeDefinition" minOccurs="0" maxOccurs="*" />
</ElementType>
<ElementType name="AttributeDefinition">
<attribute type="name" />
<attribute type="id" />
<attribute type="dataType" />
</ElementType>
<ElementType name="PropertyValue">
<AttributeType name="displayName" dt:type="string" required="yes" />
<attribute type="displayName" />
</ElementType>
<ElementType name="Property" model="open">
<AttributeType name="DefaultValue" dt:type="string" />
<AttributeType name="MinValue" dt:type="string" />
<AttributeType name="MaxValue" dt:type="string" />
<AttributeType name="IsFreeTextSearchable" dt:type="boolean" />
<AttributeType name="IncludeInSpecSearch" dt:type="boolean" />
<AttributeType name="DisplayOnSite" dt:type="boolean" />
<AttributeType name="DisplayName" dt:type="string" />
<AttributeType name="AssignAll" dt:type="boolean" />
<AttributeType name="ExportToDW" dt:type="boolean" />
<AttributeType name="DisplayInProductsList" dt:type="boolean" />
<attribute type="DefaultValue" />
<attribute type="MinValue" />
<attribute type="MaxValue" />
<attribute type="IsFreeTextSearchable" />
<attribute type="IncludeInSpecSearch" />
<attribute type="DisplayOnSite" />
<attribute type="DisplayName" />
<attribute type="AssignAll" />
<attribute type="ExportToDW" />
<attribute type="DisplayInProductsList" />
<attribute type="name" />
<attribute type="DataType" />
<attribute type="id" />
<element type="PropertyValue" minOccurs="0" maxOccurs="*" />
</ElementType>
<ElementType name="Definition">
<AttributeType name="properties" dt:type="idrefs" />
<AttributeType name="variantProperties" dt:type="idrefs" />
<AttributeType name="DefinitionType" required="yes" dt:type=
"enumeration" values="product category" />
<attribute type="name" />
<attribute type="DefinitionType" />
<attribute type="properties" />
<attribute type="variantProperties" />
</ElementType>
<ElementType name="Catalog">
<AttributeType name="currency" required="yes" />
<AttributeType name="locale" dt:type="string" />
<AttributeType name="startDate" dt:type="string" />
<AttributeType name="endDate" dt:type="string" />
<AttributeType name="productIdentifier" required="yes" dt:type="string" />
<AttributeType name="productVariantIdentifier" required="yes" dt:type="string" />
<AttributeType name="weight_measuring_unit" dt:type="string" />
<element type="Category" minOccurs="0" maxOccurs="*" />
<element type="Product" minOccurs="0" maxOccurs="*" />
<attribute type="catalogName" />
<attribute type="description" />
<attribute type="currency" />
<attribute type="locale" />
<attribute type="startDate" />
<attribute type="endDate" />
<attribute type="productIdentifier" />
<attribute type="productVariantIdentifier" />
</ElementType>
<ElementType name="Field">
<AttributeType name="fieldID" dt:type="idref" />
<AttributeType name="fieldValue" dt:type="string" required="yes" />
<attribute type="fieldID" />
<attribute type="fieldValue" />
</ElementType>
<ElementType name="Category">
<AttributeType name="isSearchable" dt:type="string" />
<AttributeType name="listprice" dt:type="string" />
<AttributeType name="image" dt:type="string" />
<AttributeType name="description" dt:type="string" />
<attribute type="listprice" />
<attribute type="id" />
<attribute type="name" />
<attribute type="parentCategories" />
<attribute type="Definition" />
<attribute type="isSearchable" />
<element type="Field" minOccurs="1" maxOccurs="*" />
<element type="Relationship" minOccurs="0" maxOccurs="*" />
</ElementType>
<ElementType name="Product">
<AttributeType name="pricingCategory" />
<AttributeType name="listprice" dt:type="string" required="yes" />
<attribute type="listprice" />
<attribute type="id" />
<attribute type="definition" />
<attribute type="pricingCategory" />
<attribute type="parentCategories" />
<element type="Field" minOccurs="1" maxOccurs="*" />
<element type="Relationship" minOccurs="1" maxOccurs="*" />
<element type="ProductVariant" minOccurs="0" maxOccurs="*" />
</ElementType>
<ElementType name="ProductVariant">
<attribute type="Id" />
<element type="Field" minOccurs="1" maxOccurs="*" />
</ElementType>
<ElementType name="Relationship">
<AttributeType name="description" dt:type="string" />
<AttributeType name="relation" required="yes" dt:type="idref" />
<attribute type="name" />
<attribute type="description" />
<attribute type="relation" />
</ElementType>
</Schema>