]> git.donarmstrong.com Git - flightcrew.git/blob - src/FlightCrew/Schemas/ncx.xsd
Imported Upstream version 0.7.2+dfsg
[flightcrew.git] / src / FlightCrew / Schemas / ncx.xsd
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <xs:schema \r
3   elementFormDefault="qualified" \r
4   targetNamespace="http://www.daisy.org/z3986/2005/ncx/"\r
5   xmlns:ncx="http://www.daisy.org/z3986/2005/ncx/"\r
6   xmlns:xs="http://www.w3.org/2001/XMLSchema" >\r
7   \r
8   <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>\r
9   \r
10   <xs:element name="ncx">\r
11     <xs:complexType>\r
12       \r
13       <xs:sequence>\r
14         <xs:element ref="ncx:head"/>\r
15         <xs:element ref="ncx:docTitle"/>\r
16         <xs:element minOccurs="0" maxOccurs="unbounded" ref="ncx:docAuthor"/>\r
17         <xs:element ref="ncx:navMap"/>\r
18         <xs:element minOccurs="0" ref="ncx:pageList"/>\r
19         <xs:element minOccurs="0" maxOccurs="unbounded" ref="ncx:navList"/>\r
20       </xs:sequence>\r
21       \r
22       <xs:attribute name="version" use="required">\r
23         <xs:simpleType>\r
24           <xs:restriction base="xs:token">\r
25             <xs:enumeration value="2005-1"/>\r
26           </xs:restriction>\r
27         </xs:simpleType>\r
28       </xs:attribute>\r
29       \r
30       <xs:attributeGroup ref="ncx:i18n"/>\r
31     </xs:complexType>\r
32   </xs:element>\r
33   \r
34   <xs:element name="head">\r
35     <xs:complexType>\r
36       <xs:sequence>\r
37         <xs:element maxOccurs="unbounded" ref="ncx:meta"/>\r
38       </xs:sequence>\r
39     </xs:complexType>\r
40   </xs:element>\r
41   \r
42   <xs:element name="docTitle">\r
43     <xs:complexType>\r
44       <xs:sequence>\r
45         <xs:element ref="ncx:text"/>\r
46         <xs:element minOccurs="0" ref="ncx:img"/>\r
47       </xs:sequence>\r
48       <xs:attribute name="id"/>\r
49       <xs:attributeGroup ref="ncx:i18n"/>\r
50     </xs:complexType>\r
51   </xs:element>\r
52   \r
53   <xs:element name="docAuthor">\r
54     <xs:complexType>\r
55       <xs:sequence>\r
56         <xs:element ref="ncx:text"/>\r
57         <xs:element minOccurs="0" ref="ncx:img"/>\r
58       </xs:sequence>\r
59       <xs:attribute name="id"/>\r
60       <xs:attributeGroup ref="ncx:i18n"/>\r
61     </xs:complexType>\r
62   </xs:element>\r
63   \r
64   <xs:element name="navMap">\r
65     <xs:complexType>\r
66       <xs:sequence>\r
67         <xs:element minOccurs="0" maxOccurs="unbounded" ref="ncx:navInfo"/>\r
68         <xs:element minOccurs="0" maxOccurs="unbounded" ref="ncx:navLabel"/>\r
69         <xs:element maxOccurs="unbounded" ref="ncx:navPoint"/>\r
70       </xs:sequence>\r
71       <xs:attribute name="id"/>\r
72     </xs:complexType>\r
73   </xs:element>\r
74   \r
75   <xs:element name="text">\r
76     <xs:complexType mixed="true">\r
77       <xs:attribute name="id"/>\r
78       <xs:attribute name="class"/>\r
79     </xs:complexType>\r
80   </xs:element>\r
81   \r
82   <xs:element name="img">\r
83     <xs:complexType>\r
84       <xs:attribute name="id"/>\r
85       <xs:attribute name="class"/>\r
86       <xs:attribute name="src" use="required"/>\r
87     </xs:complexType>\r
88   </xs:element>\r
89   \r
90   <xs:element name="content">\r
91     <xs:complexType>\r
92       <xs:attribute name="id"/>\r
93       <xs:attribute name="src" use="required"/>\r
94     </xs:complexType>\r
95   </xs:element>\r
96   \r
97   <xs:element name="navInfo">\r
98     <xs:complexType>\r
99       <xs:sequence>\r
100         <xs:element ref="ncx:text"/>\r
101         <xs:element minOccurs="0" ref="ncx:img"/>\r
102       </xs:sequence>\r
103       <xs:attributeGroup ref="ncx:i18n"/>\r
104     </xs:complexType>\r
105   </xs:element>\r
106   \r
107   <xs:element name="navLabel">\r
108     <xs:complexType>\r
109       <xs:sequence>\r
110         <xs:element ref="ncx:text"/>\r
111         <xs:element minOccurs="0" ref="ncx:img"/>\r
112       </xs:sequence>\r
113       <xs:attributeGroup ref="ncx:i18n"/>\r
114     </xs:complexType>\r
115   </xs:element>\r
116   \r
117   <xs:element name="navPoint">\r
118     <xs:complexType>\r
119       <xs:sequence>\r
120         <xs:element maxOccurs="unbounded" ref="ncx:navLabel"/>\r
121         <xs:element ref="ncx:content"/>\r
122         <xs:element minOccurs="0" maxOccurs="unbounded" ref="ncx:navPoint"/>\r
123       </xs:sequence>\r
124       <xs:attribute name="id" use="required"/>\r
125       <xs:attribute name="class"/>\r
126       <xs:attribute name="playOrder"/>\r
127     </xs:complexType>\r
128   </xs:element>\r
129   \r
130   <xs:element name="pageList">\r
131     <xs:complexType>\r
132       <xs:sequence>\r
133         <xs:element minOccurs="0" ref="ncx:navLabel"/>\r
134         <xs:element minOccurs="0" ref="ncx:navInfo"/>\r
135         <xs:element maxOccurs="unbounded" ref="ncx:pageTarget"/>\r
136       </xs:sequence>\r
137       <xs:attribute name="id"/>\r
138       <xs:attribute name="class"/>\r
139     </xs:complexType>\r
140   </xs:element>\r
141   \r
142   <xs:element name="navList">\r
143     <xs:complexType>\r
144       <xs:sequence>\r
145         <xs:element minOccurs="0" maxOccurs="unbounded" ref="ncx:navInfo"/>\r
146         <xs:element maxOccurs="unbounded" ref="ncx:navLabel"/>\r
147         <xs:element maxOccurs="unbounded" ref="ncx:navTarget"/>\r
148       </xs:sequence>\r
149       <xs:attribute name="id"/>\r
150       <xs:attribute name="class"/>\r
151     </xs:complexType>\r
152   </xs:element>\r
153   \r
154   <xs:element name="pageTarget">\r
155     <xs:complexType>\r
156       <xs:sequence>\r
157         <xs:element maxOccurs="unbounded" ref="ncx:navLabel"/>\r
158         <xs:element ref="ncx:content"/>\r
159       </xs:sequence>\r
160       <xs:attribute name="id"/>\r
161       <xs:attribute name="value"/>\r
162       <xs:attribute name="type" use="required"/>\r
163       <xs:attribute name="class"/>\r
164       <xs:attribute name="playOrder"/>\r
165     </xs:complexType>\r
166   </xs:element>\r
167   \r
168   <xs:element name="navTarget">\r
169     <xs:complexType>\r
170       <xs:sequence>\r
171         <xs:element maxOccurs="unbounded" ref="ncx:navLabel"/>\r
172         <xs:element ref="ncx:content"/>\r
173       </xs:sequence>\r
174       <xs:attribute name="id" use="required"/>\r
175       <xs:attribute name="class"/>\r
176       <xs:attribute name="value"/>\r
177       <xs:attribute name="playOrder"/>\r
178     </xs:complexType>\r
179   </xs:element>\r
180   \r
181   <xs:element name="meta">\r
182     <xs:complexType>\r
183       <xs:attribute name="name" use="required"/>\r
184       <xs:attribute name="content" use="required"/>\r
185       <xs:attribute name="scheme"/>\r
186     </xs:complexType>\r
187   </xs:element>\r
188   \r
189   <xs:attributeGroup name="i18n">\r
190     <xs:attribute ref="xml:lang"/>\r
191     <xs:attribute name="dir">\r
192       <xs:simpleType>\r
193         <xs:restriction base="xs:token">\r
194           <xs:enumeration value="ltr"/>\r
195           <xs:enumeration value="rtl"/>\r
196         </xs:restriction>\r
197       </xs:simpleType>\r
198     </xs:attribute>\r
199   </xs:attributeGroup>\r
200   \r
201 </xs:schema>\r