|
1 <?xml version='1.0' encoding='UTF-8'?> |
|
2 <!-- XML Schema schema for XML Schemas: Part 1: Structures --> |
|
3 <!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "XMLSchema.dtd" [ |
|
4 |
|
5 <!-- provide ID type information even for parsers which only read the |
|
6 internal subset --> |
|
7 <!ATTLIST xs:schema id ID #IMPLIED> |
|
8 <!ATTLIST xs:complexType id ID #IMPLIED> |
|
9 <!ATTLIST xs:complexContent id ID #IMPLIED> |
|
10 <!ATTLIST xs:simpleContent id ID #IMPLIED> |
|
11 <!ATTLIST xs:extension id ID #IMPLIED> |
|
12 <!ATTLIST xs:element id ID #IMPLIED> |
|
13 <!ATTLIST xs:group id ID #IMPLIED> |
|
14 <!ATTLIST xs:all id ID #IMPLIED> |
|
15 <!ATTLIST xs:choice id ID #IMPLIED> |
|
16 <!ATTLIST xs:sequence id ID #IMPLIED> |
|
17 <!ATTLIST xs:any id ID #IMPLIED> |
|
18 <!ATTLIST xs:anyAttribute id ID #IMPLIED> |
|
19 <!ATTLIST xs:attribute id ID #IMPLIED> |
|
20 <!ATTLIST xs:attributeGroup id ID #IMPLIED> |
|
21 <!ATTLIST xs:unique id ID #IMPLIED> |
|
22 <!ATTLIST xs:key id ID #IMPLIED> |
|
23 <!ATTLIST xs:keyref id ID #IMPLIED> |
|
24 <!ATTLIST xs:selector id ID #IMPLIED> |
|
25 <!ATTLIST xs:field id ID #IMPLIED> |
|
26 <!ATTLIST xs:include id ID #IMPLIED> |
|
27 <!ATTLIST xs:import id ID #IMPLIED> |
|
28 <!ATTLIST xs:redefine id ID #IMPLIED> |
|
29 <!ATTLIST xs:notation id ID #IMPLIED> |
|
30 ]> |
|
31 <xs:schema targetNamespace="http://www.w3.org/2001/XMLSchema" blockDefault="#all" elementFormDefault="qualified" version="Id: XMLSchema.xsd,v 1.48 2001/04/24 18:56:39 ht Exp " xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="EN"> |
|
32 |
|
33 <xs:annotation> |
|
34 <xs:documentation source="http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/structures.html"> |
|
35 The schema corresponding to this document is normative, |
|
36 with respect to the syntactic constraints it expresses in the |
|
37 XML Schema language. The documentation (within <documentation> elements) |
|
38 below, is not normative, but rather highlights important aspects of |
|
39 the W3C Recommendation of which this is a part</xs:documentation> |
|
40 </xs:annotation> |
|
41 |
|
42 <xs:annotation> |
|
43 <xs:documentation> |
|
44 The simpleType element and all of its members are defined |
|
45 in datatypes.xsd</xs:documentation> |
|
46 </xs:annotation> |
|
47 |
|
48 <xs:include schemaLocation="datatypes.xsd"/> |
|
49 |
|
50 <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"> |
|
51 <xs:annotation> |
|
52 <xs:documentation> |
|
53 Get access to the xml: attribute groups for xml:lang |
|
54 as declared on 'schema' and 'documentation' below |
|
55 </xs:documentation> |
|
56 </xs:annotation> |
|
57 </xs:import> |
|
58 |
|
59 <xs:complexType name="openAttrs"> |
|
60 <xs:annotation> |
|
61 <xs:documentation> |
|
62 This type is extended by almost all schema types |
|
63 to allow attributes from other namespaces to be |
|
64 added to user schemas. |
|
65 </xs:documentation> |
|
66 </xs:annotation> |
|
67 <xs:complexContent> |
|
68 <xs:restriction base="xs:anyType"> |
|
69 <xs:anyAttribute namespace="##other" processContents="lax"/> |
|
70 </xs:restriction> |
|
71 </xs:complexContent> |
|
72 </xs:complexType> |
|
73 |
|
74 <xs:complexType name="annotated"> |
|
75 <xs:annotation> |
|
76 <xs:documentation> |
|
77 This type is extended by all types which allow annotation |
|
78 other than <schema> itself |
|
79 </xs:documentation> |
|
80 </xs:annotation> |
|
81 <xs:complexContent> |
|
82 <xs:extension base="xs:openAttrs"> |
|
83 <xs:sequence> |
|
84 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
85 </xs:sequence> |
|
86 <xs:attribute name="id" type="xs:ID"/> |
|
87 </xs:extension> |
|
88 </xs:complexContent> |
|
89 </xs:complexType> |
|
90 |
|
91 <xs:group name="schemaTop"> |
|
92 <xs:annotation> |
|
93 <xs:documentation> |
|
94 This group is for the |
|
95 elements which occur freely at the top level of schemas. |
|
96 All of their types are based on the "annotated" type by extension. |
|
97 </xs:documentation> |
|
98 </xs:annotation> |
|
99 <xs:choice> |
|
100 <xs:group ref="xs:redefinable"/> |
|
101 <xs:element ref="xs:element"/> |
|
102 <xs:element ref="xs:attribute"/> |
|
103 <xs:element ref="xs:notation"/> |
|
104 </xs:choice> |
|
105 </xs:group> |
|
106 |
|
107 <xs:group name="redefinable"> |
|
108 <xs:annotation> |
|
109 <xs:documentation> |
|
110 This group is for the |
|
111 elements which can self-redefine (see <redefine> below). |
|
112 </xs:documentation> |
|
113 </xs:annotation> |
|
114 <xs:choice> |
|
115 <xs:element ref="xs:simpleType"/> |
|
116 <xs:element ref="xs:complexType"/> |
|
117 <xs:element ref="xs:group"/> |
|
118 <xs:element ref="xs:attributeGroup"/> |
|
119 </xs:choice> |
|
120 </xs:group> |
|
121 |
|
122 <xs:simpleType name="formChoice"> |
|
123 <xs:annotation> |
|
124 <xs:documentation> |
|
125 A utility type, not for public use |
|
126 </xs:documentation> |
|
127 </xs:annotation> |
|
128 <xs:restriction base="xs:NMTOKEN"> |
|
129 <xs:enumeration value="qualified"/> |
|
130 <xs:enumeration value="unqualified"/> |
|
131 </xs:restriction> |
|
132 </xs:simpleType> |
|
133 |
|
134 <xs:simpleType name="reducedDerivationControl"> |
|
135 <xs:annotation> |
|
136 <xs:documentation> |
|
137 A utility type, not for public use |
|
138 </xs:documentation> |
|
139 </xs:annotation> |
|
140 <xs:restriction base="xs:derivationControl"> |
|
141 <xs:enumeration value="extension"/> |
|
142 <xs:enumeration value="restriction"/> |
|
143 </xs:restriction> |
|
144 </xs:simpleType> |
|
145 |
|
146 <xs:simpleType name="derivationSet"> |
|
147 <xs:annotation> |
|
148 <xs:documentation> |
|
149 A utility type, not for public use |
|
150 </xs:documentation> |
|
151 <xs:documentation> |
|
152 #all or (possibly empty) subset of {extension, restriction}</xs:documentation> |
|
153 </xs:annotation> |
|
154 <xs:union> |
|
155 <xs:simpleType> |
|
156 <xs:restriction base="xs:token"> |
|
157 <xs:enumeration value="#all"/> |
|
158 </xs:restriction> |
|
159 </xs:simpleType> |
|
160 <xs:simpleType> |
|
161 <xs:list itemType="xs:reducedDerivationControl"/> |
|
162 </xs:simpleType> |
|
163 </xs:union> |
|
164 </xs:simpleType> |
|
165 |
|
166 <xs:element name="schema" id="schema"> |
|
167 <xs:annotation> |
|
168 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-schema"/> |
|
169 </xs:annotation> |
|
170 <xs:complexType> |
|
171 <xs:complexContent> |
|
172 <xs:extension base="xs:openAttrs"> |
|
173 <xs:sequence> |
|
174 <xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
175 <xs:element ref="xs:include"/> |
|
176 <xs:element ref="xs:import"/> |
|
177 <xs:element ref="xs:redefine"/> |
|
178 <xs:element ref="xs:annotation"/> |
|
179 </xs:choice> |
|
180 <xs:sequence minOccurs="0" maxOccurs="unbounded"> |
|
181 <xs:group ref="xs:schemaTop"/> |
|
182 <xs:element ref="xs:annotation" minOccurs="0" maxOccurs="unbounded"/> |
|
183 </xs:sequence> |
|
184 </xs:sequence> |
|
185 <xs:attribute name="targetNamespace" type="xs:anyURI"/> |
|
186 <xs:attribute name="version" type="xs:token"/> |
|
187 <xs:attribute name="finalDefault" type="xs:derivationSet" use="optional" default="#all"/> |
|
188 <xs:attribute name="blockDefault" type="xs:blockSet" use="optional" default="#all"/> |
|
189 <xs:attribute name="attributeFormDefault" type="xs:formChoice" use="optional" default="unqualified"/> |
|
190 <xs:attribute name="elementFormDefault" type="xs:formChoice" use="optional" default="unqualified"/> |
|
191 <xs:attribute name="id" type="xs:ID"/> |
|
192 <xs:attribute ref="xml:lang"/> |
|
193 <xs:attribute ref="xmlns:xsd"/> |
|
194 </xs:extension> |
|
195 </xs:complexContent> |
|
196 </xs:complexType> |
|
197 |
|
198 <xs:key name="element"> |
|
199 <xs:selector xpath="xs:element"/> |
|
200 <xs:field xpath="@name"/> |
|
201 </xs:key> |
|
202 |
|
203 <xs:key name="attribute"> |
|
204 <xs:selector xpath="xs:attribute"/> |
|
205 <xs:field xpath="@name"/> |
|
206 </xs:key> |
|
207 |
|
208 <xs:key name="type"> |
|
209 <xs:selector xpath="xs:complexType|xs:simpleType"/> |
|
210 <xs:field xpath="@name"/> |
|
211 </xs:key> |
|
212 |
|
213 <xs:key name="group"> |
|
214 <xs:selector xpath="xs:group"/> |
|
215 <xs:field xpath="@name"/> |
|
216 </xs:key> |
|
217 |
|
218 <xs:key name="attributeGroup"> |
|
219 <xs:selector xpath="xs:attributeGroup"/> |
|
220 <xs:field xpath="@name"/> |
|
221 </xs:key> |
|
222 |
|
223 <xs:key name="notation"> |
|
224 <xs:selector xpath="xs:notation"/> |
|
225 <xs:field xpath="@name"/> |
|
226 </xs:key> |
|
227 |
|
228 <xs:key name="identityConstraint"> |
|
229 <xs:selector xpath=".//xs:key|.//xs:unique|.//xs:keyref"/> |
|
230 <xs:field xpath="@name"/> |
|
231 </xs:key> |
|
232 |
|
233 </xs:element> |
|
234 |
|
235 <xs:simpleType name="allNNI"> |
|
236 <xs:annotation><xs:documentation> |
|
237 for maxOccurs</xs:documentation></xs:annotation> |
|
238 <xs:union memberTypes="xs:nonNegativeInteger"> |
|
239 <xs:simpleType> |
|
240 <xs:restriction base="xs:NMTOKEN"> |
|
241 <xs:enumeration value="unbounded"/> |
|
242 </xs:restriction> |
|
243 </xs:simpleType> |
|
244 </xs:union> |
|
245 </xs:simpleType> |
|
246 |
|
247 <xs:attributeGroup name="occurs"> |
|
248 <xs:annotation><xs:documentation> |
|
249 for all particles</xs:documentation></xs:annotation> |
|
250 <xs:attribute name="minOccurs" type="xs:nonNegativeInteger" use="optional" default="1"/> |
|
251 <xs:attribute name="maxOccurs" type="xs:allNNI" use="optional" default="1"/> |
|
252 </xs:attributeGroup> |
|
253 |
|
254 <xs:attributeGroup name="defRef"> |
|
255 <xs:annotation><xs:documentation> |
|
256 for element, group and attributeGroup, |
|
257 which both define and reference</xs:documentation></xs:annotation> |
|
258 <xs:attribute name="name" type="xs:NCName"/> |
|
259 <xs:attribute name="ref" type="xs:QName"/> |
|
260 </xs:attributeGroup> |
|
261 |
|
262 <xs:group name="typeDefParticle"> |
|
263 <xs:annotation> |
|
264 <xs:documentation> |
|
265 'complexType' uses this</xs:documentation></xs:annotation> |
|
266 <xs:choice> |
|
267 <xs:element name="group" type="xs:groupRef"/> |
|
268 <xs:element ref="xs:all"/> |
|
269 <xs:element ref="xs:choice"/> |
|
270 <xs:element ref="xs:sequence"/> |
|
271 </xs:choice> |
|
272 </xs:group> |
|
273 |
|
274 |
|
275 |
|
276 <xs:group name="nestedParticle"> |
|
277 <xs:choice> |
|
278 <xs:element name="element" type="xs:localElement"/> |
|
279 <xs:element name="group" type="xs:groupRef"/> |
|
280 <xs:element ref="xs:choice"/> |
|
281 <xs:element ref="xs:sequence"/> |
|
282 <xs:element ref="xs:any"/> |
|
283 </xs:choice> |
|
284 </xs:group> |
|
285 |
|
286 <xs:group name="particle"> |
|
287 <xs:choice> |
|
288 <xs:element name="element" type="xs:localElement"/> |
|
289 <xs:element name="group" type="xs:groupRef"/> |
|
290 <xs:element ref="xs:all"/> |
|
291 <xs:element ref="xs:choice"/> |
|
292 <xs:element ref="xs:sequence"/> |
|
293 <xs:element ref="xs:any"/> |
|
294 </xs:choice> |
|
295 </xs:group> |
|
296 |
|
297 <xs:complexType name="attribute"> |
|
298 <xs:complexContent> |
|
299 <xs:extension base="xs:annotated"> |
|
300 <xs:sequence> |
|
301 <xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/> |
|
302 </xs:sequence> |
|
303 <xs:attributeGroup ref="xs:defRef"/> |
|
304 <xs:attribute name="type" type="xs:QName"/> |
|
305 <xs:attribute name="use" use="optional" default="optional"> |
|
306 <xs:simpleType> |
|
307 <xs:restriction base="xs:NMTOKEN"> |
|
308 <xs:enumeration value="prohibited"/> |
|
309 <xs:enumeration value="optional"/> |
|
310 <xs:enumeration value="required"/> |
|
311 </xs:restriction> |
|
312 </xs:simpleType> |
|
313 </xs:attribute> |
|
314 <xs:attribute name="default" type="xs:string"/> |
|
315 <xs:attribute name="fixed" type="xs:string"/> |
|
316 <xs:attribute name="form" type="xs:formChoice"/> |
|
317 </xs:extension> |
|
318 </xs:complexContent> |
|
319 </xs:complexType> |
|
320 |
|
321 <xs:complexType name="topLevelAttribute"> |
|
322 <xs:complexContent> |
|
323 <xs:restriction base="xs:attribute"> |
|
324 <xs:sequence> |
|
325 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
326 <xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/> |
|
327 </xs:sequence> |
|
328 <xs:attribute name="ref" use="prohibited"/> |
|
329 <xs:attribute name="form" use="prohibited"/> |
|
330 <xs:attribute name="use" use="prohibited"/> |
|
331 <xs:attribute name="name" use="required" type="xs:NCName"/> |
|
332 </xs:restriction> |
|
333 </xs:complexContent> |
|
334 </xs:complexType> |
|
335 |
|
336 <xs:group name="attrDecls"> |
|
337 <xs:sequence> |
|
338 <xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
339 <xs:element name="attribute" type="xs:attribute"/> |
|
340 <xs:element name="attributeGroup" type="xs:attributeGroupRef"/> |
|
341 </xs:choice> |
|
342 <xs:element ref="xs:anyAttribute" minOccurs="0"/> |
|
343 </xs:sequence> |
|
344 </xs:group> |
|
345 |
|
346 <xs:element name="anyAttribute" type="xs:wildcard" id="anyAttribute"> |
|
347 <xs:annotation> |
|
348 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-anyAttribute"/> |
|
349 </xs:annotation> |
|
350 </xs:element> |
|
351 |
|
352 <xs:group name="complexTypeModel"> |
|
353 <xs:choice> |
|
354 <xs:element ref="xs:simpleContent"/> |
|
355 <xs:element ref="xs:complexContent"/> |
|
356 <xs:sequence> |
|
357 <xs:annotation> |
|
358 <xs:documentation> |
|
359 This branch is short for |
|
360 <complexContent> |
|
361 <restriction base="xs:anyType"> |
|
362 ... |
|
363 </restriction> |
|
364 </complexContent> |
|
365 </xs:documentation> |
|
366 </xs:annotation> |
|
367 <xs:group ref="xs:typeDefParticle" minOccurs="0"/> |
|
368 <xs:group ref="xs:attrDecls"/> |
|
369 </xs:sequence> |
|
370 </xs:choice> |
|
371 </xs:group> |
|
372 |
|
373 <xs:complexType name="complexType" abstract="true"> |
|
374 <xs:complexContent> |
|
375 <xs:extension base="xs:annotated"> |
|
376 <xs:group ref="xs:complexTypeModel"/> |
|
377 <xs:attribute name="name" type="xs:NCName"> |
|
378 <xs:annotation> |
|
379 <xs:documentation> |
|
380 Will be restricted to required or forbidden |
|
381 </xs:documentation> |
|
382 </xs:annotation> |
|
383 </xs:attribute> |
|
384 <xs:attribute name="mixed" type="xs:boolean" use="optional" default="false"> |
|
385 <xs:annotation> |
|
386 <xs:documentation> |
|
387 Not allowed if simpleContent child is chosen. |
|
388 May be overriden by setting on complexContent child. |
|
389 </xs:documentation> |
|
390 </xs:annotation> |
|
391 </xs:attribute> |
|
392 <xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/> |
|
393 <xs:attribute name="final" type="xs:derivationSet"/> |
|
394 <xs:attribute name="block" type="xs:derivationSet"/> |
|
395 </xs:extension> |
|
396 </xs:complexContent> |
|
397 </xs:complexType> |
|
398 |
|
399 <xs:complexType name="topLevelComplexType"> |
|
400 <xs:complexContent> |
|
401 <xs:restriction base="xs:complexType"> |
|
402 <xs:sequence> |
|
403 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
404 <xs:group ref="xs:complexTypeModel"/> |
|
405 </xs:sequence> |
|
406 <xs:attribute name="name" type="xs:NCName" use="required"/> |
|
407 </xs:restriction> |
|
408 </xs:complexContent> |
|
409 </xs:complexType> |
|
410 |
|
411 <xs:complexType name="localComplexType"> |
|
412 <xs:complexContent> |
|
413 <xs:restriction base="xs:complexType"> |
|
414 <xs:sequence> |
|
415 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
416 <xs:group ref="xs:complexTypeModel"/> |
|
417 </xs:sequence> |
|
418 <xs:attribute name="name" use="prohibited"/> |
|
419 <xs:attribute name="abstract" use="prohibited"/> |
|
420 <xs:attribute name="final" use="prohibited"/> |
|
421 <xs:attribute name="block" use="prohibited"/> |
|
422 </xs:restriction> |
|
423 </xs:complexContent> |
|
424 </xs:complexType> |
|
425 |
|
426 <xs:complexType name="restrictionType"> |
|
427 <xs:complexContent> |
|
428 <xs:extension base="xs:annotated"> |
|
429 <xs:sequence> |
|
430 <xs:choice> |
|
431 <xs:group ref="xs:typeDefParticle" minOccurs="0"/> |
|
432 <xs:group ref="xs:simpleRestrictionModel" minOccurs="0"/> |
|
433 </xs:choice> |
|
434 <xs:group ref="xs:attrDecls"/> |
|
435 </xs:sequence> |
|
436 <xs:attribute name="base" type="xs:QName" use="required"/> |
|
437 </xs:extension> |
|
438 </xs:complexContent> |
|
439 </xs:complexType> |
|
440 |
|
441 <xs:complexType name="complexRestrictionType"> |
|
442 <xs:complexContent> |
|
443 <xs:restriction base="xs:restrictionType"> |
|
444 <xs:sequence> |
|
445 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
446 <xs:group ref="xs:typeDefParticle" minOccurs="0"/> |
|
447 <xs:group ref="xs:attrDecls"/> |
|
448 </xs:sequence> |
|
449 </xs:restriction> |
|
450 </xs:complexContent> |
|
451 </xs:complexType> |
|
452 |
|
453 <xs:complexType name="extensionType"> |
|
454 <xs:complexContent> |
|
455 <xs:extension base="xs:annotated"> |
|
456 <xs:sequence> |
|
457 <xs:group ref="xs:typeDefParticle" minOccurs="0"/> |
|
458 <xs:group ref="xs:attrDecls"/> |
|
459 </xs:sequence> |
|
460 <xs:attribute name="base" type="xs:QName" use="required"/> |
|
461 </xs:extension> |
|
462 </xs:complexContent> |
|
463 </xs:complexType> |
|
464 |
|
465 <xs:element name="complexContent" id="complexContent"> |
|
466 <xs:annotation> |
|
467 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexContent"/> |
|
468 </xs:annotation> |
|
469 <xs:complexType> |
|
470 <xs:complexContent> |
|
471 <xs:extension base="xs:annotated"> |
|
472 <xs:choice> |
|
473 <xs:element name="restriction" type="xs:complexRestrictionType"/> |
|
474 <xs:element name="extension" type="xs:extensionType"/> |
|
475 </xs:choice> |
|
476 <xs:attribute name="mixed" type="xs:boolean"> |
|
477 <xs:annotation> |
|
478 <xs:documentation> |
|
479 Overrides any setting on complexType parent.</xs:documentation> |
|
480 </xs:annotation> |
|
481 </xs:attribute> |
|
482 </xs:extension> |
|
483 </xs:complexContent> |
|
484 </xs:complexType> |
|
485 </xs:element> |
|
486 |
|
487 <xs:complexType name="simpleRestrictionType"> |
|
488 <xs:complexContent> |
|
489 <xs:restriction base="xs:restrictionType"> |
|
490 <xs:sequence> |
|
491 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
492 <xs:group ref="xs:simpleRestrictionModel" minOccurs="0"/> |
|
493 <xs:group ref="xs:attrDecls"/> |
|
494 </xs:sequence> |
|
495 </xs:restriction> |
|
496 </xs:complexContent> |
|
497 </xs:complexType> |
|
498 |
|
499 <xs:complexType name="simpleExtensionType"> |
|
500 <xs:complexContent> |
|
501 <xs:restriction base="xs:extensionType"> |
|
502 <xs:sequence> |
|
503 <xs:annotation> |
|
504 <xs:documentation> |
|
505 No typeDefParticle group reference</xs:documentation> |
|
506 </xs:annotation> |
|
507 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
508 <xs:group ref="xs:attrDecls"/> |
|
509 </xs:sequence> |
|
510 </xs:restriction> |
|
511 </xs:complexContent> |
|
512 </xs:complexType> |
|
513 |
|
514 <xs:element name="simpleContent" id="simpleContent"> |
|
515 <xs:annotation> |
|
516 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-simpleContent"/> |
|
517 </xs:annotation> |
|
518 <xs:complexType> |
|
519 <xs:complexContent> |
|
520 <xs:extension base="xs:annotated"> |
|
521 <xs:choice> |
|
522 <xs:element name="restriction" type="xs:simpleRestrictionType"/> |
|
523 <xs:element name="extension" type="xs:simpleExtensionType"/> |
|
524 </xs:choice> |
|
525 </xs:extension> |
|
526 </xs:complexContent> |
|
527 </xs:complexType> |
|
528 </xs:element> |
|
529 |
|
530 <xs:element name="complexType" type="xs:topLevelComplexType" id="complexType"> |
|
531 <xs:annotation> |
|
532 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexType"/> |
|
533 </xs:annotation> |
|
534 </xs:element> |
|
535 |
|
536 |
|
537 <xs:simpleType name="blockSet"> |
|
538 <xs:annotation> |
|
539 <xs:documentation> |
|
540 A utility type, not for public use</xs:documentation> |
|
541 <xs:documentation> |
|
542 #all or (possibly empty) subset of {substitution, extension, |
|
543 restriction}</xs:documentation> |
|
544 </xs:annotation> |
|
545 <xs:union> |
|
546 <xs:simpleType> |
|
547 <xs:restriction base="xs:token"> |
|
548 <xs:enumeration value="#all"/> |
|
549 </xs:restriction> |
|
550 </xs:simpleType> |
|
551 <xs:simpleType> |
|
552 <xs:list> |
|
553 <xs:simpleType> |
|
554 <xs:restriction base="xs:derivationControl"> |
|
555 <xs:enumeration value="extension"/> |
|
556 <xs:enumeration value="restriction"/> |
|
557 <xs:enumeration value="substitution"/> |
|
558 </xs:restriction> |
|
559 </xs:simpleType> |
|
560 </xs:list> |
|
561 </xs:simpleType> |
|
562 </xs:union> |
|
563 </xs:simpleType> |
|
564 |
|
565 <xs:complexType name="element" abstract="true"> |
|
566 <xs:annotation> |
|
567 <xs:documentation> |
|
568 The element element can be used either |
|
569 at the top level to define an element-type binding globally, |
|
570 or within a content model to either reference a globally-defined |
|
571 element or type or declare an element-type binding locally. |
|
572 The ref form is not allowed at the top level.</xs:documentation> |
|
573 </xs:annotation> |
|
574 |
|
575 <xs:complexContent> |
|
576 <xs:extension base="xs:annotated"> |
|
577 <xs:sequence> |
|
578 <xs:choice minOccurs="0"> |
|
579 <xs:element name="simpleType" type="xs:localSimpleType"/> |
|
580 <xs:element name="complexType" type="xs:localComplexType"/> |
|
581 </xs:choice> |
|
582 <xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/> |
|
583 </xs:sequence> |
|
584 <xs:attributeGroup ref="xs:defRef"/> |
|
585 <xs:attribute name="type" type="xs:QName"/> |
|
586 <xs:attribute name="substitutionGroup" type="xs:QName"/> |
|
587 <xs:attributeGroup ref="xs:occurs"/> |
|
588 <xs:attribute name="default" type="xs:string"/> |
|
589 <xs:attribute name="fixed" type="xs:string"/> |
|
590 <xs:attribute name="nillable" type="xs:boolean" use="optional" default="false"/> |
|
591 <xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/> |
|
592 <xs:attribute name="final" type="xs:derivationSet"/> |
|
593 <xs:attribute name="block" type="xs:blockSet"/> |
|
594 <xs:attribute name="form" type="xs:formChoice"/> |
|
595 </xs:extension> |
|
596 </xs:complexContent> |
|
597 </xs:complexType> |
|
598 |
|
599 <xs:complexType name="topLevelElement"> |
|
600 <xs:complexContent> |
|
601 <xs:restriction base="xs:element"> |
|
602 <xs:sequence> |
|
603 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
604 <xs:choice minOccurs="0"> |
|
605 <xs:element name="simpleType" type="xs:localSimpleType"/> |
|
606 <xs:element name="complexType" type="xs:localComplexType"/> |
|
607 </xs:choice> |
|
608 <xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/> |
|
609 </xs:sequence> |
|
610 <xs:attribute name="ref" use="prohibited"/> |
|
611 <xs:attribute name="form" use="prohibited"/> |
|
612 <xs:attribute name="minOccurs" use="prohibited"/> |
|
613 <xs:attribute name="maxOccurs" use="prohibited"/> |
|
614 <xs:attribute name="name" use="required" type="xs:NCName"/> |
|
615 </xs:restriction> |
|
616 </xs:complexContent> |
|
617 </xs:complexType> |
|
618 |
|
619 <xs:complexType name="localElement"> |
|
620 <xs:complexContent> |
|
621 <xs:restriction base="xs:element"> |
|
622 <xs:sequence> |
|
623 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
624 <xs:choice minOccurs="0"> |
|
625 <xs:element name="simpleType" type="xs:localSimpleType"/> |
|
626 <xs:element name="complexType" type="xs:localComplexType"/> |
|
627 </xs:choice> |
|
628 <xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/> |
|
629 </xs:sequence> |
|
630 <xs:attribute name="substitutionGroup" use="prohibited"/> |
|
631 <xs:attribute name="final" use="prohibited"/> |
|
632 <xs:attribute name="abstract" use="prohibited"/> |
|
633 </xs:restriction> |
|
634 </xs:complexContent> |
|
635 </xs:complexType> |
|
636 |
|
637 <xs:element name="element" type="xs:topLevelElement" id="element"> |
|
638 <xs:annotation> |
|
639 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-element"/> |
|
640 </xs:annotation> |
|
641 </xs:element> |
|
642 |
|
643 <xs:complexType name="group" abstract="true"> |
|
644 <xs:annotation> |
|
645 <xs:documentation> |
|
646 group type for explicit groups, named top-level groups and |
|
647 group references</xs:documentation> |
|
648 </xs:annotation> |
|
649 <xs:complexContent> |
|
650 <xs:extension base="xs:annotated"> |
|
651 <xs:group ref="xs:particle" minOccurs="0" maxOccurs="unbounded"/> |
|
652 <xs:attributeGroup ref="xs:defRef"/> |
|
653 <xs:attributeGroup ref="xs:occurs"/> |
|
654 </xs:extension> |
|
655 </xs:complexContent> |
|
656 </xs:complexType> |
|
657 |
|
658 <xs:complexType name="realGroup"> |
|
659 <xs:complexContent> |
|
660 <xs:restriction base="xs:group"> |
|
661 <xs:sequence> |
|
662 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
663 <xs:choice minOccurs="0" maxOccurs="1"> |
|
664 <xs:element ref="xs:all"/> |
|
665 <xs:element ref="xs:choice"/> |
|
666 <xs:element ref="xs:sequence"/> |
|
667 </xs:choice> |
|
668 </xs:sequence> |
|
669 </xs:restriction> |
|
670 </xs:complexContent> |
|
671 </xs:complexType> |
|
672 |
|
673 <xs:complexType name="namedGroup"> |
|
674 <xs:annotation> |
|
675 <xs:documentation>Should derive this from realGroup, but too complicated |
|
676 for now</xs:documentation> |
|
677 </xs:annotation> |
|
678 <xs:sequence> |
|
679 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
680 <xs:choice minOccurs="1" maxOccurs="1"> |
|
681 <xs:element name="all"> |
|
682 <xs:complexType> |
|
683 <xs:complexContent> |
|
684 <xs:restriction base="xs:all"> |
|
685 <xs:group ref="xs:allModel"/> |
|
686 <xs:attribute name="minOccurs" use="prohibited"/> |
|
687 <xs:attribute name="maxOccurs" use="prohibited"/> |
|
688 </xs:restriction> |
|
689 </xs:complexContent> |
|
690 </xs:complexType> |
|
691 </xs:element> |
|
692 <xs:element name="choice" type="xs:simpleExplicitGroup"/> |
|
693 <xs:element name="sequence" type="xs:simpleExplicitGroup"/> |
|
694 </xs:choice> |
|
695 </xs:sequence> |
|
696 <xs:attribute name="name" use="required" type="xs:NCName"/> |
|
697 <xs:attribute name="ref" use="prohibited"/> |
|
698 <xs:attribute name="minOccurs" use="prohibited"/> |
|
699 <xs:attribute name="maxOccurs" use="prohibited"/> |
|
700 </xs:complexType> |
|
701 |
|
702 <xs:complexType name="groupRef"> |
|
703 <xs:complexContent> |
|
704 <xs:restriction base="xs:realGroup"> |
|
705 <xs:sequence> |
|
706 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
707 </xs:sequence> |
|
708 <xs:attribute name="ref" use="required" type="xs:QName"/> |
|
709 <xs:attribute name="name" use="prohibited"/> |
|
710 </xs:restriction> |
|
711 </xs:complexContent> |
|
712 </xs:complexType> |
|
713 |
|
714 <xs:complexType name="explicitGroup"> |
|
715 <xs:annotation> |
|
716 <xs:documentation> |
|
717 group type for the three kinds of group</xs:documentation> |
|
718 </xs:annotation> |
|
719 <xs:complexContent> |
|
720 <xs:restriction base="xs:group"> |
|
721 <xs:sequence> |
|
722 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
723 <xs:group ref="xs:nestedParticle" minOccurs="0" maxOccurs="unbounded"/> |
|
724 </xs:sequence> |
|
725 <xs:attribute name="name" type="xs:NCName" use="prohibited"/> |
|
726 <xs:attribute name="ref" type="xs:QName" use="prohibited"/> |
|
727 </xs:restriction> |
|
728 </xs:complexContent> |
|
729 </xs:complexType> |
|
730 |
|
731 <xs:complexType name="simpleExplicitGroup"> |
|
732 <xs:complexContent> |
|
733 <xs:restriction base="xs:explicitGroup"> |
|
734 <xs:sequence> |
|
735 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
736 <xs:group ref="xs:nestedParticle" minOccurs="0" maxOccurs="unbounded"/> |
|
737 </xs:sequence> |
|
738 <xs:attribute name="minOccurs" use="prohibited"/> |
|
739 <xs:attribute name="maxOccurs" use="prohibited"/> |
|
740 </xs:restriction> |
|
741 </xs:complexContent> |
|
742 </xs:complexType> |
|
743 |
|
744 <xs:group name="allModel"> |
|
745 <xs:sequence> |
|
746 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
747 <xs:element name="element" minOccurs="0" maxOccurs="unbounded"> |
|
748 <xs:complexType> |
|
749 <xs:annotation> |
|
750 <xs:documentation>restricted max/min</xs:documentation> |
|
751 </xs:annotation> |
|
752 <xs:complexContent> |
|
753 <xs:restriction base="xs:localElement"> |
|
754 <xs:sequence> |
|
755 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
756 <xs:choice minOccurs="0"> |
|
757 <xs:element name="simpleType" type="xs:localSimpleType"/> |
|
758 <xs:element name="complexType" type="xs:localComplexType"/> |
|
759 </xs:choice> |
|
760 <xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/> |
|
761 </xs:sequence> |
|
762 <xs:attribute name="minOccurs" use="optional" default="1"> |
|
763 <xs:simpleType> |
|
764 <xs:restriction base="xs:nonNegativeInteger"> |
|
765 <xs:enumeration value="0"/> |
|
766 <xs:enumeration value="1"/> |
|
767 </xs:restriction> |
|
768 </xs:simpleType> |
|
769 </xs:attribute> |
|
770 <xs:attribute name="maxOccurs" use="optional" default="1"> |
|
771 <xs:simpleType> |
|
772 <xs:restriction base="xs:allNNI"> |
|
773 <xs:enumeration value="0"/> |
|
774 <xs:enumeration value="1"/> |
|
775 </xs:restriction> |
|
776 </xs:simpleType> |
|
777 </xs:attribute> |
|
778 </xs:restriction> |
|
779 </xs:complexContent> |
|
780 </xs:complexType> |
|
781 </xs:element> |
|
782 </xs:sequence> |
|
783 </xs:group> |
|
784 |
|
785 <xs:complexType name="all"> |
|
786 <xs:annotation> |
|
787 <xs:documentation> |
|
788 Only elements allowed inside</xs:documentation> |
|
789 </xs:annotation> |
|
790 <xs:complexContent> |
|
791 <xs:restriction base="xs:explicitGroup"> |
|
792 <xs:group ref="xs:allModel"/> |
|
793 <xs:attribute name="minOccurs" use="optional" default="1"> |
|
794 <xs:simpleType> |
|
795 <xs:restriction base="xs:nonNegativeInteger"> |
|
796 <xs:enumeration value="0"/> |
|
797 <xs:enumeration value="1"/> |
|
798 </xs:restriction> |
|
799 </xs:simpleType> |
|
800 </xs:attribute> |
|
801 <xs:attribute name="maxOccurs" use="optional" default="1"> |
|
802 <xs:simpleType> |
|
803 <xs:restriction base="xs:allNNI"> |
|
804 <xs:enumeration value="1"/> |
|
805 </xs:restriction> |
|
806 </xs:simpleType> |
|
807 </xs:attribute> |
|
808 </xs:restriction> |
|
809 </xs:complexContent> |
|
810 </xs:complexType> |
|
811 |
|
812 <xs:element name="all" id="all" type="xs:all"> |
|
813 <xs:annotation> |
|
814 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-all"/> |
|
815 </xs:annotation> |
|
816 </xs:element> |
|
817 |
|
818 <xs:element name="choice" type="xs:explicitGroup" id="choice"> |
|
819 <xs:annotation> |
|
820 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-choice"/> |
|
821 </xs:annotation> |
|
822 </xs:element> |
|
823 |
|
824 <xs:element name="sequence" type="xs:explicitGroup" id="sequence"> |
|
825 <xs:annotation> |
|
826 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-sequence"/> |
|
827 </xs:annotation> |
|
828 </xs:element> |
|
829 |
|
830 <xs:element name="group" type="xs:namedGroup" id="group"> |
|
831 <xs:annotation> |
|
832 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-group"/> |
|
833 </xs:annotation> |
|
834 </xs:element> |
|
835 |
|
836 <xs:complexType name="wildcard"> |
|
837 <xs:complexContent> |
|
838 <xs:extension base="xs:annotated"> |
|
839 <xs:attribute name="namespace" type="xs:namespaceList" use="optional" default="##any"/> |
|
840 <xs:attribute name="processContents" use="optional" default="strict"> |
|
841 <xs:simpleType> |
|
842 <xs:restriction base="xs:NMTOKEN"> |
|
843 <xs:enumeration value="skip"/> |
|
844 <xs:enumeration value="lax"/> |
|
845 <xs:enumeration value="strict"/> |
|
846 </xs:restriction> |
|
847 </xs:simpleType> |
|
848 </xs:attribute> |
|
849 </xs:extension> |
|
850 </xs:complexContent> |
|
851 </xs:complexType> |
|
852 |
|
853 <xs:element name="any" id="any"> |
|
854 <xs:annotation> |
|
855 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-any"/> |
|
856 </xs:annotation> |
|
857 <xs:complexType> |
|
858 <xs:complexContent> |
|
859 <xs:extension base="xs:wildcard"> |
|
860 <xs:attributeGroup ref="xs:occurs"/> |
|
861 </xs:extension> |
|
862 </xs:complexContent> |
|
863 </xs:complexType> |
|
864 </xs:element> |
|
865 |
|
866 <xs:annotation> |
|
867 <xs:documentation> |
|
868 simple type for the value of the 'namespace' attr of |
|
869 'any' and 'anyAttribute'</xs:documentation> |
|
870 </xs:annotation> |
|
871 <xs:annotation> |
|
872 <xs:documentation> |
|
873 Value is |
|
874 ##any - - any non-conflicting WFXML/attribute at all |
|
875 |
|
876 ##other - - any non-conflicting WFXML/attribute from |
|
877 namespace other than targetNS |
|
878 |
|
879 ##local - - any unqualified non-conflicting WFXML/attribute |
|
880 |
|
881 one or - - any non-conflicting WFXML/attribute from |
|
882 more URI the listed namespaces |
|
883 references |
|
884 (space separated) |
|
885 |
|
886 ##targetNamespace or ##local may appear in the above list, to |
|
887 refer to the targetNamespace of the enclosing |
|
888 schema or an absent targetNamespace respectively</xs:documentation> |
|
889 </xs:annotation> |
|
890 |
|
891 <xs:simpleType name="namespaceList"> |
|
892 <xs:annotation> |
|
893 <xs:documentation> |
|
894 A utility type, not for public use</xs:documentation> |
|
895 </xs:annotation> |
|
896 <xs:union> |
|
897 <xs:simpleType> |
|
898 <xs:restriction base="xs:token"> |
|
899 <xs:enumeration value="##any"/> |
|
900 <xs:enumeration value="##other"/> |
|
901 </xs:restriction> |
|
902 </xs:simpleType> |
|
903 <xs:simpleType> |
|
904 <xs:list> |
|
905 <xs:simpleType> |
|
906 <xs:union memberTypes="xs:anyURI"> |
|
907 <xs:simpleType> |
|
908 <xs:restriction base="xs:token"> |
|
909 <xs:enumeration value="##targetNamespace"/> |
|
910 <xs:enumeration value="##local"/> |
|
911 </xs:restriction> |
|
912 </xs:simpleType> |
|
913 </xs:union> |
|
914 </xs:simpleType> |
|
915 </xs:list> |
|
916 </xs:simpleType> |
|
917 </xs:union> |
|
918 </xs:simpleType> |
|
919 |
|
920 <xs:element name="attribute" type="xs:topLevelAttribute" id="attribute"> |
|
921 <xs:annotation> |
|
922 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-attribute"/> |
|
923 </xs:annotation> |
|
924 </xs:element> |
|
925 |
|
926 <xs:complexType name="attributeGroup" abstract="true"> |
|
927 <xs:complexContent> |
|
928 <xs:extension base="xs:annotated"> |
|
929 <xs:group ref="xs:attrDecls"/> |
|
930 <xs:attributeGroup ref="xs:defRef"/> |
|
931 </xs:extension> |
|
932 </xs:complexContent> |
|
933 </xs:complexType> |
|
934 |
|
935 <xs:complexType name="namedAttributeGroup"> |
|
936 <xs:complexContent> |
|
937 <xs:restriction base="xs:attributeGroup"> |
|
938 <xs:sequence> |
|
939 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
940 <xs:group ref="xs:attrDecls"/> |
|
941 </xs:sequence> |
|
942 <xs:attribute name="name" use="required" type="xs:NCName"/> |
|
943 <xs:attribute name="ref" use="prohibited"/> |
|
944 </xs:restriction> |
|
945 </xs:complexContent> |
|
946 </xs:complexType> |
|
947 |
|
948 <xs:complexType name="attributeGroupRef"> |
|
949 <xs:complexContent> |
|
950 <xs:restriction base="xs:attributeGroup"> |
|
951 <xs:sequence> |
|
952 <xs:element ref="xs:annotation" minOccurs="0"/> |
|
953 </xs:sequence> |
|
954 <xs:attribute name="ref" use="required" type="xs:QName"/> |
|
955 <xs:attribute name="name" use="prohibited"/> |
|
956 </xs:restriction> |
|
957 </xs:complexContent> |
|
958 </xs:complexType> |
|
959 |
|
960 <xs:element name="attributeGroup" type="xs:namedAttributeGroup" id="attributeGroup"> |
|
961 <xs:annotation> |
|
962 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-attributeGroup"/> |
|
963 </xs:annotation> |
|
964 </xs:element> |
|
965 |
|
966 <xs:element name="include" id="include"> |
|
967 <xs:annotation> |
|
968 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-include"/> |
|
969 </xs:annotation> |
|
970 <xs:complexType> |
|
971 <xs:complexContent> |
|
972 <xs:extension base="xs:annotated"> |
|
973 <xs:attribute name="schemaLocation" type="xs:anyURI" use="required"/> |
|
974 </xs:extension> |
|
975 </xs:complexContent> |
|
976 </xs:complexType> |
|
977 </xs:element> |
|
978 |
|
979 <xs:element name="redefine" id="redefine"> |
|
980 <xs:annotation> |
|
981 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-redefine"/> |
|
982 </xs:annotation> |
|
983 <xs:complexType> |
|
984 <xs:complexContent> |
|
985 <xs:extension base="xs:openAttrs"> |
|
986 <xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
987 <xs:element ref="xs:annotation"/> |
|
988 <xs:group ref="xs:redefinable"/> |
|
989 </xs:choice> |
|
990 <xs:attribute name="schemaLocation" type="xs:anyURI" use="required"/> |
|
991 <xs:attribute name="id" type="xs:ID"/> |
|
992 </xs:extension> |
|
993 </xs:complexContent> |
|
994 </xs:complexType> |
|
995 </xs:element> |
|
996 |
|
997 <xs:element name="import" id="import"> |
|
998 <xs:annotation> |
|
999 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-import"/> |
|
1000 </xs:annotation> |
|
1001 <xs:complexType> |
|
1002 <xs:complexContent> |
|
1003 <xs:extension base="xs:annotated"> |
|
1004 <xs:attribute name="namespace" type="xs:anyURI"/> |
|
1005 <xs:attribute name="schemaLocation" type="xs:anyURI"/> |
|
1006 </xs:extension> |
|
1007 </xs:complexContent> |
|
1008 </xs:complexType> |
|
1009 </xs:element> |
|
1010 |
|
1011 <xs:element name="selector" id="selector"> |
|
1012 <xs:annotation> |
|
1013 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-selector"/> |
|
1014 </xs:annotation> |
|
1015 <xs:complexType> |
|
1016 <xs:complexContent> |
|
1017 <xs:extension base="xs:annotated"> |
|
1018 <xs:attribute name="xpath" use="required"> |
|
1019 <xs:simpleType> |
|
1020 <xs:annotation> |
|
1021 <xs:documentation>A subset of XPath expressions for use |
|
1022 in selectors</xs:documentation> |
|
1023 <xs:documentation>A utility type, not for public |
|
1024 use</xs:documentation> |
|
1025 </xs:annotation> |
|
1026 <xs:restriction base="xs:token"> |
|
1027 <xs:annotation> |
|
1028 <xs:documentation>The following pattern is intended to allow XPath |
|
1029 expressions per the following EBNF: |
|
1030 Selector ::= Path ( '|' Path )* |
|
1031 Path ::= ('.//')? Step ( '/' Step )* |
|
1032 Step ::= '.' | NameTest |
|
1033 NameTest ::= QName | '*' | NCName ':' '*' |
|
1034 child:: is also allowed |
|
1035 </xs:documentation> |
|
1036 </xs:annotation> |
|
1037 <xs:pattern value="(\.//)?(((child::)?(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*)))|\.)(/(((child::)?(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*)))|\.))*(\|(\.//)?(((child::)?(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*)))|\.)(/(((child::)?(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]/*|\*)))|\.))*)*"> |
|
1038 </xs:pattern> |
|
1039 </xs:restriction> |
|
1040 </xs:simpleType> |
|
1041 </xs:attribute> |
|
1042 </xs:extension> |
|
1043 </xs:complexContent> |
|
1044 </xs:complexType> |
|
1045 </xs:element> |
|
1046 |
|
1047 <xs:element name="field" id="field"> |
|
1048 <xs:annotation> |
|
1049 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-field"/> |
|
1050 </xs:annotation> |
|
1051 <xs:complexType> |
|
1052 <xs:complexContent> |
|
1053 <xs:extension base="xs:annotated"> |
|
1054 <xs:attribute name="xpath" use="required"> |
|
1055 <xs:simpleType> |
|
1056 <xs:annotation> |
|
1057 <xs:documentation>A subset of XPath expressions for use |
|
1058 in fields</xs:documentation> |
|
1059 <xs:documentation>A utility type, not for public |
|
1060 use</xs:documentation> |
|
1061 </xs:annotation> |
|
1062 <xs:restriction base="xs:token"> |
|
1063 <xs:annotation> |
|
1064 <xs:documentation>The following pattern is intended to allow XPath |
|
1065 expressions per the same EBNF as for selector, |
|
1066 with the following change: |
|
1067 Path ::= ('.//')? ( Step '/' )* ( Step | '@' NameTest ) |
|
1068 </xs:documentation> |
|
1069 </xs:annotation> |
|
1070 <xs:pattern value="(\.//)?((((child::)?(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*)))|\.)/)*((((child::)?(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*)))|\.)|((attribute::|@)(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*))))(\|(\.//)?((((child::)?(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*)))|\.)/)*((((child::)?(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*)))|\.)|((attribute::|@)(([a-zA-z_:][\w.\-:]*:)?([a-zA-z_:][\w.\-:]*|\*)))))*"> |
|
1071 </xs:pattern> |
|
1072 </xs:restriction> |
|
1073 </xs:simpleType> |
|
1074 </xs:attribute> |
|
1075 </xs:extension> |
|
1076 </xs:complexContent> |
|
1077 </xs:complexType> |
|
1078 </xs:element> |
|
1079 |
|
1080 <xs:complexType name="keybase"> |
|
1081 <xs:complexContent> |
|
1082 <xs:extension base="xs:annotated"> |
|
1083 <xs:sequence> |
|
1084 <xs:element ref="xs:selector"/> |
|
1085 <xs:element ref="xs:field" minOccurs="1" maxOccurs="unbounded"/> |
|
1086 </xs:sequence> |
|
1087 <xs:attribute name="name" type="xs:NCName" use="required"/> |
|
1088 </xs:extension> |
|
1089 </xs:complexContent> |
|
1090 </xs:complexType> |
|
1091 |
|
1092 <xs:group name="identityConstraint"> |
|
1093 <xs:annotation> |
|
1094 <xs:documentation>The three kinds of identity constraints, all with |
|
1095 type of or derived from 'keybase'. |
|
1096 </xs:documentation> |
|
1097 </xs:annotation> |
|
1098 <xs:choice> |
|
1099 <xs:element ref="xs:unique"/> |
|
1100 <xs:element ref="xs:key"/> |
|
1101 <xs:element ref="xs:keyref"/> |
|
1102 </xs:choice> |
|
1103 </xs:group> |
|
1104 |
|
1105 <xs:element name="unique" type="xs:keybase" id="unique"> |
|
1106 <xs:annotation> |
|
1107 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-unique"/> |
|
1108 </xs:annotation> |
|
1109 </xs:element> |
|
1110 <xs:element name="key" type="xs:keybase" id="key"> |
|
1111 <xs:annotation> |
|
1112 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-key"/> |
|
1113 </xs:annotation> |
|
1114 </xs:element> |
|
1115 <xs:element name="keyref" id="keyref"> |
|
1116 <xs:annotation> |
|
1117 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-keyref"/> |
|
1118 </xs:annotation> |
|
1119 <xs:complexType> |
|
1120 <xs:complexContent> |
|
1121 <xs:extension base="xs:keybase"> |
|
1122 <xs:attribute name="refer" type="xs:QName" use="required"/> |
|
1123 </xs:extension> |
|
1124 </xs:complexContent> |
|
1125 </xs:complexType> |
|
1126 </xs:element> |
|
1127 |
|
1128 <xs:element name="notation" id="notation"> |
|
1129 <xs:annotation> |
|
1130 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-notation"/> |
|
1131 </xs:annotation> |
|
1132 <xs:complexType> |
|
1133 <xs:complexContent> |
|
1134 <xs:extension base="xs:annotated"> |
|
1135 <xs:attribute name="name" type="xs:NCName" use="required"/> |
|
1136 <xs:attribute name="public" type="xs:public" use="required"/> |
|
1137 <xs:attribute name="system" type="xs:anyURI"/> |
|
1138 </xs:extension> |
|
1139 </xs:complexContent> |
|
1140 </xs:complexType> |
|
1141 </xs:element> |
|
1142 |
|
1143 <xs:simpleType name="public"> |
|
1144 <xs:annotation> |
|
1145 <xs:documentation> |
|
1146 A utility type, not for public use</xs:documentation> |
|
1147 <xs:documentation> |
|
1148 A public identifier, per ISO 8879</xs:documentation> |
|
1149 </xs:annotation> |
|
1150 <xs:restriction base="xs:token"/> |
|
1151 </xs:simpleType> |
|
1152 |
|
1153 <xs:element name="appinfo" id="appinfo"> |
|
1154 <xs:annotation> |
|
1155 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-appinfo"/> |
|
1156 </xs:annotation> |
|
1157 <xs:complexType mixed="true"> |
|
1158 <xs:sequence minOccurs="0" maxOccurs="unbounded"> |
|
1159 <xs:any processContents="lax"/> |
|
1160 </xs:sequence> |
|
1161 <xs:attribute name="source" type="xs:anyURI"/> |
|
1162 </xs:complexType> |
|
1163 </xs:element> |
|
1164 |
|
1165 <xs:element name="documentation" id="documentation"> |
|
1166 <xs:annotation> |
|
1167 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-documentation"/> |
|
1168 </xs:annotation> |
|
1169 <xs:complexType mixed="true"> |
|
1170 <xs:sequence minOccurs="0" maxOccurs="unbounded"> |
|
1171 <xs:any processContents="lax"/> |
|
1172 </xs:sequence> |
|
1173 <xs:attribute name="source" type="xs:anyURI"/> |
|
1174 <xs:attribute ref="xml:lang"/> |
|
1175 </xs:complexType> |
|
1176 </xs:element> |
|
1177 |
|
1178 <xs:element name="annotation" id="annotation"> |
|
1179 <xs:annotation> |
|
1180 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-annotation"/> |
|
1181 </xs:annotation> |
|
1182 <xs:complexType> |
|
1183 <xs:complexContent> |
|
1184 <xs:extension base="xs:openAttrs"> |
|
1185 <xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
1186 <xs:element ref="xs:appinfo"/> |
|
1187 <xs:element ref="xs:documentation"/> |
|
1188 </xs:choice> |
|
1189 <xs:attribute name="id" type="xs:ID"/> |
|
1190 </xs:extension> |
|
1191 </xs:complexContent> |
|
1192 </xs:complexType> |
|
1193 </xs:element> |
|
1194 |
|
1195 <xs:annotation> |
|
1196 <xs:documentation> |
|
1197 notations for use within XML Schema schemas</xs:documentation> |
|
1198 </xs:annotation> |
|
1199 |
|
1200 <xs:notation name="XMLSchemaStructures" public="structures" system="http://www.w3.org/2000/08/XMLSchema.xsd"/> |
|
1201 <xs:notation name="XML" public="REC-xml-19980210" system="http://www.w3.org/TR/1998/REC-xml-19980210"/> |
|
1202 |
|
1203 <xs:complexType name="anyType" mixed="true"> |
|
1204 <xs:annotation> |
|
1205 <xs:documentation> |
|
1206 Not the real urType, but as close an approximation as we can |
|
1207 get in the XML representation</xs:documentation> |
|
1208 </xs:annotation> |
|
1209 <xs:sequence> |
|
1210 <xs:any minOccurs="0" maxOccurs="unbounded"/> |
|
1211 </xs:sequence> |
|
1212 <xs:anyAttribute/> |
|
1213 </xs:complexType> |
|
1214 |
|
1215 </xs:schema> |
|
1216 |
|
1217 |