<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet type="text/xsl" href="xmlspec.xsl"?>
<!DOCTYPE spec PUBLIC "-//W3C//DTD Specification V2.1//EN" "xmlspec.dtd" [
<!ENTITY abstract "This specification defines the XML Pointer Language (XPointer) Framework, an extensible system for XML addressing that underlies additional XPointer scheme specifications. The framework is intended to be used as a basis for fragment identifiers for any resource whose Internet media type is &media-types;. Other XML-based media types are also encouraged to use this framework in defining their own fragment identifier languages.">
<!ENTITY day "10">
<!ENTITY month "July">
<!ENTITY monthno "07">
<!ENTITY year "2002">
<!ENTITY trpath "http://www.w3.org/TR/">
<!ENTITY W3C-path "&trpath;&year;/">
<!ENTITY doctype "WD">
<!ENTITY framework "XPointer Framework">
<!ENTITY shortname "framework">
<!ENTITY isodate "&year;&monthno;&day;">
<!ENTITY dirname "&W3C-path;&doctype;-xptr-&shortname;-&isodate;/">
<!ENTITY infoset "http://www.w3.org/TR/xml-infoset">
<!ENTITY Note "Note">
<!ENTITY media-types "one of <code>text/xml</code>, <code>application/xml</code>, <code>text/xml-external-parsed-entity</code>, or <code>application/xml-external-parsed-entity</code>">
<!ENTITY XML "http://www.w3.org/TR/REC-xml">
<!ENTITY rfc2396 "ftp://ftp.ietf.org/rfc/rfc2396.txt">
<!ENTITY XMLNames "http://www.w3.org/TR/REC-xml-names">
]>
<spec w3c-doctype="wd" status="final">
<header>
<title>XPointer Framework</title>
<w3c-designation>&doctype;-xptr-&shortname;-&isodate;</w3c-designation>
<w3c-doctype>W3C Working Draft</w3c-doctype>
<pubdate><day>&day;</day><month>&month;</month><year>&year;</year></pubdate>
<publoc><loc href="&dirname;">&dirname;</loc></publoc>
<latestloc><loc href="&trpath;xptr-&shortname;/">&trpath;xptr-&shortname;/</loc></latestloc>
<prevlocs><loc href="http://www.w3.org/TR/2001/CR-xptr-20010911/">http://www.w3.org/TR/2001/CR-xptr-20010911/</loc></prevlocs>
<otherlocs>This document is also available in the following non-normative format: <loc href="&dirname;&shortname;.xml">XML</loc> (<loc href="&dirname;xmlspec.dtd">DTD</loc>, <loc href="&dirname;xmlspec.xsl">XSL</loc>).
</otherlocs>
<authlist>
<author><name>Paul Grosso</name><affiliation>Arbortext, Inc.</affiliation>
<email href="mailto:pgrosso@arbortext.com">pgrosso@arbortext.com</email></author>
<author><name>Eve Maler</name><affiliation>Sun Microsystems</affiliation>
<email href="mailto:eve.maler@sun.com">eve.maler@sun.com</email></author>
<author><name>Jonathan Marsh</name><affiliation>Microsoft</affiliation><email href="mailto:jmarsh@microsoft.com">jmarsh@microsoft.com</email></author>
<author><name>Norman Walsh</name><affiliation>Sun Microsystems</affiliation>
<email href="mailto:Norman.Walsh@Sun.COM">Norman.Walsh@Sun.COM</email></author>
</authlist>
<abstract>
<p>&abstract;</p>
</abstract>
<status>
<p>This is a Last Call W3C Working Draft for review by W3C members and other
interested parties. It is a draft document and may be updated, replaced, or
obsoleted by other documents at any time. It is inappropriate to use W3C Working
Drafts as reference material or to cite them as other than <quote>work in
progress.</quote> Comments on this document should be sent no later than 31 July 2002 to the public mailing list <loc href="mailto:www-xml-linking-comments@w3.org">www-xml-linking-comments@w3.org</loc> (<loc href="http://lists.w3.org/Archives/Public/www-xml-linking-comments/">archive</loc>).</p>
 <p>This document has been produced by the <loc href="http://www.w3.org/XML/Linking">W3C XML Linking Working
Group</loc> as part of the <loc href="http://www.w3.org/XML/Activity">XML
Activity</loc>.  The goals of this work are set out in the <loc href="http://www.w3.org/TR/NOTE-xptr-req">XPointer
Requirements</loc> document.</p>
 <p>There are patent disclosures and license commitments associated with
