This is a fragment of a proposed revision of version 1.0 of this spec
This work is part of the W3C SGML Activity (for current status, see http://www.w3.org/pub/WWW/MarkUp/SGML/Activity).
Extensible Hyper Linkage (XHL) is a simple set of constructs that may be inserted into SGML documents to describe links between objects. XHL is designed to use the power of SGML to create a structure that can describe both the simple unidirectional links of today's HTML, as well as more sophisticated multi-ended, typed, self-describing links. The SGML constructs used in XHL are simple enough to be available in the Extensible Markup Language (XML) subset of SGML. XHL is completely described in this document.
Extensible Hyper Linkage (XHL) describes a set of constructs which may be inserted in SGML documents to describe links between objects (the objects may or may not be (in) SGML documents). A link, as the term is used here, is a relationship between two or more data objects or portions of data objects, called its endpoints. Not all relationships are links: the relationship of a chapter to its paragraphs, of one word to the next, or any non-explicit relationship, are not considered links here. The relationship expressed using SGML's
idref attributes is a link, subsumed within the framework presented here.
Links in XHL are described by elements contained in SGML documents. Such an element is called a link description, or linkd. The link description element itself may, but need not, be one of the endpoints of the link it describes. A link description can be understood as a mapping from document instances and their contexts to links.
Just as SGML Applications consist of a DTD and a specification of the meaning or significance of the structures defined therein, so an XHL Application must include a specification of the meaning or significance of the link types and endpoint types it employs.
This document not only defines the SGML constructs XHL provides to describe links, it also specifies what information a conforming XML processor provides to applications when these constructs occur in XML documents.
XHL is part of the overall XML effort, on which see .... It aims to provide an effective yet compact means for describing links that can have multiple typed endpoints, indirection, and flexible yet precise means for locating endpoints in all kinds of data. It also aims to represent the abstract structure and significance of links, leaving rendering and other issues of link-engendered behaviour to stylesheets or other mechanisms as far as practical.
Three standards have been especially influential on XHL:
Many other relevant linking systems have also informed this design, including Dexter, MicroCosm, InterMedia, and others.
The following basic terms for parts of links and link descriptions apply in this document. They also appear on the following structural diagram of a simple link.
Many papers have been written on how to categorize links. The XHL effort distinguishes several major axes for categorization. XHL only provides a standard vocabulary for the first kind of categorization, namely link types. The vocabulary of XHL link types can be extended by creating hierarchies of sub-types.
I don't believe links have directionality -- ht
Each link description is an element contained in an SGML document. The fact that an element is functioning as a link description must be reliably recognizable if its special status is to be exploited. Link descriptions may be recognized by their use of specially reserved attributes (as in the example above), or of specially reserved element types, or through other means not described in this specification.
A link description element may be recognized based on the value of a reserved attribute named
XHL appearing as part of its start tag, either directly in the element itself, or indirectly in the definition of the element type in (the external subset of) the DTD for the document. Possible values are
XLD, signalling in each case that the element may be treated as a link description of the indicated link description type, as described in this specification.
An example of such an element using an explicit attribute:
The link description type of this link description is
TLINK, its (explict) locator is
"http://www.w3.org/", which uses the
URL locator language. Its link type is
A, and we can't tell what its two pointer types are.
See the figure above for an example of the approach where the attribute is specified in the DTD.