<schema
    elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    xmlns="http://www.w3.org/2001/XMLSchema"
    xmlns:csapi="http://docs.openstack.org/compute/api/v1.1"
    xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
    xmlns:dme="http://docs.rackspacecloud.com/servers/api/ext/dme/v1.0"
    targetNamespace="http://docs.openstack.org/compute/api/v1.1"
>
    <!-- Import extended attribute -->
    <import namespace="http://docs.rackspacecloud.com/servers/api/ext/dme/v1.0" schemaLocation="rax-dme.xsd"/>

    <!-- Include/Redefine core schema -->
    <include vc:minVersion="1.0" vc:maxVersion="1.1" schemaLocation="../../api.xsd"/>
    <!--
        For the purposes of extending the schema api.xsd should be a flat XSD.  This is, it should not have
        any <include ..> elements.  That's no the case today. We should generate a flat XSD at compile time
        and reference it here.
     -->
    <redefine vc:minVersion="1.1" schemaLocation="../../api.xsd">
        <complexType name="Image">
            <complexContent>
                <extension base="csapi:Image">
                    <attribute ref="dme:diskAutoManaged" use="optional"/>
                </extension>
            </complexContent>
        </complexType>
        <complexType name="Server">
            <complexContent>
                <extension base="csapi:Server">
                    <attribute ref="dme:diskAutoManaged" use="optional"/>
                </extension>
            </complexContent>
        </complexType>
    </redefine>
</schema>
