Replace optimize flag in JsonLdOptions with processingMode
authorMarkus Lanthaler <mark_lanthaler@gmx.net>
Tue, 26 Mar 2013 17:21:05 +0100
changeset 1474 92ea2892568f
parent 1473 51effedf2e7c
child 1475 afaeb0b2fc82
Replace optimize flag in JsonLdOptions with processingMode

This addresses #232.
spec/latest/json-ld-api/index.html
--- a/spec/latest/json-ld-api/index.html	Tue Mar 26 14:48:57 2013 +0100
+++ b/spec/latest/json-ld-api/index.html	Tue Mar 26 17:21:05 2013 +0100
@@ -569,7 +569,10 @@
     JSON-LD documents according the algorithms defined in this specification.</p>
 
   <p>A conforming <tdef>JSON-LD Processor</tdef> is a conforming <tref>JSON-LD Implementation</tref>
-    that exposes the Application Programming Interface (API) defined in this specification.</p>
+    that exposes the Application Programming Interface (API) defined in this specification.
+    It MUST implement the <code>json-ld-1.0</code> processing mode (for further details, see the
+    <code class="idlMemberName"><a href="#widl-JsonLdOptions-processingMode">processingMode</a></code>
+    option of <a>JsonLdOptions</a>).</p>
 
   <p>The algorithms in this specification are generally written with more concern for clarity than
     efficiency. Thus, JSON-LD Implementations and Processors may implement the algorithms
@@ -3687,10 +3690,8 @@
             on the given <code>input</code>, or a fatal error prevented
             processing from completing.</dd>
           <dt>optional JsonLdOptions? options</dt>
-          <dd>A set of options to configure the used algorithms such. This allows, e.g.,
-            to set the input document's base <tref>IRI</tref>. This also includes
-            the <code>optimize</code> flag, which, if set, will allow processor-specific
-            optimization.</dd>
+          <dd>A set of options to configure the algorithms. This allows, e.g.,
+            to set the input document's base <tref>IRI</tref>.</dd>
         </dl>
       </dd>
 
@@ -3813,14 +3814,17 @@
           the processor's built-in context loader MUST be used.</dd>
         <dt>object or DOMString expandContext = null</dt>
         <dd>A context that is used to initialize the active context when expanding a document.</dd>
-        <dt>boolean optimize = false</dt>
-        <dd>If set to <code>true</code>, the JSON-LD processor is allowed to
-          optimize the output of the <a href="#compaction-algorithm">Compaction algorithm</a>
-          to produce even compacter representations. The algorithm for compaction
-          optimization is beyond the scope of this specification and thus
+        <dt>DOMString processingMode = "json-ld-1.0"</dt>
+        <dd>If set to <code>json-ld-1.0</code>, the JSON-LD Processor MUST produce
+          exactly the same results as the algorithms defined in this specification.
+          If set to another value, the JSON-LD Processor is allowed to extend
+          or modify the algorithms defined in this specification to enable
+          application-specific optimizations. The definition of such
+          optimizations is beyond the scope of this specification and thus
           not defined. Consequently, different implementations MAY implement
-          different optimization algorithms.
-        </dd>
+          different optimizations. Developers MUST NOT define modes beginning
+          with <code>json-ld</code> as they are reserved for future versions
+          of this specification.</dd>
       </dl>
     </section>