eebfb932da596cbfffde0edcab62088792691a88
[acontent.git] / docs / home / ims / domainProfile_1 / common / dataTypes.xsd
1 <xs:schema xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">\r
2         <xs:annotation>\r
3                 <xs:documentation>\r
4          This work is licensed under the Creative Commons Attribution-ShareAlike\r
5          License.  To view a copy of this license, see the file license.txt,\r
6          visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to\r
7          Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.\r
8       </xs:documentation>\r
9                 <xs:documentation>\r
10          This component schema defintion defines global schema data type declarations\r
11          for data types defined in the LOMv1.0 base schema.\r
12       </xs:documentation>\r
13       <xs:documentation>\r
14          This file has been modified by the Knowledge Media Institute of the \r
15          University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the\r
16          following changes:\r
17          1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported \r
18             because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)\r
19          2) In all component XSDs the schemaLocation attribute was amended to the \r
20             xs:import and xs:include statements. This enables the usage of the schemas\r
21             with tools which don't deal well with missing schemaLocation informations.\r
22             \r
23          This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"\r
24       </xs:documentation>\r
25         </xs:annotation>\r
26         <xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="../unique/loose.xsd"/>\r
27         <xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="../extend/custom.xsd"/>\r
28          <xs:include schemaLocation="elementTypes.xsd"/>\r
29         <!-- Data type declarations -->\r
30         <!-- CharacterString -->\r
31         <xs:simpleType name="CharacterString">\r
32                 <xs:restriction base="xs:string"/>\r
33         </xs:simpleType>\r
34         <!-- LanguageId -->\r
35         <xs:complexType name="LanguageId">\r
36                 <xs:simpleContent>\r
37                         <xs:extension base="xs:language">\r
38                                 <xs:attributeGroup ref="ex:customAttributes"/>\r
39                         </xs:extension>\r
40                 </xs:simpleContent>\r
41         </xs:complexType>\r
42         <!-- VCard -->\r
43         <xs:complexType name="VCard">\r
44                 <xs:simpleContent>\r
45                         <xs:extension base="CharacterString">\r
46                                 <xs:attributeGroup ref="ex:customAttributes"/>\r
47                         </xs:extension>\r
48                 </xs:simpleContent>\r
49         </xs:complexType>\r
50         <!-- MimeType -->\r
51         <xs:simpleType name="MimeType">\r
52                 <xs:restriction base="CharacterString"/>\r
53         </xs:simpleType>\r
54         <!-- Size -->\r
55         <xs:simpleType name="Size">\r
56                 <xs:restriction base="xs:nonNegativeInteger"/>\r
57         </xs:simpleType>\r
58         <!-- LanguageString -->\r
59         <xs:complexType name="LanguageString">\r
60                 <xs:choice minOccurs="0" maxOccurs="unbounded">\r
61                         <xs:element name="string" type="LangString"/>\r
62                         <xs:group ref="ex:customElements"/>\r
63                 </xs:choice>\r
64                 <xs:attributeGroup ref="ex:customAttributes"/>\r
65         </xs:complexType>\r
66         <xs:complexType name="LangString">\r
67                 <xs:simpleContent>\r
68                         <xs:extension base="CharacterString">\r
69                                 <xs:attribute name="language" type="xs:language"/>\r
70                                 <xs:attributeGroup ref="ex:customAttributes"/>\r
71                         </xs:extension>\r
72                 </xs:simpleContent>\r
73         </xs:complexType>\r
74         <!-- DateTime -->\r
75         <xs:complexType name="DateTime">\r
76                 <xs:choice minOccurs="0" maxOccurs="unbounded">\r
77                         <xs:element name="dateTime" type="DateTimeValue"/>\r
78                         <xs:element name="description" type="description"/>\r
79                         <xs:group ref="ex:customElements"/>\r
80                 </xs:choice>\r
81         </xs:complexType>\r
82         <xs:complexType name="DateTimeValue">\r
83                 <xs:simpleContent>\r
84                         <xs:extension base="DateTimeString">\r
85                                 <xs:attributeGroup ref="ag:DateTimeValue"/>\r
86                                 <xs:attributeGroup ref="ex:customAttributes"/>\r
87                         </xs:extension>\r
88                 </xs:simpleContent>\r
89         </xs:complexType>\r
90         <!-- Regular expresion from Christian Klaue -->\r
91         <xs:simpleType name="DateTimeString">\r
92                 <xs:restriction base="CharacterString">\r
93                         <xs:pattern value="([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})(\-(0[1-9]|1[0-2])(\-(0[1-9]|[1-2][0-9]|3[0-1])(T([0-1][0-9]|2[0-3])(:[0-5][0-9](:[0-5][0-9](\.[0-9]{1,}(Z|((\+|\-)([0-1][0-9]|2[0-3]):[0-5][0-9]))?)?)?)?)?)?)?"/>\r
94                 </xs:restriction>\r
95         </xs:simpleType>\r
96         <!-- Duration -->\r
97         <xs:complexType name="Duration">\r
98                 <xs:choice minOccurs="0" maxOccurs="unbounded">\r
99                         <xs:element name="duration" type="DurationValue"/>\r
100                         <xs:element name="description" type="description"/>\r
101                         <xs:group ref="ex:customElements"/>\r
102                 </xs:choice>\r
103         </xs:complexType>\r
104         <xs:complexType name="DurationValue">\r
105                 <xs:simpleContent>\r
106                         <xs:extension base="DurationString">\r
107                                 <xs:attributeGroup ref="ag:DurationValue"/>\r
108                                 <xs:attributeGroup ref="ex:customAttributes"/>\r
109                         </xs:extension>\r
110                 </xs:simpleContent>\r
111         </xs:complexType>\r
112         <!-- Regular expresion from Christian Klaue -->\r
113         <xs:simpleType name="DurationString">\r
114                 <xs:restriction base="CharacterString">\r
115                         <xs:pattern value="P([0-9]{1,}Y){0,1}([0-9]{1,}M){0,1}([0-9]{1,}D){0,1}(T([0-9]{1,}H){0,1}([0-9]{1,}M){0,1}([0-9]{1,}(\.[0-9]{1,}){0,1}S){0,1}){0,1}"/>\r
116                 </xs:restriction>\r
117         </xs:simpleType>\r
118 </xs:schema>