The Cover PagesThe OASIS Cover Pages: The Online Resource for Markup Language Technologies
Advanced Search
Site Map
CP RSS Channel
Contact Us
Sponsoring CP
About Our Sponsors

Cover Stories
Articles & Papers
Press Releases

XML Query

XML Applications
General Apps
Government Apps
Academic Apps

Technology and Society
Tech Topics
Related Standards
Created: April 29, 2005.
News: Cover StoriesPrevious News ItemNext News Item

First Public Working Draft for XML Linking Language (XLink) Version 1.1.


The W3C XML Core Working Group has produced a First Public Working Draft for XML Linking Language (XLink) Version 1.1 and requests feedback from W3C Members and other interested parties. XLink Version 1.0 was approved as a W3C Recommendation in June 2001.

The XLink Version 1.1 Working Draft defines mechanisms to allow markup constructs "to be inserted into XML documents in order to create and describe links between resources. It uses XML syntax to create structures that can describe links similar to the simple unidirectional hyperlinks of today's HTML, as well as more sophisticated links."

Background information on this revision is published in a January 2005 Note Extending XLink 1.0, edited by Norman Walsh. The Note recognizes that XLink has been adopted by several markup vocabularies since its publication as a Recommendation, but "the current trend to migrate from DTD-based validation to schema-based validation poses additional challenges that could hamper its continued adoption." Four small changes in XLink Version 1.0 were identified which could "make XLink easier to use, reduce XLink's dependence on annotations provided by external grammars (XML DTDs or XML Schema, for example), and increase interoperability by reducing the risk of markup errors or misinterpretations."

The proposed changes in Extending XLink 1.0 were: (1) to make simple XLinks an application-level default; (2) to reserve all attributes in the XLink namespace; (3) to allow Internationalized Resource Identifier [IRIs], not just URIs, to be used to identify XLink properties; (4) to provide Sample XML Schema and RELAX NG Grammars.

The Version 1.1 specification now "implements all of the XLink 1.1 requirements documented in the W3C Note Extending XLink 1.0. XLink is not without its critics and the changes in this specification do not address all of the criticisms that have been leveled at XLink. But these changes do make XLink more useful in the places where it is already being used and make it practical in a variety of similar vocabularies."

XLink Version 1.0 provided a non-normative sample DTD. Non-normative appendices in XLink Version 1.1 present a Sample XML Schema and a Sample RELAX NG Grammar as well as an XML DTD.

Commentary: Everybody has at least one theory to explain why the XML Linking Language(s) did not catch on, and why the user community has evidenced such abysmally low expectations about intelligent hyperlink functionality in web browsers. I recall Bill Smith speaking, in 1998 or so, about the promise of XML linking: it would "bring linking on the Web into the 1970s." It didn't happen. Everyone can think of highly useful (time-saving) hyperlink browser applications that implement simple multi-headed links: mouse-over or otherwise select, inspect drop-down menu of options, select the action or link destination you want, <click> to do it. We were doing this with SGML readers ten years ago; why are these not standard browser features? Indeed: Why has it been so difficult to discover a model with the right level of abstraction to support implementable, standardized hyperlinking? On this point, I think even Tim Bray should give Ted Nelson the right to smirk at the markup crowd.

