prov-n string literal
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Fri, 29 Jun 2012 11:18:00 +0100
changeset 3506 a07d4b13cce6
parent 3505 9dfe1dad5743
child 3507 84306a2b7210
prov-n string literal
model/grammar/Makefile
model/grammar/ll.html
model/grammar/ll.js
model/grammar/yack/prov-n-LL.bnf
model/grammar/yack/prov-n-LL.bnf.html
--- a/model/grammar/Makefile	Fri Jun 29 10:54:37 2012 +0100
+++ b/model/grammar/Makefile	Fri Jun 29 11:18:00 2012 +0100
@@ -34,7 +34,7 @@
 
 do.ll.js: ll.provn do.ll.html
 	@echo "grammar_string= " > $(OUT.JS)
-	@cat $(IN.HTML) | sed -e "s/\d039/\\\'/g" | sed -e "s/prod-prov_n_LL/prod/g"  | sed -e "s/term-prov_n_LL/prod/g" | sed -e "s/((/(/g" | sed -e "s/))/)/g"   | sed -e "s/timeZZ/time/g" | sed -e "s/\d035prod-PN_PREFIX/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rPN_LOCAL/g" | sed -e "s/\d035prod-PN_CHARS_U/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rPN_CHARS_U/g"  | sed -e "s/\d035prod-ECHAR/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rECHAR/g"  | sed -e "s/\d035prod-STRING_LITERAL2/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rSTRING_LITERAL2/g" | sed -e "s/\d035prod-LANGTAG/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rLANGTAG/g" | sed -e "s/\d035prod-IRI_REF/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rIRI_REF/g"  | sed -e "s/\d035prod-PN_CHARS\"/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rPN_CHARS\"/g" > $(IN2.HTML)
+	@cat $(IN.HTML) | sed -e "s/\d039/\\\'/g" | sed -e "s/prod-prov_n_LL/prod/g"  | sed -e "s/term-prov_n_LL/prod/g" | sed -e "s/((/(/g" | sed -e "s/))/)/g"   | sed -e "s/timeZZ/time/g" | sed -e "s/\d035prod-PN_PREFIX/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rPN_LOCAL/g" | sed -e "s/\d035prod-PN_CHARS_U/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rPN_CHARS_U/g"  | sed -e "s/\d035prod-ECHAR/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rECHAR/g"  | sed -e "s/\d035prod-STRING_LITERAL2/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rSTRING_LITERAL2/g" | sed -e "s/\d035prod-STRING_LITERAL_LONG2/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rSTRING_LITERAL_LONG2/g" | sed -e "s/\d035prod-LANGTAG/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rLANGTAG/g" | sed -e "s/\d035prod-IRI_REF/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rIRI_REF/g"  | sed -e "s/\d035prod-PN_CHARS\"/http:\d047\d047www.w3.org\d047TR\d047rdf-sparql-query\d047\d035rPN_CHARS\"/g" > $(IN2.HTML)
 	@cat $(IN2.HTML) | awk '{ print "'\''"  $$0 " '\'' + " }' >> $(OUT.JS)
 	@echo "' ' ;" >> $(OUT.JS)
 
