1 <?xml version='1.0' encoding='UTF-8'?>
3 Copyright (c) 2000-2016 Ericsson Telecom AB
4 All rights reserved. This program and the accompanying materials
5 are made available under the terms of the Eclipse Public License v1.0
6 which accompanies this distribution, and is available at
7 http://www.eclipse.org/legal/epl-v10.html
13 <!-- XML Schema schema for XML Schemas: Part 1: Structures -->
14 <!-- Note this schema is NOT the normative structures schema. -->
15 <!-- The prose copy in the structures REC is the normative -->
16 <!-- version (which shouldn't differ from this one except for -->
17 <!-- this comment and entity expansions, but just in case -->
18 <!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "XMLSchema.dtd" [
20 <!-- provide ID type information even for parsers which only read the
22 <!ATTLIST xs:schema id ID #IMPLIED>
23 <!ATTLIST xs:complexType id ID #IMPLIED>
24 <!ATTLIST xs:complexContent id ID #IMPLIED>
25 <!ATTLIST xs:simpleContent id ID #IMPLIED>
26 <!ATTLIST xs:extension id ID #IMPLIED>
27 <!ATTLIST xs:element id ID #IMPLIED>
28 <!ATTLIST xs:group id ID #IMPLIED>
29 <!ATTLIST xs:all id ID #IMPLIED>
30 <!ATTLIST xs:choice id ID #IMPLIED>
31 <!ATTLIST xs:sequence id ID #IMPLIED>
32 <!ATTLIST xs:any id ID #IMPLIED>
33 <!ATTLIST xs:anyAttribute id ID #IMPLIED>
34 <!ATTLIST xs:attribute id ID #IMPLIED>
35 <!ATTLIST xs:attributeGroup id ID #IMPLIED>
36 <!ATTLIST xs:unique id ID #IMPLIED>
37 <!ATTLIST xs:key id ID #IMPLIED>
38 <!ATTLIST xs:keyref id ID #IMPLIED>
39 <!ATTLIST xs:selector id ID #IMPLIED>
40 <!ATTLIST xs:field id ID #IMPLIED>
41 <!ATTLIST xs:include id ID #IMPLIED>
42 <!ATTLIST xs:import id ID #IMPLIED>
43 <!ATTLIST xs:redefine id ID #IMPLIED>
44 <!ATTLIST xs:notation id ID #IMPLIED>
46 keep this schema XML1.0 DTD valid
48 <!ENTITY % schemaAttrs 'xmlns:hfp CDATA #IMPLIED'>
50 <!ELEMENT hfp:hasFacet EMPTY>
51 <!ATTLIST hfp:hasFacet
52 name NMTOKEN #REQUIRED>
54 <!ELEMENT hfp:hasProperty EMPTY>
55 <!ATTLIST hfp:hasProperty
56 name NMTOKEN #REQUIRED
57 value CDATA #REQUIRED>
59 Make sure that processors that do not read the external
60 subset will know about the various IDs we declare
62 <!ATTLIST xs:simpleType id ID #IMPLIED>
63 <!ATTLIST xs:maxExclusive id ID #IMPLIED>
64 <!ATTLIST xs:minExclusive id ID #IMPLIED>
65 <!ATTLIST xs:maxInclusive id ID #IMPLIED>
66 <!ATTLIST xs:minInclusive id ID #IMPLIED>
67 <!ATTLIST xs:totalDigits id ID #IMPLIED>
68 <!ATTLIST xs:fractionDigits id ID #IMPLIED>
69 <!ATTLIST xs:length id ID #IMPLIED>
70 <!ATTLIST xs:minLength id ID #IMPLIED>
71 <!ATTLIST xs:maxLength id ID #IMPLIED>
72 <!ATTLIST xs:enumeration id ID #IMPLIED>
73 <!ATTLIST xs:pattern id ID #IMPLIED>
74 <!ATTLIST xs:appinfo id ID #IMPLIED>
75 <!ATTLIST xs:documentation id ID #IMPLIED>
76 <!ATTLIST xs:list id ID #IMPLIED>
77 <!ATTLIST xs:union id ID #IMPLIED>
79 <xs:schema targetNamespace="http://www.w3.org/2001/XMLSchema" blockDefault="#all" elementFormDefault="qualified" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="EN" xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty">
82 Part 1 version: Id: structures.xsd,v 1.2 2004/01/15 11:34:25 ht Exp
83 Part 2 version: Id: datatypes.xsd,v 1.3 2004/01/23 18:11:13 ht Exp
88 <xs:documentation source="http://www.w3.org/TR/2004/PER-xmlschema-1-20040318/structures.html">
89 The schema corresponding to this document is normative,
90 with respect to the syntactic constraints it expresses in the
91 XML Schema language. The documentation (within <documentation> elements)
92 below, is not normative, but rather highlights important aspects of
93 the W3C Recommendation of which this is a part</xs:documentation>
98 The simpleType element and all of its members are defined
99 towards the end of this schema document</xs:documentation>
102 <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd">
105 Get access to the xml: attribute groups for xml:lang
106 as declared on 'schema' and 'documentation' below
111 <xs:complexType name="openAttrs">
114 This type is extended by almost all schema types
115 to allow attributes from other namespaces to be
116 added to user schemas.
120 <xs:restriction base="xs:anyType">
121 <xs:anyAttribute namespace="##other" processContents="lax"/>
126 <xs:complexType name="annotated">
129 This type is extended by all types which allow annotation
130 other than <schema> itself
134 <xs:extension base="xs:openAttrs">
136 <xs:element ref="xs:annotation" minOccurs="0"/>
138 <xs:attribute name="id" type="xs:ID"/>
143 <xs:group name="schemaTop">
146 This group is for the
147 elements which occur freely at the top level of schemas.
148 All of their types are based on the "annotated" type by extension.</xs:documentation>
151 <xs:group ref="xs:redefinable"/>
152 <xs:element ref="xs:element"/>
153 <xs:element ref="xs:attribute"/>
154 <xs:element ref="xs:notation"/>
158 <xs:group name="redefinable">
161 This group is for the
162 elements which can self-redefine (see <redefine> below).</xs:documentation>
165 <xs:element ref="xs:simpleType"/>
166 <xs:element ref="xs:complexType"/>
167 <xs:element ref="xs:group"/>
168 <xs:element ref="xs:attributeGroup"/>
172 <xs:simpleType name="formChoice">
175 A utility type, not for public use</xs:documentation>
177 <xs:restriction base="xs:NMTOKEN">
178 <xs:enumeration value="qualified"/>
179 <xs:enumeration value="unqualified"/>
183 <xs:simpleType name="reducedDerivationControl">
186 A utility type, not for public use</xs:documentation>
188 <xs:restriction base="xs:derivationControl">
189 <xs:enumeration value="extension"/>
190 <xs:enumeration value="restriction"/>
194 <xs:simpleType name="derivationSet">
197 A utility type, not for public use</xs:documentation>
199 #all or (possibly empty) subset of {extension, restriction}</xs:documentation>
203 <xs:restriction base="xs:token">
204 <xs:enumeration value="#all"/>
208 <xs:list itemType="xs:reducedDerivationControl"/>
213 <xs:simpleType name="typeDerivationControl">
216 A utility type, not for public use</xs:documentation>
218 <xs:restriction base="xs:derivationControl">
219 <xs:enumeration value="extension"/>
220 <xs:enumeration value="restriction"/>
221 <xs:enumeration value="list"/>
222 <xs:enumeration value="union"/>
226 <xs:simpleType name="fullDerivationSet">
229 A utility type, not for public use</xs:documentation>
231 #all or (possibly empty) subset of {extension, restriction, list, union}</xs:documentation>
235 <xs:restriction base="xs:token">
236 <xs:enumeration value="#all"/>
240 <xs:list itemType="xs:typeDerivationControl"/>
245 <xs:element name="schema" id="schema">
247 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-schema"/>
251 <xs:extension base="xs:openAttrs">
253 <xs:choice minOccurs="0" maxOccurs="unbounded">
254 <xs:element ref="xs:include"/>
255 <xs:element ref="xs:import"/>
256 <xs:element ref="xs:redefine"/>
257 <xs:element ref="xs:annotation"/>
259 <xs:sequence minOccurs="0" maxOccurs="unbounded">
260 <xs:group ref="xs:schemaTop"/>
261 <xs:element ref="xs:annotation" minOccurs="0" maxOccurs="unbounded"/>
264 <xs:attribute name="targetNamespace" type="xs:anyURI"/>
265 <xs:attribute name="version" type="xs:token"/>
266 <xs:attribute name="finalDefault" type="xs:fullDerivationSet" use="optional" default=""/>
267 <xs:attribute name="blockDefault" type="xs:blockSet" use="optional" default=""/>
268 <xs:attribute name="attributeFormDefault" type="xs:formChoice" use="optional" default="unqualified"/>
269 <xs:attribute name="elementFormDefault" type="xs:formChoice" use="optional" default="unqualified"/>
270 <xs:attribute name="id" type="xs:ID"/>
271 <xs:attribute ref="xml:lang"/>
276 <xs:key name="element">
277 <xs:selector xpath="xs:element"/>
278 <xs:field xpath="@name"/>
281 <xs:key name="attribute">
282 <xs:selector xpath="xs:attribute"/>
283 <xs:field xpath="@name"/>
287 <xs:selector xpath="xs:complexType|xs:simpleType"/>
288 <xs:field xpath="@name"/>
291 <xs:key name="group">
292 <xs:selector xpath="xs:group"/>
293 <xs:field xpath="@name"/>
296 <xs:key name="attributeGroup">
297 <xs:selector xpath="xs:attributeGroup"/>
298 <xs:field xpath="@name"/>
301 <xs:key name="notation">
302 <xs:selector xpath="xs:notation"/>
303 <xs:field xpath="@name"/>
306 <xs:key name="identityConstraint">
307 <xs:selector xpath=".//xs:key|.//xs:unique|.//xs:keyref"/>
308 <xs:field xpath="@name"/>
313 <xs:simpleType name="allNNI">
314 <xs:annotation><xs:documentation>
315 for maxOccurs</xs:documentation></xs:annotation>
316 <xs:union memberTypes="xs:nonNegativeInteger">
318 <xs:restriction base="xs:NMTOKEN">
319 <xs:enumeration value="unbounded"/>
325 <xs:attributeGroup name="occurs">
326 <xs:annotation><xs:documentation>
327 for all particles</xs:documentation></xs:annotation>
328 <xs:attribute name="minOccurs" type="xs:nonNegativeInteger" use="optional" default="1"/>
329 <xs:attribute name="maxOccurs" type="xs:allNNI" use="optional" default="1"/>
332 <xs:attributeGroup name="defRef">
333 <xs:annotation><xs:documentation>
334 for element, group and attributeGroup,
335 which both define and reference</xs:documentation></xs:annotation>
336 <xs:attribute name="name" type="xs:NCName"/>
337 <xs:attribute name="ref" type="xs:QName"/>
340 <xs:group name="typeDefParticle">
343 'complexType' uses this</xs:documentation></xs:annotation>
345 <xs:element name="group" type="xs:groupRef"/>
346 <xs:element ref="xs:all"/>
347 <xs:element ref="xs:choice"/>
348 <xs:element ref="xs:sequence"/>
354 <xs:group name="nestedParticle">
356 <xs:element name="element" type="xs:localElement"/>
357 <xs:element name="group" type="xs:groupRef"/>
358 <xs:element ref="xs:choice"/>
359 <xs:element ref="xs:sequence"/>
360 <xs:element ref="xs:any"/>
364 <xs:group name="particle">
366 <xs:element name="element" type="xs:localElement"/>
367 <xs:element name="group" type="xs:groupRef"/>
368 <xs:element ref="xs:all"/>
369 <xs:element ref="xs:choice"/>
370 <xs:element ref="xs:sequence"/>
371 <xs:element ref="xs:any"/>
375 <xs:complexType name="attribute">
377 <xs:extension base="xs:annotated">
379 <xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/>
381 <xs:attributeGroup ref="xs:defRef"/>
382 <xs:attribute name="type" type="xs:QName"/>
383 <xs:attribute name="use" use="optional" default="optional">
385 <xs:restriction base="xs:NMTOKEN">
386 <xs:enumeration value="prohibited"/>
387 <xs:enumeration value="optional"/>
388 <xs:enumeration value="required"/>
392 <xs:attribute name="default" type="xs:string"/>
393 <xs:attribute name="fixed" type="xs:string"/>
394 <xs:attribute name="form" type="xs:formChoice"/>
399 <xs:complexType name="topLevelAttribute">
401 <xs:restriction base="xs:attribute">
403 <xs:element ref="xs:annotation" minOccurs="0"/>
404 <xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/>
406 <xs:attribute name="ref" use="prohibited"/>
407 <xs:attribute name="form" use="prohibited"/>
408 <xs:attribute name="use" use="prohibited"/>
409 <xs:attribute name="name" use="required" type="xs:NCName"/>
410 <xs:anyAttribute namespace="##other" processContents="lax"/>
415 <xs:group name="attrDecls">
417 <xs:choice minOccurs="0" maxOccurs="unbounded">
418 <xs:element name="attribute" type="xs:attribute"/>
419 <xs:element name="attributeGroup" type="xs:attributeGroupRef"/>
421 <xs:element ref="xs:anyAttribute" minOccurs="0"/>
425 <xs:element name="anyAttribute" type="xs:wildcard" id="anyAttribute">
427 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-anyAttribute"/>
431 <xs:group name="complexTypeModel">
433 <xs:element ref="xs:simpleContent"/>
434 <xs:element ref="xs:complexContent"/>
438 This branch is short for
440 <restriction base="xs:anyType">
443 </complexContent></xs:documentation>
445 <xs:group ref="xs:typeDefParticle" minOccurs="0"/>
446 <xs:group ref="xs:attrDecls"/>
451 <xs:complexType name="complexType" abstract="true">
453 <xs:extension base="xs:annotated">
454 <xs:group ref="xs:complexTypeModel"/>
455 <xs:attribute name="name" type="xs:NCName">
458 Will be restricted to required or forbidden</xs:documentation>
461 <xs:attribute name="mixed" type="xs:boolean" use="optional" default="false">
464 Not allowed if simpleContent child is chosen.
465 May be overriden by setting on complexContent child.</xs:documentation>
468 <xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/>
469 <xs:attribute name="final" type="xs:derivationSet"/>
470 <xs:attribute name="block" type="xs:derivationSet"/>
475 <xs:complexType name="topLevelComplexType">
477 <xs:restriction base="xs:complexType">
479 <xs:element ref="xs:annotation" minOccurs="0"/>
480 <xs:group ref="xs:complexTypeModel"/>
482 <xs:attribute name="name" type="xs:NCName" use="required"/>
483 <xs:anyAttribute namespace="##other" processContents="lax"/>
488 <xs:complexType name="localComplexType">
490 <xs:restriction base="xs:complexType">
492 <xs:element ref="xs:annotation" minOccurs="0"/>
493 <xs:group ref="xs:complexTypeModel"/>
495 <xs:attribute name="name" use="prohibited"/>
496 <xs:attribute name="abstract" use="prohibited"/>
497 <xs:attribute name="final" use="prohibited"/>
498 <xs:attribute name="block" use="prohibited"/>
499 <xs:anyAttribute namespace="##other" processContents="lax"/>
504 <xs:complexType name="restrictionType">
506 <xs:extension base="xs:annotated">
508 <xs:choice minOccurs="0">
509 <xs:group ref="xs:typeDefParticle"/>
510 <xs:group ref="xs:simpleRestrictionModel"/>
512 <xs:group ref="xs:attrDecls"/>
514 <xs:attribute name="base" type="xs:QName" use="required"/>
519 <xs:complexType name="complexRestrictionType">
521 <xs:restriction base="xs:restrictionType">
523 <xs:element ref="xs:annotation" minOccurs="0"/>
524 <xs:choice minOccurs="0">
526 <xs:documentation>This choice is added simply to
527 make this a valid restriction per the REC</xs:documentation>
529 <xs:group ref="xs:typeDefParticle"/>
531 <xs:group ref="xs:attrDecls"/>
533 <xs:anyAttribute namespace="##other" processContents="lax"/>
538 <xs:complexType name="extensionType">
540 <xs:extension base="xs:annotated">
542 <xs:group ref="xs:typeDefParticle" minOccurs="0"/>
543 <xs:group ref="xs:attrDecls"/>
545 <xs:attribute name="base" type="xs:QName" use="required"/>
550 <xs:element name="complexContent" id="complexContent">
552 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexContent"/>
556 <xs:extension base="xs:annotated">
558 <xs:element name="restriction" type="xs:complexRestrictionType"/>
559 <xs:element name="extension" type="xs:extensionType"/>
561 <xs:attribute name="mixed" type="xs:boolean">
564 Overrides any setting on complexType parent.</xs:documentation>
572 <xs:complexType name="simpleRestrictionType">
574 <xs:restriction base="xs:restrictionType">
576 <xs:element ref="xs:annotation" minOccurs="0"/>
577 <xs:choice minOccurs="0">
579 <xs:documentation>This choice is added simply to
580 make this a valid restriction per the REC</xs:documentation>
582 <xs:group ref="xs:simpleRestrictionModel"/>
584 <xs:group ref="xs:attrDecls"/>
586 <xs:anyAttribute namespace="##other" processContents="lax"/>
591 <xs:complexType name="simpleExtensionType">
593 <xs:restriction base="xs:extensionType">
597 No typeDefParticle group reference</xs:documentation>
599 <xs:element ref="xs:annotation" minOccurs="0"/>
600 <xs:group ref="xs:attrDecls"/>
602 <xs:anyAttribute namespace="##other" processContents="lax"/>
607 <xs:element name="simpleContent" id="simpleContent">
609 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-simpleContent"/>
613 <xs:extension base="xs:annotated">
615 <xs:element name="restriction" type="xs:simpleRestrictionType"/>
616 <xs:element name="extension" type="xs:simpleExtensionType"/>
623 <xs:element name="complexType" type="xs:topLevelComplexType" id="complexType">
625 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexType"/>
630 <xs:simpleType name="blockSet">
633 A utility type, not for public use</xs:documentation>
635 #all or (possibly empty) subset of {substitution, extension,
636 restriction}</xs:documentation>
640 <xs:restriction base="xs:token">
641 <xs:enumeration value="#all"/>
647 <xs:restriction base="xs:derivationControl">
648 <xs:enumeration value="extension"/>
649 <xs:enumeration value="restriction"/>
650 <xs:enumeration value="substitution"/>
658 <xs:complexType name="element" abstract="true">
661 The element element can be used either
662 at the top level to define an element-type binding globally,
663 or within a content model to either reference a globally-defined
664 element or type or declare an element-type binding locally.
665 The ref form is not allowed at the top level.</xs:documentation>
669 <xs:extension base="xs:annotated">
671 <xs:choice minOccurs="0">
672 <xs:element name="simpleType" type="xs:localSimpleType"/>
673 <xs:element name="complexType" type="xs:localComplexType"/>
675 <xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
677 <xs:attributeGroup ref="xs:defRef"/>
678 <xs:attribute name="type" type="xs:QName"/>
679 <xs:attribute name="substitutionGroup" type="xs:QName"/>
680 <xs:attributeGroup ref="xs:occurs"/>
681 <xs:attribute name="default" type="xs:string"/>
682 <xs:attribute name="fixed" type="xs:string"/>
683 <xs:attribute name="nillable" type="xs:boolean" use="optional" default="false"/>
684 <xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/>
685 <xs:attribute name="final" type="xs:derivationSet"/>
686 <xs:attribute name="block" type="xs:blockSet"/>
687 <xs:attribute name="form" type="xs:formChoice"/>
692 <xs:complexType name="topLevelElement">
694 <xs:restriction base="xs:element">
696 <xs:element ref="xs:annotation" minOccurs="0"/>
697 <xs:choice minOccurs="0">
698 <xs:element name="simpleType" type="xs:localSimpleType"/>
699 <xs:element name="complexType" type="xs:localComplexType"/>
701 <xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
703 <xs:attribute name="ref" use="prohibited"/>
704 <xs:attribute name="form" use="prohibited"/>
705 <xs:attribute name="minOccurs" use="prohibited"/>
706 <xs:attribute name="maxOccurs" use="prohibited"/>
707 <xs:attribute name="name" use="required" type="xs:NCName"/>
708 <xs:anyAttribute namespace="##other" processContents="lax"/>
713 <xs:complexType name="localElement">
715 <xs:restriction base="xs:element">
717 <xs:element ref="xs:annotation" minOccurs="0"/>
718 <xs:choice minOccurs="0">
719 <xs:element name="simpleType" type="xs:localSimpleType"/>
720 <xs:element name="complexType" type="xs:localComplexType"/>
722 <xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
724 <xs:attribute name="substitutionGroup" use="prohibited"/>
725 <xs:attribute name="final" use="prohibited"/>
726 <xs:attribute name="abstract" use="prohibited"/>
727 <xs:anyAttribute namespace="##other" processContents="lax"/>
732 <xs:element name="element" type="xs:topLevelElement" id="element">
734 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-element"/>
738 <xs:complexType name="group" abstract="true">
741 group type for explicit groups, named top-level groups and
742 group references</xs:documentation>
745 <xs:extension base="xs:annotated">
746 <xs:group ref="xs:particle" minOccurs="0" maxOccurs="unbounded"/>
747 <xs:attributeGroup ref="xs:defRef"/>
748 <xs:attributeGroup ref="xs:occurs"/>
753 <xs:complexType name="realGroup">
755 <xs:restriction base="xs:group">
757 <xs:element ref="xs:annotation" minOccurs="0"/>
758 <xs:choice minOccurs="0" maxOccurs="1">
759 <xs:element ref="xs:all"/>
760 <xs:element ref="xs:choice"/>
761 <xs:element ref="xs:sequence"/>
764 <xs:anyAttribute namespace="##other" processContents="lax"/>
769 <xs:complexType name="namedGroup">
771 <xs:restriction base="xs:realGroup">
773 <xs:element ref="xs:annotation" minOccurs="0"/>
774 <xs:choice minOccurs="1" maxOccurs="1">
775 <xs:element name="all">
778 <xs:restriction base="xs:all">
779 <xs:group ref="xs:allModel"/>
780 <xs:attribute name="minOccurs" use="prohibited"/>
781 <xs:attribute name="maxOccurs" use="prohibited"/>
782 <xs:anyAttribute namespace="##other" processContents="lax"/>
787 <xs:element name="choice" type="xs:simpleExplicitGroup"/>
788 <xs:element name="sequence" type="xs:simpleExplicitGroup"/>
791 <xs:attribute name="name" use="required" type="xs:NCName"/>
792 <xs:attribute name="ref" use="prohibited"/>
793 <xs:attribute name="minOccurs" use="prohibited"/>
794 <xs:attribute name="maxOccurs" use="prohibited"/>
795 <xs:anyAttribute namespace="##other" processContents="lax"/>
800 <xs:complexType name="groupRef">
802 <xs:restriction base="xs:realGroup">
804 <xs:element ref="xs:annotation" minOccurs="0"/>
806 <xs:attribute name="ref" use="required" type="xs:QName"/>
807 <xs:attribute name="name" use="prohibited"/>
808 <xs:anyAttribute namespace="##other" processContents="lax"/>
813 <xs:complexType name="explicitGroup">
816 group type for the three kinds of group</xs:documentation>
819 <xs:restriction base="xs:group">
821 <xs:element ref="xs:annotation" minOccurs="0"/>
822 <xs:group ref="xs:nestedParticle" minOccurs="0" maxOccurs="unbounded"/>
824 <xs:attribute name="name" type="xs:NCName" use="prohibited"/>
825 <xs:attribute name="ref" type="xs:QName" use="prohibited"/>
826 <xs:anyAttribute namespace="##other" processContents="lax"/>
831 <xs:complexType name="simpleExplicitGroup">
833 <xs:restriction base="xs:explicitGroup">
835 <xs:element ref="xs:annotation" minOccurs="0"/>
836 <xs:group ref="xs:nestedParticle" minOccurs="0" maxOccurs="unbounded"/>
838 <xs:attribute name="minOccurs" use="prohibited"/>
839 <xs:attribute name="maxOccurs" use="prohibited"/>
840 <xs:anyAttribute namespace="##other" processContents="lax"/>
845 <xs:group name="allModel">
847 <xs:element ref="xs:annotation" minOccurs="0"/>
848 <xs:choice minOccurs="0" maxOccurs="unbounded">
850 <xs:documentation>This choice with min/max is here to
851 avoid a pblm with the Elt:All/Choice/Seq
852 Particle derivation constraint</xs:documentation>
854 <xs:element name="element" type="xs:narrowMaxMin"/>
860 <xs:complexType name="narrowMaxMin">
862 <xs:documentation>restricted max/min</xs:documentation>
865 <xs:restriction base="xs:localElement">
867 <xs:element ref="xs:annotation" minOccurs="0"/>
868 <xs:choice minOccurs="0">
869 <xs:element name="simpleType" type="xs:localSimpleType"/>
870 <xs:element name="complexType" type="xs:localComplexType"/>
872 <xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
874 <xs:attribute name="minOccurs" use="optional" default="1">
876 <xs:restriction base="xs:nonNegativeInteger">
877 <xs:enumeration value="0"/>
878 <xs:enumeration value="1"/>
882 <xs:attribute name="maxOccurs" use="optional" default="1">
884 <xs:restriction base="xs:allNNI">
885 <xs:enumeration value="0"/>
886 <xs:enumeration value="1"/>
890 <xs:anyAttribute namespace="##other" processContents="lax"/>
895 <xs:complexType name="all">
898 Only elements allowed inside</xs:documentation>
901 <xs:restriction base="xs:explicitGroup">
902 <xs:group ref="xs:allModel"/>
903 <xs:attribute name="minOccurs" use="optional" default="1">
905 <xs:restriction base="xs:nonNegativeInteger">
906 <xs:enumeration value="0"/>
907 <xs:enumeration value="1"/>
911 <xs:attribute name="maxOccurs" use="optional" default="1">
913 <xs:restriction base="xs:allNNI">
914 <xs:enumeration value="1"/>
918 <xs:anyAttribute namespace="##other" processContents="lax"/>
923 <xs:element name="all" id="all" type="xs:all">
925 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-all"/>
929 <xs:element name="choice" type="xs:explicitGroup" id="choice">
931 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-choice"/>
935 <xs:element name="sequence" type="xs:explicitGroup" id="sequence">
937 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-sequence"/>
941 <xs:element name="group" type="xs:namedGroup" id="group">
943 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-group"/>
947 <xs:complexType name="wildcard">
949 <xs:extension base="xs:annotated">
950 <xs:attribute name="namespace" type="xs:namespaceList" use="optional" default="##any"/>
951 <xs:attribute name="processContents" use="optional" default="strict">
953 <xs:restriction base="xs:NMTOKEN">
954 <xs:enumeration value="skip"/>
955 <xs:enumeration value="lax"/>
956 <xs:enumeration value="strict"/>
964 <xs:element name="any" id="any">
966 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-any"/>
970 <xs:extension base="xs:wildcard">
971 <xs:attributeGroup ref="xs:occurs"/>
979 simple type for the value of the 'namespace' attr of
980 'any' and 'anyAttribute'</xs:documentation>
985 ##any - - any non-conflicting WFXML/attribute at all
987 ##other - - any non-conflicting WFXML/attribute from
988 namespace other than targetNS
990 ##local - - any unqualified non-conflicting WFXML/attribute
992 one or - - any non-conflicting WFXML/attribute from
993 more URI the listed namespaces
997 ##targetNamespace or ##local may appear in the above list, to
998 refer to the targetNamespace of the enclosing
999 schema or an absent targetNamespace respectively</xs:documentation>
1002 <xs:simpleType name="namespaceList">
1005 A utility type, not for public use</xs:documentation>
1009 <xs:restriction base="xs:token">
1010 <xs:enumeration value="##any"/>
1011 <xs:enumeration value="##other"/>
1017 <xs:union memberTypes="xs:anyURI">
1019 <xs:restriction base="xs:token">
1020 <xs:enumeration value="##targetNamespace"/>
1021 <xs:enumeration value="##local"/>
1031 <xs:element name="attribute" type="xs:topLevelAttribute" id="attribute">
1033 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-attribute"/>
1037 <xs:complexType name="attributeGroup" abstract="true">
1039 <xs:extension base="xs:annotated">
1040 <xs:group ref="xs:attrDecls"/>
1041 <xs:attributeGroup ref="xs:defRef"/>
1043 </xs:complexContent>
1046 <xs:complexType name="namedAttributeGroup">
1048 <xs:restriction base="xs:attributeGroup">
1050 <xs:element ref="xs:annotation" minOccurs="0"/>
1051 <xs:group ref="xs:attrDecls"/>
1053 <xs:attribute name="name" use="required" type="xs:NCName"/>
1054 <xs:attribute name="ref" use="prohibited"/>
1055 <xs:anyAttribute namespace="##other" processContents="lax"/>
1057 </xs:complexContent>
1060 <xs:complexType name="attributeGroupRef">
1062 <xs:restriction base="xs:attributeGroup">
1064 <xs:element ref="xs:annotation" minOccurs="0"/>
1066 <xs:attribute name="ref" use="required" type="xs:QName"/>
1067 <xs:attribute name="name" use="prohibited"/>
1068 <xs:anyAttribute namespace="##other" processContents="lax"/>
1070 </xs:complexContent>
1073 <xs:element name="attributeGroup" type="xs:namedAttributeGroup" id="attributeGroup">
1075 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-attributeGroup"/>
1079 <xs:element name="include" id="include">
1081 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-include"/>
1085 <xs:extension base="xs:annotated">
1086 <xs:attribute name="schemaLocation" type="xs:anyURI" use="required"/>
1088 </xs:complexContent>
1092 <xs:element name="redefine" id="redefine">
1094 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-redefine"/>
1098 <xs:extension base="xs:openAttrs">
1099 <xs:choice minOccurs="0" maxOccurs="unbounded">
1100 <xs:element ref="xs:annotation"/>
1101 <xs:group ref="xs:redefinable"/>
1103 <xs:attribute name="schemaLocation" type="xs:anyURI" use="required"/>
1104 <xs:attribute name="id" type="xs:ID"/>
1106 </xs:complexContent>
1110 <xs:element name="import" id="import">
1112 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-import"/>
1116 <xs:extension base="xs:annotated">
1117 <xs:attribute name="namespace" type="xs:anyURI"/>
1118 <xs:attribute name="schemaLocation" type="xs:anyURI"/>
1120 </xs:complexContent>
1124 <xs:element name="selector" id="selector">
1126 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-selector"/>
1130 <xs:extension base="xs:annotated">
1131 <xs:attribute name="xpath" use="required">
1134 <xs:documentation>A subset of XPath expressions for use
1135 in selectors</xs:documentation>
1136 <xs:documentation>A utility type, not for public
1137 use</xs:documentation>
1139 <xs:restriction base="xs:token">
1141 <xs:documentation>The following pattern is intended to allow XPath
1142 expressions per the following EBNF:
1143 Selector ::= Path ( '|' Path )*
1144 Path ::= ('.//')? Step ( '/' Step )*
1145 Step ::= '.' | NameTest
1146 NameTest ::= QName | '*' | NCName ':' '*'
1147 child:: is also allowed
1150 <xs:pattern value="(\.//)?(((child::)?((\i\c*:)?(\i\c*|\*)))|\.)(/(((child::)?((\i\c*:)?(\i\c*|\*)))|\.))*(\|(\.//)?(((child::)?((\i\c*:)?(\i\c*|\*)))|\.)(/(((child::)?((\i\c*:)?(\i\c*|\*)))|\.))*)*">
1156 </xs:complexContent>
1160 <xs:element name="field" id="field">
1162 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-field"/>
1166 <xs:extension base="xs:annotated">
1167 <xs:attribute name="xpath" use="required">
1170 <xs:documentation>A subset of XPath expressions for use
1171 in fields</xs:documentation>
1172 <xs:documentation>A utility type, not for public
1173 use</xs:documentation>
1175 <xs:restriction base="xs:token">
1177 <xs:documentation>The following pattern is intended to allow XPath
1178 expressions per the same EBNF as for selector,
1179 with the following change:
1180 Path ::= ('.//')? ( Step '/' )* ( Step | '@' NameTest )
1183 <xs:pattern value="(\.//)?((((child::)?((\i\c*:)?(\i\c*|\*)))|\.)/)*((((child::)?((\i\c*:)?(\i\c*|\*)))|\.)|((attribute::|@)((\i\c*:)?(\i\c*|\*))))(\|(\.//)?((((child::)?((\i\c*:)?(\i\c*|\*)))|\.)/)*((((child::)?((\i\c*:)?(\i\c*|\*)))|\.)|((attribute::|@)((\i\c*:)?(\i\c*|\*)))))*">
1189 </xs:complexContent>
1193 <xs:complexType name="keybase">
1195 <xs:extension base="xs:annotated">
1197 <xs:element ref="xs:selector"/>
1198 <xs:element ref="xs:field" minOccurs="1" maxOccurs="unbounded"/>
1200 <xs:attribute name="name" type="xs:NCName" use="required"/>
1202 </xs:complexContent>
1205 <xs:group name="identityConstraint">
1207 <xs:documentation>The three kinds of identity constraints, all with
1208 type of or derived from 'keybase'.
1212 <xs:element ref="xs:unique"/>
1213 <xs:element ref="xs:key"/>
1214 <xs:element ref="xs:keyref"/>
1218 <xs:element name="unique" type="xs:keybase" id="unique">
1220 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-unique"/>
1223 <xs:element name="key" type="xs:keybase" id="key">
1225 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-key"/>
1228 <xs:element name="keyref" id="keyref">
1230 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-keyref"/>
1234 <xs:extension base="xs:keybase">
1235 <xs:attribute name="refer" type="xs:QName" use="required"/>
1237 </xs:complexContent>
1241 <xs:element name="notation" id="notation">
1243 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-notation"/>
1247 <xs:extension base="xs:annotated">
1248 <xs:attribute name="name" type="xs:NCName" use="required"/>
1249 <xs:attribute name="public" type="xs:public"/>
1250 <xs:attribute name="system" type="xs:anyURI"/>
1252 </xs:complexContent>
1256 <xs:simpleType name="public">
1259 A utility type, not for public use</xs:documentation>
1261 A public identifier, per ISO 8879</xs:documentation>
1263 <xs:restriction base="xs:token"/>
1266 <xs:element name="appinfo" id="appinfo">
1268 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-appinfo"/>
1270 <xs:complexType mixed="true">
1271 <xs:sequence minOccurs="0" maxOccurs="unbounded">
1272 <xs:any processContents="lax"/>
1274 <xs:attribute name="source" type="xs:anyURI"/>
1275 <xs:anyAttribute namespace="##other" processContents="lax"/>
1279 <xs:element name="documentation" id="documentation">
1281 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-documentation"/>
1283 <xs:complexType mixed="true">
1284 <xs:sequence minOccurs="0" maxOccurs="unbounded">
1285 <xs:any processContents="lax"/>
1287 <xs:attribute name="source" type="xs:anyURI"/>
1288 <xs:attribute ref="xml:lang"/>
1289 <xs:anyAttribute namespace="##other" processContents="lax"/>
1293 <xs:element name="annotation" id="annotation">
1295 <xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-annotation"/>
1299 <xs:extension base="xs:openAttrs">
1300 <xs:choice minOccurs="0" maxOccurs="unbounded">
1301 <xs:element ref="xs:appinfo"/>
1302 <xs:element ref="xs:documentation"/>
1304 <xs:attribute name="id" type="xs:ID"/>
1306 </xs:complexContent>
1312 notations for use within XML Schema schemas</xs:documentation>
1315 <xs:notation name="XMLSchemaStructures" public="structures" system="http://www.w3.org/2000/08/XMLSchema.xsd"/>
1316 <xs:notation name="XML" public="REC-xml-19980210" system="http://www.w3.org/TR/1998/REC-xml-19980210"/>
1318 <xs:complexType name="anyType" mixed="true">
1321 Not the real urType, but as close an approximation as we can
1322 get in the XML representation</xs:documentation>
1325 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
1327 <xs:anyAttribute processContents="lax"/>
1332 First the built-in primitive datatypes. These definitions are for
1333 information only, the real built-in definitions are magic.
1337 For each built-in datatype in this schema (both primitive and
1338 derived) can be uniquely addressed via a URI constructed
1340 1) the base URI is the URI of the XML Schema namespace
1341 2) the fragment identifier is the name of the datatype
1343 For example, to address the int datatype, the URI is:
1345 http://www.w3.org/2001/XMLSchema#int
1347 Additionally, each facet definition element can be uniquely
1348 addressed via a URI constructed as follows:
1349 1) the base URI is the URI of the XML Schema namespace
1350 2) the fragment identifier is the name of the facet
1352 For example, to address the maxInclusive facet, the URI is:
1354 http://www.w3.org/2001/XMLSchema#maxInclusive
1356 Additionally, each facet usage in a built-in datatype definition
1357 can be uniquely addressed via a URI constructed as follows:
1358 1) the base URI is the URI of the XML Schema namespace
1359 2) the fragment identifier is the name of the datatype, followed
1360 by a period (".") followed by the name of the facet
1362 For example, to address the usage of the maxInclusive facet in
1363 the definition of int, the URI is:
1365 http://www.w3.org/2001/XMLSchema#int.maxInclusive
1370 <xs:simpleType name="string" id="string">
1373 <hfp:hasFacet name="length"/>
1374 <hfp:hasFacet name="minLength"/>
1375 <hfp:hasFacet name="maxLength"/>
1376 <hfp:hasFacet name="pattern"/>
1377 <hfp:hasFacet name="enumeration"/>
1378 <hfp:hasFacet name="whiteSpace"/>
1379 <hfp:hasProperty name="ordered" value="false"/>
1380 <hfp:hasProperty name="bounded" value="false"/>
1381 <hfp:hasProperty name="cardinality" value="countably infinite"/>
1382 <hfp:hasProperty name="numeric" value="false"/>
1385 source="http://www.w3.org/TR/xmlschema-2/#string"/>
1387 <xs:restriction base="xs:anySimpleType">
1388 <xs:whiteSpace value="preserve" id="string.preserve"/>
1392 <xs:simpleType name="boolean" id="boolean">
1395 <hfp:hasFacet name="pattern"/>
1396 <hfp:hasFacet name="whiteSpace"/>
1397 <hfp:hasProperty name="ordered" value="false"/>
1398 <hfp:hasProperty name="bounded" value="false"/>
1399 <hfp:hasProperty name="cardinality" value="finite"/>
1400 <hfp:hasProperty name="numeric" value="false"/>
1403 source="http://www.w3.org/TR/xmlschema-2/#boolean"/>
1405 <xs:restriction base="xs:anySimpleType">
1406 <xs:whiteSpace value="collapse" fixed="true"
1407 id="boolean.whiteSpace"/>
1411 <xs:simpleType name="float" id="float">
1414 <hfp:hasFacet name="pattern"/>
1415 <hfp:hasFacet name="enumeration"/>
1416 <hfp:hasFacet name="whiteSpace"/>
1417 <hfp:hasFacet name="maxInclusive"/>
1418 <hfp:hasFacet name="maxExclusive"/>
1419 <hfp:hasFacet name="minInclusive"/>
1420 <hfp:hasFacet name="minExclusive"/>
1421 <hfp:hasProperty name="ordered" value="total"/>
1422 <hfp:hasProperty name="bounded" value="true"/>
1423 <hfp:hasProperty name="cardinality" value="finite"/>
1424 <hfp:hasProperty name="numeric" value="true"/>
1427 source="http://www.w3.org/TR/xmlschema-2/#float"/>
1429 <xs:restriction base="xs:anySimpleType">
1430 <xs:whiteSpace value="collapse" fixed="true"
1431 id="float.whiteSpace"/>
1435 <xs:simpleType name="double" id="double">
1438 <hfp:hasFacet name="pattern"/>
1439 <hfp:hasFacet name="enumeration"/>
1440 <hfp:hasFacet name="whiteSpace"/>
1441 <hfp:hasFacet name="maxInclusive"/>
1442 <hfp:hasFacet name="maxExclusive"/>
1443 <hfp:hasFacet name="minInclusive"/>
1444 <hfp:hasFacet name="minExclusive"/>
1445 <hfp:hasProperty name="ordered" value="total"/>
1446 <hfp:hasProperty name="bounded" value="true"/>
1447 <hfp:hasProperty name="cardinality" value="finite"/>
1448 <hfp:hasProperty name="numeric" value="true"/>
1451 source="http://www.w3.org/TR/xmlschema-2/#double"/>
1453 <xs:restriction base="xs:anySimpleType">
1454 <xs:whiteSpace value="collapse" fixed="true"
1455 id="double.whiteSpace"/>
1459 <xs:simpleType name="decimal" id="decimal">
1462 <hfp:hasFacet name="totalDigits"/>
1463 <hfp:hasFacet name="fractionDigits"/>
1464 <hfp:hasFacet name="pattern"/>
1465 <hfp:hasFacet name="whiteSpace"/>
1466 <hfp:hasFacet name="enumeration"/>
1467 <hfp:hasFacet name="maxInclusive"/>
1468 <hfp:hasFacet name="maxExclusive"/>
1469 <hfp:hasFacet name="minInclusive"/>
1470 <hfp:hasFacet name="minExclusive"/>
1471 <hfp:hasProperty name="ordered" value="total"/>
1472 <hfp:hasProperty name="bounded" value="false"/>
1473 <hfp:hasProperty name="cardinality"
1474 value="countably infinite"/>
1475 <hfp:hasProperty name="numeric" value="true"/>
1478 source="http://www.w3.org/TR/xmlschema-2/#decimal"/>
1480 <xs:restriction base="xs:anySimpleType">
1481 <xs:whiteSpace value="collapse" fixed="true"
1482 id="decimal.whiteSpace"/>
1486 <xs:simpleType name="duration" id="duration">
1489 <hfp:hasFacet name="pattern"/>
1490 <hfp:hasFacet name="enumeration"/>
1491 <hfp:hasFacet name="whiteSpace"/>
1492 <hfp:hasFacet name="maxInclusive"/>
1493 <hfp:hasFacet name="maxExclusive"/>
1494 <hfp:hasFacet name="minInclusive"/>
1495 <hfp:hasFacet name="minExclusive"/>
1496 <hfp:hasProperty name="ordered" value="partial"/>
1497 <hfp:hasProperty name="bounded" value="false"/>
1498 <hfp:hasProperty name="cardinality"
1499 value="countably infinite"/>
1500 <hfp:hasProperty name="numeric" value="false"/>
1503 source="http://www.w3.org/TR/xmlschema-2/#duration"/>
1505 <xs:restriction base="xs:anySimpleType">
1506 <xs:whiteSpace value="collapse" fixed="true"
1507 id="duration.whiteSpace"/>
1511 <xs:simpleType name="dateTime" id="dateTime">
1514 <hfp:hasFacet name="pattern"/>
1515 <hfp:hasFacet name="enumeration"/>
1516 <hfp:hasFacet name="whiteSpace"/>
1517 <hfp:hasFacet name="maxInclusive"/>
1518 <hfp:hasFacet name="maxExclusive"/>
1519 <hfp:hasFacet name="minInclusive"/>
1520 <hfp:hasFacet name="minExclusive"/>
1521 <hfp:hasProperty name="ordered" value="partial"/>
1522 <hfp:hasProperty name="bounded" value="false"/>
1523 <hfp:hasProperty name="cardinality"
1524 value="countably infinite"/>
1525 <hfp:hasProperty name="numeric" value="false"/>
1528 source="http://www.w3.org/TR/xmlschema-2/#dateTime"/>
1530 <xs:restriction base="xs:anySimpleType">
1531 <xs:whiteSpace value="collapse" fixed="true"
1532 id="dateTime.whiteSpace"/>
1536 <xs:simpleType name="time" id="time">
1539 <hfp:hasFacet name="pattern"/>
1540 <hfp:hasFacet name="enumeration"/>
1541 <hfp:hasFacet name="whiteSpace"/>
1542 <hfp:hasFacet name="maxInclusive"/>
1543 <hfp:hasFacet name="maxExclusive"/>
1544 <hfp:hasFacet name="minInclusive"/>
1545 <hfp:hasFacet name="minExclusive"/>
1546 <hfp:hasProperty name="ordered" value="partial"/>
1547 <hfp:hasProperty name="bounded" value="false"/>
1548 <hfp:hasProperty name="cardinality"
1549 value="countably infinite"/>
1550 <hfp:hasProperty name="numeric" value="false"/>
1553 source="http://www.w3.org/TR/xmlschema-2/#time"/>
1555 <xs:restriction base="xs:anySimpleType">
1556 <xs:whiteSpace value="collapse" fixed="true"
1557 id="time.whiteSpace"/>
1561 <xs:simpleType name="date" id="date">
1564 <hfp:hasFacet name="pattern"/>
1565 <hfp:hasFacet name="enumeration"/>
1566 <hfp:hasFacet name="whiteSpace"/>
1567 <hfp:hasFacet name="maxInclusive"/>
1568 <hfp:hasFacet name="maxExclusive"/>
1569 <hfp:hasFacet name="minInclusive"/>
1570 <hfp:hasFacet name="minExclusive"/>
1571 <hfp:hasProperty name="ordered" value="partial"/>
1572 <hfp:hasProperty name="bounded" value="false"/>
1573 <hfp:hasProperty name="cardinality"
1574 value="countably infinite"/>
1575 <hfp:hasProperty name="numeric" value="false"/>
1578 source="http://www.w3.org/TR/xmlschema-2/#date"/>
1580 <xs:restriction base="xs:anySimpleType">
1581 <xs:whiteSpace value="collapse" fixed="true"
1582 id="date.whiteSpace"/>
1586 <xs:simpleType name="gYearMonth" id="gYearMonth">
1589 <hfp:hasFacet name="pattern"/>
1590 <hfp:hasFacet name="enumeration"/>
1591 <hfp:hasFacet name="whiteSpace"/>
1592 <hfp:hasFacet name="maxInclusive"/>
1593 <hfp:hasFacet name="maxExclusive"/>
1594 <hfp:hasFacet name="minInclusive"/>
1595 <hfp:hasFacet name="minExclusive"/>
1596 <hfp:hasProperty name="ordered" value="partial"/>
1597 <hfp:hasProperty name="bounded" value="false"/>
1598 <hfp:hasProperty name="cardinality"
1599 value="countably infinite"/>
1600 <hfp:hasProperty name="numeric" value="false"/>
1603 source="http://www.w3.org/TR/xmlschema-2/#gYearMonth"/>
1605 <xs:restriction base="xs:anySimpleType">
1606 <xs:whiteSpace value="collapse" fixed="true"
1607 id="gYearMonth.whiteSpace"/>
1611 <xs:simpleType name="gYear" id="gYear">
1614 <hfp:hasFacet name="pattern"/>
1615 <hfp:hasFacet name="enumeration"/>
1616 <hfp:hasFacet name="whiteSpace"/>
1617 <hfp:hasFacet name="maxInclusive"/>
1618 <hfp:hasFacet name="maxExclusive"/>
1619 <hfp:hasFacet name="minInclusive"/>
1620 <hfp:hasFacet name="minExclusive"/>
1621 <hfp:hasProperty name="ordered" value="partial"/>
1622 <hfp:hasProperty name="bounded" value="false"/>
1623 <hfp:hasProperty name="cardinality"
1624 value="countably infinite"/>
1625 <hfp:hasProperty name="numeric" value="false"/>
1628 source="http://www.w3.org/TR/xmlschema-2/#gYear"/>
1630 <xs:restriction base="xs:anySimpleType">
1631 <xs:whiteSpace value="collapse" fixed="true"
1632 id="gYear.whiteSpace"/>
1636 <xs:simpleType name="gMonthDay" id="gMonthDay">
1639 <hfp:hasFacet name="pattern"/>
1640 <hfp:hasFacet name="enumeration"/>
1641 <hfp:hasFacet name="whiteSpace"/>
1642 <hfp:hasFacet name="maxInclusive"/>
1643 <hfp:hasFacet name="maxExclusive"/>
1644 <hfp:hasFacet name="minInclusive"/>
1645 <hfp:hasFacet name="minExclusive"/>
1646 <hfp:hasProperty name="ordered" value="partial"/>
1647 <hfp:hasProperty name="bounded" value="false"/>
1648 <hfp:hasProperty name="cardinality"
1649 value="countably infinite"/>
1650 <hfp:hasProperty name="numeric" value="false"/>
1653 source="http://www.w3.org/TR/xmlschema-2/#gMonthDay"/>
1655 <xs:restriction base="xs:anySimpleType">
1656 <xs:whiteSpace value="collapse" fixed="true"
1657 id="gMonthDay.whiteSpace"/>
1661 <xs:simpleType name="gDay" id="gDay">
1664 <hfp:hasFacet name="pattern"/>
1665 <hfp:hasFacet name="enumeration"/>
1666 <hfp:hasFacet name="whiteSpace"/>
1667 <hfp:hasFacet name="maxInclusive"/>
1668 <hfp:hasFacet name="maxExclusive"/>
1669 <hfp:hasFacet name="minInclusive"/>
1670 <hfp:hasFacet name="minExclusive"/>
1671 <hfp:hasProperty name="ordered" value="partial"/>
1672 <hfp:hasProperty name="bounded" value="false"/>
1673 <hfp:hasProperty name="cardinality"
1674 value="countably infinite"/>
1675 <hfp:hasProperty name="numeric" value="false"/>
1678 source="http://www.w3.org/TR/xmlschema-2/#gDay"/>
1680 <xs:restriction base="xs:anySimpleType">
1681 <xs:whiteSpace value="collapse" fixed="true"
1682 id="gDay.whiteSpace"/>
1686 <xs:simpleType name="gMonth" id="gMonth">
1689 <hfp:hasFacet name="pattern"/>
1690 <hfp:hasFacet name="enumeration"/>
1691 <hfp:hasFacet name="whiteSpace"/>
1692 <hfp:hasFacet name="maxInclusive"/>
1693 <hfp:hasFacet name="maxExclusive"/>
1694 <hfp:hasFacet name="minInclusive"/>
1695 <hfp:hasFacet name="minExclusive"/>
1696 <hfp:hasProperty name="ordered" value="partial"/>
1697 <hfp:hasProperty name="bounded" value="false"/>
1698 <hfp:hasProperty name="cardinality"
1699 value="countably infinite"/>
1700 <hfp:hasProperty name="numeric" value="false"/>
1703 source="http://www.w3.org/TR/xmlschema-2/#gMonth"/>
1705 <xs:restriction base="xs:anySimpleType">
1706 <xs:whiteSpace value="collapse" fixed="true"
1707 id="gMonth.whiteSpace"/>
1711 <xs:simpleType name="hexBinary" id="hexBinary">
1714 <hfp:hasFacet name="length"/>
1715 <hfp:hasFacet name="minLength"/>
1716 <hfp:hasFacet name="maxLength"/>
1717 <hfp:hasFacet name="pattern"/>
1718 <hfp:hasFacet name="enumeration"/>
1719 <hfp:hasFacet name="whiteSpace"/>
1720 <hfp:hasProperty name="ordered" value="false"/>
1721 <hfp:hasProperty name="bounded" value="false"/>
1722 <hfp:hasProperty name="cardinality"
1723 value="countably infinite"/>
1724 <hfp:hasProperty name="numeric" value="false"/>
1727 source="http://www.w3.org/TR/xmlschema-2/#binary"/>
1729 <xs:restriction base="xs:anySimpleType">
1730 <xs:whiteSpace value="collapse" fixed="true"
1731 id="hexBinary.whiteSpace"/>
1735 <xs:simpleType name="base64Binary" id="base64Binary">
1738 <hfp:hasFacet name="length"/>
1739 <hfp:hasFacet name="minLength"/>
1740 <hfp:hasFacet name="maxLength"/>
1741 <hfp:hasFacet name="pattern"/>
1742 <hfp:hasFacet name="enumeration"/>
1743 <hfp:hasFacet name="whiteSpace"/>
1744 <hfp:hasProperty name="ordered" value="false"/>
1745 <hfp:hasProperty name="bounded" value="false"/>
1746 <hfp:hasProperty name="cardinality"
1747 value="countably infinite"/>
1748 <hfp:hasProperty name="numeric" value="false"/>
1751 source="http://www.w3.org/TR/xmlschema-2/#base64Binary"/>
1753 <xs:restriction base="xs:anySimpleType">
1754 <xs:whiteSpace value="collapse" fixed="true"
1755 id="base64Binary.whiteSpace"/>
1759 <xs:simpleType name="anyURI" id="anyURI">
1762 <hfp:hasFacet name="length"/>
1763 <hfp:hasFacet name="minLength"/>
1764 <hfp:hasFacet name="maxLength"/>
1765 <hfp:hasFacet name="pattern"/>
1766 <hfp:hasFacet name="enumeration"/>
1767 <hfp:hasFacet name="whiteSpace"/>
1768 <hfp:hasProperty name="ordered" value="false"/>
1769 <hfp:hasProperty name="bounded" value="false"/>
1770 <hfp:hasProperty name="cardinality"
1771 value="countably infinite"/>
1772 <hfp:hasProperty name="numeric" value="false"/>
1775 source="http://www.w3.org/TR/xmlschema-2/#anyURI"/>
1777 <xs:restriction base="xs:anySimpleType">
1778 <xs:whiteSpace value="collapse" fixed="true"
1779 id="anyURI.whiteSpace"/>
1783 <xs:simpleType name="QName" id="QName">
1786 <hfp:hasFacet name="length"/>
1787 <hfp:hasFacet name="minLength"/>
1788 <hfp:hasFacet name="maxLength"/>
1789 <hfp:hasFacet name="pattern"/>
1790 <hfp:hasFacet name="enumeration"/>
1791 <hfp:hasFacet name="whiteSpace"/>
1792 <hfp:hasProperty name="ordered" value="false"/>
1793 <hfp:hasProperty name="bounded" value="false"/>
1794 <hfp:hasProperty name="cardinality"
1795 value="countably infinite"/>
1796 <hfp:hasProperty name="numeric" value="false"/>
1799 source="http://www.w3.org/TR/xmlschema-2/#QName"/>
1801 <xs:restriction base="xs:anySimpleType">
1802 <xs:whiteSpace value="collapse" fixed="true"
1803 id="QName.whiteSpace"/>
1807 <xs:simpleType name="NOTATION" id="NOTATION">
1810 <hfp:hasFacet name="length"/>
1811 <hfp:hasFacet name="minLength"/>
1812 <hfp:hasFacet name="maxLength"/>
1813 <hfp:hasFacet name="pattern"/>
1814 <hfp:hasFacet name="enumeration"/>
1815 <hfp:hasFacet name="whiteSpace"/>
1816 <hfp:hasProperty name="ordered" value="false"/>
1817 <hfp:hasProperty name="bounded" value="false"/>
1818 <hfp:hasProperty name="cardinality"
1819 value="countably infinite"/>
1820 <hfp:hasProperty name="numeric" value="false"/>
1823 source="http://www.w3.org/TR/xmlschema-2/#NOTATION"/>
1825 NOTATION cannot be used directly in a schema; rather a type
1826 must be derived from it by specifying at least one enumeration
1827 facet whose value is the name of a NOTATION declared in the
1831 <xs:restriction base="xs:anySimpleType">
1832 <xs:whiteSpace value="collapse" fixed="true"
1833 id="NOTATION.whiteSpace"/>
1839 Now the derived primitive types
1843 <xs:simpleType name="normalizedString" id="normalizedString">
1846 source="http://www.w3.org/TR/xmlschema-2/#normalizedString"/>
1848 <xs:restriction base="xs:string">
1849 <xs:whiteSpace value="replace"
1850 id="normalizedString.whiteSpace"/>
1854 <xs:simpleType name="token" id="token">
1857 source="http://www.w3.org/TR/xmlschema-2/#token"/>
1859 <xs:restriction base="xs:normalizedString">
1860 <xs:whiteSpace value="collapse" id="token.whiteSpace"/>
1864 <xs:simpleType name="language" id="language">
1867 source="http://www.w3.org/TR/xmlschema-2/#language"/>
1869 <xs:restriction base="xs:token">
1871 value="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*"
1872 id="language.pattern">
1875 source="http://www.ietf.org/rfc/rfc3066.txt">
1876 pattern specifies the content of section 2.12 of XML 1.0e2
1877 and RFC 3066 (Revised version of RFC 1766).
1884 <xs:simpleType name="IDREFS" id="IDREFS">
1887 <hfp:hasFacet name="length"/>
1888 <hfp:hasFacet name="minLength"/>
1889 <hfp:hasFacet name="maxLength"/>
1890 <hfp:hasFacet name="enumeration"/>
1891 <hfp:hasFacet name="whiteSpace"/>
1892 <hfp:hasFacet name="pattern"/>
1893 <hfp:hasProperty name="ordered" value="false"/>
1894 <hfp:hasProperty name="bounded" value="false"/>
1895 <hfp:hasProperty name="cardinality"
1896 value="countably infinite"/>
1897 <hfp:hasProperty name="numeric" value="false"/>
1900 source="http://www.w3.org/TR/xmlschema-2/#IDREFS"/>
1904 <xs:list itemType="xs:IDREF"/>
1906 <xs:minLength value="1" id="IDREFS.minLength"/>
1910 <xs:simpleType name="ENTITIES" id="ENTITIES">
1913 <hfp:hasFacet name="length"/>
1914 <hfp:hasFacet name="minLength"/>
1915 <hfp:hasFacet name="maxLength"/>
1916 <hfp:hasFacet name="enumeration"/>
1917 <hfp:hasFacet name="whiteSpace"/>
1918 <hfp:hasFacet name="pattern"/>
1919 <hfp:hasProperty name="ordered" value="false"/>
1920 <hfp:hasProperty name="bounded" value="false"/>
1921 <hfp:hasProperty name="cardinality"
1922 value="countably infinite"/>
1923 <hfp:hasProperty name="numeric" value="false"/>
1926 source="http://www.w3.org/TR/xmlschema-2/#ENTITIES"/>
1930 <xs:list itemType="xs:ENTITY"/>
1932 <xs:minLength value="1" id="ENTITIES.minLength"/>
1936 <xs:simpleType name="NMTOKEN" id="NMTOKEN">
1939 source="http://www.w3.org/TR/xmlschema-2/#NMTOKEN"/>
1941 <xs:restriction base="xs:token">
1942 <xs:pattern value="\c+" id="NMTOKEN.pattern">
1945 source="http://www.w3.org/TR/REC-xml#NT-Nmtoken">
1946 pattern matches production 7 from the XML spec
1953 <xs:simpleType name="NMTOKENS" id="NMTOKENS">
1956 <hfp:hasFacet name="length"/>
1957 <hfp:hasFacet name="minLength"/>
1958 <hfp:hasFacet name="maxLength"/>
1959 <hfp:hasFacet name="enumeration"/>
1960 <hfp:hasFacet name="whiteSpace"/>
1961 <hfp:hasFacet name="pattern"/>
1962 <hfp:hasProperty name="ordered" value="false"/>
1963 <hfp:hasProperty name="bounded" value="false"/>
1964 <hfp:hasProperty name="cardinality"
1965 value="countably infinite"/>
1966 <hfp:hasProperty name="numeric" value="false"/>
1969 source="http://www.w3.org/TR/xmlschema-2/#NMTOKENS"/>
1973 <xs:list itemType="xs:NMTOKEN"/>
1975 <xs:minLength value="1" id="NMTOKENS.minLength"/>
1979 <xs:simpleType name="Name" id="Name">
1982 source="http://www.w3.org/TR/xmlschema-2/#Name"/>
1984 <xs:restriction base="xs:token">
1985 <xs:pattern value="\i\c*" id="Name.pattern">
1988 source="http://www.w3.org/TR/REC-xml#NT-Name">
1989 pattern matches production 5 from the XML spec
1996 <xs:simpleType name="NCName" id="NCName">
1999 source="http://www.w3.org/TR/xmlschema-2/#NCName"/>
2001 <xs:restriction base="xs:Name">
2002 <xs:pattern value="[\i-[:]][\c-[:]]*" id="NCName.pattern">
2005 source="http://www.w3.org/TR/REC-xml-names/#NT-NCName">
2006 pattern matches production 4 from the Namespaces in XML spec
2013 <xs:simpleType name="ID" id="ID">
2016 source="http://www.w3.org/TR/xmlschema-2/#ID"/>
2018 <xs:restriction base="xs:NCName"/>
2021 <xs:simpleType name="IDREF" id="IDREF">
2024 source="http://www.w3.org/TR/xmlschema-2/#IDREF"/>
2026 <xs:restriction base="xs:NCName"/>
2029 <xs:simpleType name="ENTITY" id="ENTITY">
2032 source="http://www.w3.org/TR/xmlschema-2/#ENTITY"/>
2034 <xs:restriction base="xs:NCName"/>
2037 <xs:simpleType name="integer" id="integer">
2040 source="http://www.w3.org/TR/xmlschema-2/#integer"/>
2042 <xs:restriction base="xs:decimal">
2043 <xs:fractionDigits value="0" fixed="true" id="integer.fractionDigits"/>
2044 <xs:pattern value="[\-+]?[0-9]+"/>
2048 <xs:simpleType name="nonPositiveInteger" id="nonPositiveInteger">
2051 source="http://www.w3.org/TR/xmlschema-2/#nonPositiveInteger"/>
2053 <xs:restriction base="xs:integer">
2054 <xs:maxInclusive value="0" id="nonPositiveInteger.maxInclusive"/>
2058 <xs:simpleType name="negativeInteger" id="negativeInteger">
2061 source="http://www.w3.org/TR/xmlschema-2/#negativeInteger"/>
2063 <xs:restriction base="xs:nonPositiveInteger">
2064 <xs:maxInclusive value="-1" id="negativeInteger.maxInclusive"/>
2068 <xs:simpleType name="long" id="long">
2071 <hfp:hasProperty name="bounded" value="true"/>
2072 <hfp:hasProperty name="cardinality" value="finite"/>
2075 source="http://www.w3.org/TR/xmlschema-2/#long"/>
2077 <xs:restriction base="xs:integer">
2078 <xs:minInclusive value="-9223372036854775808" id="long.minInclusive"/>
2079 <xs:maxInclusive value="9223372036854775807" id="long.maxInclusive"/>
2083 <xs:simpleType name="int" id="int">
2086 source="http://www.w3.org/TR/xmlschema-2/#int"/>
2088 <xs:restriction base="xs:long">
2089 <xs:minInclusive value="-2147483648" id="int.minInclusive"/>
2090 <xs:maxInclusive value="2147483647" id="int.maxInclusive"/>
2094 <xs:simpleType name="short" id="short">
2097 source="http://www.w3.org/TR/xmlschema-2/#short"/>
2099 <xs:restriction base="xs:int">
2100 <xs:minInclusive value="-32768" id="short.minInclusive"/>
2101 <xs:maxInclusive value="32767" id="short.maxInclusive"/>
2105 <xs:simpleType name="byte" id="byte">
2108 source="http://www.w3.org/TR/xmlschema-2/#byte"/>
2110 <xs:restriction base="xs:short">
2111 <xs:minInclusive value="-128" id="byte.minInclusive"/>
2112 <xs:maxInclusive value="127" id="byte.maxInclusive"/>
2116 <xs:simpleType name="nonNegativeInteger" id="nonNegativeInteger">
2119 source="http://www.w3.org/TR/xmlschema-2/#nonNegativeInteger"/>
2121 <xs:restriction base="xs:integer">
2122 <xs:minInclusive value="0" id="nonNegativeInteger.minInclusive"/>
2126 <xs:simpleType name="unsignedLong" id="unsignedLong">
2129 <hfp:hasProperty name="bounded" value="true"/>
2130 <hfp:hasProperty name="cardinality" value="finite"/>
2133 source="http://www.w3.org/TR/xmlschema-2/#unsignedLong"/>
2135 <xs:restriction base="xs:nonNegativeInteger">
2136 <xs:maxInclusive value="18446744073709551615"
2137 id="unsignedLong.maxInclusive"/>
2141 <xs:simpleType name="unsignedInt" id="unsignedInt">
2144 source="http://www.w3.org/TR/xmlschema-2/#unsignedInt"/>
2146 <xs:restriction base="xs:unsignedLong">
2147 <xs:maxInclusive value="4294967295"
2148 id="unsignedInt.maxInclusive"/>
2152 <xs:simpleType name="unsignedShort" id="unsignedShort">
2155 source="http://www.w3.org/TR/xmlschema-2/#unsignedShort"/>
2157 <xs:restriction base="xs:unsignedInt">
2158 <xs:maxInclusive value="65535"
2159 id="unsignedShort.maxInclusive"/>
2163 <xs:simpleType name="unsignedByte" id="unsignedByte">
2166 source="http://www.w3.org/TR/xmlschema-2/#unsignedByte"/>
2168 <xs:restriction base="xs:unsignedShort">
2169 <xs:maxInclusive value="255" id="unsignedByte.maxInclusive"/>
2173 <xs:simpleType name="positiveInteger" id="positiveInteger">
2176 source="http://www.w3.org/TR/xmlschema-2/#positiveInteger"/>
2178 <xs:restriction base="xs:nonNegativeInteger">
2179 <xs:minInclusive value="1" id="positiveInteger.minInclusive"/>
2183 <xs:simpleType name="derivationControl">
2186 A utility type, not for public use</xs:documentation>
2188 <xs:restriction base="xs:NMTOKEN">
2189 <xs:enumeration value="substitution"/>
2190 <xs:enumeration value="extension"/>
2191 <xs:enumeration value="restriction"/>
2192 <xs:enumeration value="list"/>
2193 <xs:enumeration value="union"/>
2197 <xs:group name="simpleDerivation">
2199 <xs:element ref="xs:restriction"/>
2200 <xs:element ref="xs:list"/>
2201 <xs:element ref="xs:union"/>
2205 <xs:simpleType name="simpleDerivationSet">
2208 #all or (possibly empty) subset of {restriction, union, list}
2211 A utility type, not for public use</xs:documentation>
2215 <xs:restriction base="xs:token">
2216 <xs:enumeration value="#all"/>
2222 <xs:restriction base="xs:derivationControl">
2223 <xs:enumeration value="list"/>
2224 <xs:enumeration value="union"/>
2225 <xs:enumeration value="restriction"/>
2233 <xs:complexType name="simpleType" abstract="true">
2235 <xs:extension base="xs:annotated">
2236 <xs:group ref="xs:simpleDerivation"/>
2237 <xs:attribute name="final" type="xs:simpleDerivationSet"/>
2238 <xs:attribute name="name" type="xs:NCName">
2241 Can be restricted to required or forbidden
2246 </xs:complexContent>
2249 <xs:complexType name="topLevelSimpleType">
2251 <xs:restriction base="xs:simpleType">
2253 <xs:element ref="xs:annotation" minOccurs="0"/>
2254 <xs:group ref="xs:simpleDerivation"/>
2256 <xs:attribute name="name" use="required"
2260 Required at the top level
2264 <xs:anyAttribute namespace="##other" processContents="lax"/>
2266 </xs:complexContent>
2269 <xs:complexType name="localSimpleType">
2271 <xs:restriction base="xs:simpleType">
2273 <xs:element ref="xs:annotation" minOccurs="0"/>
2274 <xs:group ref="xs:simpleDerivation"/>
2276 <xs:attribute name="name" use="prohibited">
2279 Forbidden when nested
2283 <xs:attribute name="final" use="prohibited"/>
2284 <xs:anyAttribute namespace="##other" processContents="lax"/>
2286 </xs:complexContent>
2289 <xs:element name="simpleType" type="xs:topLevelSimpleType" id="simpleType">
2292 source="http://www.w3.org/TR/xmlschema-2/#element-simpleType"/>
2296 <xs:group name="facets">
2299 We should use a substitution group for facets, but
2300 that's ruled out because it would allow users to
2301 add their own, which we're not ready for yet.
2305 <xs:element ref="xs:minExclusive"/>
2306 <xs:element ref="xs:minInclusive"/>
2307 <xs:element ref="xs:maxExclusive"/>
2308 <xs:element ref="xs:maxInclusive"/>
2309 <xs:element ref="xs:totalDigits"/>
2310 <xs:element ref="xs:fractionDigits"/>
2311 <xs:element ref="xs:length"/>
2312 <xs:element ref="xs:minLength"/>
2313 <xs:element ref="xs:maxLength"/>
2314 <xs:element ref="xs:enumeration"/>
2315 <xs:element ref="xs:whiteSpace"/>
2316 <xs:element ref="xs:pattern"/>
2320 <xs:group name="simpleRestrictionModel">
2322 <xs:element name="simpleType" type="xs:localSimpleType" minOccurs="0"/>
2323 <xs:group ref="xs:facets" minOccurs="0" maxOccurs="unbounded"/>
2327 <xs:element name="restriction" id="restriction">
2331 source="http://www.w3.org/TR/xmlschema-2/#element-restriction">
2332 base attribute and simpleType child are mutually
2333 exclusive, but one or other is required
2337 <xs:extension base="xs:annotated">
2338 <xs:group ref="xs:simpleRestrictionModel"/>
2339 <xs:attribute name="base" type="xs:QName" use="optional"/>
2341 </xs:complexContent>
2345 <xs:element name="list" id="list">
2349 source="http://www.w3.org/TR/xmlschema-2/#element-list">
2350 itemType attribute and simpleType child are mutually
2351 exclusive, but one or other is required
2355 <xs:extension base="xs:annotated">
2357 <xs:element name="simpleType" type="xs:localSimpleType"
2360 <xs:attribute name="itemType" type="xs:QName" use="optional"/>
2362 </xs:complexContent>
2366 <xs:element name="union" id="union">
2370 source="http://www.w3.org/TR/xmlschema-2/#element-union">
2371 memberTypes attribute must be non-empty or there must be
2372 at least one simpleType child
2376 <xs:extension base="xs:annotated">
2378 <xs:element name="simpleType" type="xs:localSimpleType"
2379 minOccurs="0" maxOccurs="unbounded"/>
2381 <xs:attribute name="memberTypes" use="optional">
2383 <xs:list itemType="xs:QName"/>
2387 </xs:complexContent>
2391 <xs:complexType name="facet">
2393 <xs:extension base="xs:annotated">
2394 <xs:attribute name="value" use="required"/>
2395 <xs:attribute name="fixed" type="xs:boolean" use="optional"
2398 </xs:complexContent>
2401 <xs:complexType name="noFixedFacet">
2403 <xs:restriction base="xs:facet">
2405 <xs:element ref="xs:annotation" minOccurs="0"/>
2407 <xs:attribute name="fixed" use="prohibited"/>
2408 <xs:anyAttribute namespace="##other" processContents="lax"/>
2410 </xs:complexContent>
2413 <xs:element name="minExclusive" id="minExclusive" type="xs:facet">
2416 source="http://www.w3.org/TR/xmlschema-2/#element-minExclusive"/>
2419 <xs:element name="minInclusive" id="minInclusive" type="xs:facet">
2422 source="http://www.w3.org/TR/xmlschema-2/#element-minInclusive"/>
2426 <xs:element name="maxExclusive" id="maxExclusive" type="xs:facet">
2429 source="http://www.w3.org/TR/xmlschema-2/#element-maxExclusive"/>
2432 <xs:element name="maxInclusive" id="maxInclusive" type="xs:facet">
2435 source="http://www.w3.org/TR/xmlschema-2/#element-maxInclusive"/>
2439 <xs:complexType name="numFacet">
2441 <xs:restriction base="xs:facet">
2443 <xs:element ref="xs:annotation" minOccurs="0"/>
2445 <xs:attribute name="value" type="xs:nonNegativeInteger" use="required"/>
2446 <xs:anyAttribute namespace="##other" processContents="lax"/>
2448 </xs:complexContent>
2451 <xs:element name="totalDigits" id="totalDigits">
2454 source="http://www.w3.org/TR/xmlschema-2/#element-totalDigits"/>
2458 <xs:restriction base="xs:numFacet">
2460 <xs:element ref="xs:annotation" minOccurs="0"/>
2462 <xs:attribute name="value" type="xs:positiveInteger" use="required"/>
2463 <xs:anyAttribute namespace="##other" processContents="lax"/>
2465 </xs:complexContent>
2468 <xs:element name="fractionDigits" id="fractionDigits" type="xs:numFacet">
2471 source="http://www.w3.org/TR/xmlschema-2/#element-fractionDigits"/>
2475 <xs:element name="length" id="length" type="xs:numFacet">
2478 source="http://www.w3.org/TR/xmlschema-2/#element-length"/>
2481 <xs:element name="minLength" id="minLength" type="xs:numFacet">
2484 source="http://www.w3.org/TR/xmlschema-2/#element-minLength"/>
2487 <xs:element name="maxLength" id="maxLength" type="xs:numFacet">
2490 source="http://www.w3.org/TR/xmlschema-2/#element-maxLength"/>
2494 <xs:element name="enumeration" id="enumeration" type="xs:noFixedFacet">
2497 source="http://www.w3.org/TR/xmlschema-2/#element-enumeration"/>
2501 <xs:element name="whiteSpace" id="whiteSpace">
2504 source="http://www.w3.org/TR/xmlschema-2/#element-whiteSpace"/>
2508 <xs:restriction base="xs:facet">
2510 <xs:element ref="xs:annotation" minOccurs="0"/>
2512 <xs:attribute name="value" use="required">
2514 <xs:restriction base="xs:NMTOKEN">
2515 <xs:enumeration value="preserve"/>
2516 <xs:enumeration value="replace"/>
2517 <xs:enumeration value="collapse"/>
2521 <xs:anyAttribute namespace="##other" processContents="lax"/>
2523 </xs:complexContent>
2527 <xs:element name="pattern" id="pattern">
2530 source="http://www.w3.org/TR/xmlschema-2/#element-pattern"/>
2534 <xs:restriction base="xs:noFixedFacet">
2536 <xs:element ref="xs:annotation" minOccurs="0"/>
2538 <xs:attribute name="value" type="xs:string" use="required"/>
2539 <xs:anyAttribute namespace="##other" processContents="lax"/>
2541 </xs:complexContent>