slot
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xsd:schema
xmlns="http://www.demandware.com/xml/impex/slot/2008-09-08"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
targetNamespace="http://www.demandware.com/xml/impex/slot/2008-09-08"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd" />
<xsd:element name="slot-configurations">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="slot-configuration" type="SlotConfiguration" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="slot-configuration-campaign-assignment" type="SlotConfigurationCampaignAssignment" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="slot-configuration" type="SlotConfiguration" />
<xsd:element name="slot-configuration-campaign-assignment" type="SlotConfigurationCampaignAssignment" />
<xsd:complexType name="SlotConfiguration" mixed="false">
<xsd:sequence>
<xsd:element name="description" type="Generic.String.4000" minOccurs="0" maxOccurs="1" />
<xsd:element name="template" type="Generic.String.256" minOccurs="0" maxOccurs="1" />
<xsd:element name="rank" type="Rank" minOccurs="0" maxOccurs="1" />
<xsd:element name="enabled-flag" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
<xsd:element name="callout-msg" type="LocalizedText" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="schedule" type="SlotSchedule" minOccurs="0" maxOccurs="1" />
<xsd:element name="content" type="Content" minOccurs="0" maxOccurs="1" />
<xsd:element name="custom-attributes" type="CustomAttributes" minOccurs="0" maxOccurs="1" />
<xsd:element name="customer-groups" type="CustomerGroups" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="mode" type="simpleType.ImportMode" />
<xsd:attribute name="slot-id" type="Generic.NonEmptyString.256" use="required" />
<xsd:attribute name="context" type="ContextType" />
<xsd:attribute name="context-id" type="Generic.NonEmptyString.256" />
<xsd:attribute name="configuration-id" type="Generic.NonEmptyString.256" />
<xsd:attribute name="default" type="xsd:boolean" />
<xsd:attribute name="assigned-to-site" type="xsd:boolean">
<xsd:annotation>
<xsd:documentation>
Determines if the slot-configuration is implicitly assigned to the site or not.
If not specified, defaults to true.
The elements rank, schedule, and customer-groups can only be set on slot-configurations assigned to the site.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
<xsd:complexType name="SlotConfigurationCampaignAssignment" mixed="false">
<xsd:sequence>
<xsd:element name="qualifiers" type="SlotConfigurationAssignmentQualifiers" minOccurs="0" maxOccurs="1" />
<xsd:element name="rank" type="Rank" minOccurs="0" maxOccurs="1" />
<xsd:element name="schedule" type="SlotSchedule" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="mode" type="simpleType.ImportMode" />
<xsd:attribute name="slot-id" type="Generic.NonEmptyString.256" use="required" />
<xsd:attribute name="context" type="ContextType" use="required" />
<xsd:attribute name="context-id" type="Generic.NonEmptyString.256" />
<xsd:attribute name="configuration-id" type="Generic.NonEmptyString.256" use="required"/>
<xsd:attribute name="campaign-id" type="Generic.NonEmptyString.256" use="required" />
</xsd:complexType>
<xsd:complexType name="SlotSchedule" mixed="false">
<xsd:sequence>
<xsd:element name="start-date" type="xsd:dateTime" minOccurs="0" maxOccurs="1" />
<xsd:element name="end-date" type="xsd:dateTime" minOccurs="0" maxOccurs="1" />
<xsd:element name="recurrence" type="SlotSchedule.Recurrence" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SlotSchedule.Recurrence" mixed="false">
<xsd:sequence>
<xsd:element name="day-of-week" type="SlotSchedule.DayOfWeek" minOccurs="0" maxOccurs="1" />
<xsd:element name="time-of-day" type="SlotSchedule.TimeOfDay" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SlotSchedule.DayOfWeek" mixed="false">
<xsd:sequence>
<xsd:element name="weekday" type="Weekday" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SlotSchedule.TimeOfDay" mixed="false">
<xsd:sequence>
<xsd:element name="time-from" type="xsd:time" minOccurs="0" maxOccurs="1" />
<xsd:element name="time-to" type="xsd:time" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Content" mixed="false">
<xsd:choice minOccurs="1" maxOccurs="1">
<xsd:element name="products" type="Products" />
<xsd:element name="categories" type="Categories" />
<xsd:element name="content-assets" type="ContentAssets" />
<xsd:element name="html" type="HTML"/>
<xsd:element name="recommended-products" type="RecommendedProducts"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="RecommendedProducts" mixed="false">
<xsd:annotation>
<xsd:documentation>Reserved for Dynamic Recommendations Beta users. Will not be created and a warning will be logged if the Enable Dynamic Recommendations Beta feature is not enabled by Ops.</xsd:documentation>
</xsd:annotation>
<xsd:attribute name="recommendation-rule-id" type="Generic.NonEmptyString.100" use="required" />
</xsd:complexType>
<xsd:complexType name="Products" mixed="false">
<xsd:sequence>
<xsd:element name="product" type="Product" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Product" mixed="false">
<xsd:attribute name="product-id" type="Generic.NonEmptyString.100" use="required" />
</xsd:complexType>
<xsd:complexType name="Categories" mixed="false">
<xsd:sequence>
<xsd:element name="category" type="Category" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Category" mixed="false">
<xsd:attribute name="category-id" type="Generic.NonEmptyString.256" use="required" />
</xsd:complexType>
<xsd:complexType name="ContentAssets" mixed="false">
<xsd:sequence>
<xsd:element name="content-asset" type="ContentAsset" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ContentAsset" mixed="false">
<xsd:attribute name="content-id" type="Generic.NonEmptyString.256" use="required" />
</xsd:complexType>
<xsd:complexType name="HTML" mixed="false">
<xsd:annotation>
<xsd:documentation>
Slot configuration import in MERGE mode only updates content for locales
specified in the import file instead of replacing all previous ones.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="body" type="LocalizedText" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SlotConfigurationAssignmentQualifiers" mixed="false">
<xsd:sequence>
<xsd:element name="customer-groups" type="CustomerGroups" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="CustomerGroups" mixed="false">
<xsd:sequence>
<xsd:element name="customer-group" type="CustomerGroup" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="CustomerGroup" mixed="false">
<xsd:attribute name="group-id" type="Generic.NonEmptyString.256" use="required" />
</xsd:complexType>
<xsd:complexType name="LocalizedText" mixed="false">
<xsd:simpleContent>
<xsd:extension base="Generic.String">
<xsd:attribute ref="xml:lang" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<xsd:complexType name="CustomAttributes" mixed="false">
<xsd:sequence>
<xsd:element name="custom-attribute" type="CustomAttribute" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="CustomAttribute" mixed="true">
<xsd:sequence>
<xsd:element name="value" type="Generic.String" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="attribute-id" type="Generic.NonEmptyString.256" use="required" />
<xsd:attribute ref="xml:lang" />
</xsd:complexType>
<xsd:simpleType name="Generic.String">
<xsd:restriction base="xsd:string" />
</xsd:simpleType>
<xsd:simpleType name="Generic.String.256">
<xsd:restriction base="Generic.String">
<xsd:minLength value="0" />
<xsd:maxLength value="256" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="Generic.String.4000">
<xsd:restriction base="Generic.String">
<xsd:minLength value="0" />
<xsd:maxLength value="4000" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="ContextType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="global" />
<xsd:enumeration value="category" />
<xsd:enumeration value="folder" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="Rank">
<xsd:restriction base="xsd:int">
<xsd:minInclusive value="1" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="Weekday">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Monday" />
<xsd:enumeration value="Tuesday" />
<xsd:enumeration value="Wednesday" />
<xsd:enumeration value="Thursday" />
<xsd:enumeration value="Friday" />
<xsd:enumeration value="Saturday" />
<xsd:enumeration value="Sunday" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="Generic.NonEmptyString">
<xsd:restriction base="Generic.String">
<xsd:minLength value="1" />
<xsd:pattern value="\S|(\S(.*)\S)" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="Generic.NonEmptyString.100">
<xsd:restriction base="Generic.String">
<xsd:minLength value="1" />
<xsd:maxLength value="100" />
<xsd:pattern value="\S|(\S(.*)\S)" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="Generic.NonEmptyString.256">
<xsd:restriction base="Generic.String">
<xsd:minLength value="1" />
<xsd:maxLength value="256" />
<xsd:pattern value="\S|(\S(.*)\S)" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="simpleType.ImportMode">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="delete" />
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>