This schema document provides attribute declarations and
attribute group, complex type and simple type definitions which can be used in
the construction of user schemas to define the structure of particular linking
constructs, e.g.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xl="http://www.w3.org/1999/xlink">
<xs:import namespace="http://www.w3.org/1999/xlink"
location="http://www.w3.org/1999/xlink.xsd">
<xs:element name="mySimple">
<xs:complexType>
...
<xs:attributeGroup ref="xl:simpleAttrs"/>
...
</xs:complexType>
</xs:element>
...
</xs:schema>
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.
Notes
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.
<xs:complexType mixed="true" name="simple"><xs:annotation><xs:documentation>Intended for use as the type of user-declared elements to make them
simple links.</xs:documentation></xs:annotation><xs:group ref="xlink:simpleModel"/><xs:attributeGroup ref="xlink:simpleAttrs"/></xs:complexType>
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.
Notes
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.
Intended for use as the type of user-declared elements to make them
extended links.
Note that the elements referenced in the content model are all abstract.
The intention is that by simply declaring elements with these as their
substitutionGroup, all the right things will happen.
<xs:complexType name="extended"><xs:annotation><xs:documentation>Intended for use as the type of user-declared elements to make them
extended links.
Note that the elements referenced in the content model are all abstract.
The intention is that by simply declaring elements with these as their
substitutionGroup, all the right things will happen.</xs:documentation></xs:annotation><xs:group ref="xlink:extendedModel" minOccurs="0" maxOccurs="unbounded"/><xs:attributeGroup ref="xlink:extendedAttrs"/></xs:complexType>
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.
Notes
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.
The union allows for the 'un-declaration' of xml:lang with
the empty string.
Source
<xs:attributeGroup name="titleAttrs"><xs:attribute ref="xlink:type" fixed="title" use="required"/><xs:attribute ref="xml:lang"><xs:annotation><xs:documentation>xml:lang is not required, but provides much of the
motivation for title elements in addition to attributes, and so
is provided here for convenience.</xs:documentation></xs:annotation></xs:attribute></xs:attributeGroup>
<xs:attributeGroup name="locatorAttrs"><xs:attribute ref="xlink:type" fixed="locator" use="required"/><xs:attribute ref="xlink:href" use="required"/><xs:attribute ref="xlink:role"/><xs:attribute ref="xlink:title"/><xs:attribute ref="xlink:label"><xs:annotation><xs:documentation>label is not required, but locators have no particular
XLink function if they are not labeled.</xs:documentation></xs:annotation></xs:attribute></xs:attributeGroup>
<xs:attributeGroup name="arcAttrs"><xs:attribute ref="xlink:type" fixed="arc" use="required"/><xs:attribute ref="xlink:arcrole"/><xs:attribute ref="xlink:title"/><xs:attribute ref="xlink:show"/><xs:attribute ref="xlink:actuate"/><xs:attribute ref="xlink:from"/><xs:attribute ref="xlink:to"><xs:annotation><xs:documentation>from and to have default behavior when values are missing</xs:documentation></xs:annotation></xs:attribute></xs:attributeGroup>