<?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/dsp8051_1.0.0.xsd
http://schemas.dmtf.org/document/noxmlns/dsp8051_1.0.xsd

Document number: DSP8051
Date: 2012-03-19
Version: 1.0.0
Document status: DMTF Standard

Title: Document Glossary 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 glossary information (for example, terms
and definitions, and symbols and abbreviations). 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 DSP8052, Document Reference XML Schema 1.0,
  http://schemas.dmtf.org/document/noxmlns/dsp8052_1.0.xsd
* 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:xhtml="http://www.w3.org/1999/xhtml" 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 glossary information that is designed to populate the "Terms and definitions" and "Symbols and abbreviations"
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/dsp8052_1.0.xsd"/>
    <xsd:include schemaLocation="http://schemas.dmtf.org/document/noxmlns/dsp8053_1.0.xsd"/>
    <xsd:import namespace="http://www.w3.org/1999/xhtml" schemaLocation="http://www.w3.org/2002/08/xhtml/xhtml1-strict.xsd"/>
    <xsd:element name="TermsAndDefinitions">
        <xsd:annotation>
            <xsd:documentation>A "Terms and definitions" clause, as defined by ISO.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="Introduction" minOccurs="0">
                    <xsd:annotation>
                        <xsd:documentation>Introductory text for this "Terms and definitions" clause.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element ref="XHTML"/>
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="TermReferences" minOccurs="0">
                    <xsd:annotation>
                        <xsd:documentation>References to terms that apply to the subject document and are defined elsewhere (for example, keywords such as "shall").
This is prose text that lists these terms and references the documents that define them.
The documents that define them shall be listed by the subject document as normative references.
Any references to such documents should be made using the "NormativeReferenceLink" element defined in DSP8052.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element ref="XHTML"/>
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="TermDefinitionDocument" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>A reference to a term definition document, that is, a document whose terms and definitions also apply to the subject document.
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.
The term definition document shall be listed by the subject document as a normative reference (see DSP8052).</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 representing the term definition document, by means of the value of the "name" attribute of the "DocumentReference" element defined in DSP8052.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:complexContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="TermDefinition" type="TermDefinition_Type" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>A term definition.
The order of these elements is significant; a presentation of term definitions for human consumption should order them as defined by the order of these elements.</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="SymbolsAndAbbreviations">
        <xsd:annotation>
            <xsd:documentation>A "Symbols and abbreviations" clause, as defined by ISO.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="Introduction" minOccurs="0">
                    <xsd:annotation>
                        <xsd:documentation>Introductory text for this "Symbols and abbreviations" clause.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element ref="XHTML"/>
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="SymbolReferences" minOccurs="0">
                    <xsd:annotation>
                        <xsd:documentation>References to symbols and abbreviations that apply to the subject document and are defined elsewhere.
This is prose text that lists these symbols and abbreviations and references the documents that define them.
The documents that define them shall be listed by the subject document as normative references.
Any references to such documents should be made using the "NormativeReferenceLink" element defined in DSP8052.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element ref="XHTML"/>
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="SymbolDefinitionDocument" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>A reference to a symbol definition document, that is, a document whose symbols and abbreviations also apply to the subject document.
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.
The symbol definition document shall be listed by the subject document as a normative reference (see DSP8052).</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 representing the symbol definition document, by means of the value of the "name" attribute of the "DocumentReference" element defined in DSP8052.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:complexContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="SymbolDefinition" type="SymbolDefinition_Type" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>A symbol or abbreviation definition.
The order of these elements is significant; a presentation of symbols and abbreviations for human consumption should order them as defined by the order of these elements.</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="TermLink">
        <xsd:annotation>
            <xsd:documentation>A link to a term definition, that is, to an entry in the "Terms and definitions" clause, in the subject document or another document.
