You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1196 lines
39 KiB
1196 lines
39 KiB
5 years ago
|
<?xml version='1.0' encoding='UTF-8'?>
|
||
|
<!-- XML Schema schema for XML Schemas: Part 1: Structures -->
|
||
|
<!-- Note this schema is NOT the normative structures schema. -->
|
||
|
<!-- The prose copy in the structures REC is the normative -->
|
||
|
<!-- version (which shouldn't differ from this one except for -->
|
||
|
<!-- this comment and entity expansions, but just in case -->
|
||
|
|
||
|
<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">
|
||
|
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/structures.html">
|
||
|
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</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
The simpleType element and all of its members are defined
|
||
|
in datatypes.xsd</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
|
||
|
<xs:include schemaLocation="datatypes.xsd"/>
|
||
|
|
||
|
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
Get access to the xml: attribute groups for xml:lang
|
||
|
as declared on 'schema' and 'documentation' below
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
</xs:import>
|
||
|
|
||
|
<xs:complexType name="openAttrs">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
This type is extended by almost all schema types
|
||
|
to allow attributes from other namespaces to be
|
||
|
added to user schemas.
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:anyType">
|
||
|
<xs:anyAttribute namespace="##other" processContents="lax"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="annotated">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
This type is extended by all types which allow annotation
|
||
|
other than <schema> itself
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:openAttrs">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0" maxOccurs="1"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="id" type="xs:ID"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:group name="schemaTop">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
This group is for the
|
||
|
elements which occur freely at the top level of schemas.
|
||
|
All of their types are based on the "annotated" type by extension.
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:choice>
|
||
|
<xs:group ref="xs:redefinable"/>
|
||
|
<xs:element ref="xs:element"/>
|
||
|
<xs:element ref="xs:attribute"/>
|
||
|
<xs:element ref="xs:notation"/>
|
||
|
</xs:choice>
|
||
|
</xs:group>
|
||
|
|
||
|
<xs:group name="redefinable">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
This group is for the
|
||
|
elements which can self-redefine (see <redefine> below).
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:choice>
|
||
|
<xs:element ref="xs:simpleType"/>
|
||
|
<xs:element ref="xs:complexType"/>
|
||
|
<xs:element ref="xs:group"/>
|
||
|
<xs:element ref="xs:attributeGroup"/>
|
||
|
</xs:choice>
|
||
|
</xs:group>
|
||
|
|
||
|
<xs:simpleType name="formChoice">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
A utility type, not for public use
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:restriction base="xs:NMTOKEN">
|
||
|
<xs:enumeration value="qualified"/>
|
||
|
<xs:enumeration value="unqualified"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
|
||
|
<xs:simpleType name="reducedDerivationControl">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
A utility type, not for public use
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:restriction base="xs:derivationControl">
|
||
|
<xs:enumeration value="extension"/>
|
||
|
<xs:enumeration value="restriction"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
|
||
|
<xs:simpleType name="derivationSet">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
A utility type, not for public use
|
||
|
</xs:documentation>
|
||
|
<xs:documentation>
|
||
|
#all or (possibly empty) subset of {extension, restriction}</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:union>
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:token">
|
||
|
<xs:enumeration value="#all"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
<xs:simpleType>
|
||
|
<xs:list itemType="xs:reducedDerivationControl"/>
|
||
|
</xs:simpleType>
|
||
|
</xs:union>
|
||
|
</xs:simpleType>
|
||
|
|
||
|
<xs:element name="schema" id="schema">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-schema"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:openAttrs">
|
||
|
<xs:sequence>
|
||
|
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||
|
<xs:element ref="xs:include"/>
|
||
|
<xs:element ref="xs:import"/>
|
||
|
<xs:element ref="xs:redefine"/>
|
||
|
<xs:element ref="xs:annotation"/>
|
||
|
</xs:choice>
|
||
|
<xs:sequence minOccurs="0" maxOccurs="unbounded">
|
||
|
<xs:group ref="xs:schemaTop"/>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="targetNamespace" type="xs:anyURI"/>
|
||
|
<xs:attribute name="version" type="xs:token"/>
|
||
|
<xs:attribute name="finalDefault" type="xs:derivationSet" use="optional" default="#all"/>
|
||
|
<xs:attribute name="blockDefault" type="xs:blockSet" use="optional" default="#all"/>
|
||
|
<xs:attribute name="attributeFormDefault" type="xs:formChoice" use="optional" default="unqualified"/>
|
||
|
<xs:attribute name="elementFormDefault" type="xs:formChoice" use="optional" default="unqualified"/>
|
||
|
<xs:attribute name="id" type="xs:ID"/>
|
||
|
<xs:attribute ref="xml:lang"/>
|
||
|
<!-- <xs:attribute ref="xmlns:xsd"/> -->
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:key name="element">
|
||
|
<xs:selector xpath="xs:element"/>
|
||
|
<xs:field xpath="@name"/>
|
||
|
</xs:key>
|
||
|
|
||
|
<xs:key name="attribute">
|
||
|
<xs:selector xpath="xs:attribute"/>
|
||
|
<xs:field xpath="@name"/>
|
||
|
</xs:key>
|
||
|
|
||
|
<xs:key name="type">
|
||
|
<xs:selector xpath="xs:complexType|xs:simpleType"/>
|
||
|
<xs:field xpath="@name"/>
|
||
|
</xs:key>
|
||
|
|
||
|
<xs:key name="group">
|
||
|
<xs:selector xpath="xs:group"/>
|
||
|
<xs:field xpath="@name"/>
|
||
|
</xs:key>
|
||
|
|
||
|
<xs:key name="attributeGroup">
|
||
|
<xs:selector xpath="xs:attributeGroup"/>
|
||
|
<xs:field xpath="@name"/>
|
||
|
</xs:key>
|
||
|
|
||
|
<xs:key name="notation">
|
||
|
<xs:selector xpath="xs:notation"/>
|
||
|
<xs:field xpath="@name"/>
|
||
|
</xs:key>
|
||
|
|
||
|
<xs:key name="identityConstraint">
|
||
|
<xs:selector xpath=".//xs:key|.//xs:unique|.//xs:keyref"/>
|
||
|
<xs:field xpath="@name"/>
|
||
|
</xs:key>
|
||
|
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:simpleType name="allNNI">
|
||
|
<xs:annotation><xs:documentation>
|
||
|
for maxOccurs</xs:documentation></xs:annotation>
|
||
|
<xs:union memberTypes="xs:nonNegativeInteger">
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:NMTOKEN">
|
||
|
<xs:enumeration value="unbounded"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:union>
|
||
|
</xs:simpleType>
|
||
|
|
||
|
<xs:attributeGroup name="occurs">
|
||
|
<xs:annotation><xs:documentation>
|
||
|
for all particles</xs:documentation></xs:annotation>
|
||
|
<xs:attribute name="minOccurs" type="xs:nonNegativeInteger" use="optional" default="1"/>
|
||
|
<xs:attribute name="maxOccurs" type="xs:allNNI" use="optional" default="1"/>
|
||
|
</xs:attributeGroup>
|
||
|
|
||
|
<xs:attributeGroup name="defRef">
|
||
|
<xs:annotation><xs:documentation>
|
||
|
for element, group and attributeGroup,
|
||
|
which both define and reference</xs:documentation></xs:annotation>
|
||
|
<xs:attribute name="name" type="xs:NCName"/>
|
||
|
<xs:attribute name="ref" type="xs:QName"/>
|
||
|
</xs:attributeGroup>
|
||
|
|
||
|
<xs:group name="typeDefParticle">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
'complexType' uses this</xs:documentation></xs:annotation>
|
||
|
<xs:choice>
|
||
|
<xs:element name="group" type="xs:groupRef"/>
|
||
|
<xs:element ref="xs:all"/>
|
||
|
<xs:element ref="xs:choice"/>
|
||
|
<xs:element ref="xs:sequence"/>
|
||
|
</xs:choice>
|
||
|
</xs:group>
|
||
|
|
||
|
|
||
|
|
||
|
<xs:group name="nestedParticle">
|
||
|
<xs:choice>
|
||
|
<xs:element name="element" type="xs:localElement"/>
|
||
|
<xs:element name="group" type="xs:groupRef"/>
|
||
|
<xs:element ref="xs:choice"/>
|
||
|
<xs:element ref="xs:sequence"/>
|
||
|
<xs:element ref="xs:any"/>
|
||
|
</xs:choice>
|
||
|
</xs:group>
|
||
|
|
||
|
<xs:group name="particle">
|
||
|
<xs:choice>
|
||
|
<xs:element name="element" type="xs:localElement"/>
|
||
|
<xs:element name="group" type="xs:groupRef"/>
|
||
|
<xs:element ref="xs:all"/>
|
||
|
<xs:element ref="xs:choice"/>
|
||
|
<xs:element ref="xs:sequence"/>
|
||
|
<xs:element ref="xs:any"/>
|
||
|
</xs:choice>
|
||
|
</xs:group>
|
||
|
|
||
|
<xs:complexType name="attribute">
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:sequence>
|
||
|
<xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attributeGroup ref="xs:defRef"/>
|
||
|
<xs:attribute name="type" type="xs:QName"/>
|
||
|
<xs:attribute name="use" use="optional" default="optional">
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:NMTOKEN">
|
||
|
<xs:enumeration value="prohibited"/>
|
||
|
<xs:enumeration value="optional"/>
|
||
|
<xs:enumeration value="required"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:attribute>
|
||
|
<xs:attribute name="default" type="xs:string"/>
|
||
|
<xs:attribute name="fixed" type="xs:string"/>
|
||
|
<xs:attribute name="form" type="xs:formChoice"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="topLevelAttribute">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:attribute">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="ref" use="prohibited"/>
|
||
|
<xs:attribute name="form" use="prohibited"/>
|
||
|
<xs:attribute name="use" use="prohibited"/>
|
||
|
<xs:attribute name="name" use="required" type="xs:NCName"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:group name="attrDecls">
|
||
|
<xs:sequence>
|
||
|
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||
|
<xs:element name="attribute" type="xs:attribute"/>
|
||
|
<xs:element name="attributeGroup" type="xs:attributeGroupRef"/>
|
||
|
</xs:choice>
|
||
|
<xs:element ref="xs:anyAttribute" minOccurs="0"/>
|
||
|
</xs:sequence>
|
||
|
</xs:group>
|
||
|
|
||
|
<xs:element name="anyAttribute" type="xs:wildcard" id="anyAttribute">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-anyAttribute"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:group name="complexTypeModel">
|
||
|
<xs:choice>
|
||
|
<xs:element ref="xs:simpleContent"/>
|
||
|
<xs:element ref="xs:complexContent"/>
|
||
|
<xs:sequence>
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
This branch is short for
|
||
|
<complexContent>
|
||
|
<restriction base="xs:anyType">
|
||
|
...
|
||
|
</restriction>
|
||
|
</complexContent>
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:group ref="xs:typeDefParticle" minOccurs="0"/>
|
||
|
<xs:group ref="xs:attrDecls"/>
|
||
|
</xs:sequence>
|
||
|
</xs:choice>
|
||
|
</xs:group>
|
||
|
|
||
|
<xs:complexType name="complexType" abstract="true">
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:group ref="xs:complexTypeModel"/>
|
||
|
<xs:attribute name="name" type="xs:NCName">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
Will be restricted to required or forbidden
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
</xs:attribute>
|
||
|
<xs:attribute name="mixed" type="xs:boolean" use="optional" default="false">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
Not allowed if simpleContent child is chosen.
|
||
|
May be overriden by setting on complexContent child.
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
</xs:attribute>
|
||
|
<xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/>
|
||
|
<xs:attribute name="final" type="xs:derivationSet"/>
|
||
|
<xs:attribute name="block" type="xs:derivationSet"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="topLevelComplexType">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:complexType">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:group ref="xs:complexTypeModel"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="name" type="xs:NCName" use="required"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="localComplexType">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:complexType">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:group ref="xs:complexTypeModel"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="name" use="prohibited"/>
|
||
|
<xs:attribute name="abstract" use="prohibited"/>
|
||
|
<xs:attribute name="final" use="prohibited"/>
|
||
|
<xs:attribute name="block" use="prohibited"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="restrictionType">
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:sequence>
|
||
|
<xs:choice>
|
||
|
<xs:group ref="xs:typeDefParticle" minOccurs="0"/>
|
||
|
<xs:group ref="xs:simpleRestrictionModel" minOccurs="0"/>
|
||
|
</xs:choice>
|
||
|
<xs:group ref="xs:attrDecls"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="base" type="xs:QName" use="required"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="complexRestrictionType">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:restrictionType">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:group ref="xs:typeDefParticle" minOccurs="0"/>
|
||
|
<xs:group ref="xs:attrDecls"/>
|
||
|
</xs:sequence>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="extensionType">
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:sequence>
|
||
|
<xs:group ref="xs:typeDefParticle" minOccurs="0"/>
|
||
|
<xs:group ref="xs:attrDecls"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="base" type="xs:QName" use="required"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:element name="complexContent" id="complexContent">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexContent"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:choice>
|
||
|
<xs:element name="restriction" type="xs:complexRestrictionType"/>
|
||
|
<xs:element name="extension" type="xs:extensionType"/>
|
||
|
</xs:choice>
|
||
|
<xs:attribute name="mixed" type="xs:boolean">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
Overrides any setting on complexType parent.</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
</xs:attribute>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:complexType name="simpleRestrictionType">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:restrictionType">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:group ref="xs:simpleRestrictionModel" minOccurs="0"/>
|
||
|
<xs:group ref="xs:attrDecls"/>
|
||
|
</xs:sequence>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="simpleExtensionType">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:extensionType">
|
||
|
<xs:sequence>
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
No typeDefParticle group reference</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:group ref="xs:attrDecls"/>
|
||
|
</xs:sequence>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:element name="simpleContent" id="simpleContent">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-simpleContent"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:choice>
|
||
|
<xs:element name="restriction" type="xs:simpleRestrictionType"/>
|
||
|
<xs:element name="extension" type="xs:simpleExtensionType"/>
|
||
|
</xs:choice>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="complexType" type="xs:topLevelComplexType" id="complexType">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexType"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
|
||
|
<xs:simpleType name="blockSet">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
A utility type, not for public use</xs:documentation>
|
||
|
<xs:documentation>
|
||
|
#all or (possibly empty) subset of {substitution, extension,
|
||
|
restriction}</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:union>
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:token">
|
||
|
<xs:enumeration value="#all"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
<xs:simpleType>
|
||
|
<xs:list>
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:derivationControl">
|
||
|
<xs:enumeration value="extension"/>
|
||
|
<xs:enumeration value="restriction"/>
|
||
|
<xs:enumeration value="substitution"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:list>
|
||
|
</xs:simpleType>
|
||
|
</xs:union>
|
||
|
</xs:simpleType>
|
||
|
|
||
|
<xs:complexType name="element" abstract="true">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
The element element can be used either
|
||
|
at the top level to define an element-type binding globally,
|
||
|
or within a content model to either reference a globally-defined
|
||
|
element or type or declare an element-type binding locally.
|
||
|
The ref form is not allowed at the top level.</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:sequence>
|
||
|
<xs:choice minOccurs="0">
|
||
|
<xs:element name="simpleType" type="xs:localSimpleType"/>
|
||
|
<xs:element name="complexType" type="xs:localComplexType"/>
|
||
|
</xs:choice>
|
||
|
<xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attributeGroup ref="xs:defRef"/>
|
||
|
<xs:attribute name="type" type="xs:QName"/>
|
||
|
<xs:attribute name="substitutionGroup" type="xs:QName"/>
|
||
|
<xs:attributeGroup ref="xs:occurs"/>
|
||
|
<xs:attribute name="default" type="xs:string"/>
|
||
|
<xs:attribute name="fixed" type="xs:string"/>
|
||
|
<xs:attribute name="nillable" type="xs:boolean" use="optional" default="false"/>
|
||
|
<xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/>
|
||
|
<xs:attribute name="final" type="xs:derivationSet"/>
|
||
|
<xs:attribute name="block" type="xs:blockSet"/>
|
||
|
<xs:attribute name="form" type="xs:formChoice"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="topLevelElement">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:element">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:choice minOccurs="0">
|
||
|
<xs:element name="simpleType" type="xs:localSimpleType"/>
|
||
|
<xs:element name="complexType" type="xs:localComplexType"/>
|
||
|
</xs:choice>
|
||
|
<xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="ref" use="prohibited"/>
|
||
|
<xs:attribute name="form" use="prohibited"/>
|
||
|
<xs:attribute name="minOccurs" use="prohibited"/>
|
||
|
<xs:attribute name="maxOccurs" use="prohibited"/>
|
||
|
<xs:attribute name="name" use="required" type="xs:NCName"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="localElement">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:element">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:choice minOccurs="0">
|
||
|
<xs:element name="simpleType" type="xs:localSimpleType"/>
|
||
|
<xs:element name="complexType" type="xs:localComplexType"/>
|
||
|
</xs:choice>
|
||
|
<xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="substitutionGroup" use="prohibited"/>
|
||
|
<xs:attribute name="final" use="prohibited"/>
|
||
|
<xs:attribute name="abstract" use="prohibited"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:element name="element" type="xs:topLevelElement" id="element">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-element"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:complexType name="group" abstract="true">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
group type for explicit groups, named top-level groups and
|
||
|
group references</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:group ref="xs:particle" minOccurs="0" maxOccurs="unbounded"/>
|
||
|
<xs:attributeGroup ref="xs:defRef"/>
|
||
|
<xs:attributeGroup ref="xs:occurs"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="realGroup">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:group">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:choice minOccurs="0" maxOccurs="1">
|
||
|
<xs:element ref="xs:all"/>
|
||
|
<xs:element ref="xs:choice"/>
|
||
|
<xs:element ref="xs:sequence"/>
|
||
|
</xs:choice>
|
||
|
</xs:sequence>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="namedGroup">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>Should derive this from realGroup, but too complicated
|
||
|
for now</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:choice minOccurs="1" maxOccurs="1">
|
||
|
<xs:element name="all">
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:all">
|
||
|
<xs:group ref="xs:allModel"/>
|
||
|
<xs:attribute name="minOccurs" use="prohibited"/>
|
||
|
<xs:attribute name="maxOccurs" use="prohibited"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
<xs:element name="choice" type="xs:simpleExplicitGroup"/>
|
||
|
<xs:element name="sequence" type="xs:simpleExplicitGroup"/>
|
||
|
</xs:choice>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="name" use="required" type="xs:NCName"/>
|
||
|
<xs:attribute name="ref" use="prohibited"/>
|
||
|
<xs:attribute name="minOccurs" use="prohibited"/>
|
||
|
<xs:attribute name="maxOccurs" use="prohibited"/>
|
||
|
<xs:attribute name="id" type="xs:ID"/>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="groupRef">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:realGroup">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="ref" use="required" type="xs:QName"/>
|
||
|
<xs:attribute name="name" use="prohibited"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="explicitGroup">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
group type for the three kinds of group</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:group">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:group ref="xs:nestedParticle" minOccurs="0" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="name" type="xs:NCName" use="prohibited"/>
|
||
|
<xs:attribute name="ref" type="xs:QName" use="prohibited"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="simpleExplicitGroup">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:explicitGroup">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:group ref="xs:nestedParticle" minOccurs="0" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="minOccurs" use="prohibited"/>
|
||
|
<xs:attribute name="maxOccurs" use="prohibited"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:group name="allModel">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:element name="element" minOccurs="0" maxOccurs="unbounded">
|
||
|
<xs:complexType>
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>restricted max/min</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:localElement">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:choice minOccurs="0">
|
||
|
<xs:element name="simpleType" type="xs:localSimpleType"/>
|
||
|
<xs:element name="complexType" type="xs:localComplexType"/>
|
||
|
</xs:choice>
|
||
|
<xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="minOccurs" use="optional" default="1">
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:nonNegativeInteger">
|
||
|
<xs:enumeration value="0"/>
|
||
|
<xs:enumeration value="1"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:attribute>
|
||
|
<xs:attribute name="maxOccurs" use="optional" default="1">
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:allNNI">
|
||
|
<xs:enumeration value="0"/>
|
||
|
<xs:enumeration value="1"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:attribute>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
</xs:sequence>
|
||
|
</xs:group>
|
||
|
|
||
|
<xs:complexType name="all">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
Only elements allowed inside</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:explicitGroup">
|
||
|
<xs:group ref="xs:allModel"/>
|
||
|
<xs:attribute name="minOccurs" use="optional" default="1">
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:nonNegativeInteger">
|
||
|
<xs:enumeration value="0"/>
|
||
|
<xs:enumeration value="1"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:attribute>
|
||
|
<xs:attribute name="maxOccurs" use="optional" default="1">
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:allNNI">
|
||
|
<xs:enumeration value="1"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:attribute>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:element name="all" id="all" type="xs:all">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-all"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="choice" type="xs:explicitGroup" id="choice">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-choice"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="sequence" type="xs:explicitGroup" id="sequence">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-sequence"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="group" type="xs:namedGroup" id="group">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-group"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:complexType name="wildcard">
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:attribute name="namespace" type="xs:namespaceList" use="optional" default="##any"/>
|
||
|
<xs:attribute name="processContents" use="optional" default="strict">
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:NMTOKEN">
|
||
|
<xs:enumeration value="skip"/>
|
||
|
<xs:enumeration value="lax"/>
|
||
|
<xs:enumeration value="strict"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:attribute>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:element name="any" id="any">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-any"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:wildcard">
|
||
|
<xs:attributeGroup ref="xs:occurs"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
simple type for the value of the 'namespace' attr of
|
||
|
'any' and 'anyAttribute'</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
Value is
|
||
|
##any - - any non-conflicting WFXML/attribute at all
|
||
|
|
||
|
##other - - any non-conflicting WFXML/attribute from
|
||
|
namespace other than targetNS
|
||
|
|
||
|
##local - - any unqualified non-conflicting WFXML/attribute
|
||
|
|
||
|
one or - - any non-conflicting WFXML/attribute from
|
||
|
more URI the listed namespaces
|
||
|
references
|
||
|
(space separated)
|
||
|
|
||
|
##targetNamespace or ##local may appear in the above list, to
|
||
|
refer to the targetNamespace of the enclosing
|
||
|
schema or an absent targetNamespace respectively</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
|
||
|
<xs:simpleType name="namespaceList">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
A utility type, not for public use</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:union>
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:token">
|
||
|
<xs:enumeration value="##any"/>
|
||
|
<xs:enumeration value="##other"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
<xs:simpleType>
|
||
|
<xs:list>
|
||
|
<xs:simpleType>
|
||
|
<xs:union memberTypes="xs:anyURI">
|
||
|
<xs:simpleType>
|
||
|
<xs:restriction base="xs:token">
|
||
|
<xs:enumeration value="##targetNamespace"/>
|
||
|
<xs:enumeration value="##local"/>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:union>
|
||
|
</xs:simpleType>
|
||
|
</xs:list>
|
||
|
</xs:simpleType>
|
||
|
</xs:union>
|
||
|
</xs:simpleType>
|
||
|
|
||
|
<xs:element name="attribute" type="xs:topLevelAttribute" id="attribute">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-attribute"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:complexType name="attributeGroup" abstract="true">
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:group ref="xs:attrDecls"/>
|
||
|
<xs:attributeGroup ref="xs:defRef"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="namedAttributeGroup">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:attributeGroup">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
<xs:group ref="xs:attrDecls"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="name" use="required" type="xs:NCName"/>
|
||
|
<xs:attribute name="ref" use="prohibited"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:complexType name="attributeGroupRef">
|
||
|
<xs:complexContent>
|
||
|
<xs:restriction base="xs:attributeGroup">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:annotation" minOccurs="0"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="ref" use="required" type="xs:QName"/>
|
||
|
<xs:attribute name="name" use="prohibited"/>
|
||
|
</xs:restriction>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:element name="attributeGroup" type="xs:namedAttributeGroup" id="attributeGroup">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-attributeGroup"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="include" id="include">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-include"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:attribute name="schemaLocation" type="xs:anyURI" use="required"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="redefine" id="redefine">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-redefine"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:openAttrs">
|
||
|
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||
|
<xs:element ref="xs:annotation"/>
|
||
|
<xs:group ref="xs:redefinable"/>
|
||
|
</xs:choice>
|
||
|
<xs:attribute name="schemaLocation" type="xs:anyURI" use="required"/>
|
||
|
<xs:attribute name="id" type="xs:ID"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="import" id="import">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-import"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:attribute name="namespace" type="xs:anyURI"/>
|
||
|
<xs:attribute name="schemaLocation" type="xs:anyURI"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="selector" id="selector">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-selector"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:attribute name="xpath" use="required">
|
||
|
<xs:simpleType>
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>A subset of XPath expressions for use
|
||
|
in selectors</xs:documentation>
|
||
|
<xs:documentation>A utility type, not for public
|
||
|
use</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:restriction base="xs:token">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>The following pattern is intended to allow XPath
|
||
|
expressions per the following EBNF:
|
||
|
Selector ::= Path ( '|' Path )*
|
||
|
Path ::= ('.//')? Step ( '/' Step )*
|
||
|
Step ::= '.' | NameTest
|
||
|
NameTest ::= QName | '*' | NCName ':' '*'
|
||
|
child:: is also allowed
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:pattern value=" *(\. *//)? *(((child *::)? *((\i\c*:)?(\i\c*|\*)))|\.)(/(((child *::)? *((\i\c*:)?(\i\c*|\*)))|\.))*( *\| *(\. *//)? *(((child *::)? *((\i\c*:)?(\i\c*|\*)))|\.)(/(((child *::)? *((\i\c*:)?(\i\c*|\*)))|\.))*)*">
|
||
|
</xs:pattern>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:attribute>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="field" id="field">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-field"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:attribute name="xpath" use="required">
|
||
|
<xs:simpleType>
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>A subset of XPath expressions for use
|
||
|
in fields</xs:documentation>
|
||
|
<xs:documentation>A utility type, not for public
|
||
|
use</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:restriction base="xs:token">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>The following pattern is intended to allow XPath
|
||
|
expressions per the same EBNF as for selector,
|
||
|
with the following change:
|
||
|
Path ::= ('.//')? ( Step '/' )* ( Step | '@' NameTest )
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<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*|\*)))))*">
|
||
|
</xs:pattern>
|
||
|
</xs:restriction>
|
||
|
</xs:simpleType>
|
||
|
</xs:attribute>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:complexType name="keybase">
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:sequence>
|
||
|
<xs:element ref="xs:selector"/>
|
||
|
<xs:element ref="xs:field" minOccurs="1" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="name" type="xs:NCName" use="required"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
|
||
|
<xs:group name="identityConstraint">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>The three kinds of identity constraints, all with
|
||
|
type of or derived from 'keybase'.
|
||
|
</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:choice>
|
||
|
<xs:element ref="xs:unique"/>
|
||
|
<xs:element ref="xs:key"/>
|
||
|
<xs:element ref="xs:keyref"/>
|
||
|
</xs:choice>
|
||
|
</xs:group>
|
||
|
|
||
|
<xs:element name="unique" type="xs:keybase" id="unique">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-unique"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
<xs:element name="key" type="xs:keybase" id="key">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-key"/>
|
||
|
</xs:annotation>
|
||
|
</xs:element>
|
||
|
<xs:element name="keyref" id="keyref">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-keyref"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:keybase">
|
||
|
<xs:attribute name="refer" type="xs:QName" use="required"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="notation" id="notation">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-notation"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:annotated">
|
||
|
<xs:attribute name="name" type="xs:NCName" use="required"/>
|
||
|
<xs:attribute name="public" type="xs:public" use="optional"/>
|
||
|
<xs:attribute name="system" type="xs:anyURI"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:simpleType name="public">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
A utility type, not for public use</xs:documentation>
|
||
|
<xs:documentation>
|
||
|
A public identifier, per ISO 8879</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:restriction base="xs:token"/>
|
||
|
</xs:simpleType>
|
||
|
|
||
|
<xs:element name="appinfo" id="appinfo">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-appinfo"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType mixed="true">
|
||
|
<xs:sequence minOccurs="0" maxOccurs="unbounded">
|
||
|
<xs:any processContents="lax"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="source" type="xs:anyURI"/>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="documentation" id="documentation">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-documentation"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType mixed="true">
|
||
|
<xs:sequence minOccurs="0" maxOccurs="unbounded">
|
||
|
<xs:any processContents="lax"/>
|
||
|
</xs:sequence>
|
||
|
<xs:attribute name="source" type="xs:anyURI"/>
|
||
|
<xs:attribute ref="xml:lang"/>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:element name="annotation" id="annotation">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-annotation"/>
|
||
|
</xs:annotation>
|
||
|
<xs:complexType>
|
||
|
<xs:complexContent>
|
||
|
<xs:extension base="xs:openAttrs">
|
||
|
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||
|
<xs:element ref="xs:appinfo"/>
|
||
|
<xs:element ref="xs:documentation"/>
|
||
|
</xs:choice>
|
||
|
<xs:attribute name="id" type="xs:ID"/>
|
||
|
</xs:extension>
|
||
|
</xs:complexContent>
|
||
|
</xs:complexType>
|
||
|
</xs:element>
|
||
|
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
notations for use within XML Schema schemas</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
|
||
|
<xs:notation name="XMLSchemaStructures" public="structures" system="http://www.w3.org/2000/08/XMLSchema.xsd"/>
|
||
|
<xs:notation name="XML" public="REC-xml-19980210" system="http://www.w3.org/TR/1998/REC-xml-19980210"/>
|
||
|
|
||
|
<xs:complexType name="anyType" mixed="true">
|
||
|
<xs:annotation>
|
||
|
<xs:documentation>
|
||
|
Not the real urType, but as close an approximation as we can
|
||
|
get in the XML representation</xs:documentation>
|
||
|
</xs:annotation>
|
||
|
<xs:sequence>
|
||
|
<xs:any minOccurs="0" maxOccurs="unbounded"/>
|
||
|
</xs:sequence>
|
||
|
<xs:anyAttribute/>
|
||
|
</xs:complexType>
|
||
|
|
||
|
</xs:schema>
|
||
|
|
||
|
|