Disallow keywords in property generator, allow alias in context.
authorDave Longley <dlongley@digitalbazaar.com>
Tue, 12 Feb 2013 16:04:14 -0500
changeset 1236 19177c2b884e
parent 1235 fe8fa25f7b8d
child 1237 eac132ddb4d8
Disallow keywords in property generator, allow alias in context.
spec/latest/json-ld-api/index.html
--- a/spec/latest/json-ld-api/index.html	Tue Feb 12 15:42:00 2013 -0500
+++ b/spec/latest/json-ld-api/index.html	Tue Feb 12 16:04:14 2013 -0500
@@ -1121,6 +1121,14 @@
     Otherwise, if <em>value</em> is a <tref>string</tref>:
     <ol class="algorithm">
       <li>
+        Expand <em>value</em> by setting it to the result of
+        using the <a href="#iri-expansion">IRI Expansion</a> algorithm,
+        passing <tref>active context</tref>, <em>value</em>,
+        <tref>true</tref> for <em>vocabRelative</em>,
+        <tref>true</tref> for <em>documentRelative</em>,
+        <tref>local context</tref>, and <em>defined</em>.
+      </li>
+      <li>
         If <em>value</em> is a <tref>keyword</tref>, then <em>value</em>
         MUST NOT be equal to <code>@context</code>. Otherwise an invalid
         keyword alias has been detected, which is an error. Add <em>term</em>
@@ -1130,13 +1138,6 @@
         sorted by length, breaking ties lexicographically.
       </li>
       <li>
-        Otherwise, expand <em>value</em> by setting it to the result of
-        using the <a href="#iri-expansion">IRI Expansion</a> algorithm,
-        passing <tref>active context</tref>, <em>value</em>,
-        <tref>true</tref> for <em>documentRelative</em>,
-        <tref>local context</tref>, and <em>defined</em>.
-      </li>
-      <li>
         Set the <tref>IRI mapping</tref> for the <tref>term definition</tref>
         for <em>term</em> in <tref>active context</tref> to <em>value</em>,
         set the value associated with <em>defined</em>'s key <em>term</em> to
@@ -1168,16 +1169,18 @@
             For each item <em>iri</em> in <em>id</em>:
             <ol class="algorithm">
               <li>
-                <em>iri</em> MUST be a <tref>string</tref> and MUST not
-                equal <code>@type</code>, otherwise an invalid value has
-                been detected, which is an error.
+                If <em>iri</em> is a <tref>string</tref>, then
+                set <em>iri</em> to the result of using the
+                <a href="#iri-expansion">IRI Expansion</a> algorithm, passing
+                <tref>active context</tref>, <em>iri</em> for <em>value</em>,
+                <tref>true</tref> for <em>vocabRelative</em>,
+                <tref>true</tref> for <em>documentRelative</em>,
+                <tref>local context</tref>, and <em>defined</em>.
               </li>
               <li>
-                Set <em>iri</em> equal to the result of using the
-                <a href="#iri-expansion">IRI Expansion</a> algorithm, passing
-                <tref>active context</tref>, <em>iri</em> for <em>value</em>,
-                <tref>true</tref> for <em>documentRelative</em>,
-                <tref>local context</tref>, and <em>defined</em>.
+                <em>iri</em> MUST be a <tref>string</tref> and MUST not be
+                a <tref>keyword</tref>, otherwise an invalid value has
+                been detected, which is an error.
               </li>
               <li>
                 Append <em>iri</em> to <em>property generator</em>.
@@ -1198,6 +1201,7 @@
         equal to the result of using the
         <a href="#iri-expansion">IRI Expansion</a> algorithm, passing
         <tref>active context</tref>, <em>id</em> for <em>value</em>,
+        <tref>true</tref> for <em>vocabRelative</em>,
         <tref>true</tref> for <em>documentRelative</em>,
         <tref>local context</tref>, and <em>defined</em>.
       </li>