rewrite fragment identifier section for ISSUE-37 and ISSUE-69
authorRichard Cyganiak <>
Thu, 10 Nov 2011 11:51:33 +0000
changeset 165 a430d7d0a683
parent 164 592e3a4454c2
child 166 c5a63604ed5a
rewrite fragment identifier section for ISSUE-37 and ISSUE-69
--- a/rdf-concepts/index.html	Thu Nov 10 00:25:45 2011 +0000
+++ b/rdf-concepts/index.html	Thu Nov 10 11:51:33 2011 +0000
@@ -1075,72 +1075,42 @@
 <section id="section-fragID" class="informative">
     <h2>Fragment Identifiers</h2>
-    <p class="issue">This section does not address the case where RDF is
-    embedded in other document formats, such as in RDFa or when an RDF/XML
-    fragment is embedded in SVG. It has been suggested that this may be
-    a general issue for the TAG about the treatment of
-    fragment identifiers when one language is embedded in another. This is
-    <a href="">ISSUE-37</a>.</p>
-    <p class="issue">This section treats the RDF/XML media type as
-    canonical for establishing the referent of IRIs that include
-    fragment identifier. Today we have many different media types
-    that can carry RDF graphs, and HTTP content negotiation is more
-    common. Also, the problem addressed in the section
-    (context-dependence of fragment identifiers) has to some extent
-    gone away when RFC 2396 was replaced by RFC 3986. The latter
-    states that the same fragment should be used for the same thing
-    in resources that have multiple representations
-    (Section 3.5 [[URI]]). This is
-    <a href="">ISSUE-69</a>.</p>
+    <p>RDF uses <a title="IRI">IRIs</a>, which may include
+    <dfn>fragment identifiers</dfn>, as resource identifiers.
+    The semantics of fragment identifiers are
+    <a href="">defined in
+    RFC 3986</a> [[URI]]: They identify a secondary resource
+    that is usually a part of, view of, defined in, or described in
+    the primary resource, and the precise semantics depend on the set
+    of representations that might result from a retrieval action
+    on the primary resource.</p>
-    <p>RDF uses <a title="IRI">IRIs</a>,
-    which may include fragment identifiers, as
-    context free identifiers for resources. RFC 2396 states
-    that the meaning of a fragment
-    identifier depends on the MIME content-type of a document, i.e.
-    is context dependent.</p>
-    <p>These apparently conflicting views are reconciled by
-    considering that an <a>IRI</a> in an RDF graph is treated
-    with respect to the MIME type <code>application/rdf+xml</code>
-    [[RDF-MIME-TYPE]]. Given an IRI that includes a fragment identifier,
-    the fragment identifer identifies the same thing
-    that it does in an <code>application/rdf+xml</code> representation of the
-    resource identified by the IRI excluding the fragment identifier. Thus:</p>
-    <ul>
-      <li>we assume that the IRI excluding fragment
-      identifier identifies a resource, which is presumed to have
-      an RDF representation. So when <code>eg:someurl#frag</code> is used in an RDF
-      document, <code>eg:someurl</code> is taken to
-      designate some RDF document (even when no such document can
-      be retrieved).</li>
-      <li><code>eg:someurl#frag</code> means the thing
-      that is indicated, according to the rules of the
-      <code>application/rdf+xml</code> MIME content-type as
-      a “fragment” or “view” of the RDF document at
-      <code>eg:someurl</code>. If the document does not
-      exist, or cannot be retrieved, or is available only in
-      formats other than <code>application/rdf+xml</code>, then exactly what
-      that view may be is somewhat undetermined, but that does not
-      prevent use of RDF to say things about it.</li>
-      <li>the RDF treatment of a fragment identifier allows it to
-      indicate a thing that is entirely external to the document,
-      or even to the “shared information space” known as the Web.
-      That is, it can be a more general idea, like some particular
-      car or a mythical Unicorn.</li>
-      <li>in this way, an <code>application/rdf+xml</code> document acts as an
-      intermediary between some Web retrievable documents (itself,
-      at least, also any other Web retrievable IRIs that it may
-      use, possibly including schema IRIs and references to other
-      RDF documents), and some set of possibly abstract or non-Web
-      entities that the RDF may describe.</li>
-    </ul>
-    <p>This provides a handling of IRIs and their
-    denotation that is consistent with the RDF model theory and
-    usage, and also with conventional Web behavior. Note that
-    nothing here requires that an RDF application be able to
-    retrieve any representation of resources identified by the IRIs
-    in an RDF graph.</p>
+    <p>This section discusses the handling of fragment identifiers
+    in representations that encode <a title="RDF graph">RDF graphs</a>.</p>
+    <p>In RDF-bearing representations of a resource <code>&lt;foo&gt;</code>,
+    the secondary resource identified by a fragment <code>#bar</code>
+    is the entity denoted by the full IRI <code>&lt;foo#bar&gt;</code>
+    in the RDF graph.
+    Since IRIs in RDF graphs can denote anything, this can be
+    something external to the representation, or even external
+    to the “shared information space” known as the Web.</p>
+    <p>In this way, the RDF representation acts as an intermediary
+    between some web-retrievable document, and some set of possibly
+    non-web or abstract entities that the RDF may describe.</p>
+    <p>Primary resources may have multiple representations
+    (a.k.a. content negotiation). Fragments in RDF-bearing representations
+    SHOULD be used consistently with the semantics imposed by any
+    non-RDF representations. For example, if the fragment
+    <code>#chapter1</code> identifies a document section in an
+    HTML representation of a primary resource, then <code>#chapter1</code>
+    SHOULD be taken to denote that same section in all RDF-bearing
+    representations of the same primary resource.</p>
+    <p>The same constraint applies when RDF graphs are embedded
+    in non-RDF representations.</p>
@@ -1172,6 +1142,7 @@
   <h2>Changes from RDF 2004</h2>
+    <li>2011-11-10: Replaced the <a href="#section-fragID">section on fragment identifiers</a> with an updated account that follows RFC 3986</li>
     <li>2011-11-09: Updated the two sections on literals to reflect the <a href="">ISSUE-71</a> resolution that literals with language tag now have the datatype IRI <code>rdf:langString</code>. Formally introduced the term “language-tagged string”.</li>
     <li>2011-11-09: Add a note that explains that #x0-#x1F are no longer allowed in simple literals
     <li>2011-08-13: Updated Turtle reference to Turtle FPWD</li>