<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="../../xslt/schema.xslt"?>

<xs:schema elementFormDefault="qualified" attributeFormDefault="unqualified"
           targetNamespace="http://www.w3.org/2005/Atom"
           xmlns:html="http://www.w3.org/1999/xhtml"
           xmlns:atom="http://www.w3.org/2005/Atom"
           xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
           xmlns:xml="http://www.w3.org/XML/1998/namespace"
           xmlns:xs="http://www.w3.org/2001/XMLSchema"
           xsdxt:base="../..">

    <xs:annotation>
        <xs:appinfo
            xml:lang="EN"
            xmlns="http://www.w3.org/1999/xhtml">
            <xsdxt:title>Atom Link</xsdxt:title>
        </xs:appinfo>
        <xs:documentation
            xml:lang="EN"
            xmlns="http://www.w3.org/1999/xhtml">
            <p>
                This schema file simple defines an atom link according
                to <a
                href="http://tools.ietf.org/html/rfc4287">RFC4287</a>
            </p>
        </xs:documentation>
    </xs:annotation>

    <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>

    <!-- Common Link Relations -->
    <xs:simpleType name="relation">
        <xs:restriction base="xs:string">
            <xs:enumeration value="alternate" />
            <xs:enumeration value="appendix" />
            <xs:enumeration value="archives" />
            <xs:enumeration value="author" />
            <xs:enumeration value="bookmark" />
            <xs:enumeration value="chapter" />
            <xs:enumeration value="contents" />
            <xs:enumeration value="copyright" />
            <xs:enumeration value="current" />
            <xs:enumeration value="describedby" />
            <xs:enumeration value="edit" />
            <xs:enumeration value="edit-media" />
            <xs:enumeration value="first" />
            <xs:enumeration value="glossary" />
            <xs:enumeration value="help" />
            <xs:enumeration value="hub" />
            <xs:enumeration value="icon" />
            <xs:enumeration value="index" />
            <xs:enumeration value="last" />
            <xs:enumeration value="latest-version" />
            <xs:enumeration value="license" />
            <xs:enumeration value="monitor" />
            <xs:enumeration value="monitor-group" />
            <xs:enumeration value="next" />
            <xs:enumeration value="next-arvhice" />
            <xs:enumeration value="nofollow" />
            <xs:enumeration value="payment" />
            <xs:enumeration value="predecessor-version" />
            <xs:enumeration value="prefetch" />
            <xs:enumeration value="prev" />
            <xs:enumeration value="previous" />
            <xs:enumeration value="prev-archive" />
            <xs:enumeration value="replies" />
            <xs:enumeration value="search" />
            <xs:enumeration value="section" />
            <xs:enumeration value="self" />
            <xs:enumeration value="service" />
            <xs:enumeration value="start" />
            <xs:enumeration value="stylesheet" />
            <xs:enumeration value="subsection" />
            <xs:enumeration value="successor-version" />
            <xs:enumeration value="up" />
            <xs:enumeration value="version-history" />
            <xs:enumeration value="via" />
            <xs:enumeration value="working-copy" />
            <xs:enumeration value="working-copy-of" />
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="extRelation">
        <xs:union memberTypes="atom:relation xs:string"/>
    </xs:simpleType>

    <xs:element name="link" type="atom:link" />

    <xs:complexType name="link">
        <xs:annotation>
            <xs:documentation>
                <html:p>See section 3.4 of the ATOM RFC <html:a href="http://tools.ietf.org/html/rfc4287">RFC4287</html:a></html:p>
            </xs:documentation>
        </xs:annotation>

        <xs:attribute name="rel" use="required" type="atom:extRelation" />
        <xs:attribute name="type" use="optional" type="xs:string" />
        <xs:attribute name="href" use="required" type="xs:anyURI" />
        <xs:attribute name="hreflang" use="optional" type="xs:NMTOKEN" />
        <xs:attribute name="title" use="optional" type="xs:string" />
        <xs:attribute ref="xml:base" />
        <xs:attribute ref="xml:lang" />
    </xs:complexType>
</xs:schema>
