<?xml version="1.0" encoding="UTF-8"?>
<!--
DMTF - Distributed Management Task Force, Inc. - http://www.dmtf.org

Release URLs (once DMTF Standard):
http://schemas.dmtf.org/document/noxmlns/dsp8052_1.0.0.xsd
http://schemas.dmtf.org/document/noxmlns/dsp8052_1.0.xsd

Document number: DSP8052
Date: 2012-03-19
Version: 1.0.0
Document status: DMTF Standard

Title: Document Reference XML Schema

Document type: Specification (W3C XML Schema Document)
Document language: en-US

Copyright notice:
Copyright (C) 2010-2012 Distributed Management Task Force, Inc. (DMTF). All rights reserved.
DMTF is a not-for-profit association of industry members dedicated to promoting enterprise and systems management and
interoperability.  Members and non-members may reproduce DMTF specifications and documents for uses consistent with this
purpose, provided that correct attribution is given.  As DMTF specifications may be revised from time to time, the
particular version and release date should always be noted.
Implementation of certain elements of this standard or proposed standard may be subject to third party patent rights,
including provisional patent rights (herein "patent rights").  DMTF makes no representations to users of the standard as
to the existence of such rights, and is not responsible to recognize, disclose, or identify any or all such third party
patent right, owners or claimants, nor for any incomplete or inaccurate identification or disclosure of such rights,
owners or claimants.  DMTF shall have no liability to any party, in any manner or circumstance, under any legal theory
whatsoever, for failure to recognize, disclose, or identify any such third party patent rights, or for such party's
reliance on the standard or incorporation thereof in its product, protocols or testing procedures.  DMTF shall have no
liability to any party implementing such standard, whether such implementation is foreseeable or not, nor to any patent
owner or claimant, and shall have no liability or responsibility for costs or losses incurred if a standard is withdrawn
or modified after publication, and shall be indemnified and held harmless by any party implementing the standard from
any and all claims of infringement by a patent owner for such implementations.
For information about patents held by third-parties which have notified the DMTF that, in their opinion, such patent may
relate to or impact implementations of DMTF standards, visit http://www.dmtf.org/about/policies/disclosures.php.

Foreword:
This document was prepared by the Profile Infrastructure Working Group. DMTF is a not-for-profit association of
industry members dedicated to promoting enterprise and systems management and interoperability. For information about
the DMTF, see http://www.dmtf.org.

Acknowledgments:
The DMTF acknowledges the following individuals for their contributions to this document:
* Andreas Maier, IBM (editor)

Introduction:
This document defines an XML schema that is a building block for representing document reference information (for example,
entries in Normative References and Bibliography).  For more details, see the annotation description of the schema
element.

Normative references:
* DMTF DSP0004, CIM Infrastructure Specification 2.6,
  http://www.dmtf.org/standards/published_documents/DSP0004_2.6.pdf
* DMTF DSP1001, Management Profile Specification Usage Guide 1.1,
  http://www.dmtf.org/standards/published_documents/DSP1001_1.1.pdf
* DMTF DSP8053, Document Common Types XML Schema 1.0,
  http://schemas.dmtf.org/document/noxmlns/dsp8053_1.0.xsd
* ISO/IEC Directives, Part 2:2004, Rules for the structure and drafting of International Standards,
  http://isotc.iso.org/livelink/livelink?func=ll&objId=4230456&objAction=browse
* W3C XHTML 1.0 The Extensible HyperText Markup Language (Second Edition),
  W3C Recommendation 26 January 2000, revised 1 August 2002,
  http://www.w3.org/TR/xhtml1

Change log:
1.0.0a - 2010-02-15 - Released as a Work in Progress.
1.0.0b - 2010-05-31 - Released as a second Work in Progress.
1.0.0c - 2011-02-22 - Released as a third Work in Progress.
1.0.0d - 2011-06-21 - Released as a fourth Work in Progress.
1.0.0e - 2011-08-16 - Released as a fifth Work in Progress.
1.0.0f - 2011-09-13 - Released as a Work in Progress.
1.0.0g - 2011-09-13 - Member review of Draft Standard.
1.0.0  - 2012-03-19 - Released as DMTF Standard.
-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    <xsd:annotation>
        <xsd:documentation>This document defines an XML schema for XML instance documents, or fragments thereof,
that represent document reference information that is designed to populate the "Normative references" and "Bibliography"
clauses of documents that conform to the ISO guidelines for international standards.
This XML schema is a building block for import into larger XML schemas, such as machine readable profiles (see DSP8028).
This XML schema uses the "Venetian Blind" design pattern for the most part. In that pattern, only the XML elements
intended to be used as root elements are declared as global elements in the XML schema, and all relevant XML types are
declared as global types, for internal use by the XML schema. Any global types are not intended to be used by referencing
XML schemas.
This XML schema maintains forward compatibility with respect to its XML instance documents as follows:  An updated minor version
of the XML schema (for example, "m.n+1.*") shall successfully validate XML instance documents that validated successfully using
the original version of the XML schema (for example, "m.n.*").  An XML instance document that successfully validates against an
updated minor version of the XML schema may or may not validate against the original version of the XML schema.
In other words, the XML schema may introduce additional functionality as long as it does not break existing XML instance
documents.</xsd:documentation>
    </xsd:annotation>
    <!-- Note:  In order to speed up processing, to enable offline work, and to deal with service refusals when
    accessing a file too often from the same source IP address, an XML catalog can be used to redirect the URLs stated
    in schema locations to local copies of these files.  -->
    <xsd:include schemaLocation="http://schemas.dmtf.org/document/noxmlns/dsp8053_1.0.xsd"/>
    <xsd:element name="NormativeReferences" type="DocumentReferences_Type">
        <xsd:annotation>
            <xsd:documentation>A "Normative references" clause, as defined by ISO.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    <xsd:element name="Bibliography" type="DocumentReferences_Type">
        <xsd:annotation>
            <xsd:documentation>A "Bibliography", as defined by ISO.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    <xsd:element name="NormativeReferenceLink">
        <xsd:annotation>
            <xsd:documentation>A link to a normative reference, that is, to an entry in the "Normative references" clause, of the subject document.
