Make sure all language-tags are normalized to lowercase
authorMarkus Lanthaler <mark_lanthaler@gmx.net>
Mon, 03 Dec 2012 16:13:38 +0100
changeset 974 5d3701cc58c1
parent 973 8eb219b6290a
child 975 ea771f2aa1e6
Make sure all language-tags are normalized to lowercase

This addresses #181.
spec/latest/json-ld-api/index.html
--- a/spec/latest/json-ld-api/index.html	Mon Dec 03 15:55:26 2012 +0100
+++ b/spec/latest/json-ld-api/index.html	Mon Dec 03 16:13:38 2012 +0100
@@ -519,12 +519,12 @@
     <dd>A <tref>node object</tref> represents zero or more properties of a
       <tref>node</tref> in the <tref>JSON-LD graph</tref> serialized by the
       JSON-LD document.
-  
+
       A <tref>JSON Object</tref> is a <tref>node object</tref> if
       it exists outside of the JSON-LD Context and:</p>
-  
+
       <ul>
-        <li>it does not contain the <code>@value</code>, <code>@list</code>, 
+        <li>it does not contain the <code>@value</code>, <code>@list</code>,
         or <code>@set</code> keywords, or</li>
         <li>it does not contain the <code>@graph</code> keyword and is
         the top-most <tref>JSON Object</tref> in the JSON-LD document.
@@ -1136,7 +1136,8 @@
         <li>If <em>context</em> is a <tref>JSON object</tref>, perform the following steps:
           <ol class="algorithm">
             <li>If <em>context</em> has a <code>@language</code> property, it MUST have a value of a
-              simple <tref>string</tref> with the lexical form described in [[!BCP47]], or <tref>null</tref>. Add the language to the <tref>local context</tref>.</li>
+              simple <tref>string</tref> with the lexical form described in [[!BCP47]], or <tref>null</tref>. Add the
+              lowercased language tag to the <tref>local context</tref>.</li>
             <li>If <em>value</em> has a <code>@vocab</code> key, it MUST have a value of a simple <tref>string</tref>
               with the lexical form of an <tref>absolute IRI</tref>, or <tref>null</tref>. Add the vocabulary mapping to the <tref>local context</tref>.</li>
             <li id="object-context">Otherwise, for each property in <em>context</em> perform the following steps:
@@ -1186,7 +1187,7 @@
                       <tref>local context</tref> using the lexical value of the <em>property</em>.</li>
                     <li>If the <em>value</em> has a <code>@language</code> property but no <code>@type</code> property, the value of the
                       <code>@language</code> property MUST be a <tref>string</tref> or <tref>null</tref>.
-                      Merge the <tref>language mapping</tref> into the <tref>local context</tref> using the lexical value of the
+                      Merge the lowercased language tag into the <tref>local context</tref> using the lexical value of the
                       <em>property</em>.</li>
                   </ol>
                 </li>
@@ -1353,9 +1354,9 @@
             <code>@language</code> <tref>null</tref> or ((<em>term</em> has no <code>@type</code> or
             <code>@language</code>) and the <tref>active context</tref> has no <code>@language</code>),
             <tref>term rank</tref> is <code>3</code>, otherwise <code>0</code>.</li>
-          <li>Otherwise, if <em>value</em> has only a <code>@value</code> and <code>@language</code> property 
+          <li>Otherwise, if <em>value</em> has only a <code>@value</code> and <code>@language</code> property
             and <em>term</em> has a <code>@container</code> key associated with a value of
-            <code>@language</code> in the <tref>active context</tref>, 
+            <code>@language</code> in the <tref>active context</tref>,
             <tref>term rank</tref> is <code>1</code>,
             otherwise <code>-Infinity</code>.</li>
           <li>Otherwise, if <em>value</em> has a <code>@language</code> property matching a
@@ -1402,7 +1403,7 @@
           to <code>@type</code> and the associated coercion datatype expanded according to the
           <a href="#iri-expansion">IRI Expansion</a> rules.</li>
         <li>Otherwise, if the <tref>active property</tref> is the target of language tagging, set the second key-value
-          pair to <code>@language</code> and value of the language tagging from the <tref>active context</tref>.</li>
+          pair to <code>@language</code> and the value of the language tagging from the <tref>active context</tref>.</li>
       </ol>
     </li>
     <li>Otherwise, <em>value</em> is already expanded.</li>
@@ -1550,7 +1551,7 @@
                 <ol class="algorithm">
                   <li>Create a new <tref>JSON Object</tref>, referred to as an <em>expanded language object</em>.
                   <li>Add a key-value pair to the <em>expanded language object</em> where the
-                    key is <code>@value</code> and the value is 
+                    key is <code>@value</code> and the value is
                     the value associated with the key in the <em>language map</em>.</li>
                   <li>Add a key-value pair to the <em>expanded language object</em> where the
                     key is <code>@language</code>, and the value is the key in the
@@ -1734,13 +1735,13 @@
             the <em>value</em> as a <em>multilingual array</em>:
             <ol class="algorithm">
               <li>Set <em>language map</em> to an empty <tref>JSON Object</tref>.</li>
-              <li>For each <em>item</em> in <em>multilingual array</em>, add a key-value 
+              <li>For each <em>item</em> in <em>multilingual array</em>, add a key-value
                 pair to the <em>language map</em> where the key
                 is the value associated with the <code>@language</code> key in
                 <em>item</em>, and the value is the value associated with the
                 <code>@value</code> key in <em>item</em>.</li>
               </li>
-              <li>Create an entry in <em>output</em> for <tref>active property</tref> and 
+              <li>Create an entry in <em>output</em> for <tref>active property</tref> and
                 <em>language map</em>, appending to an existing entry if necessary.
               </li>
             </ol>