The schema corresponding to this document is normative, with respect to the syntactic constraints it expresses in the XML Schema language. The documentation (within <documentation> elements) below, is not normative, but rather highlights important aspects of the W3C Recommendation of which this is a part First the built-in primitive datatypes. These definitions are for information only, the real built-in definitions are magic. Note in particular that there is no type named 'anySimpleType'. The primitives should really be derived from no type at all, and anySimpleType should be derived as a union of all the primitives. For each built-in datatype in this schema (both primitive and derived) can be uniquely addressed via a URI constructed as follows: 1) the base URI is the URI of the XML Schema namespace 2) the fragment identifier is the name of the datatype For example, to address the int datatype, the URI is: http://www.w3.org/2000/10/XMLSchema#int Additionally, each facet definition element can be uniquely addressed via a URI constructed as follows: 1) the base URI is the URI of the XML Schema namespace 2) the fragment identifier is the name of the facet For example, to address the maxInclusive facet, the URI is: http://www.w3.org/2000/10/XMLSchema#maxInclusive Additionally, each facet usage in a built-in datatype definition can be uniquely addressed via a URI constructed as follows: 1) the base URI is the URI of the XML Schema namespace 2) the fragment identifier is the name of the datatype, followed by a period (".") followed by the name of the facet For example, to address the usage of the maxInclusive facet in the definition of int, the URI is: http://www.w3.org/2000/10/XMLSchema#int.maxInclusive Now the derived primitive types pattern matches production 33 from the XML spec pattern matches production 7 from the XML spec pattern matches production 5 from the XML spec pattern matches production 4 from the Namespaces in XML spec NOTATION cannot be used directly in a schema; rather a type must be derived from it by specifying at least one enumeration facet whose value is the name of a NOTATION declared in the schema. the value/lexical spaces of NOTATION are not the full value/lexical spaces of NOTATION even though there are no additional constraining facets. The true value/lexical spaces are limited to the set of names of NOTATIONs declared in the schema. Can be restricted to required or forbidden Required at the top level Forbidden when nested base attribute and simpleType child are mutually exclusive, but one or other is required itemType attribute and simpleType child are mutually exclusive, but one or other is required memberTypes attribute must be non-empty or there must be at least one simpleType child