Abstract
XLink used to be the hot topic in the XML world, but lately, it seems to have been shadowed by just about everything, from ebXML to XSL, from XML Signature to SVG. Yet, XLink is in many ways the very essence of XML, making practical XML's promises of single-source publishing and extensive reuse of resources.
Here, XLinks are discussed from a practical perspective even though some the necessary theory behind it is mentioned first. What's the difference between a simple and an extended XLink, really? When is a simple XLink not enough, and why would anyone want to describe linking completely outside the participating documents, anyway? Isn't that an implementor's nightmare? And if not, how can you do it using your favourite editor?
The practicalities of XLink implementation are discussed from (mainly) two perspectives: a low-cost yet fully functional authoring system using Simple XLink, and a state-of-the-art Extended XLink environment, where just about anything is possible. In many ways, these two systems are each other's opposites and offer very different views on XLink implementation and usage. They are also similar, however, and share a linking philosophy that has little to do with the price tag and everything to do with enabling efficient resource reuse and single-source publishing.
Discussing and comparing these two systems, topics ranging from link usage contexts (for example, cross-referencing and resource inclusion, etc.) and linking strategies in DTDs, and to implementations in tools are covered, higlighting such issues as link resolution in editors, link localization, and extensive resource reuse through conditional linking. How, exactly, do you write DTDs with cross-referencing mechanisms that actually work both on paper and online? Should you implement ID attribute generation? How do you display a linked image in the editing environment when the URI to the image is somewhere in a linkbase on a server and all you've got is an ID attribute? Etc. Xlink is a hugely exciting technology, but even Simple XLink is anything but simple if implemented carelessly.
It is the hope of the author that this paper will inspire and encourage XML developers to implement XLink in their XML systems, regardless of whether the goal is to create a user-friendly XML editing environment for a documentation department consisting of two writers, or making practical the use of linkbases in documentation systems handling one and a half million XML documents. Especially since this paper describes both of these cases.
Keywords
![]() ![]() |
Design & Development by deepX Ltd. 2002 |