The element value should be the term (in the correct grammar and lexical case for the context).
In a human-readable presentation of an XML document using this element, the element value should be represented as a hyperlink to the referenced term definition.</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 term definition, by means of the value of the "name" attribute of the "TermDefinition" element representing that definition.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                    <xsd:attribute name="docRefName" type="Identifier_Type" use="optional">
                        <xsd:annotation>
                            <xsd:documentation>If specified, the term is defined in another document; in this case, its value shall be the value of the "name" attribute of the "DocumentReference" element (defined in DSP8052) representing the document that defines the term.
If not specified, the term is defined in the subject document.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                </xsd:extension>
            </xsd:complexContent>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="SymbolLink">
        <xsd:annotation>
            <xsd:documentation>A link to a symbol definition, that is, an entry in the "Symbols and abbreviations" clause of the subject document or another document.
The element value should be the symbol or abbreviation (in the correct grammar, if applicable).
In a human-readable presentation of an XML document using this element, the element value should be represented as a hyperlink to the referenced symbol or abbreviation definition.</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 symbol or abbreviation definition, by means of the value of the "name" attribute of the "SymbolDefinition" element representing that definition.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                    <xsd:attribute name="docRefName" type="Identifier_Type" use="optional">
                        <xsd:annotation>
                            <xsd:documentation>If specified, the symbol or abbreviation is defined in another document; in this case, its value shall be the value of the "name" attribute of the "DocumentReference" element (defined in DSP8052) representing the document that defines the symbol or abbreviation.
If not specified, the symbol or abbreviation is defined in the subject document.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:attribute>
                </xsd:extension>
            </xsd:complexContent>
        </xsd:complexType>
    </xsd:element>
    <xsd:complexType name="TermDefinition_Type">
        <xsd:annotation>
            <xsd:documentation>Internal type for a term definition.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="Term" type="xsd:string">
                <xsd:annotation>
                    <xsd:documentation>The term that is defined.
The lexical case of the term shall be as if it were used in the middle of a sentence.
Unless the term contains names, the words of a term should be lowercase.
Examples: "network interface", "Ethernet interface".</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="Definition" minOccurs="1" maxOccurs="unbounded">
                <xsd:annotation>
                    <xsd:documentation>A definition of the term.
If a term has multiple definitions, there shall be one element for each definition.
Term definition text should be written such that its first sentence (that is, before the first period) can be used as a replacement for the term.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element ref="XHTML"/>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
        </xsd:sequence>
        <xsd:attribute name="name" use="required">
            <xsd:annotation>
                <xsd:documentation>An identifier for referencing the term definition.
The value shall be unique within the document that contains this "Terms and definitions" clause.</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="Identifier_Type">
                    <xsd:pattern value="Term_.*"/>
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:attribute>
    </xsd:complexType>
    <xsd:complexType name="SymbolDefinition_Type">
        <xsd:annotation>
            <xsd:documentation>Internal type representing a symbol or abbreviation definition.</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="Symbol">
                <xsd:annotation>
                    <xsd:documentation>The symbol or abbreviation that is defined.
A symbol normally consists of one character. There may be exceptional cases where the symbol is represented by an icon or a combination of multiple characters that form the symbol.
An abbreviation normally consists of one word. An abbreviation may contain characters of any lexical case.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexType mixed="true">
                    <xsd:choice>
                        <xsd:element ref="xhtml:img" minOccurs="0"/>
                    </xsd:choice>
                </xsd:complexType>
            </xsd:element>
            <xsd:element name="Definition">
                <xsd:annotation>
                    <xsd:documentation>A definition of the symbol or abbreviation.
If a symbol or abbreviation has multiple definitions, there shall be one element for each definition.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element ref="XHTML"/>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
        </xsd:sequence>
        <xsd:attribute name="name" use="required">
            <xsd:annotation>
                <xsd:documentation>An identifier for referencing the symbol or abbreviation definition.
The value shall be unique within the document that contains the "Symbols and abbreviations" clause.</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="Identifier_Type">
                    <xsd:pattern value="Sym_.*"/>
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:attribute>
    </xsd:complexType>
</xsd:schema>
