<xs:schema 
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:gen="http://xmlns.redhat.com/core/bebop/generator/1.0"
  xmlns="http://www.arsdigita.com/cms/1.0"
  elementFormDefault="qualified" 
  targetNamespace="http://www.arsdigita.com/cms/1.0">

  <xs:element name="directory">
    <xs:annotation>
      <xs:documentation xml:lang="en">
        The directory component displays a summary of the first two
        levels of the navigation category heirarchy. The categoryID
        attribute can be used to link to 
        $context-prefix/navigation/category.jsp?categoryID=XXX
      </xs:documentation>

      <xs:appinfo>
        <gen:class>com.arsdigita.london.navigation.ui.DirectoryComponent</gen:class>
      </xs:appinfo>
    </xs:annotation>

    <xs:complexType>
      <xs:sequence>
        <xs:element name="directoryL1Category" minOccurs="0" maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="directoryL2Category" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:attribute name="title" type="xs:string">
                  <xs:attribute name="description" type="xs:string" use="optional">
                  <xs:attribute name="categoryID" type="xs:integer">
                </xs:complexType>
              </xs:element>

              <xs:element name="directoryItem" minOccurs="0" maxOccurs="3">
                <xs:annotation>
                  <xs:documentation xml:lang="en">
                    The first two items are instances of the 'Fixed Promo'
                    content type in the current category. The third item
                    is a 'Fixed Promo' item from the subcategory.
                  </xs:documentation>
                </xs:annotation>

                <xs:complexType>
                  <xs:attribute name="title" type="xs:string">
                  <xs:attribute name="path" type="xs:anyURI">
                </xs:complexType>
              </xs:element>
            </xs:sequence>

            <xs:attribute name="title" type="xs:string">
            <xs:attribute name="description" type="xs:string" use="optional">
            <xs:attribute name="categoryID" type="xs:integer">
          </xs:complexType>
        </xs:element>
      </sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
