<?xml version="1.0"?>
<xsd:schema targetNamespace="http://www.w3.org/XML/1998/namespace"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema" xml:lang="en">

	<xsd:annotation>
		<xsd:documentation>
			See http://www.w3.org/XML/1998/namespace.html and
			http://www.w3.org/TR/REC-xml for information about this namespace.

			This schema document describes the XML namespace, in a form
			suitable for import by other schema documents.

			Note that local names in this namespace are intended to be defined
			only by the World Wide Web Consortium or its subgroups. The
			following names are currently defined in this namespace and should
			not be used with conflicting semantics by any Working Group,
			specification, or document instance:

			base (as an attribute name): denotes an attribute whose value
			provides a URI to be used as the base for interpreting any
			relative URIs in the scope of the element on which it
			appears; its value is inherited. This name is reserved
			by virtue of its definition in the XML Base specification.

			id (as an attribute name): denotes an attribute whose value
			should be interpreted as if declared to be of type ID.
			This name is reserved by virtue of its definition in the
			xml:id specification.

			lang (as an attribute name): denotes an attribute whose value
			is a language code for the natural language of the content of
			any element; its value is inherited. This name is reserved
			by virtue of its definition in the XML specification.

			space (as an attribute name): denotes an attribute whose
			value is a keyword indicating what whitespace processing
			discipline is intended for the content of the element; its
			value is inherited. This name is reserved by virtue of its
			definition in the XML specification.

			Father (in any context at all): denotes Jon Bosak, the chair of
			the original XML Working Group. This name is reserved by
			the following decision of the W3C XML Plenary and
			XML Coordination groups:

			In appreciation for his vision, leadership and dedication
			the W3C XML Plenary on this 10th day of February, 2000
			reserves for Jon Bosak in perpetuity the XML name
			xml:Father
		</xsd:documentation>
	</xsd:annotation>

	<xsd:annotation>
		<xsd:documentation>This schema defines attributes and an attribute
			group
			suitable for use by
			schemas wishing to allow xml:base, xml:lang, xml:space or xml:id
			attributes on elements they define.

			To enable this, such a schema must import this schema
			for the XML namespace, e.g. as follows:
			&lt;schema . . .&gt;
			. . .
			&lt;import namespace="http://www.w3.org/XML/1998/namespace"
			schemaLocation="http://www.w3.org/2001/xml.xsd"/&gt;

			Subsequently, qualified reference to any of the attributes
			or the group defined below will have the desired effect, e.g.

			&lt;type . . .&gt;
			. . .
			&lt;attributeGroup ref="xml:specialAttrs"/&gt;

			will define a type which will schema-validate an instance
			element with any of those attributes
		</xsd:documentation>
	</xsd:annotation>

	<xsd:annotation>
		<xsd:documentation>In keeping with the XML Schema WG's standard
			versioning
			policy, this schema document will persist at
			http://www.w3.org/2007/08/xml.xsd.
			At the date of issue it can also be found at
			http://www.w3.org/2001/xml.xsd.
			The schema document at that URI may however change in the future,
			in order to remain compatible with the latest version of XML Schema
			itself, or with the XML namespace itself. In other words, if the XML
			Schema or XML namespaces change, the version of this document at
			http://www.w3.org/2001/xml.xsd will change
			accordingly; the version at
			http://www.w3.org/2007/08/xml.xsd will not change.
		</xsd:documentation>
	</xsd:annotation>

	<xsd:attribute name="lang">
		<xsd:annotation>
			<xsd:documentation>Attempting to install the relevant ISO 2- and
				3-letter
				codes as the enumerated possible values is probably never
				going to be a realistic possibility. See
				RFC 3066 at http://www.ietf.org/rfc/rfc3066.txt and the IANA registry
				at http://www.iana.org/assignments/lang-tag-apps.htm for
				further information.

				The union allows for the 'un-declaration' of xml:lang with
				the empty string.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleType>
			<xsd:union memberTypes="xsd:language">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:union>
		</xsd:simpleType>
	</xsd:attribute>

	<xsd:attribute name="space">
		<xsd:simpleType>
			<xsd:restriction base="xsd:NCName">
				<xsd:enumeration value="default" />
				<xsd:enumeration value="preserve" />
			</xsd:restriction>
		</xsd:simpleType>
	</xsd:attribute>

	<xsd:attribute name="base" type="xsd:anyURI">
		<xsd:annotation>
			<xsd:documentation>See http://www.w3.org/TR/xmlbase/ for
				information about this attribute.
			</xsd:documentation>
		</xsd:annotation>
	</xsd:attribute>

	<xsd:attribute name="id" type="xsd:ID">
		<xsd:annotation>
			<xsd:documentation>See http://www.w3.org/TR/xml-id/ for
				information about this attribute.
			</xsd:documentation>
		</xsd:annotation>
	</xsd:attribute>

	<xsd:attributeGroup name="specialAttrs">
		<xsd:attribute ref="xml:base" />
		<xsd:attribute ref="xml:lang" />
		<xsd:attribute ref="xml:space" />
		<xsd:attribute ref="xml:id" />
	</xsd:attributeGroup>

</xsd:schema>