New XPointer Spec Labels Parts of XML Docs

After years of work, the World Wide Web
Consortium
(W3C) Tuesday gave a thumbs up to XML Pointer Language
(XPointer), providing a way to identify and point to segments of an XML
document.


The W3C XPointer Recommendation encompasses three specifications:

  • XPointer
    Framework
    , which, according to W3C, “provides a lightweight extensible
    model for identifying parts of XML documents”

  • XPointer
    element() Scheme
    , which allows users to point to specific elements in
    XML documents and data

  • XPointer
    xmlns() Scheme
    , which uses XML Namespaces
    to give XPointer Framework a way to avoid name collisions between schemes
    and provide namespace binding information for use within other
    schemes.

The XML Linking Working Group, which produced the specifications, is also
working on the XPointer
xpointer() Scheme
, which seeks to provide the XPointer Framework with a
high level of functionality for addressing portions of XML documents. Based
on XML Path Language 1.0 (XPath),
the scheme supports addressing into the internal structures of XML
documents and external parsed entities. It allows for examination of a
document’s hierarchical structure and choice of portions based on various
properties, such as element types, attribute values, character content, and
relative position. In particular, it provides for specific reference to
elements, character strings, and other XML information, whether or not they
bear an explicit ID attribute.


The various XPointer specifications aim to provide a more robust linking
solution than “id,” a feature of XML 1.0 which gave authors a method to
identify specific parts of XML documents in conjunction with anchors and
other XML elements. But id only allowed authors of the document to formally
identify parts of that document, meaning other users could not choose to
identify a particular section or fragment.


The XPointer Framework establishes a set of basic syntax rules for
identifying parts or fragments of XML. With it, authors can still use ids
as pointers into XML documents and data, but the specification also allows
users to create and reference their own schemes for identifying XML
fragments.


Meanwhile XPointer element() Scheme allows users to make pointers from
elements, enabling the use of both ids and a list of “pointer-parts.”
Pointer-parts are numerical and text expressions which guide a software
processor to a precise XML fragment.


Because XPointer schemes are independently developed, the XPointer xmlns()
Scheme is needed to distinguish one scheme from another. Even if the same
name is used in two or more XPointer schemes, the xmlns scheme allows a
processor to tell the difference and process the XPointer correctly.


The XML Linking Working Group consists of members from AOL/Netscape
Communications, Arbortext, Fujitsu, Microsoft, Oracle, Reuters, Sun
Microsystems, the University of Edinburgh and the University of
Southhampton.

News Around the Web