Fixed two issues reported by Tom Steiner.
authorManu Sporny <msporny@digitalbazaar.com>
Mon, 29 Aug 2011 09:19:46 +0800
changeset 178 e65cf5102452
parent 177 3904c0e497c4
child 179 989b47590876
Fixed two issues reported by Tom Steiner.
spec/latest/index.html
--- a/spec/latest/index.html	Fri Aug 26 23:33:36 2011 +0800
+++ b/spec/latest/index.html	Mon Aug 29 09:19:46 2011 +0800
@@ -1234,7 +1234,7 @@
     "title":        "http://purl.org/dc/terms/title",
     "@coerce": 
     {
-      "@iri": "ex:contains"
+      "@iri": "contains"
     },
   },
   "@subject": 
@@ -1341,10 +1341,47 @@
 <section>
   <h2>CURIEs</h2>
   <p>
-    Concepts in Linked Data documents may draw on a number of different vocabularies. The @vocab mechanism
-    is useful to easily associate types and properties with a specific vocabulary, but when many vocabularies
-    are used, this becomes difficult. Consider the following example:
+    Vocabulary terms in Linked Data documents may draw from a number of 
+    different Web vocabularies. At times, declaring every single term that
+    a document uses can require the developer to declare tens, if not 
+    hundreds of potential vocabulary terms that may be used across an 
+    application. This is a concern for at least three reasons; the
+    first is the cognitive load on the developer, the second is
+    the serialized size of the context, the third is future-proofing
+    application contexts. In order to address these issues, the concept of a 
+    <em>Compact URI Expression</em> (CURIE) mechanism is introduced.</p>
+  <p>
+    A <tdef>CURIE</tdef> is a compact way of describing an <tref>IRI</tref>. 
+    Generally, a CURIE is composed of a <em>prefix</em> and a <em>suffix</em> 
+    separated by a colon (<code>:</code>). 
+    The prefix is a short string that identifies a particular Web vocabulary. 
+    For example, the prefix <code>foaf</code> may be used as a short
+    hand for the Friend-of-a-Friend Web Vocabulary, which is identified using
+    the IRI 
+    <code>http://xmlns.com/foaf/0.1/</code>. A developer may append any of
+    the FOAF Vocabulary terms to the end of the prefix to specify a short-hand
+    version of the full IRI for the vocabulary term. For example,
+    <code>foaf:name</code> would be the CURIE for the IRI
+    <code>http://xmlns.com/foaf/0.1/name</code>. Instead of having to remember
+    and type out the entire IRI, the developer can instead use the CURIE in
+    their JSON-LD markup.
   </p>
+  <p>
+    The ability to use CURIEs reduces the need for developers to declare
+    every vocabulary term that they intend to use in
+    the JSON-LD context. This reduces document serialization size because 
+    every vocabulary term need not be declared in the context. CURIEs also 
+    reduce the cognitive load on the developer. It is far easier to
+    remember <code>foaf:name</code> than it is to remember
+    <code>http://xmlns.com/foaf/0.1/name</code>. The use of CURIEs also
+    ensures that a context document does not have to be updated in lock-step
+    with an externally defined Web Vocabulary. Without CURIEs, a developer
+    would need to keep their application context terms in lock-step with an
+    externally defined Web Vocabulary. Rather, by just declaring the 
+    Web Vocabulary CURIE prefix, one can use new terms as they're declared
+    without having to update the application's JSON-LD context.
+  </p>
+  <p>Consider the following example:</p>
   <pre class="example" data-transform="updateExample">
 <!--
 {
@@ -1370,17 +1407,17 @@
 -->
   </pre>
   <p>
-    In this example, two different vocabularies are identified with prefixes, and used as type
-    and property values using the CURIE notation.
+    In this example, two different vocabularies are identified with 
+    CURIE prefixes, and used as type and property values using the CURIE 
+    notation.
   </p>
   <p>
-    A <tdef>CURIE</tdef> is a compact way of describing an <tref>IRI</tref>. The term actually comes
-    from Compact URI.
-    Generally, a CURIE is composed of a <em>prefix</em> and a <em>suffix</em> separated by a ':'. In
-    JSON-LD, the prefix may be the empty string, denoting the <tdef>default prefix</tdef>.
-  </p>
-  <p>
-    CURIEs are defined more formally in [[RDFA-CORE]] <cite><a href="http://www.w3.org/TR/rdfa-core/#s_curies">section 6 &quot;CURIE Syntax Definition&quot;</a></cite>.
+    CURIEs are defined more formally in RDFa Core 1.1, 
+    <cite><a href="http://www.w3.org/TR/rdfa-core/#s_curies">Section 6 
+    &quot;CURIE Syntax Definition&quot;</a></cite> [[RDFA-CORE]]. 
+    JSON-LD does not support the square-bracketed CURIE syntax as the 
+    mechanism is not required to disambiguate IRIs in a JSON-LD document like
+    it is in HTML documents.
   </p>
 </section>