this working draft, which may be found on the <loc href="http://www.w3.org/2002/06/xptr_IPR_summary.html">XPointer IPR Statement</loc> page in conformance with <loc href="http://www.w3.org/Consortium/Process-20010719/#ipr">W3C policy</loc>.</p>
<p>Even though it has not been seen before in this form, this specification
is being published as a Last Call Working Draft because it is essentially
a subset of the previous specification. This specification contains only the <quote>bare
names</quote> and scheme mechanism features that were in the <loc href="http://www.w3.org/TR/2001/CR-xptr-20010911/">XPointer
Candidate Recommendation</loc> published on 11 September 2001. Note that the <quote>bare
names</quote> functionality has been extended slightly to include a schema-based
ID addressing option.</p>
<p>We are specifically seeking input on what the XML Linking WG should recommend
as a minimum conformance level for the purposes of XPointer usage in fragment
identifiers for any resource whose Internet media type is &media-types;. Actually
specifying this level is an issue that will have to be taken up normatively
in the successor to IETF RFC 3023 <bibref ref="draft-xmlmediatypes"/>.</p>
 <p>A list of current W3C Recommendations and other technical documents can be
found at <loc href="http://www.w3.org/TR/">http://www.w3.org/TR/</loc></p>
</status>
<langusage>
<language id="en">English</language>
<language id="ebnf">Extended Backus-Naur Form (formal grammar)</language>
</langusage>
<revisiondesc>
<slist>
<sitem>20020404: Initial draft of the framework portion of the specification.</sitem>
<sitem>20020411: Second draft. Extended Status text a little, removed editorial
notes, and made Conformance text simpler regarding minimum conformance levels.
Slight further cleanup of the distinction between failure and errors.</sitem>
<sitem>20020417: Third draft. Incorporates wording changes decided at today's
telecon (more changes are outstanding) and attempts a more finalized Status
of This Document, assuming that we are going to make this a last-call WD rather
than a CR update.</sitem>
<sitem>20020425: Fourth draft. Incorporates wording changes decided at yesterday's
telecon: new requirements on documentation for namespace-binding schemes and
schemes that use them, and last-call context information in status.</sitem>
<sitem>20020501: Fifth draft. More heavily encouraged the reuse of the framework
in other XML-based media types. Change Char+ to Char* (plus associated prose
changes).</sitem>
<sitem>20020508: Sixth draft. Added a new second step in schema ID recognition
that accounts for minimally conforming schema processors, added the word <quote>recursively</quote> to
2(b), and added explanatory text to the note on potential failures of ID-based
addressing. The WG voted to publish this draft.</sitem>
<sitem>20020511: Seventh draft. Editorial cleanup suggested by Ron and Jonathan.</sitem>
<sitem>20020518: Eighth draft. Added text to Status section to set expectations
better.</sitem>
<sitem>20020522: Ninth draft. Incorporated editorial changes agreed on in
today's telecon, plus a few items pointed out in private communications.</sitem>
</slist>
</revisiondesc>
</header>
<body>
<div1>
<head>Introduction</head>
<p>&abstract;</p>
<p>Many types of XML-processing applications need to address into the internal
structures of XML-encoded resources using URI references, for example, the
XML Linking Language <bibref ref="XLink"/>, XML Inclusions <bibref ref="xinclude"/> ,
the Resource Description Framework <bibref ref="rdf"/>, and SOAP V1.2 <bibref ref="soap12"/>. This specification does not constrain the types of applications
that utilize URI references to XML-encoded resources, nor does it constrain
or dictate the behavior of those applications once they locate the desired
information in those resources.</p>
<div2>
<head>Notation</head>
<p><termdef id="dt-must" term="Must, May, etc.">The key words <term>must</term>, <term>must
not</term>, <term>required</term>, <term>shall</term>, <term>shall not</term>, <term>should</term>, <term>should
not</term>, <term>recommended</term>, <term>may</term>, and <term>optional</term> in
this specification are to be interpreted as described in <bibref ref="rfc2119"/>.</termdef></p>
<p>The formal grammar for the &framework; is given using simple Extended Backus-Naur
Form (EBNF) notation, as described in the XML Recommendation <bibref ref="XML"/>.</p>
</div2>
<div2 id="terminology">
<head>Terminology</head>
<glist>
<gitem><label><termdef id="dt-pointer" term="pointer"><term>pointer</term></termdef></label>
<def>
<p>A string conforming to this specification. This specification defines the
syntax and semantics of pointers.</p>
</def></gitem>
<gitem><label><termdef id="dt-pointerpart" term="pointer part"><term>pointer
part</term></termdef></label>
<def>
<p>A portion of a pointer that provides a scheme name and some pointer data
that conforms to the definition of that scheme.</p>
</def></gitem>
<gitem><label><termdef id="dt-scheme" term="scheme"><term>scheme</term></termdef></label>
<def>
<p>A specialized pointer data format that has a name and is defined in a specification.</p>
</def></gitem>
<gitem><label><termdef id="dt-processor" term="XPointer processor"><term>XPointer
processor</term></termdef></label>
<def>
<p>A software component that identifies some subresource of an XML-encoded
resource by applying a pointer to it. This specification defines the behavior
of XPointer processors.</p>
</def></gitem>
<gitem><label><termdef id="dt-app" term="application"><term>application</term></termdef></label>
<def>
<p>A software component that incorporates or uses an XPointer processor because
it needs to access XML-encoded resources by means of URI references. The occurrence
and usage of URI references, and the behavior to be applied to resources and
subresources obtained by accessing those URI references, are governed by the
definition of each application's corresponding data format (which could be
XML-based or non-XML-based). For example, HTML <bibref ref="html"/> Web browsers
and XInclude processors are applications that might use XPointer processors.</p>
</def></gitem>
<gitem><label><termdef id="dt-error" term="error"><term>error</term></termdef></label>
<def>
<p>A violation of the rules of this specification; results are undefined.
Specifications of XPointer schemes may define their own error conditions that
have different consequences from XPointer Framework errors.</p>
</def></gitem>
<gitem><label><termdef id="dt-failure" term="failure"><term>failure</term></termdef></label>
<def>
<p>The inability of an XPointer processor to identify a subresource within
an XML-encoded resource. Note that while failure of a shorthand pointer (<nt def="NT-shorthand">shorthand</nt>) causes an XPointer Framework error, failure
of a pointer part does not.</p>
</def></gitem>
<gitem><label><termdef id="dt-nsbinding" term="namespace binding context"><term>namespace
binding context</term></termdef></label>
<def>
<p>A list of zero or more pairs of XML Namespace-defined <bibref ref="XML-Names"/> namespace
prefixes and their associated namespace URIs.</p>
</def></gitem>
</glist>
</div2>
</div1>
<div1>
<head>Conformance</head>
<p>This specification defines a framework; it does not currently define a
minimum conformance level for XPointer processors. Thus, the information in
this section defines conformance requirements only for the framework portion
of any minimum conformance level.</p>
<p>XPointer processors normatively depend on reversing any fragment identifier
encoding and escaping done in conformance to <bibref ref="rfc2396"/> (as updated
by <bibref ref="rfc2732"/>).</p>
<p>XPointer processors normatively depend on sufficient input about an XML
resource to identify the following information items and properties, in the
cases where they exist in the resource:</p>
<ulist>
<item><p>From the XML Information Set <bibref ref="Infoset"/>:</p>
<ulist>
<item><p><xtermref href="&infoset;/#infoitem.document">document information
item</xtermref></p>
<ulist>
<item><p><kw>[document element]</kw> property</p><p>Note that if the XML resource
is not a document but rather an external parsed entity, this property will
not be reported. Rather, the information set is effectively extended to report
the one or more top-level elements in the entity as ordered <quote>root element</quote> properties
for the entity.</p></item>
</ulist>
</item>
<item><p><xtermref href="&infoset;/#infoitem.element">element information
item</xtermref></p>
<ulist>
<item><p><kw>[attributes]</kw> property</p></item>
<item><p><kw>[children]</kw> property</p></item>
</ulist>
</item>
<item><p><xtermref href="&infoset;/#infoitem.attribute">attribute information
item</xtermref></p>
<ulist>
<item><p><kw>[attribute type]</kw> property</p></item>
<item><p><kw>[normalized value]</kw> property</p></item>
</ulist>
</item>
</ulist>
</item>
<item><p>From the XML Schema post-schema validation information set (PSVI) <bibref ref="xsd"/>:</p>
<ulist>
<item><p><kw>[schema normalized value]</kw> property</p></item>
<item><p>Either:</p>
<ulist>
<item><p><kw>[member type definition]</kw> property</p></item>
<item><p><kw>[type definition]</kw> property</p></item>
</ulist>
<p>or:</p>
<ulist>
<item><p><kw>[member type definition namespace]</kw> property</p></item>
<item><p><kw>[member type definition name]</kw> property</p></item>
<item><p><kw>[type definition namespace]</kw> property</p></item>
<item><p><kw>[type definition name]</kw> property</p></item>
</ulist>
</item>
</ulist>
</item>
</ulist>
<p>Software components claiming to be XPointer processors must conform to
this &framework; specification and any other specifications that, together
with this specification, define the minimum conformance level for XPointer,
and may conform to additional XPointer scheme specifications. XPointer processors
must document the additional scheme specifications to which they conform.
Specifications that depend on XPointer processing should document the schemes
they require and allow.</p>
<p>Conforming XPointer processors must report &framework; errors to the application.
Applications may terminate or recover from &framework; errors in any fashion.
XPointer processors should not report failure conditions that do not result
in error conditions.</p>
</div1>
<div1>
<head>Language and Processing</head>
<p>This section describes the &framework; and the behavior of XPointer processors
with respect to the framework.</p>
<p>An XPointer processor takes as input an XML-encoded resource and a fragment
identifier taken from the URI reference that was used to access the resource,
and produces as output either an identification of some subresource within
that resource based on the pointer extracted from the fragment identifier,
or one or more errors, or both. If the fragment identifier contains any characters
that have been encoded or escaped to conform to <bibref ref="rfc2396"/> (as
updated by <bibref ref="rfc2732"/>) requirements, the XPointer processor must
reverse the encoding or escaping in order to interpret the pointer.</p>
<div2>
<head>Syntax</head>
<p>If a string used as a pointer does not adhere to the syntax defined in
this section, it is an error.</p>
<scrap>
<head>&framework; Syntax</head>
<prodgroup pcw2="6" pcw4="15" pcw5="11.5">
<prod id="NT-pointer">
<lhs>pointer</lhs><rhs><nt def="NT-shorthand">shorthand</nt> | <nt def="NT-schemebased">schemebased</nt></rhs>
</prod>
<prod id="NT-shorthand">
<lhs>shorthand</lhs><rhs><xnt href="&XML;#NT-Name">Name</xnt></rhs>
</prod>
<prod id="NT-schemebased">
<lhs>schemebased</lhs><rhs><nt def="NT-ptrpart">ptrpart</nt> (<xnt href="&XML;#NT-S">S</xnt>?, <nt def="NT-ptrpart">ptrpart</nt>)*</rhs>
</prod>
<prod id="NT-ptrpart">
<lhs>ptrpart</lhs><rhs><nt def="NT-scheme">scheme</nt> '(' <nt def="NT-schemedata">schemedata</nt> ')'</rhs>
<vc def="circumflex"/>
</prod>
<prod id="NT-scheme">
<lhs>scheme</lhs><rhs><xnt href="&XMLNames;/#NT-NCName">NCName</xnt></rhs>
</prod>
<prod id="NT-schemedata">
<lhs>schemedata</lhs><rhs><xnt href="&XML;#NT-Char">Char</xnt>*</rhs>
</prod>
</prodgroup></scrap>
<vcnote id="circumflex"><head>Parenthesis escaping</head><p> The end of a
pointer part is signaled by the right parenthesis <quote><code>)</code></quote> character
that is balanced with the left parenthesis <quote><code>(</code></quote> character
that began the part. If either a left or a right parenthesis occurs without
being balanced by its counterpart, it must be escaped with a circumflex (<code>^</code>)
character preceding it. Any literal occurrences of the circumflex must be
escaped with an additional circumflex (that is, <code>^^</code>). Any other
use of a circumflex is an error.</p>
</vcnote>
</div2>
<div2>
<head>Shorthand Pointer</head>
<p>A shorthand pointer consists of an XML-defined <xnt href="&XML;#NT-Name">Name</xnt> alone.
The <xnt href="&XML;#NT-Name">Name</xnt> identifies a single element in the
XML resource by ID as follows, in terms of the XML resource's information
set:</p>
<olist>
<item><p>If the document has an XML Schema <bibref ref="xsd"/> PSVI, and exposes
the <kw>[type definition]</kw> and <kw>[member type definition]</kw> properties,
then:</p><p>Return the first element information item in document order with
an <kw>[attributes]</kw> collection containing an attribute information item,
or whose <kw>[children]</kw> collection contains an element information item,
which has a <kw>[schema normalized value]</kw> equal to the <xnt href="&XML;#NT-Name">Name</xnt> and
which has a type definition (the <kw>[member type definition]</kw>, if one
is present, otherwise the <kw>[type definition]</kw>) which has either:</p>
<olist>
<item><p>a <kw>{target namespace}</kw> of "<code>http://www.w3.org/2001/XMLSchema</code>"
and a <kw>{name}</kw> of "<code>ID</code>" (having the effect of identifying
the element information item associated with an identifier that is directly
assigned the XML Schema ID type), or</p></item>
<item><p>a <kw>{base type definition}</kw> that directly or recursively satisfies
(a) (having the effect of identifying the element information item associated
with an identifier that is directly or indirectly derived from the XML Schema
ID type);</p></item>
</olist>
</item>
<item><p>or, if an element information item was not identified in the previous
step because the document has an XML Schema PSVI but does not expose
the <kw>[type definition]</kw> and <kw>[member type definition]</kw> properties,
then:</p><p>Return the first element information item in document order with
an <kw>[attributes]</kw> collection containing an attribute information item,
or whose <kw>[children]</kw> collection contains an element information item,
which has a <kw>[schema normalized value]</kw> equal to the <xnt href="&XML;#NT-Name">Name</xnt> and
which has a <kw>[type definition namespace]</kw> of "<code>http://www.w3.org/2001/XMLSchema</code>"
and a <kw>[type definition name]</kw> of "<code>ID</code>" or a <kw>[member
type definition namespace]</kw> of
"<code>http://www.w3.org/2001/XMLSchema</code>" and a <kw>[member type definition name]</kw> of "<code>ID</code>";</p></item>
<item><p>or, if an element information item was not identified in the previous
step:</p><p>Return the first element information item in document order with
an <kw>[attributes]</kw> collection containing an attribute information item
with an <kw>[attribute type]</kw> of "<code>ID</code>" and a <kw>[normalized
value]</kw> equal to the <xnt href="&XML;#NT-Name">Name</xnt>.</p></item>
</olist>
<p>If no element is identified by this process, the <xnt href="&XML;#NT-Name">Name</xnt> fails
and the pointer is in error.</p>
<note>
<p>A shorthand pointer provides, for resources with XML-based media types,
a rough analog of HTML fragment identifier behavior. However, if <kw>ID</kw> typing
information is not available because no DTD or schema information is available,
the pointer will not identify any element. There are several ways to make
element identification more reliable. For example, the creator of a resource
can use an internal DTD subset to indicate the presence of ID-typed attributes,
and the creator of a pointer can, instead of a shorthand pointer, use a schema-based
pointer and provide one or more schemes that address the desired element in
other ways.</p>
</note>
</div2>
<div2>
<head>Scheme-Based Pointer</head>
<p>A scheme-based pointer consists of one or more pointer parts, optionally
separated by XML-defined white space (<xnt href="&XML;#NT-S">S</xnt>). Each
part has a scheme name and contains, within parentheses, data (zero or more
of the XML-defined <xnt href="&XML;#NT-Char">Char</xnt>) conforming to the
named scheme. If the scheme data contains parentheses, they must be either
balanced or escaped.</p>
<p>In the case of URI references referring to any resource whose Internet
media type is &media-types;, this specification reserves all scheme names
for definition in additional W3C XPointer scheme specifications. However,
the scheme mechanism provides a general framework for extensibility; other
XML-based media types are also encouraged to use this framework in defining
their own fragment identifier languages.</p>
<p>When multiple pointer parts are provided, an XPointer processor must evaluate
them in left-to-right order. If a part being evaluated fails because the XPointer
processor does not support the scheme, because the scheme data is syntactically
in error according to the specification governing that scheme, or because
the scheme identifies no subresource, that part is consumed and the next,
if any, is evaluated. The result of the first pointer part whose evaluation
succeeds is reported by the XPointer processor as the subresource identified
by the pointer as a whole, and evaluation stops. If all the parts fail, it
is an error. If a scheme-based pointer has an error in its construction as
a whole, evaluation stops and pointer parts are not consumed.</p>
<p>A scheme-based pointer might contain characters that are not allowed in
a URI reference. For example, this &framework; specification allows spaces
between pointer parts, and individual XPointer scheme specifications might
allow or require other characters that are disallowed in URI references. During
creation of the pointer, it is typically not necessary to perform encoding
or escaping on disallowed characters. However, by the time a pointer is fed
as input (as a fragment identifier on a URI reference) into a URI resolver,
any such characters must have been encoded and/or escaped as defined in <bibref ref="rfc2396"/> (as updated by <bibref ref="rfc2732"/>).</p>
</div2>
<div2>
<head>Namespace Binding Context</head>
<p>Scheme specifications may define ways to bind XML Namespaces <bibref ref="XML-Names"/> prefixes
to namespace names for the purpose of interpreting element and attribute names'
namespace prefixes appearing in pointer parts. These bindings contribute to
a namespace binding context that applies to all pointer parts to the right
of the pointer part making the binding, unless exceptions are explicitly made
by the schemes in question. The documentation for any namespace-binding scheme
must specify whether its bindings remain in effect for later pointer parts.
The documentation for every scheme must specify whether it uses the namespace
binding context.</p>
<p>The initial namespace binding context prior to evaluation of the first
pointer part consists of a single entry: the <code>xml</code> prefix bound
to the URI <code>http:/www.w3.org/XML/1998/namespace</code>. Pointer parts
must not attempt to redefine the <code>xml</code> prefix; any attempt to do
so results in no change being made to the namespace binding context.</p>
</div2>
</div1>
</body><back>
<div1 id="references">
<head>References</head>
<div2>
<head>Normative References</head>
<blist>
<bibl id="Infoset" href="http://www.w3.org/TR/xml-infoset/" key="Infoset">John
Cowan and Richard Tobin, editors. <titleref>XML Information Set</titleref>.
World Wide Web Consortium, 2001.</bibl>
<bibl id="rfc2119" href="http://www.ietf.org/rfc/rfc2119.txt" key="RFC 2119"><titleref>RFC
2119: Key words for use in RFCs to Indicate Requirement Levels</titleref>.
Internet Engineering Task Force, 1997.</bibl>
<bibl id="rfc2396" href="http://www.ietf.org/rfc/rfc2396.txt" key="RFC 2396"><titleref>RFC
2396: Uniform Resource Identifiers</titleref>. Internet Engineering Task Force,
1995.</bibl>
<bibl id="rfc2732" href="http://www.ietf.org/rfc/rfc2732.txt" key="RFC 2732"><titleref>RFC
2732: Format for Literal IPv6 Addresses in URL's</titleref>. Internet Engineering
Task Force, 1999.</bibl>
<bibl id="draft-xmlmediatypes" href="http://www.ietf.org/rfc/rfc3023" key="RFC 3023"><titleref>RFC
3023: XML Media Types</titleref>. Internet Engineering Task Force, 2001.</bibl>
<bibl id="XML" href="http://www.w3.org/TR/REC-xml" key="XML">Tim Bray, Jean
Paoli, C.M. Sperberg-McQueen, and Eve Maler, editors. <emph>Extensible Markup
Language (XML) 1.0 (Second Edition).</emph> World Wide Web Consortium, 2000.</bibl>
<bibl id="XML-Names" xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.w3.org/TR/REC-xml-names/" key="XML-Names">Tim Bray, Dave Hollander, and Andrew Layman, editors.  <titleref>Namespaces
in XML</titleref>. World Wide Web Consortium, 1999.</bibl>
<bibl id="xsd" href="http://www.w3.org/TR/xmlschema-1/" key="XMLSchema">Henry Thompson
et al., editors. <emph>XML Schema Part 1.</emph> World Wide Web Consortium,
2001.</bibl>
</blist></div2>
<div2>
<head>Non-Normative References</head>
<blist>
<bibl id="html" href="http://www.w3.org/TR/html4/" key="HTML"><titleref href="http://www.w3.org/TR/html4/">HTML
4.01 Specification</titleref>. World Wide Web Consortium, 1999.</bibl>
<bibl id="rdf" href="http://www.w3.org/TR/REC-rdf-syntax/" key="RDF">Dave
Beckett, editor. <titleref>RDF/XML Syntax Specification</titleref>. World
Wide Web Consortium, 2001.</bibl>
<bibl id="soap12" href="http://www.w3.org/TR/soap12-part0/" key="SOAP12">Nilo
Mitra et al., editors. <titleref>SOAP Version 1.2</titleref> Parts 0, 1, and
2. World Wide Web Consortium, 2001.</bibl>
<bibl id="xinclude" href="http://www.w3.org/TR/xinclude/" key="XInclude">Jonathan
Marsh and David Orchard, editors. <titleref>XML Inclusions (XInclude) Version
1.0</titleref>. World Wide Web Consortium, 2001.</bibl>
<bibl id="XLink" href="http://www.w3.org/TR/xlink/" key="XLink">Steve DeRose,
Eve Maler, and David Orchard, editors. <titleref>XML Linking Language (XLink)</titleref>.
World Wide Web Consortium, 2001.</bibl>
</blist></div2>
</div1>
</back></spec>
