prov-n mapping for collections
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Thu, 31 May 2012 10:30:03 +0100
changeset 3114 9bdfd1fccf8b
parent 3113 2c6662b9c764
child 3115 6465f6659462
prov-n mapping for collections
model/grammar/ll.html
model/grammar/ll.js
model/grammar/yack/prov-n-LL.bnf
model/grammar/yack/prov-n-LL.bnf.html
model/prov-dm.html
model/prov-n.html
--- a/model/grammar/ll.html	Thu May 31 10:12:31 2012 +0100
+++ b/model/grammar/ll.html	Thu May 31 10:30:03 2012 +0100
@@ -241,22 +241,40 @@
 <td><a id="prod-prov_n_LL-removalExpression" name="prod-prov_n_LL-removalExpression"></a>[<span class="prodNo">27</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">removalExpression</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
-<td><code class="content">"derivedByRemovalFrom" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," "{" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-literal">literal</a></span> (( "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-literal">literal</a></span> ))* "}" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
+<td><code class="content">"derivedByRemovalFrom" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-keySet">keySet</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
 </tr>
 </tbody>
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-membershipExpression" name="prod-prov_n_LL-membershipExpression"></a>[<span class="prodNo">28</span>]&nbsp;&nbsp;&nbsp;</td>
-<td><code class="production prod">membershipExpression</code></td>
+<td><a id="prod-prov_n_LL-keySet" name="prod-prov_n_LL-keySet"></a>[<span class="prodNo">28</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><code class="production prod">keySet</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
-<td><code class="content">"memberOf" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-keyEntitySet">keyEntitySet</a></span> (( "," ( "true" | "false" ) ))? <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
+<td><code class="content">"{" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-literal">literal</a></span> (( "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-literal">literal</a></span> ))* "}"</code></td>
 </tr>
 </tbody>
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-namedBundle" name="prod-prov_n_LL-namedBundle"></a>[<span class="prodNo">29</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-membershipExpression" name="prod-prov_n_LL-membershipExpression"></a>[<span class="prodNo">29</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><code class="production prod">membershipExpression</code></td>
+<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
+<td><code class="content">"memberOf" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-keyEntitySet">keyEntitySet</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-complete">complete</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
+</tr>
+</tbody>
+
+<tbody class="prod">
+<tr valign="baseline">
+<td><a id="prod-prov_n_LL-complete" name="prod-prov_n_LL-complete"></a>[<span class="prodNo">30</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><code class="production prod">complete</code></td>
+<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
+<td><code class="content">(( "," ( "true" | "false" | "-" ) ))?</code></td>
+</tr>
+</tbody>
+
+<tbody class="prod">
+<tr valign="baseline">
+<td><a id="prod-prov_n_LL-namedBundle" name="prod-prov_n_LL-namedBundle"></a>[<span class="prodNo">31</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">namedBundle</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"bundle" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span> (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-namespaceDeclarations">namespaceDeclarations</a></span>)? (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-expression">expression</a></span>)* "endBundle"</code></td>
@@ -265,7 +283,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-provenanceLocatorExpression" name="prod-prov_n_LL-provenanceLocatorExpression"></a>[<span class="prodNo">30</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-provenanceLocatorExpression" name="prod-prov_n_LL-provenanceLocatorExpression"></a>[<span class="prodNo">32</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">provenanceLocatorExpression</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"hasProvenanceIn" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifierOrMarker">identifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifierOrMarker">identifierOrMarker</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
@@ -274,7 +292,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-eIdentifier" name="prod-prov_n_LL-eIdentifier"></a>[<span class="prodNo">31</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-eIdentifier" name="prod-prov_n_LL-eIdentifier"></a>[<span class="prodNo">33</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">eIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -283,7 +301,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-aIdentifier" name="prod-prov_n_LL-aIdentifier"></a>[<span class="prodNo">32</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-aIdentifier" name="prod-prov_n_LL-aIdentifier"></a>[<span class="prodNo">34</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">aIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -292,7 +310,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-agIdentifier" name="prod-prov_n_LL-agIdentifier"></a>[<span class="prodNo">33</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-agIdentifier" name="prod-prov_n_LL-agIdentifier"></a>[<span class="prodNo">35</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">agIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -301,7 +319,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-gIdentifier" name="prod-prov_n_LL-gIdentifier"></a>[<span class="prodNo">34</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-gIdentifier" name="prod-prov_n_LL-gIdentifier"></a>[<span class="prodNo">36</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">gIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -310,7 +328,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-uIdentifier" name="prod-prov_n_LL-uIdentifier"></a>[<span class="prodNo">35</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-uIdentifier" name="prod-prov_n_LL-uIdentifier"></a>[<span class="prodNo">37</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">uIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -319,7 +337,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-cIdentifier" name="prod-prov_n_LL-cIdentifier"></a>[<span class="prodNo">36</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-cIdentifier" name="prod-prov_n_LL-cIdentifier"></a>[<span class="prodNo">38</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">cIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -328,7 +346,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-eIdentifierOrMarker" name="prod-prov_n_LL-eIdentifierOrMarker"></a>[<span class="prodNo">37</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-eIdentifierOrMarker" name="prod-prov_n_LL-eIdentifierOrMarker"></a>[<span class="prodNo">39</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">eIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-eIdentifier">eIdentifier</a></span> | "-" )</code></td>
@@ -337,7 +355,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-aIdentifierOrMarker" name="prod-prov_n_LL-aIdentifierOrMarker"></a>[<span class="prodNo">38</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-aIdentifierOrMarker" name="prod-prov_n_LL-aIdentifierOrMarker"></a>[<span class="prodNo">40</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">aIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-aIdentifier">aIdentifier</a></span> | "-" )</code></td>
@@ -346,7 +364,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-agIdentifierOrMarker" name="prod-prov_n_LL-agIdentifierOrMarker"></a>[<span class="prodNo">39</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-agIdentifierOrMarker" name="prod-prov_n_LL-agIdentifierOrMarker"></a>[<span class="prodNo">41</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">agIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-agIdentifier">agIdentifier</a></span> | "-" )</code></td>
@@ -355,7 +373,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-gIdentifierOrMarker" name="prod-prov_n_LL-gIdentifierOrMarker"></a>[<span class="prodNo">40</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-gIdentifierOrMarker" name="prod-prov_n_LL-gIdentifierOrMarker"></a>[<span class="prodNo">42</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">gIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-gIdentifier">gIdentifier</a></span> | "-" )</code></td>
@@ -364,7 +382,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-uIdentifierOrMarker" name="prod-prov_n_LL-uIdentifierOrMarker"></a>[<span class="prodNo">41</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-uIdentifierOrMarker" name="prod-prov_n_LL-uIdentifierOrMarker"></a>[<span class="prodNo">43</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">uIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-uIdentifier">uIdentifier</a></span> | "-" )</code></td>
@@ -373,7 +391,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-identifier" name="prod-prov_n_LL-identifier"></a>[<span class="prodNo">42</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-identifier" name="prod-prov_n_LL-identifier"></a>[<span class="prodNo">44</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">identifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td>
@@ -382,7 +400,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-attribute" name="prod-prov_n_LL-attribute"></a>[<span class="prodNo">43</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-attribute" name="prod-prov_n_LL-attribute"></a>[<span class="prodNo">45</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">attribute</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td>
@@ -391,7 +409,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-timeZZ" name="prod-prov_n_LL-timeZZ"></a>[<span class="prodNo">44</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-timeZZ" name="prod-prov_n_LL-timeZZ"></a>[<span class="prodNo">46</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">timeZZ</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-ISODATETIME">ISODATETIME</a></span></code></td>
@@ -400,7 +418,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-literal" name="prod-prov_n_LL-literal"></a>[<span class="prodNo">45</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-literal" name="prod-prov_n_LL-literal"></a>[<span class="prodNo">47</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">literal</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-typedLiteral">typedLiteral</a></span><br/>
@@ -410,7 +428,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-typedLiteral" name="prod-prov_n_LL-typedLiteral"></a>[<span class="prodNo">46</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-typedLiteral" name="prod-prov_n_LL-typedLiteral"></a>[<span class="prodNo">48</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">typedLiteral</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL">STRING_LITERAL</a></span> "%%" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-datatype">datatype</a></span></code></td>
@@ -419,7 +437,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-datatype" name="prod-prov_n_LL-datatype"></a>[<span class="prodNo">47</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-datatype" name="prod-prov_n_LL-datatype"></a>[<span class="prodNo">49</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">datatype</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td>
@@ -428,7 +446,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-convenienceNotation" name="prod-prov_n_LL-convenienceNotation"></a>[<span class="prodNo">48</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-convenienceNotation" name="prod-prov_n_LL-convenienceNotation"></a>[<span class="prodNo">50</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">convenienceNotation</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL">STRING_LITERAL</a></span><br/>
@@ -439,7 +457,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-namespaceDeclarations" name="prod-prov_n_LL-namespaceDeclarations"></a>[<span class="prodNo">49</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-namespaceDeclarations" name="prod-prov_n_LL-namespaceDeclarations"></a>[<span class="prodNo">51</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">namespaceDeclarations</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-defaultNamespaceDeclaration">defaultNamespaceDeclaration</a></span> | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-namespaceDeclaration">namespaceDeclaration</a></span> ) (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-namespaceDeclaration">namespaceDeclaration</a></span>)*</code></td>
@@ -448,7 +466,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-namespaceDeclaration" name="prod-prov_n_LL-namespaceDeclaration"></a>[<span class="prodNo">50</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-namespaceDeclaration" name="prod-prov_n_LL-namespaceDeclaration"></a>[<span class="prodNo">52</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">namespaceDeclaration</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"prefix" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-namespace">namespace</a></span></code></td>
@@ -457,7 +475,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-defaultNamespaceDeclaration" name="prod-prov_n_LL-defaultNamespaceDeclaration"></a>[<span class="prodNo">51</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-defaultNamespaceDeclaration" name="prod-prov_n_LL-defaultNamespaceDeclaration"></a>[<span class="prodNo">53</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">defaultNamespaceDeclaration</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"default" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-IRI_REF">IRI_REF</a></span></code></td>
@@ -466,7 +484,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-namespace" name="prod-prov_n_LL-namespace"></a>[<span class="prodNo">52</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-namespace" name="prod-prov_n_LL-namespace"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">namespace</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-IRI_REF">IRI_REF</a></span></code></td>
@@ -475,7 +493,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-QUALIFIED_NAME" name="term-prov_n_LL-QUALIFIED_NAME"></a>[<span class="prodNo">53</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-QUALIFIED_NAME" name="term-prov_n_LL-QUALIFIED_NAME"></a>[<span class="prodNo">55</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">QUALIFIED_NAME</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">(( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_PREFIX">PN_PREFIX</a></span> ":" ))? <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_LOCAL">PN_LOCAL</a></span><br/>
@@ -485,7 +503,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PREFX" name="term-prov_n_LL-PREFX"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PREFX" name="term-prov_n_LL-PREFX"></a>[<span class="prodNo">56</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PREFX</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_PREFIX">PN_PREFIX</a></span></code></td>
@@ -494,7 +512,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-DIGIT" name="term-prov_n_LL-DIGIT"></a>[<span class="prodNo">55</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-DIGIT" name="term-prov_n_LL-DIGIT"></a>[<span class="prodNo">57</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">DIGIT</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">[0-9]</code></td>
@@ -503,7 +521,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-ISODATETIME" name="term-prov_n_LL-ISODATETIME"></a>[<span class="prodNo">56</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ISODATETIME" name="term-prov_n_LL-ISODATETIME"></a>[<span class="prodNo">58</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">ISODATETIME</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> "-" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> "-" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> "T" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> (( "." <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span>)? ))? ))? (( "Z" | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-TIMEZONEOFFSET">TIMEZONEOFFSET</a></span> ))?</code></td>
@@ -512,7 +530,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-TIMEZONEOFFSET" name="term-prov_n_LL-TIMEZONEOFFSET"></a>[<span class="prodNo">57</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-TIMEZONEOFFSET" name="term-prov_n_LL-TIMEZONEOFFSET"></a>[<span class="prodNo">59</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">TIMEZONEOFFSET</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( "+" | "-" ) <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span></code></td>
@@ -521,7 +539,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-IRI_REF" name="term-prov_n_LL-IRI_REF"></a>[<span class="prodNo">58</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-IRI_REF" name="term-prov_n_LL-IRI_REF"></a>[<span class="prodNo">60</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">IRI_REF</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"&lt;" (( [^&lt;&gt;\"{}|^`\\] - [#0000- ] | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-UCHAR">UCHAR</a></span> ))* "&gt;"</code></td>
@@ -530,7 +548,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-STRING_LITERAL" name="term-prov_n_LL-STRING_LITERAL"></a>[<span class="prodNo">59</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-STRING_LITERAL" name="term-prov_n_LL-STRING_LITERAL"></a>[<span class="prodNo">61</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">STRING_LITERAL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">'"' (( ( [^\"\\\n\r] ) | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-ECHAR">ECHAR</a></span> | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-UCHAR">UCHAR</a></span> ))* '"'</code></td>
@@ -539,7 +557,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-INT_LITERAL" name="term-prov_n_LL-INT_LITERAL"></a>[<span class="prodNo">60</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-INT_LITERAL" name="term-prov_n_LL-INT_LITERAL"></a>[<span class="prodNo">62</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">INT_LITERAL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">("-")? (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span>)+</code></td>
@@ -548,7 +566,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-QUALIFIED_NAME_LITERAL" name="term-prov_n_LL-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">61</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-QUALIFIED_NAME_LITERAL" name="term-prov_n_LL-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">63</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">QUALIFIED_NAME_LITERAL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"'" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "'"</code></td>
@@ -557,7 +575,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-UCHAR" name="term-prov_n_LL-UCHAR"></a>[<span class="prodNo">62</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-UCHAR" name="term-prov_n_LL-UCHAR"></a>[<span class="prodNo">64</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">UCHAR</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( "\\u" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> )<br/>
@@ -567,7 +585,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-ECHAR" name="term-prov_n_LL-ECHAR"></a>[<span class="prodNo">63</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ECHAR" name="term-prov_n_LL-ECHAR"></a>[<span class="prodNo">65</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">ECHAR</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"\\" [tbnrf\\\"']</code></td>
@@ -576,7 +594,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-NIL" name="term-prov_n_LL-NIL"></a>[<span class="prodNo">64</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-NIL" name="term-prov_n_LL-NIL"></a>[<span class="prodNo">66</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">NIL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"(" (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-WS">WS</a></span> ))* ")"</code></td>
@@ -585,7 +603,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-WS" name="term-prov_n_LL-WS"></a>[<span class="prodNo">65</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-WS" name="term-prov_n_LL-WS"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">WS</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">" "<br/>
@@ -597,7 +615,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-ANON" name="term-prov_n_LL-ANON"></a>[<span class="prodNo">66</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ANON" name="term-prov_n_LL-ANON"></a>[<span class="prodNo">68</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">ANON</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"[" (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-WS">WS</a></span> ))* "]"</code></td>
@@ -606,7 +624,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_CHARS_BASE" name="term-prov_n_LL-PN_CHARS_BASE"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_CHARS_BASE" name="term-prov_n_LL-PN_CHARS_BASE"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_CHARS_BASE</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">[A-Z]<br/>
@@ -628,7 +646,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_CHARS_U" name="term-prov_n_LL-PN_CHARS_U"></a>[<span class="prodNo">68</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_CHARS_U" name="term-prov_n_LL-PN_CHARS_U"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_CHARS_U</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_BASE">PN_CHARS_BASE</a></span><br/>
@@ -638,7 +656,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_CHARS" name="term-prov_n_LL-PN_CHARS"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_CHARS" name="term-prov_n_LL-PN_CHARS"></a>[<span class="prodNo">71</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_CHARS</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_U">PN_CHARS_U</a></span><br/>
@@ -652,7 +670,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_PREFIX" name="term-prov_n_LL-PN_PREFIX"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_PREFIX" name="term-prov_n_LL-PN_PREFIX"></a>[<span class="prodNo">72</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_PREFIX</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_BASE">PN_CHARS_BASE</a></span> (( (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS">PN_CHARS</a></span> | "." ))* <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS">PN_CHARS</a></span> ))?</code></td>
@@ -661,7 +679,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_LOCAL" name="term-prov_n_LL-PN_LOCAL"></a>[<span class="prodNo">71</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_LOCAL" name="term-prov_n_LL-PN_LOCAL"></a>[<span class="prodNo">73</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_LOCAL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_U">PN_CHARS_U</a></span> | [0-9] | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ) (( (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS">PN_CHARS</a></span> | "." | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ))* ( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS">PN_CHARS</a></span> | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ) ))?</code></td>
@@ -670,7 +688,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_CHARS_OTHERS" name="term-prov_n_LL-PN_CHARS_OTHERS"></a>[<span class="prodNo">72</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_CHARS_OTHERS" name="term-prov_n_LL-PN_CHARS_OTHERS"></a>[<span class="prodNo">74</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_CHARS_OTHERS</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PERCENT">PERCENT</a></span><br/>
@@ -687,7 +705,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PERCENT" name="term-prov_n_LL-PERCENT"></a>[<span class="prodNo">73</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PERCENT" name="term-prov_n_LL-PERCENT"></a>[<span class="prodNo">75</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PERCENT</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"%" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span></code></td>
@@ -696,7 +714,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-HEX" name="term-prov_n_LL-HEX"></a>[<span class="prodNo">74</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-HEX" name="term-prov_n_LL-HEX"></a>[<span class="prodNo">76</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">HEX</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">[0-9]<br/>
@@ -707,7 +725,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PASSED_TOKENS" name="term-prov_n_LL-PASSED_TOKENS"></a>[<span class="prodNo">75</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PASSED_TOKENS" name="term-prov_n_LL-PASSED_TOKENS"></a>[<span class="prodNo">77</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production directive">PASSED TOKENS</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">([ \t\r\n])+<br/>
--- a/model/grammar/ll.js	Thu May 31 10:12:31 2012 +0100
+++ b/model/grammar/ll.js	Thu May 31 10:30:03 2012 +0100
@@ -242,22 +242,40 @@
 '<td><a id="prod-removalExpression" name="prod-removalExpression"></a>[<span class="prodNo">27</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">removalExpression</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
-'<td><code class="content">"derivedByRemovalFrom" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></span> "," "{" <span class="prod"><a class="grammarRef" href="#prod-literal">literal</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-literal">literal</a></span> )* "}" <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> ' + 
+'<td><code class="content">"derivedByRemovalFrom" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-keySet">keySet</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> ' + 
 '</tr> ' + 
 '</tbody> ' + 
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-membershipExpression" name="prod-membershipExpression"></a>[<span class="prodNo">28</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
-'<td><code class="production prod">membershipExpression</code></td> ' + 
+'<td><a id="prod-keySet" name="prod-keySet"></a>[<span class="prodNo">28</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><code class="production prod">keySet</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
-'<td><code class="content">"memberOf" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-keyEntitySet">keyEntitySet</a></span> ( "," ( "true" | "false" ) )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> ' + 
+'<td><code class="content">"{" <span class="prod"><a class="grammarRef" href="#prod-literal">literal</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-literal">literal</a></span> )* "}"</code></td> ' + 
 '</tr> ' + 
 '</tbody> ' + 
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-namedBundle" name="prod-namedBundle"></a>[<span class="prodNo">29</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-membershipExpression" name="prod-membershipExpression"></a>[<span class="prodNo">29</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><code class="production prod">membershipExpression</code></td> ' + 
+'<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><code class="content">"memberOf" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-keyEntitySet">keyEntitySet</a></span> <span class="prod"><a class="grammarRef" href="#prod-complete">complete</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> ' + 
+'</tr> ' + 
+'</tbody> ' + 
+' ' + 
+'<tbody class="prod"> ' + 
+'<tr valign="baseline"> ' + 
+'<td><a id="prod-complete" name="prod-complete"></a>[<span class="prodNo">30</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><code class="production prod">complete</code></td> ' + 
+'<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><code class="content">( "," ( "true" | "false" | "-" ) )?</code></td> ' + 
+'</tr> ' + 
+'</tbody> ' + 
+' ' + 
+'<tbody class="prod"> ' + 
+'<tr valign="baseline"> ' + 
+'<td><a id="prod-namedBundle" name="prod-namedBundle"></a>[<span class="prodNo">31</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">namedBundle</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"bundle" <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> (<span class="prod"><a class="grammarRef" href="#prod-namespaceDeclarations">namespaceDeclarations</a></span>)? (<span class="prod"><a class="grammarRef" href="#prod-expression">expression</a></span>)* "endBundle"</code></td> ' + 
@@ -266,7 +284,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-provenanceLocatorExpression" name="prod-provenanceLocatorExpression"></a>[<span class="prodNo">30</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-provenanceLocatorExpression" name="prod-provenanceLocatorExpression"></a>[<span class="prodNo">32</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">provenanceLocatorExpression</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"hasProvenanceIn" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-identifierOrMarker">identifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-identifierOrMarker">identifierOrMarker</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> ' + 
@@ -275,7 +293,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-eIdentifier" name="prod-eIdentifier"></a>[<span class="prodNo">31</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-eIdentifier" name="prod-eIdentifier"></a>[<span class="prodNo">33</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">eIdentifier</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> ' + 
@@ -284,7 +302,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-aIdentifier" name="prod-aIdentifier"></a>[<span class="prodNo">32</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-aIdentifier" name="prod-aIdentifier"></a>[<span class="prodNo">34</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">aIdentifier</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> ' + 
@@ -293,7 +311,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-agIdentifier" name="prod-agIdentifier"></a>[<span class="prodNo">33</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-agIdentifier" name="prod-agIdentifier"></a>[<span class="prodNo">35</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">agIdentifier</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> ' + 
@@ -302,7 +320,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-gIdentifier" name="prod-gIdentifier"></a>[<span class="prodNo">34</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-gIdentifier" name="prod-gIdentifier"></a>[<span class="prodNo">36</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">gIdentifier</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> ' + 
@@ -311,7 +329,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-uIdentifier" name="prod-uIdentifier"></a>[<span class="prodNo">35</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-uIdentifier" name="prod-uIdentifier"></a>[<span class="prodNo">37</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">uIdentifier</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> ' + 
@@ -320,7 +338,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-cIdentifier" name="prod-cIdentifier"></a>[<span class="prodNo">36</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-cIdentifier" name="prod-cIdentifier"></a>[<span class="prodNo">38</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">cIdentifier</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> ' + 
@@ -329,7 +347,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-eIdentifierOrMarker" name="prod-eIdentifierOrMarker"></a>[<span class="prodNo">37</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-eIdentifierOrMarker" name="prod-eIdentifierOrMarker"></a>[<span class="prodNo">39</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">eIdentifierOrMarker</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> | "-" )</code></td> ' + 
@@ -338,7 +356,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-aIdentifierOrMarker" name="prod-aIdentifierOrMarker"></a>[<span class="prodNo">38</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-aIdentifierOrMarker" name="prod-aIdentifierOrMarker"></a>[<span class="prodNo">40</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">aIdentifierOrMarker</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></span> | "-" )</code></td> ' + 
@@ -347,7 +365,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-agIdentifierOrMarker" name="prod-agIdentifierOrMarker"></a>[<span class="prodNo">39</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-agIdentifierOrMarker" name="prod-agIdentifierOrMarker"></a>[<span class="prodNo">41</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">agIdentifierOrMarker</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier</a></span> | "-" )</code></td> ' + 
@@ -356,7 +374,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-gIdentifierOrMarker" name="prod-gIdentifierOrMarker"></a>[<span class="prodNo">40</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-gIdentifierOrMarker" name="prod-gIdentifierOrMarker"></a>[<span class="prodNo">42</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">gIdentifierOrMarker</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-gIdentifier">gIdentifier</a></span> | "-" )</code></td> ' + 
@@ -365,7 +383,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-uIdentifierOrMarker" name="prod-uIdentifierOrMarker"></a>[<span class="prodNo">41</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-uIdentifierOrMarker" name="prod-uIdentifierOrMarker"></a>[<span class="prodNo">43</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">uIdentifierOrMarker</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-uIdentifier">uIdentifier</a></span> | "-" )</code></td> ' + 
@@ -374,7 +392,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-identifier" name="prod-identifier"></a>[<span class="prodNo">42</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-identifier" name="prod-identifier"></a>[<span class="prodNo">44</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">identifier</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td> ' + 
@@ -383,7 +401,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-attribute" name="prod-attribute"></a>[<span class="prodNo">43</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-attribute" name="prod-attribute"></a>[<span class="prodNo">45</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">attribute</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td> ' + 
@@ -392,7 +410,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-time" name="prod-time"></a>[<span class="prodNo">44</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-time" name="prod-time"></a>[<span class="prodNo">46</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">time</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-ISODATETIME">ISODATETIME</a></span></code></td> ' + 
@@ -401,7 +419,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-literal" name="prod-literal"></a>[<span class="prodNo">45</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-literal" name="prod-literal"></a>[<span class="prodNo">47</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">literal</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-typedLiteral">typedLiteral</a></span><br/> ' + 
@@ -411,7 +429,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-typedLiteral" name="prod-typedLiteral"></a>[<span class="prodNo">46</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-typedLiteral" name="prod-typedLiteral"></a>[<span class="prodNo">48</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">typedLiteral</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-STRING_LITERAL">STRING_LITERAL</a></span> "%%" <span class="prod"><a class="grammarRef" href="#prod-datatype">datatype</a></span></code></td> ' + 
@@ -420,7 +438,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-datatype" name="prod-datatype"></a>[<span class="prodNo">47</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-datatype" name="prod-datatype"></a>[<span class="prodNo">49</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">datatype</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td> ' + 
@@ -429,7 +447,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-convenienceNotation" name="prod-convenienceNotation"></a>[<span class="prodNo">48</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-convenienceNotation" name="prod-convenienceNotation"></a>[<span class="prodNo">50</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">convenienceNotation</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-STRING_LITERAL">STRING_LITERAL</a></span><br/> ' + 
@@ -440,7 +458,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-namespaceDeclarations" name="prod-namespaceDeclarations"></a>[<span class="prodNo">49</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-namespaceDeclarations" name="prod-namespaceDeclarations"></a>[<span class="prodNo">51</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">namespaceDeclarations</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-defaultNamespaceDeclaration">defaultNamespaceDeclaration</a></span> | <span class="prod"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></span> ) (<span class="prod"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></span>)*</code></td> ' + 
@@ -449,7 +467,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-namespaceDeclaration" name="prod-namespaceDeclaration"></a>[<span class="prodNo">50</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-namespaceDeclaration" name="prod-namespaceDeclaration"></a>[<span class="prodNo">52</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">namespaceDeclaration</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"prefix" <span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span> <span class="prod"><a class="grammarRef" href="#prod-namespace">namespace</a></span></code></td> ' + 
@@ -458,7 +476,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-defaultNamespaceDeclaration" name="prod-defaultNamespaceDeclaration"></a>[<span class="prodNo">51</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-defaultNamespaceDeclaration" name="prod-defaultNamespaceDeclaration"></a>[<span class="prodNo">53</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">defaultNamespaceDeclaration</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"default" <span class="prod"><a class="grammarRef" href="#prod-IRI_REF">IRI_REF</a></span></code></td> ' + 
@@ -467,7 +485,7 @@
 ' ' + 
 '<tbody class="prod"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-namespace" name="prod-namespace"></a>[<span class="prodNo">52</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-namespace" name="prod-namespace"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">namespace</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-IRI_REF">IRI_REF</a></span></code></td> ' + 
@@ -476,7 +494,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-QUALIFIED_NAME" name="prod-QUALIFIED_NAME"></a>[<span class="prodNo">53</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-QUALIFIED_NAME" name="prod-QUALIFIED_NAME"></a>[<span class="prodNo">55</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">QUALIFIED_NAME</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL">PN_PREFIX</a></span> ":" )? <span class="prod"><a class="grammarRef" href="#prod-PN_LOCAL">PN_LOCAL</a></span><br/> ' + 
@@ -486,7 +504,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PREFX" name="prod-PREFX"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PREFX" name="prod-PREFX"></a>[<span class="prodNo">56</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">PREFX</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL">PN_PREFIX</a></span></code></td> ' + 
@@ -495,7 +513,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-DIGIT" name="prod-DIGIT"></a>[<span class="prodNo">55</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-DIGIT" name="prod-DIGIT"></a>[<span class="prodNo">57</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">DIGIT</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">[0-9]</code></td> ' + 
@@ -504,7 +522,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-ISODATETIME" name="prod-ISODATETIME"></a>[<span class="prodNo">56</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-ISODATETIME" name="prod-ISODATETIME"></a>[<span class="prodNo">58</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">ISODATETIME</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> "-" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> "-" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> "T" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ( "." <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ( <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> (<span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span>)? )? )? ( "Z" | <span class="prod"><a class="grammarRef" href="#prod-TIMEZONEOFFSET">TIMEZONEOFFSET</a></span> )?</code></td> ' + 
@@ -513,7 +531,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-TIMEZONEOFFSET" name="prod-TIMEZONEOFFSET"></a>[<span class="prodNo">57</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-TIMEZONEOFFSET" name="prod-TIMEZONEOFFSET"></a>[<span class="prodNo">59</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">TIMEZONEOFFSET</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( "+" | "-" ) <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span></code></td> ' + 
@@ -522,7 +540,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-IRI_REF" name="prod-IRI_REF"></a>[<span class="prodNo">58</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-IRI_REF" name="prod-IRI_REF"></a>[<span class="prodNo">60</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">IRI_REF</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"&lt;" ( [^&lt;&gt;\"{}|^`\\] - [#0000- ] | <span class="prod"><a class="grammarRef" href="#prod-UCHAR">UCHAR</a></span> )* "&gt;"</code></td> ' + 
@@ -531,7 +549,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-STRING_LITERAL" name="prod-STRING_LITERAL"></a>[<span class="prodNo">59</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-STRING_LITERAL" name="prod-STRING_LITERAL"></a>[<span class="prodNo">61</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">STRING_LITERAL</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">\'"\' ( ( [^\"\\\n\r] ) | <span class="prod"><a class="grammarRef" href="#prod-ECHAR">ECHAR</a></span> | <span class="prod"><a class="grammarRef" href="#prod-UCHAR">UCHAR</a></span> )* \'"\'</code></td> ' + 
@@ -540,7 +558,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-INT_LITERAL" name="prod-INT_LITERAL"></a>[<span class="prodNo">60</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-INT_LITERAL" name="prod-INT_LITERAL"></a>[<span class="prodNo">62</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">INT_LITERAL</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">("-")? (<span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span>)+</code></td> ' + 
@@ -549,7 +567,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-QUALIFIED_NAME_LITERAL" name="prod-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">61</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-QUALIFIED_NAME_LITERAL" name="prod-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">63</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">QUALIFIED_NAME_LITERAL</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"\'" <span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "\'"</code></td> ' + 
@@ -558,7 +576,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-UCHAR" name="prod-UCHAR"></a>[<span class="prodNo">62</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-UCHAR" name="prod-UCHAR"></a>[<span class="prodNo">64</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">UCHAR</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( "\\u" <span class="prod"><a class="grammarRef" href="#prod-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-HEX">HEX</a></span> )<br/> ' + 
@@ -568,7 +586,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-ECHAR" name="prod-ECHAR"></a>[<span class="prodNo">63</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-ECHAR" name="prod-ECHAR"></a>[<span class="prodNo">65</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">ECHAR</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"\\" [tbnrf\\\"\']</code></td> ' + 
@@ -577,7 +595,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-NIL" name="prod-NIL"></a>[<span class="prodNo">64</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-NIL" name="prod-NIL"></a>[<span class="prodNo">66</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">NIL</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"(" ( <span class="prod"><a class="grammarRef" href="#prod-WS">WS</a></span> )* ")"</code></td> ' + 
@@ -586,7 +604,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-WS" name="prod-WS"></a>[<span class="prodNo">65</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-WS" name="prod-WS"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">WS</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">" "<br/> ' + 
@@ -598,7 +616,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-ANON" name="prod-ANON"></a>[<span class="prodNo">66</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-ANON" name="prod-ANON"></a>[<span class="prodNo">68</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">ANON</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"[" ( <span class="prod"><a class="grammarRef" href="#prod-WS">WS</a></span> )* "]"</code></td> ' + 
@@ -607,7 +625,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_CHARS_BASE" name="prod-PN_CHARS_BASE"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_CHARS_BASE" name="prod-PN_CHARS_BASE"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">PN_CHARS_BASE</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">[A-Z]<br/> ' + 
@@ -629,7 +647,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_CHARS_U" name="prod-PN_CHARS_U"></a>[<span class="prodNo">68</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_CHARS_U" name="prod-PN_CHARS_U"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">PN_CHARS_U</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_BASE">PN_CHARS_BASE</a></span><br/> ' + 
@@ -639,7 +657,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_CHARS" name="prod-PN_CHARS"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_CHARS" name="prod-PN_CHARS"></a>[<span class="prodNo">71</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">PN_CHARS</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS_U">PN_CHARS_U</a></span><br/> ' + 
@@ -653,7 +671,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_PREFIX" name="prod-PN_PREFIX"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_PREFIX" name="prod-PN_PREFIX"></a>[<span class="prodNo">72</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">PN_PREFIX</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_BASE">PN_CHARS_BASE</a></span> ( ( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS">PN_CHARS</a></span> | "." )* <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS">PN_CHARS</a></span> )?</code></td> ' + 
@@ -662,7 +680,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_LOCAL" name="prod-PN_LOCAL"></a>[<span class="prodNo">71</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_LOCAL" name="prod-PN_LOCAL"></a>[<span class="prodNo">73</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">PN_LOCAL</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS_U">PN_CHARS_U</a></span> | [0-9] | <span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ) ( ( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS">PN_CHARS</a></span> | "." | <span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> )* ( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS">PN_CHARS</a></span> | <span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ) )?</code></td> ' + 
@@ -671,7 +689,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_CHARS_OTHERS" name="prod-PN_CHARS_OTHERS"></a>[<span class="prodNo">72</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_CHARS_OTHERS" name="prod-PN_CHARS_OTHERS"></a>[<span class="prodNo">74</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">PN_CHARS_OTHERS</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-PERCENT">PERCENT</a></span><br/> ' + 
@@ -688,7 +706,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PERCENT" name="prod-PERCENT"></a>[<span class="prodNo">73</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PERCENT" name="prod-PERCENT"></a>[<span class="prodNo">75</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">PERCENT</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"%" <span class="prod"><a class="grammarRef" href="#prod-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-HEX">HEX</a></span></code></td> ' + 
@@ -697,7 +715,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-HEX" name="prod-HEX"></a>[<span class="prodNo">74</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-HEX" name="prod-HEX"></a>[<span class="prodNo">76</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">HEX</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">[0-9]<br/> ' + 
@@ -708,7 +726,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PASSED_TOKENS" name="prod-PASSED_TOKENS"></a>[<span class="prodNo">75</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PASSED_TOKENS" name="prod-PASSED_TOKENS"></a>[<span class="prodNo">77</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production directive">PASSED TOKENS</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">([ \t\r\n])+<br/> ' + 
--- a/model/grammar/yack/prov-n-LL.bnf	Thu May 31 10:12:31 2012 +0100
+++ b/model/grammar/yack/prov-n-LL.bnf	Thu May 31 10:30:03 2012 +0100
@@ -83,10 +83,13 @@
 
 [29]keyEntitySet::= "{"  "(" literal "," identifier  ")" ( ","  "(" literal "," identifier  ")" )* "}"
 
-[30] removalExpression::=	"derivedByRemovalFrom" "("  optionalIdentifier cIdentifier "," cIdentifier "," "{" literal ("," literal)* "}" optionalAttributeValuePairs ")"
+[30] removalExpression::=	"derivedByRemovalFrom" "("  optionalIdentifier cIdentifier "," cIdentifier "," keySet optionalAttributeValuePairs ")"
 
-[31] membershipExpression::=	"memberOf" "("  optionalIdentifier  cIdentifier "," keyEntitySet ("," ("true" | "false"))?  optionalAttributeValuePairs ")"
+[30a] keySet::= "{" literal ("," literal)* "}"
 
+[31] membershipExpression::=	"memberOf" "("  optionalIdentifier  cIdentifier "," keyEntitySet complete  optionalAttributeValuePairs ")"
+
+[31b] complete::= ("," ("true" | "false" | "-"))?
 
 [32] namedBundle ::= "bundle" identifier namespaceDeclarations? expression* "endBundle"
 
--- a/model/grammar/yack/prov-n-LL.bnf.html	Thu May 31 10:12:31 2012 +0100
+++ b/model/grammar/yack/prov-n-LL.bnf.html	Thu May 31 10:30:03 2012 +0100
@@ -240,22 +240,40 @@
 <td><a id="prod-prov_n_LL-removalExpression" name="prod-prov_n_LL-removalExpression"></a>[<span class="prodNo">27</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">removalExpression</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
-<td><code class="content">"derivedByRemovalFrom" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," "{" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-literal">literal</a></span> (( "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-literal">literal</a></span> ))* "}" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
+<td><code class="content">"derivedByRemovalFrom" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-keySet">keySet</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
 </tr>
 </tbody>
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-membershipExpression" name="prod-prov_n_LL-membershipExpression"></a>[<span class="prodNo">28</span>]&nbsp;&nbsp;&nbsp;</td>
-<td><code class="production prod">membershipExpression</code></td>
+<td><a id="prod-prov_n_LL-keySet" name="prod-prov_n_LL-keySet"></a>[<span class="prodNo">28</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><code class="production prod">keySet</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
-<td><code class="content">"memberOf" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-keyEntitySet">keyEntitySet</a></span> (( "," ( "true" | "false" ) ))? <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
+<td><code class="content">"{" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-literal">literal</a></span> (( "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-literal">literal</a></span> ))* "}"</code></td>
 </tr>
 </tbody>
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-namedBundle" name="prod-prov_n_LL-namedBundle"></a>[<span class="prodNo">29</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-membershipExpression" name="prod-prov_n_LL-membershipExpression"></a>[<span class="prodNo">29</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><code class="production prod">membershipExpression</code></td>
+<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
+<td><code class="content">"memberOf" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-keyEntitySet">keyEntitySet</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-complete">complete</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
+</tr>
+</tbody>
+
+<tbody class="prod">
+<tr valign="baseline">
+<td><a id="prod-prov_n_LL-complete" name="prod-prov_n_LL-complete"></a>[<span class="prodNo">30</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><code class="production prod">complete</code></td>
+<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
+<td><code class="content">(( "," ( "true" | "false" | "-" ) ))?</code></td>
+</tr>
+</tbody>
+
+<tbody class="prod">
+<tr valign="baseline">
+<td><a id="prod-prov_n_LL-namedBundle" name="prod-prov_n_LL-namedBundle"></a>[<span class="prodNo">31</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">namedBundle</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"bundle" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span> (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-namespaceDeclarations">namespaceDeclarations</a></span>)? (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-expression">expression</a></span>)* "endBundle"</code></td>
@@ -264,7 +282,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-provenanceLocatorExpression" name="prod-prov_n_LL-provenanceLocatorExpression"></a>[<span class="prodNo">30</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-provenanceLocatorExpression" name="prod-prov_n_LL-provenanceLocatorExpression"></a>[<span class="prodNo">32</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">provenanceLocatorExpression</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"hasProvenanceIn" "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifierOrMarker">identifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifierOrMarker">identifierOrMarker</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
@@ -273,7 +291,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-eIdentifier" name="prod-prov_n_LL-eIdentifier"></a>[<span class="prodNo">31</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-eIdentifier" name="prod-prov_n_LL-eIdentifier"></a>[<span class="prodNo">33</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">eIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -282,7 +300,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-aIdentifier" name="prod-prov_n_LL-aIdentifier"></a>[<span class="prodNo">32</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-aIdentifier" name="prod-prov_n_LL-aIdentifier"></a>[<span class="prodNo">34</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">aIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -291,7 +309,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-agIdentifier" name="prod-prov_n_LL-agIdentifier"></a>[<span class="prodNo">33</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-agIdentifier" name="prod-prov_n_LL-agIdentifier"></a>[<span class="prodNo">35</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">agIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -300,7 +318,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-gIdentifier" name="prod-prov_n_LL-gIdentifier"></a>[<span class="prodNo">34</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-gIdentifier" name="prod-prov_n_LL-gIdentifier"></a>[<span class="prodNo">36</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">gIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -309,7 +327,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-uIdentifier" name="prod-prov_n_LL-uIdentifier"></a>[<span class="prodNo">35</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-uIdentifier" name="prod-prov_n_LL-uIdentifier"></a>[<span class="prodNo">37</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">uIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -318,7 +336,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-cIdentifier" name="prod-prov_n_LL-cIdentifier"></a>[<span class="prodNo">36</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-cIdentifier" name="prod-prov_n_LL-cIdentifier"></a>[<span class="prodNo">38</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">cIdentifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-identifier">identifier</a></span></code></td>
@@ -327,7 +345,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-eIdentifierOrMarker" name="prod-prov_n_LL-eIdentifierOrMarker"></a>[<span class="prodNo">37</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-eIdentifierOrMarker" name="prod-prov_n_LL-eIdentifierOrMarker"></a>[<span class="prodNo">39</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">eIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-eIdentifier">eIdentifier</a></span> | "-" )</code></td>
@@ -336,7 +354,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-aIdentifierOrMarker" name="prod-prov_n_LL-aIdentifierOrMarker"></a>[<span class="prodNo">38</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-aIdentifierOrMarker" name="prod-prov_n_LL-aIdentifierOrMarker"></a>[<span class="prodNo">40</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">aIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-aIdentifier">aIdentifier</a></span> | "-" )</code></td>
@@ -345,7 +363,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-agIdentifierOrMarker" name="prod-prov_n_LL-agIdentifierOrMarker"></a>[<span class="prodNo">39</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-agIdentifierOrMarker" name="prod-prov_n_LL-agIdentifierOrMarker"></a>[<span class="prodNo">41</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">agIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-agIdentifier">agIdentifier</a></span> | "-" )</code></td>
@@ -354,7 +372,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-gIdentifierOrMarker" name="prod-prov_n_LL-gIdentifierOrMarker"></a>[<span class="prodNo">40</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-gIdentifierOrMarker" name="prod-prov_n_LL-gIdentifierOrMarker"></a>[<span class="prodNo">42</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">gIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-gIdentifier">gIdentifier</a></span> | "-" )</code></td>
@@ -363,7 +381,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-uIdentifierOrMarker" name="prod-prov_n_LL-uIdentifierOrMarker"></a>[<span class="prodNo">41</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-uIdentifierOrMarker" name="prod-prov_n_LL-uIdentifierOrMarker"></a>[<span class="prodNo">43</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">uIdentifierOrMarker</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-uIdentifier">uIdentifier</a></span> | "-" )</code></td>
@@ -372,7 +390,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-identifier" name="prod-prov_n_LL-identifier"></a>[<span class="prodNo">42</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-identifier" name="prod-prov_n_LL-identifier"></a>[<span class="prodNo">44</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">identifier</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td>
@@ -381,7 +399,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-attribute" name="prod-prov_n_LL-attribute"></a>[<span class="prodNo">43</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-attribute" name="prod-prov_n_LL-attribute"></a>[<span class="prodNo">45</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">attribute</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td>
@@ -390,7 +408,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-timeZZ" name="prod-prov_n_LL-timeZZ"></a>[<span class="prodNo">44</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-timeZZ" name="prod-prov_n_LL-timeZZ"></a>[<span class="prodNo">46</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">timeZZ</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-ISODATETIME">ISODATETIME</a></span></code></td>
@@ -399,7 +417,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-literal" name="prod-prov_n_LL-literal"></a>[<span class="prodNo">45</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-literal" name="prod-prov_n_LL-literal"></a>[<span class="prodNo">47</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">literal</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-typedLiteral">typedLiteral</a></span><br/>
@@ -409,7 +427,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-typedLiteral" name="prod-prov_n_LL-typedLiteral"></a>[<span class="prodNo">46</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-typedLiteral" name="prod-prov_n_LL-typedLiteral"></a>[<span class="prodNo">48</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">typedLiteral</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL">STRING_LITERAL</a></span> "%%" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-datatype">datatype</a></span></code></td>
@@ -418,7 +436,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-datatype" name="prod-prov_n_LL-datatype"></a>[<span class="prodNo">47</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-datatype" name="prod-prov_n_LL-datatype"></a>[<span class="prodNo">49</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">datatype</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td>
@@ -427,7 +445,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-convenienceNotation" name="prod-prov_n_LL-convenienceNotation"></a>[<span class="prodNo">48</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-convenienceNotation" name="prod-prov_n_LL-convenienceNotation"></a>[<span class="prodNo">50</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">convenienceNotation</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL">STRING_LITERAL</a></span><br/>
@@ -438,7 +456,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-namespaceDeclarations" name="prod-prov_n_LL-namespaceDeclarations"></a>[<span class="prodNo">49</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-namespaceDeclarations" name="prod-prov_n_LL-namespaceDeclarations"></a>[<span class="prodNo">51</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">namespaceDeclarations</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-defaultNamespaceDeclaration">defaultNamespaceDeclaration</a></span> | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-namespaceDeclaration">namespaceDeclaration</a></span> ) (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-namespaceDeclaration">namespaceDeclaration</a></span>)*</code></td>
@@ -447,7 +465,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-namespaceDeclaration" name="prod-prov_n_LL-namespaceDeclaration"></a>[<span class="prodNo">50</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-namespaceDeclaration" name="prod-prov_n_LL-namespaceDeclaration"></a>[<span class="prodNo">52</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">namespaceDeclaration</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"prefix" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-namespace">namespace</a></span></code></td>
@@ -456,7 +474,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-defaultNamespaceDeclaration" name="prod-prov_n_LL-defaultNamespaceDeclaration"></a>[<span class="prodNo">51</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-defaultNamespaceDeclaration" name="prod-prov_n_LL-defaultNamespaceDeclaration"></a>[<span class="prodNo">53</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">defaultNamespaceDeclaration</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"default" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-IRI_REF">IRI_REF</a></span></code></td>
@@ -465,7 +483,7 @@
 
 <tbody class="prod">
 <tr valign="baseline">
-<td><a id="prod-prov_n_LL-namespace" name="prod-prov_n_LL-namespace"></a>[<span class="prodNo">52</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="prod-prov_n_LL-namespace" name="prod-prov_n_LL-namespace"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">namespace</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-IRI_REF">IRI_REF</a></span></code></td>
@@ -474,7 +492,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-QUALIFIED_NAME" name="term-prov_n_LL-QUALIFIED_NAME"></a>[<span class="prodNo">53</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-QUALIFIED_NAME" name="term-prov_n_LL-QUALIFIED_NAME"></a>[<span class="prodNo">55</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">QUALIFIED_NAME</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">(( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_PREFIX">PN_PREFIX</a></span> ":" ))? <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_LOCAL">PN_LOCAL</a></span><br/>
@@ -484,7 +502,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PREFX" name="term-prov_n_LL-PREFX"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PREFX" name="term-prov_n_LL-PREFX"></a>[<span class="prodNo">56</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PREFX</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_PREFIX">PN_PREFIX</a></span></code></td>
@@ -493,7 +511,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-DIGIT" name="term-prov_n_LL-DIGIT"></a>[<span class="prodNo">55</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-DIGIT" name="term-prov_n_LL-DIGIT"></a>[<span class="prodNo">57</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">DIGIT</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">[0-9]</code></td>
@@ -502,7 +520,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-ISODATETIME" name="term-prov_n_LL-ISODATETIME"></a>[<span class="prodNo">56</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ISODATETIME" name="term-prov_n_LL-ISODATETIME"></a>[<span class="prodNo">58</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">ISODATETIME</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> "-" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> "-" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> "T" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> (( "." <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span>)? ))? ))? (( "Z" | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-TIMEZONEOFFSET">TIMEZONEOFFSET</a></span> ))?</code></td>
@@ -511,7 +529,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-TIMEZONEOFFSET" name="term-prov_n_LL-TIMEZONEOFFSET"></a>[<span class="prodNo">57</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-TIMEZONEOFFSET" name="term-prov_n_LL-TIMEZONEOFFSET"></a>[<span class="prodNo">59</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">TIMEZONEOFFSET</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( "+" | "-" ) <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span></code></td>
@@ -520,7 +538,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-IRI_REF" name="term-prov_n_LL-IRI_REF"></a>[<span class="prodNo">58</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-IRI_REF" name="term-prov_n_LL-IRI_REF"></a>[<span class="prodNo">60</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">IRI_REF</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"&lt;" (( [^&lt;&gt;\"{}|^`\\] - [#0000- ] | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-UCHAR">UCHAR</a></span> ))* "&gt;"</code></td>
@@ -529,7 +547,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-STRING_LITERAL" name="term-prov_n_LL-STRING_LITERAL"></a>[<span class="prodNo">59</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-STRING_LITERAL" name="term-prov_n_LL-STRING_LITERAL"></a>[<span class="prodNo">61</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">STRING_LITERAL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">'"' (( ( [^\"\\\n\r] ) | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-ECHAR">ECHAR</a></span> | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-UCHAR">UCHAR</a></span> ))* '"'</code></td>
@@ -538,7 +556,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-INT_LITERAL" name="term-prov_n_LL-INT_LITERAL"></a>[<span class="prodNo">60</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-INT_LITERAL" name="term-prov_n_LL-INT_LITERAL"></a>[<span class="prodNo">62</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">INT_LITERAL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">("-")? (<span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-DIGIT">DIGIT</a></span>)+</code></td>
@@ -547,7 +565,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-QUALIFIED_NAME_LITERAL" name="term-prov_n_LL-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">61</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-QUALIFIED_NAME_LITERAL" name="term-prov_n_LL-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">63</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">QUALIFIED_NAME_LITERAL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"'" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "'"</code></td>
@@ -556,7 +574,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-UCHAR" name="term-prov_n_LL-UCHAR"></a>[<span class="prodNo">62</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-UCHAR" name="term-prov_n_LL-UCHAR"></a>[<span class="prodNo">64</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">UCHAR</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( "\\u" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> )<br/>
@@ -566,7 +584,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-ECHAR" name="term-prov_n_LL-ECHAR"></a>[<span class="prodNo">63</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ECHAR" name="term-prov_n_LL-ECHAR"></a>[<span class="prodNo">65</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">ECHAR</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"\\" [tbnrf\\\"']</code></td>
@@ -575,7 +593,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-NIL" name="term-prov_n_LL-NIL"></a>[<span class="prodNo">64</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-NIL" name="term-prov_n_LL-NIL"></a>[<span class="prodNo">66</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">NIL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"(" (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-WS">WS</a></span> ))* ")"</code></td>
@@ -584,7 +602,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-WS" name="term-prov_n_LL-WS"></a>[<span class="prodNo">65</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-WS" name="term-prov_n_LL-WS"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">WS</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">" "<br/>
@@ -596,7 +614,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-ANON" name="term-prov_n_LL-ANON"></a>[<span class="prodNo">66</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ANON" name="term-prov_n_LL-ANON"></a>[<span class="prodNo">68</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">ANON</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"[" (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-WS">WS</a></span> ))* "]"</code></td>
@@ -605,7 +623,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_CHARS_BASE" name="term-prov_n_LL-PN_CHARS_BASE"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_CHARS_BASE" name="term-prov_n_LL-PN_CHARS_BASE"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_CHARS_BASE</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">[A-Z]<br/>
@@ -627,7 +645,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_CHARS_U" name="term-prov_n_LL-PN_CHARS_U"></a>[<span class="prodNo">68</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_CHARS_U" name="term-prov_n_LL-PN_CHARS_U"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_CHARS_U</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_BASE">PN_CHARS_BASE</a></span><br/>
@@ -637,7 +655,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_CHARS" name="term-prov_n_LL-PN_CHARS"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_CHARS" name="term-prov_n_LL-PN_CHARS"></a>[<span class="prodNo">71</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_CHARS</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_U">PN_CHARS_U</a></span><br/>
@@ -651,7 +669,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_PREFIX" name="term-prov_n_LL-PN_PREFIX"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_PREFIX" name="term-prov_n_LL-PN_PREFIX"></a>[<span class="prodNo">72</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_PREFIX</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_BASE">PN_CHARS_BASE</a></span> (( (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS">PN_CHARS</a></span> | "." ))* <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS">PN_CHARS</a></span> ))?</code></td>
@@ -660,7 +678,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_LOCAL" name="term-prov_n_LL-PN_LOCAL"></a>[<span class="prodNo">71</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_LOCAL" name="term-prov_n_LL-PN_LOCAL"></a>[<span class="prodNo">73</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_LOCAL</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_U">PN_CHARS_U</a></span> | [0-9] | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ) (( (( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS">PN_CHARS</a></span> | "." | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ))* ( <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS">PN_CHARS</a></span> | <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ) ))?</code></td>
@@ -669,7 +687,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PN_CHARS_OTHERS" name="term-prov_n_LL-PN_CHARS_OTHERS"></a>[<span class="prodNo">72</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PN_CHARS_OTHERS" name="term-prov_n_LL-PN_CHARS_OTHERS"></a>[<span class="prodNo">74</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PN_CHARS_OTHERS</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-PERCENT">PERCENT</a></span><br/>
@@ -686,7 +704,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PERCENT" name="term-prov_n_LL-PERCENT"></a>[<span class="prodNo">73</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PERCENT" name="term-prov_n_LL-PERCENT"></a>[<span class="prodNo">75</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">PERCENT</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"%" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-HEX">HEX</a></span></code></td>
@@ -695,7 +713,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-HEX" name="term-prov_n_LL-HEX"></a>[<span class="prodNo">74</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-HEX" name="term-prov_n_LL-HEX"></a>[<span class="prodNo">76</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">HEX</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">[0-9]<br/>
@@ -706,7 +724,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-PASSED_TOKENS" name="term-prov_n_LL-PASSED_TOKENS"></a>[<span class="prodNo">75</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PASSED_TOKENS" name="term-prov_n_LL-PASSED_TOKENS"></a>[<span class="prodNo">77</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production directive">PASSED TOKENS</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">([ \t\r\n])+<br/>
--- a/model/prov-dm.html	Thu May 31 10:12:31 2012 +0100
+++ b/model/prov-dm.html	Thu May 31 10:30:03 2012 +0100
@@ -2848,13 +2848,13 @@
 <p><div class="attributes" id="attributes-derivedByInsertionFrom">
 <p>An <dfn title="derivedByInsertionFrom">Insertion</dfn> relation<span class="withPn">, written <span class="pnExpression">derivedByInsertionFrom(id; d2, d1, {(key_1, e_1), ..., (key_n, e_n)}, attrs)</span>,</span> has:</p>
 <ul>
-<li><span class='attribute' id="derivedByInsertionFrom.id">id</span>:  an OPTIONAL identifier identifying the relation;</li>
-<li><span class='attribute' id="derivedByInsertionFrom.after">after</span>: an identifier (<span class="name">d2</span>) for the dictionary <em>after</em> insertion; </li>
-<li><span class='attribute' id="derivedByInsertionFrom.before">before</span>: an identifier (<span class="name">d1</span>) for the dictionary <em>before</em> insertion;</li>
-<li><span class='attribute' id="derivedByInsertionFrom.key-entity-set">key-entity-set</span>: the inserted key-entity pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> in which each <span class="name">key_i</span> is a <a>value</a>, and <span class="name">e_i</span> is an identifier  for the entity that has been inserted with the key;
+<li><span class='attribute' id="insertion.id">id</span>:  an OPTIONAL identifier identifying the relation;</li>
+<li><span class='attribute' id="insertion.after">after</span>: an identifier (<span class="name">d2</span>) for the dictionary <em>after</em> insertion; </li>
+<li><span class='attribute' id="insertion.before">before</span>: an identifier (<span class="name">d1</span>) for the dictionary <em>before</em> insertion;</li>
+<li><span class='attribute' id="insertion.key-entity-set">key-entity-set</span>: the inserted key-entity pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> in which each <span class="name">key_i</span> is a <a>value</a>, and <span class="name">e_i</span> is an identifier  for the entity that has been inserted with the key;
  each <span class="name">key_i</span> is expected to be unique for the key-entity-set;
 </li>
-<li><span class='attribute' id="derivedByInsertionFrom.attributes">attributes</span>: an OPTIONAL set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
+<li><span class='attribute' id="insertion.attributes">attributes</span>: an OPTIONAL set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
 </ul>
 </div>
 
@@ -2926,11 +2926,11 @@
 <div class="attributes" id="attributes-derivedByRemovalFrom">
 <p> A <dfn title="derivedByRemovalFrom">Removal</dfn> relation, written <span class="pnExpression">derivedByRemovalFrom(id; d2, d1, {key_1, ... key_n}, attrs)</span>, has:</p>
 <ul>
-<li><span class='attribute' id="derivedByRemovalFrom.id">id</span>:  an OPTIONAL identifier identifying the relation;</li>
-<li><span class='attribute' id="derivedByRemovalFrom.after">after</span>: an identifier (<span class="name">d2</span>) for the dictionary  <em>after</em> the deletion; </li>
-<li><span class='attribute' id="derivedByRemovalFrom.before">before</span>: an identifier (<span class="name">d1</span>)  for the dictionary <em>before</em> the deletion;</li>
-<li><span class='attribute' id="derivedByRemovalFrom.key-set">key-set</span>: a set of deleted keys  <span class="name">key_1</span>, ..., <span class="name">key_n</span>, for which each <span class="name">key_i</span> is a <a>value</a>;</li>
-<li><span class='attribute' id="derivedByRemovalFrom.attributes">attributes</span>: an OPTIONAL set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
+<li><span class='attribute' id="removal.id">id</span>:  an OPTIONAL identifier identifying the relation;</li>
+<li><span class='attribute' id="removal.after">after</span>: an identifier (<span class="name">d2</span>) for the dictionary  <em>after</em> the deletion; </li>
+<li><span class='attribute' id="removal.before">before</span>: an identifier (<span class="name">d1</span>)  for the dictionary <em>before</em> the deletion;</li>
+<li><span class='attribute' id="removal.key-set">key-set</span>: a set of deleted keys  <span class="name">key_1</span>, ..., <span class="name">key_n</span>, for which each <span class="name">key_i</span> is a <a>value</a>;</li>
+<li><span class='attribute' id="removal.attributes">attributes</span>: an OPTIONAL set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
 </ul>
 </div>
 
@@ -2976,12 +2976,12 @@
 <div class="attributes" id="attributes-memberOf">
  A <dfn title="memberOf">membership</dfn> relation, written <span class="pnExpression">memberOf(id; c, {(key_1, e_1), ..., (key_n, e_n)}, cplt, attrs)</span>, has:
 <ul>
-<li><span class='attribute' id="memberOf.id">id</span>:  an OPTIONAL identifier identifying the relation;</li>
-<li><span class='attribute' id="memberOf.after">after</span>: an identifier (<span class="name">c</span>) for the dictionary whose members are asserted; </li>
-<li><span class='attribute' id="memberOf.key-entity-set">key-entity-set</span>: a set of key-entity pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> that are members of the dictionary;</li>
-<li><span class='attribute' id="memberOf.complete">complete</span>: an OPTIONAL boolean 
+<li><span class='attribute' id="membership.id">id</span>:  an OPTIONAL identifier identifying the relation;</li>
+<li><span class='attribute' id="membership.collection">collection</span>: an identifier (<span class="name">c</span>) for the dictionary whose members are asserted; </li>
+<li><span class='attribute' id="membership.key-entity-set">key-entity-set</span>: a set of key-entity pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> that are members of the dictionary;</li>
+<li><span class='attribute' id="membership.complete">complete</span>: an OPTIONAL boolean 
 <a title="value">Value</a> (<span class="name">cplt</span>); if true, it indicates that no other member belongs to the dictionary;  if false, it indicates that other members belong to the dictionary; if unspecified, other members MAY belong to the dictionary.
-<li><span class='attribute' id="memberOf.attributes">attributes</span>: an OPTIONAL set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
+<li><span class='attribute' id="membership.attributes">attributes</span>: an OPTIONAL set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
 </ul>
 </div>
 
--- a/model/prov-n.html	Thu May 31 10:12:31 2012 +0100
+++ b/model/prov-n.html	Thu May 31 10:30:03 2012 +0100
@@ -2014,6 +2014,27 @@
 <tbody class="grammar-ref" data-ref="prod-keyEntitySet"></tbody>
 </table>
 
+
+<p>The following table summarizes how each constituent of a PROV-DM Insertion maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tr><td><b>Insertion</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.id"><span class='attribute' id="insertion.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.after"><span class='attribute' id="insertion.after">after</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.before"><span class='attribute' id="insertion.before">before</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.key-entity-set"><span class='attribute' id="insertion.key-entity-set">key-entity-set</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-keyEntitySet">keyEntitySet</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.attributes"><span class='attribute' id="insertion.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</table>
+</div>
+
+
 <div class="anexample">
     <pre class="codeexample">
  derivedByInsertionFrom(id; c1, c, {("k1", v1), ("k2", v2)}, [])  
@@ -2062,8 +2083,30 @@
 
 <table class="grammar">
 <tbody class="grammar-ref" data-ref="prod-removalExpression"></tbody>
+<tbody class="grammar-ref" data-ref="prod-keySet"></tbody>
 </table>
 
+<p>The following table summarizes how each constituent of a PROV-DM Removal maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tr><td><b>Removal</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.id"><span class='attribute' id="removal.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.after"><span class='attribute' id="removal.after">after</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.before"><span class='attribute' id="removal.before">before</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.key-set"><span class='attribute' id="removal.key-set">key-set</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-keySet">keySet</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.attributes"><span class='attribute' id="removal.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</table>
+</div>
+
+
+
 
 <div class="anexample">
     <pre class="codeexample">
@@ -2110,9 +2153,30 @@
 
 <table class="grammar">
 <tbody class="grammar-ref" data-ref="prod-membershipExpression"></tbody>
+<tbody class="grammar-ref" data-ref="prod-complete"></tbody>
 </table>
 
 
+<p>The following table summarizes how each constituent of a PROV-DM Membership maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tr><td><b>Membership</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.id"><span class='attribute' id="membership.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.collection"><span class='attribute' id="membership.collection">collection</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.key-entity-set"><span class='attribute' id="membership.key-entity-set">key-entity-set</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-keyEntitySet">keyEntitySet</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.complete"><span class='attribute' id="membership.complete">complete</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-complete">complete</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.attributes"><span class='attribute' id="membership.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</table>
+</div>
+
+
+
 <div class="anexample">
     <pre class="codeexample">
    memberOf(mId, c, {("k4", v4), ("k5", v5)}, [])