This section details processing and conformance requirements on XLink applications and markup.
[Definition: The key words must, must not, required, shall, shall not, should, should not, recommended, may, and optional in this specification are to be interpreted as described in [RFC 2119].]
XLink processing depends on [XML], [XML Names], [XML Base], [RFC 3987], and [CharMod Fundamentals].
An XML element conforms to XLink if:
It has a type
attribute from the XLink namespace whose value is one of "simple", "extended", "locator", "arc", "resource", "title", or "none", and it adheres to the conformance constraints imposed by the chosen XLink element type, as prescribed in this specification, or
it does not have a type
attribute from the XLink namespace and it adheres to the conformance constraints imposed by the XLink simple element type, as prescribed in this specification.
It does not have any attributes in the XLink namespace other than type
, href
, role
, arcrole
, title
, show
, actuate
, label
, from
, and to
.
Content conforming to XLink must conform to [CharMod Fundamentals].
This specification imposes no particular constraints on schemas; conformance applies only to elements and attributes.
An XLink application is any software module that interprets well-formed XML documents containing XLink elements and attributes, or XML information sets [XIS] containing information items and properties corresponding to XLink elements and attributes. (This document refers to elements and attributes, but all specifications herein apply to their information set equivalents as well.)
XLink defines two conformance levels for an XLink application, simple and full.
An application satisfies the constraints of full conformance if:
It observes the mandatory conditions ("must") for applications set forth in this specification, and
for any recommended or optional conditions ("should" and "may") it chooses to observe, it observes them in the way prescribed, and
it performs markup conformance testing according to all the conformance constraints appearing in this specification.
It applies XLink semantics only to those elements which satisfy the markup conformance criteria outlined in 3.2 Markup Conformance.
Applications implementing XLink must conform to [CharMod Fundamentals].
An application satisfies the constraints of simple conformance if it is fully conformant with respect to simple links. In other words:
The processor may ignore any link which specifies an xlink:type
other than “simple”.
If the xlink:href
attribute is specified and the xlink:type
attribute is not specified, the element must be processed as if xlink:type
specified “simple”.
An application which claims simple conformance may ignore all other XLink elements.