--- a/model/grammar/ll.html	Fri Jun 29 10:54:37 2012 +0100
+++ b/model/grammar/ll.html	Fri Jun 29 11:18:00 2012 +0100
@@ -587,7 +587,8 @@
 <td><a id="term-prov_n_LL-STRING_LITERAL" name="term-prov_n_LL-STRING_LITERAL"></a>[<span class="prodNo">65</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"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL2">STRING_LITERAL2</a></span></code></td>
+<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL2">STRING_LITERAL2</a></span><br/>
+| <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL_LONG2">STRING_LITERAL_LONG2</a></span></code></td>
 </tr>
 </tbody>
 
@@ -602,7 +603,16 @@
 
 <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">67</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-STRING_LITERAL_LONG2" name="term-prov_n_LL-STRING_LITERAL_LONG2"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td>
+<td>&lt;<code class="production term">STRING_LITERAL_LONG2</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>
+</tr>
+</tbody>
+
+<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">68</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>
@@ -611,7 +621,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">68</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">69</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>
@@ -620,7 +630,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-LANGTAG" name="term-prov_n_LL-LANGTAG"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-LANGTAG" name="term-prov_n_LL-LANGTAG"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">LANGTAG</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"@" ([a-zA-Z])+ (( "-" ([a-zA-Z0-9])+ ))*</code></td>
@@ -629,7 +639,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">70</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-UCHAR" name="term-prov_n_LL-UCHAR"></a>[<span class="prodNo">71</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/>
@@ -639,7 +649,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">71</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ECHAR" name="term-prov_n_LL-ECHAR"></a>[<span class="prodNo">72</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>
@@ -648,7 +658,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">72</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-NIL" name="term-prov_n_LL-NIL"></a>[<span class="prodNo">73</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>
@@ -657,7 +667,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">73</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-WS" name="term-prov_n_LL-WS"></a>[<span class="prodNo">74</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/>
@@ -669,7 +679,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">74</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ANON" name="term-prov_n_LL-ANON"></a>[<span class="prodNo">75</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>
@@ -678,7 +688,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">75</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">76</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/>
@@ -700,7 +710,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">76</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">77</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/>
@@ -710,7 +720,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">77</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">78</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/>
@@ -724,7 +734,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">78</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">79</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>
@@ -733,7 +743,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">79</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">80</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>
@@ -742,7 +752,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">80</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">81</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/>
@@ -759,7 +769,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">81</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PERCENT" name="term-prov_n_LL-PERCENT"></a>[<span class="prodNo">82</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>
@@ -768,7 +778,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">82</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-HEX" name="term-prov_n_LL-HEX"></a>[<span class="prodNo">83</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/>
@@ -779,7 +789,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">83</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">84</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	Fri Jun 29 10:54:37 2012 +0100
+++ b/model/grammar/ll.js	Fri Jun 29 11:18:00 2012 +0100
@@ -588,7 +588,8 @@
 '<td><a id="prod-STRING_LITERAL" name="prod-STRING_LITERAL"></a>[<span class="prodNo">65</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"><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rSTRING_LITERAL2">STRING_LITERAL2</a></span></code></td> ' + 
+'<td><code class="content"><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rSTRING_LITERAL2">STRING_LITERAL2</a></span><br/> ' + 
+'| <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rSTRING_LITERAL_LONG2">STRING_LITERAL_LONG2</a></span></code></td> ' + 
 '</tr> ' + 
 '</tbody> ' + 
 ' ' + 
@@ -603,7 +604,16 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-INT_LITERAL" name="prod-INT_LITERAL"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-STRING_LITERAL_LONG2" name="prod-STRING_LITERAL_LONG2"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td>&lt;<code class="production term">STRING_LITERAL_LONG2</code>&gt;</td> ' + 
+'<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><code class="content">\'"\' ( ( [^\"\\\n\r] ) | <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rECHAR">ECHAR</a></span> | <span class="prod"><a class="grammarRef" href="#prod-UCHAR">UCHAR</a></span> )* \'"\'</code></td> ' + 
+'</tr> ' + 
+'</tbody> ' + 
+' ' + 
+'<tbody class="term"> ' + 
+'<tr valign="baseline"> ' + 
+'<td><a id="prod-INT_LITERAL" name="prod-INT_LITERAL"></a>[<span class="prodNo">68</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> ' + 
@@ -612,7 +622,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-QUALIFIED_NAME_LITERAL" name="prod-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">68</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-QUALIFIED_NAME_LITERAL" name="prod-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">69</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> ' + 
@@ -621,7 +631,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-LANGTAG" name="prod-LANGTAG"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-LANGTAG" name="prod-LANGTAG"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td>&lt;<code class="production term">LANGTAG</code>&gt;</td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="content">"@" ([a-zA-Z])+ ( "-" ([a-zA-Z0-9])+ )*</code></td> ' + 
@@ -630,7 +640,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-UCHAR" name="prod-UCHAR"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-UCHAR" name="prod-UCHAR"></a>[<span class="prodNo">71</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/> ' + 
@@ -640,7 +650,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-ECHAR" name="prod-ECHAR"></a>[<span class="prodNo">71</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-ECHAR" name="prod-ECHAR"></a>[<span class="prodNo">72</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> ' + 
@@ -649,7 +659,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-NIL" name="prod-NIL"></a>[<span class="prodNo">72</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-NIL" name="prod-NIL"></a>[<span class="prodNo">73</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> ' + 
@@ -658,7 +668,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-WS" name="prod-WS"></a>[<span class="prodNo">73</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-WS" name="prod-WS"></a>[<span class="prodNo">74</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/> ' + 
@@ -670,7 +680,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-ANON" name="prod-ANON"></a>[<span class="prodNo">74</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-ANON" name="prod-ANON"></a>[<span class="prodNo">75</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> ' + 
@@ -679,7 +689,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_CHARS_BASE" name="prod-PN_CHARS_BASE"></a>[<span class="prodNo">75</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_CHARS_BASE" name="prod-PN_CHARS_BASE"></a>[<span class="prodNo">76</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/> ' + 
@@ -701,7 +711,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_CHARS_U" name="prod-PN_CHARS_U"></a>[<span class="prodNo">76</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_CHARS_U" name="prod-PN_CHARS_U"></a>[<span class="prodNo">77</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/> ' + 
@@ -711,7 +721,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_CHARS" name="prod-PN_CHARS"></a>[<span class="prodNo">77</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_CHARS" name="prod-PN_CHARS"></a>[<span class="prodNo">78</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/> ' + 
@@ -725,7 +735,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_PREFIX" name="prod-PN_PREFIX"></a>[<span class="prodNo">78</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_PREFIX" name="prod-PN_PREFIX"></a>[<span class="prodNo">79</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> ' + 
@@ -734,7 +744,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_LOCAL" name="prod-PN_LOCAL"></a>[<span class="prodNo">79</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_LOCAL" name="prod-PN_LOCAL"></a>[<span class="prodNo">80</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> ' + 
@@ -743,7 +753,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PN_CHARS_OTHERS" name="prod-PN_CHARS_OTHERS"></a>[<span class="prodNo">80</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PN_CHARS_OTHERS" name="prod-PN_CHARS_OTHERS"></a>[<span class="prodNo">81</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/> ' + 
@@ -760,7 +770,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PERCENT" name="prod-PERCENT"></a>[<span class="prodNo">81</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PERCENT" name="prod-PERCENT"></a>[<span class="prodNo">82</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> ' + 
@@ -769,7 +779,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-HEX" name="prod-HEX"></a>[<span class="prodNo">82</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-HEX" name="prod-HEX"></a>[<span class="prodNo">83</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/> ' + 
@@ -780,7 +790,7 @@
 ' ' + 
 '<tbody class="term"> ' + 
 '<tr valign="baseline"> ' + 
-'<td><a id="prod-PASSED_TOKENS" name="prod-PASSED_TOKENS"></a>[<span class="prodNo">83</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
+'<td><a id="prod-PASSED_TOKENS" name="prod-PASSED_TOKENS"></a>[<span class="prodNo">84</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	Fri Jun 29 10:54:37 2012 +0100
+++ b/model/grammar/yack/prov-n-LL.bnf	Fri Jun 29 11:18:00 2012 +0100
@@ -192,9 +192,13 @@
 
 [70s] IRI_REF ::= "<" ( [^<>\"{}|^`\\] - [#x00-#x20] | UCHAR )* ">" 
  
-[149s] STRING_LITERAL ::= STRING_LITERAL2
+[149s] STRING_LITERAL ::= STRING_LITERAL2 | STRING_LITERAL_LONG2
 [149s] STRING_LITERAL2 ::= '"' ( ( [^#x22#x5C#xA#xD]) | ECHAR | UCHAR )* '"' 
 
+[149s] STRING_LITERAL_LONG2 ::= '"' ( ( [^#x22#x5C#xA#xD]) | ECHAR | UCHAR )* '"' 
+
+
+
 INT_LITERAL::= '-'? DIGIT+
 
 
--- a/model/grammar/yack/prov-n-LL.bnf.html	Fri Jun 29 10:54:37 2012 +0100
+++ b/model/grammar/yack/prov-n-LL.bnf.html	Fri Jun 29 11:18:00 2012 +0100
@@ -586,7 +586,8 @@
 <td><a id="term-prov_n_LL-STRING_LITERAL" name="term-prov_n_LL-STRING_LITERAL"></a>[<span class="prodNo">65</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"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL2">STRING_LITERAL2</a></span></code></td>
+<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL2">STRING_LITERAL2</a></span><br/>
+| <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-STRING_LITERAL_LONG2">STRING_LITERAL_LONG2</a></span></code></td>
 </tr>
 </tbody>
 
@@ -601,7 +602,16 @@
 
 <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">67</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-STRING_LITERAL_LONG2" name="term-prov_n_LL-STRING_LITERAL_LONG2"></a>[<span class="prodNo">67</span>]&nbsp;&nbsp;&nbsp;</td>
+<td>&lt;<code class="production term">STRING_LITERAL_LONG2</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>
+</tr>
+</tbody>
+
+<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">68</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>
@@ -610,7 +620,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">68</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">69</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>
@@ -619,7 +629,7 @@
 
 <tbody class="term">
 <tr valign="baseline">
-<td><a id="term-prov_n_LL-LANGTAG" name="term-prov_n_LL-LANGTAG"></a>[<span class="prodNo">69</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-LANGTAG" name="term-prov_n_LL-LANGTAG"></a>[<span class="prodNo">70</span>]&nbsp;&nbsp;&nbsp;</td>
 <td>&lt;<code class="production term">LANGTAG</code>&gt;</td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
 <td><code class="content">"@" ([a-zA-Z])+ (( "-" ([a-zA-Z0-9])+ ))*</code></td>
@@ -628,7 +638,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">70</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-UCHAR" name="term-prov_n_LL-UCHAR"></a>[<span class="prodNo">71</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/>
@@ -638,7 +648,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">71</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ECHAR" name="term-prov_n_LL-ECHAR"></a>[<span class="prodNo">72</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>
@@ -647,7 +657,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">72</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-NIL" name="term-prov_n_LL-NIL"></a>[<span class="prodNo">73</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>
@@ -656,7 +666,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">73</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-WS" name="term-prov_n_LL-WS"></a>[<span class="prodNo">74</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/>
@@ -668,7 +678,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">74</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-ANON" name="term-prov_n_LL-ANON"></a>[<span class="prodNo">75</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>
@@ -677,7 +687,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">75</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">76</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/>
@@ -699,7 +709,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">76</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">77</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/>
@@ -709,7 +719,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">77</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">78</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/>
@@ -723,7 +733,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">78</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">79</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>
@@ -732,7 +742,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">79</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">80</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>
@@ -741,7 +751,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">80</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">81</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/>
@@ -758,7 +768,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">81</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-PERCENT" name="term-prov_n_LL-PERCENT"></a>[<span class="prodNo">82</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>
@@ -767,7 +777,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">82</span>]&nbsp;&nbsp;&nbsp;</td>
+<td><a id="term-prov_n_LL-HEX" name="term-prov_n_LL-HEX"></a>[<span class="prodNo">83</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/>
@@ -778,7 +788,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">83</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">84</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/>