Links to normative references defined in other documents are not supported, because any normative references that are needed by a document are required to be stated in that document, according to ISO guidelines.
The element value should be the identifier (that is, the value of the "ID" attribute of the "DocumentReference" element) or the title of the document.
In a human-readable presentation of an XML document using this element, the element value should be represented as a hyperlink to the referenced normative references entry.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType mixed="true">
            <xsd:complexContent mixed="true">
                <xsd:extension base="XHTML_Type">
                    <xsd:attribute name="refName" type="Identifier_Type" use="required">
                        <xsd:annotation>
                            <xsd:documentation>A reference to the normative reference entry, by means of the value of the "name" attribute of the "DocumentReference" element representing that entry.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                </xsd:extension>
            </xsd:complexContent>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="BibliographyLink">
        <xsd:annotation>
            <xsd:documentation>A link to a bibliographic reference, that is to an entry in the "Bibliography", of the subject document.
Links to bibliographic references defined in other documents are not supported.
The element value should be the identifier (that is, the value of the "ID" attribute of the "DocumentReference" element) or the title of the document.
In a human readable presentation of an XML document using this element, the element value should be represented as a hyperlink to the referenced bibliography entry.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType mixed="true">
            <xsd:complexContent mixed="true">
                <xsd:extension base="XHTML_Type">
                    <xsd:attribute name="refName" type="Identifier_Type" use="required">
                        <xsd:annotation>
                            <xsd:documentation>A reference to the bibliography entry, by means of the value of the "name" attribute of the "DocumentReference" element representing that entry.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                </xsd:extension>
            </xsd:complexContent>
        </xsd:complexType>
    </xsd:element>
    <xsd:complexType name="DocumentReferences_Type">
        <xsd:annotation>
            <xsd:documentation>Internal type representing document reference information.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="Introduction" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>Introductory text for the following list of document references.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element ref="XHTML"/>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
            <xsd:element name="DocumentReference" type="DocumentReference_Type" maxOccurs="unbounded">
                <xsd:annotation>
                    <xsd:documentation>A document reference.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="DocumentReference_Type">
        <xsd:annotation>
            <xsd:documentation>Internal type representing a single document reference.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="OwningEntity" type="DocumentOwningEntity_Type" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>A name that identifies the organization owning the referenced document.
For documents owned by DMTF, the element is required and its value shall be "DMTF".
For documents owned by other organizations, the element is optional unless that organization defines a stronger requirement; if specified, its value should include a copyrighted, trademarked, or otherwise unique name that is owned by that organization or that is a registered ID assigned to that organization by a recognized global authority.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="ID" type="xsd:string" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>An identification of the referenced document, as defined by the organization owning the document.
For documents owned by DMTF, the element is required and its value shall be the DSP number of the document, in uppercase (for example, "DSP1234").
For documents owned by other organizations, the element is optional unless that organization defines a stronger requirement.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="Title" type="xsd:string">
                <xsd:annotation>
                    <xsd:documentation>The title of the referenced document.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="Version" type="ReferencedDocumentVersion_Type" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>The version of the referenced document.
For documents owned by DMTF, the element is required and its value shall conform to the DMTF versioning rules defined in DSP4004 (see the pattern definition for the allowable format), and the value should only specify the major and minor version numbers (for example, "1.1").
For documents owned by other organizations, the element is optional unless that organization defines a stronger requirement.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="Date" type="ReferencedDocumentDate_Type" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>The date of the referenced document.
For documents owned by DMTF, the element shall not be specified.
For documents owned by other organizations, the element is optional unless that organization defines a stronger requirement; if specified, its value shall be in one of the formats: yyyy-mm-dd, yyyy-mm, yyyy.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="Author" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
                <xsd:annotation>
                    <xsd:documentation>The name of an author of the referenced document.
For documents owned by DMTF, the element shall not be specified.
For documents owned by other organizations, the element is optional unless that organization defines a stronger requirement.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="Location" type="xsd:anyURI" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>A resolvable URL targeting the version of the referenced document specified in the sibling elements.
For documents owned by DMTF, the element is required.
For documents owned by other organizations, the element is recommended unless that organization defines a stronger requirement.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
        </xsd:sequence>
        <xsd:attribute name="name" use="required">
            <xsd:annotation>
                <xsd:documentation>An identifier for referencing the document reference.
The value shall be unique within the document that contains the document reference.
Values of this attribute shall begin with "Ref_" and should conform to the following ABNF rule:
  "Ref_" OwningEntity "_" ID
where OwningEntity and ID are the value of the like-named element.</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="Identifier_Type">
                    <xsd:pattern value="Ref_.*"/>
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:attribute>
    </xsd:complexType>
    <xsd:simpleType name="ReferencedDocumentDate_Type">
        <xsd:annotation>
            <xsd:documentation>Internal type for the date of the referenced document.</xsd:documentation>
        </xsd:annotation>
        <xsd:union memberTypes="xsd:date xsd:gYearMonth xsd:gYear"/>
    </xsd:simpleType>
</xsd:schema>