Bibliographic Information

  • XML Linking Language (XLink) Version 1.1. W3C Working Draft. 28-April-2005. Edited by Steve DeRose (Brown University Scholarly Technology Group), Eve Maler (Sun Microsystems), David Orchard (Jamcracker), Norman Walsh (Sun Microsystems). This version URL: Latest version URL:

    Contributors: This specification was produced in the XML Core Working Group, with the following members active at the completion of this specification: Leonid Arbouzov (Sun Microsystems Inc.), John Cowan (W3C Invited Experts), Andrew Fang (Arbortext Inc.), Paul Grosso (Arbortext Inc.), Philippe Le Hégaret (W3C/MIT), Arnaud Le Hors (IBM Corporation), Dmitry Lenkov (Oracle Corporation), Anjana Manian (Oracle Corporation), Glenn Marcy (IBM Corporation), Sandra Martinez (National Institute of Standards and Technology - NIST), Lew Shannon (W3C Invited Experts), Henry Thompson (W3C/ERCIM), Richard Tobin (University of Edinburgh), Daniel Veillard (W3C Invited Experts), Norman Walsh (Sun Microsystems (Inc.), François Yergeau (W3C Invited Experts). [From Non-Normative Appendix E, 'Working Group Members and Acknowledgments']

  • Extending XLink 1.0. W3C Working Group Note. 27-January-2005. Edited by Norman Walsh (Sun Microsystems). Version URL: Latest version URL:

Version 1.1 Changes

The color-marked diff version highlighting draft Version 1.1 changes vis-à-vis Version 1.0 makes spotting the deltas easy. In addition to the URI-to-IRI changes, new schema definitions, and incidentals, here is (unofficial!) extracted text for some of the significant rewordings:

  • Desired change: "Make simple XLinks an application-level default — In XLink 1.0, all simple links must be identified explicitly with an xlink:type attribute. When XLink 1.0 was developed, it seemed reasonable to depend on DTD validation to provide this default value when it was a burden to authors to enter it by hand. As XML use has spread and new validation technologies have been developed, this is no longer the case. Rather than relying on an annotation to provide the simple link type, it seems prudent to make this an application-level default. In other words, any element with an xlink:href attribute that does not specify a link type should be treated as a simple link..."

    Read now: "Using global attributes always requires the use of namespace prefixes on the individual attributes. In XML Linking Language (XLink) Version 1.0, XLink elements are identified by the presence of an xlink:type attribute. In XLink 1.1, XLink elements are identified by the presence of either an xlink:type attribute or an xlink:href attribute:

    • If an element has an xlink:type attribute, then that attribute must have one of the following values: 'simple', 'extended', 'locator', 'arc', 'resource', or 'title' and the element must adhere to the conformance constraints imposed by that XLink element type.
    • If an element has an xlink:href attribute but does not have an xlink:type attribute, then it is treated exactly as if it had an xlink:type attribute with the value 'simple'.

  • Desired change: "Reserve all attributes in the XLink namespace — The current XLink 1.0 Recommendation defines several attributes in the XLink namespace. It seems prudent to explicitly reserve all other such attributes for future use. By a strict interpretation of the current specification, authors and other end-users have free latitude to use new attributes in the XLink namespace and this was never intended. Such use would create interoperability problems and should be prohibited..."

    Read now: "XLink's namespace provides global attributes for use on elements that are in any arbitrary namespace. The global attributes are type, href, role, arcrole, title, show, actuate, label, from, and to. All other attributes, and all elements, in the XLink namespace are reserved...

About the W3C XML Core Working Group

Under WG Co-Chairs Paul Grosso (Arbortext) and Norman Walsh (Sun Microsystems), the XML Core Working Group "is responsible for (1) updating errata documents and publishing new editions incorporating published errata when appropriate; (2) maintaining the test suites associated with the specifications and providing careful updates as warranted. In addition to the maintenance effort, the XML Core Working Group will react on the evolution of the XML Platform and could develop and extend the core of the XML Platform when needed."

The XML Core Working Group is chartered to consider comments on the following existing specifications:

  1. XML 1.0, XML 1.1
  2. Namespaces in XML 1.0, Namespaces in XML 1.1
  3. XML Information Set
  4. XML Base
  5. Associating Stylesheets with XML
  6. Canonical XML
  7. Exclusive XML Canonicalization
  8. XML Linking Language
  9. XInclude
  10. XPointer Framework, xmlns() scheme, element() scheme

The XML Core Working Group Charter also includes new W3C Recommendations:

Principal References

  • XML Linking Language (XLink) Version 1.1
  • Extending XLink 1.0
  • XML Linking Language (XLink) Version 1.0
  • Diff version highlighting draft Version 1.1 changes vis-à-vis Version 1.0.
  • XML Linking Implementations
  • W3C XML Core Working Group
  • W3C XML Core Working Group Charter
  • XML Core Working Group Patent Disclosures
  • Mailing list archives for W3C public list 'public-xml-core-wg'
  • Random Cites and Notes:
    • From Cafe con Leche XML News and Resources (04/28): "David Carlisle found a change I missed. The xlink:type="simple" attribute is no longer required. That is a simple link can now be written like this: <composer xlink:href="">Beth Anderson</composer>. It's no longer necessary to write this: <composer xlink:type="simple" xlink:href="">Beth Anderson</composer>. This is a good thing. I'm not sure who first came up with this idea, but I've been advocating it for awhile now. This makes XLink a lot more palatable in applications like XHTML 2 and SVG..."

    • Norm Walsh here: "In the modern world, it's not reasonable to expect the schema to provide attribute defaulting for you (lots of stuff is sent around only as WF XML, still other documents have multiple schemas, plus there's no way to specify conditional defaults so you wind up with an enormous number of unnecessary, defaulted attributes even when you have them) so the fact that xlink:type="simple" is required for conformance to XLink makes conformance impractical..."

    • Anne van Kesteren. Multiple items of note.

    • W3C on 12-June-2003 acknowledged receipt of a submission from ISOGEN International [W. Eliot Kimber] describing an "XML Indirection Facility". XIndirect is a simple mechanism for using XML to represent indirect addresses in order to augment the core functionality of XLink and XPointer without requiring either of those specifications to themselves require support for indirect addresses. The Note defines an XML-based representation syntax for indirectors used in XML documents. See details in the news story W3C Publishes Note Defining an XML Indirection Facility for XLink and XPointer."

    • "Linkin' Park." By Edd Dumbill. From October 27, 2004. "One of the original trinity of XML work areas, along with XML itself and XSL, XML linking has progressed inconclusively, never quite finding the happy resolution of its fellows. A recent discussion on XML-DEV turned to the question of what was left undone in the great XML project, and thus conversation turned again to linking. Liam Quin: 'I think part of the problem with XLink's deployment on the Web is that it didn't have clear relationship to HTML and to web-based multimedia. There are lots of use cases for 'linkbases,' not least in connection with distributed annotations, but the ability to take an arbitrary attribute in an XML or XHTML document, or the content of an arbitrary element, and say, 'use this URI as the destination for this link, with this text in French and this in Italian, and if the user clicks here, offer a choice of these seven links with their associated titles' was a step beyond the horizon of most web developers, and old hat to the SGML hypertext crowd. I don't know how to bridge that gap. but until it's bridged, I don't think we'll see great leaps forward in the XLink area. It's cultural and political more than technical..."

    • "Linking and XML: The State of the Debate." By Bob DuCharme. O'Reilly Developer Weblogs. October 28, 2004. "In a new XML-Deviant piece in, Edd Dumbill does a Herculean job of distilling an xml-dev thread that currently adds up to 97 messages; the general topic is whether any new standards work can make it easier to represent links in XML at a more sophisticated level than HTML a/@href links do. I think it's generally agreed that XLink's lack of traction shows that it didn't succeed at this goal. What do we mean when we say 'linking'? How does this term relate to hyperlinking? What metadata should be included in a link? How much, if any, of this metadata should be related to link presentation? Is the 'hyper' in 'hyperlink' a presentation issue? Is linking something to specify in data or as part of a data model? What role can stylesheets or RDF play?"

    • "XLink: Who Cares?" By Bob DuCharme. From (March 13, 2002). "XLink is the only XML-related W3C specification that took over four years to get from first Working Draft to Recommendation status. Now that it's been a stable, finished spec for eight months, we're still seeing very little activity. So what's out there? Who cares about XLink?"

  • Earlier news:
  • "XML Linking Language" - Main reference page.

Hosted By
OASIS - Organization for the Advancement of Structured Information Standards

Sponsored By

IBM Corporation
ISIS Papyrus
Microsoft Corporation
Oracle Corporation


XML Daily Newslink
Receive daily news updates from Managing Editor, Robin Cover.

 Newsletter Subscription
 Newsletter Archives
Bottom Globe Image

Document URI:  —  Legal stuff
Robin Cover, Editor: