Rename ReelMXF -> ReelFileAsset.
[libdcp.git] / xsd / xml.xsd
1 <?xml version='1.0'?>
2 <!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "XMLSchema.dtd" >
3 <xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace" xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="en">
4
5  <xs:annotation>
6   <xs:documentation>
7    See http://www.w3.org/XML/1998/namespace.html and
8    http://www.w3.org/TR/REC-xml for information about this namespace.
9
10     This schema document describes the XML namespace, in a form
11     suitable for import by other schema documents.  
12
13     Note that local names in this namespace are intended to be defined
14     only by the World Wide Web Consortium or its subgroups.  The
15     following names are currently defined in this namespace and should
16     not be used with conflicting semantics by any Working Group,
17     specification, or document instance:
18
19     base (as an attribute name): denotes an attribute whose value
20          provides a URI to be used as the base for interpreting any
21          relative URIs in the scope of the element on which it
22          appears; its value is inherited.  This name is reserved
23          by virtue of its definition in the XML Base specification.
24
25     lang (as an attribute name): denotes an attribute whose value
26          is a language code for the natural language of the content of
27          any element; its value is inherited.  This name is reserved
28          by virtue of its definition in the XML specification.
29   
30     space (as an attribute name): denotes an attribute whose
31          value is a keyword indicating what whitespace processing
32          discipline is intended for the content of the element; its
33          value is inherited.  This name is reserved by virtue of its
34          definition in the XML specification.
35
36     Father (in any context at all): denotes Jon Bosak, the chair of 
37          the original XML Working Group.  This name is reserved by 
38          the following decision of the W3C XML Plenary and 
39          XML Coordination groups:
40
41              In appreciation for his vision, leadership and dedication
42              the W3C XML Plenary on this 10th day of February, 2000
43              reserves for Jon Bosak in perpetuity the XML name
44              xml:Father
45   </xs:documentation>
46  </xs:annotation>
47
48  <xs:annotation>
49   <xs:documentation>This schema defines attributes and an attribute group
50         suitable for use by
51         schemas wishing to allow xml:base, xml:lang or xml:space attributes
52         on elements they define.
53
54         To enable this, such a schema must import this schema
55         for the XML namespace, e.g. as follows:
56         &lt;schema . . .>
57          . . .
58          &lt;import namespace="http://www.w3.org/XML/1998/namespace"
59                     schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
60
61         Subsequently, qualified reference to any of the attributes
62         or the group defined below will have the desired effect, e.g.
63
64         &lt;type . . .>
65          . . .
66          &lt;attributeGroup ref="xml:specialAttrs"/>
67  
68          will define a type which will schema-validate an instance
69          element with any of those attributes</xs:documentation>
70  </xs:annotation>
71
72  <xs:annotation>
73   <xs:documentation>In keeping with the XML Schema WG's standard versioning
74    policy, this schema document will persist at
75    http://www.w3.org/2001/03/xml.xsd.
76    At the date of issue it can also be found at
77    http://www.w3.org/2001/xml.xsd.
78    The schema document at that URI may however change in the future,
79    in order to remain compatible with the latest version of XML Schema
80    itself.  In other words, if the XML Schema namespace changes, the version
81    of this document at
82    http://www.w3.org/2001/xml.xsd will change
83    accordingly; the version at
84    http://www.w3.org/2001/03/xml.xsd will not change.
85   </xs:documentation>
86  </xs:annotation>
87
88  <xs:attribute name="lang" type="xs:language">
89   <xs:annotation>
90    <xs:documentation>In due course, we should install the relevant ISO 2- and 3-letter
91          codes as the enumerated possible values . . .</xs:documentation>
92   </xs:annotation>
93  </xs:attribute>
94
95  <xs:attribute name="space" default="preserve">
96   <xs:simpleType>
97    <xs:restriction base="xs:NCName">
98     <xs:enumeration value="default"/>
99     <xs:enumeration value="preserve"/>
100    </xs:restriction>
101   </xs:simpleType>
102  </xs:attribute>
103
104  <xs:attribute name="base" type="xs:anyURI">
105   <xs:annotation>
106    <xs:documentation>See http://www.w3.org/TR/xmlbase/ for
107                      information about this attribute.</xs:documentation>
108   </xs:annotation>
109  </xs:attribute>
110
111  <xs:attributeGroup name="specialAttrs">
112   <xs:attribute ref="xml:base"/>
113   <xs:attribute ref="xml:lang"/>
114   <xs:attribute ref="xml:space"/>
115  </xs:attributeGroup>
116
117 </xs:schema>