--- a/rdf-turtle/index.html Tue May 15 13:41:29 2012 -0700
+++ b/rdf-turtle/index.html Tue May 15 13:52:55 2012 -0700
@@ -444,7 +444,7 @@
<h3>RDF Blank Nodes</h3>
<p>
<a href="../rdf-concepts/index.html#dfn-blank-node">RDF blank nodes</a> in Turtle are expressed as <code>_:</code> followed by a blank node label which is a series of name characters.
- The characters in the label are built upon <a href="#term-turtle2-PN_CHARS_BASE">PN_CHARS_BASE</a>, liberalized to allow:
+ The characters in the label are built upon <a href="#grammar-production-PN_CHARS_BASE">PN_CHARS_BASE</a>, liberalized to allow:
</p>
<ul>
<li>The characters <code>_</code> and digits may appear anywhere in a blank node label.</li>
@@ -464,7 +464,7 @@
<section id="abbrev">
<h3>Nesting Unlabeled Blank Nodes in Turtle</h3>
<p>
- In Turtle, fresh RDF blank nodes are also allocated when matching the production <a href="#grammar-production-blankNodePropertyList">blankNodePropertyList</a> and the terminal <a href="#term-turtle2-ANON">ANON</a>.
+ In Turtle, fresh RDF blank nodes are also allocated when matching the production <a href="#grammar-production-blankNodePropertyList">blankNodePropertyList</a> and the terminal <a href="#grammar-production-ANON">ANON</a>.
Both of these may appear in the <a href="#grammar-production-subject">subject</a> or <a href="#grammar-production-object">object</a> position of a triple (see the Turtle Grammar).
That subject or object is a fresh RDF blank node.
This blank node also serves as the subject of the triples produced by matching the <a href="#grammar-production-predicateObjectList">predicateObjectList</a> production embedded in a blankNodePropertyList.
@@ -730,7 +730,7 @@
<td>no</td>
</tr>
<tr>
- <td class="r"><a href="#term-turtle2-PN_LOCAL"><span style="font-weight:bold;">local name</span>s</a></td>
+ <td class="r"><a href="#grammar-production-PN_LOCAL"><span style="font-weight:bold;">local name</span>s</a></td>
<td>no</td>
<td>no</td>
<td style="background-color: green; border:1px solid black;">yes</td>
@@ -743,7 +743,7 @@
</tr>
</tbody>
</table>
- <p class="note">%-encoded sequences are in the <a href="#term-turtle2-IRI_REF">character range for IRIs</a> and are <a href="#term-turtle2-PERCENT">explicitly allowed</a> in local names. These appear as a '%' followed by two hex characters and represent that same sequence of three characters. These sequences are <em>not</em> decoded during processing. A term written as <code><http://a.example/%66oo-bar></code> in Turtle designates the IRI <code>http://a.example/%66oo-bar</code> and not IRI <code>http://a.example/foo-bar</code>. A term written as <code>ex:%66oo-bar</code> with a prefix <code>@prefix ex: <http://a.example/></code> also designates the IRI <code>http://a.example/%66oo-bar</code>.</p>
+ <p class="note">%-encoded sequences are in the <a href="#grammar-production-IRI_REF">character range for IRIs</a> and are <a href="#grammar-production-PERCENT">explicitly allowed</a> in local names. These appear as a '%' followed by two hex characters and represent that same sequence of three characters. These sequences are <em>not</em> decoded during processing. A term written as <code><http://a.example/%66oo-bar></code> in Turtle designates the IRI <code>http://a.example/%66oo-bar</code> and not IRI <code>http://a.example/foo-bar</code>. A term written as <code>ex:%66oo-bar</code> with a prefix <code>@prefix ex: <http://a.example/></code> also designates the IRI <code>http://a.example/%66oo-bar</code>.</p>
</section>
<section id="sec-grammar-grammar">
@@ -796,27 +796,27 @@
<tr> <th> production </th><th> type </th><th>procedure</th></tr>
</thead>
<tbody>
- <tr id="handle-IRI_REF" ><td><a class="type IRI" href="#term-turtle2-IRI_REF" >IRI_REF </a></td><td><a href="../rdf-concepts/index.html#dfn-iri"> IRI </a></td><td>The characters between "<" and ">" are <a href="#unescape">unescaped¹</a> to form the unicode string of the IRI. Relative IRI resolution is performed per <a href="http://www.w3.org/TR/rdf-sparql-query/#QSynIRI">SPARQL Query section 4.1.1</a>.</td></tr>
- <tr id="handle-PNAME_NS" ><td><a class="type string" href="#term-turtle2-PNAME_NS" >PNAME_NS </a></td><td><a href="#prefix"> prefix </a></td><td>The potentially empty unicode string matching the first argument of the rule is a key into the <a href="#namespaces">namespaces map</a>.</td></tr>
- <tr id="handle-PNAME_LN" ><td><a class="type IRI" href="#term-turtle2-PNAME_LN" >PNAME_LN </a></td><td><a href="../rdf-concepts/index.html#dfn-iri"> IRI </a></td><td>A <a href="#prefix">prefix</a> is identified by the first argument, <code>PNAME_NS</code>. The <a href="#namespaces">namespaces map</a> has a corresponding <code>namespace</code>. The unicode string of the IRI is formed by concatenating this <code>namespace</code> and the second argument, <code>PN_LOCAL</code>. Relative IRI resolution is performed per <a href="http://www.w3.org/TR/rdf-sparql-query/#QSynIRI">SPARQL Query section 4.1.1</a>.</td></tr>
- <tr id="handle-STRING_LITERAL1" ><td><a class="type lexicalForm" href="#term-turtle2-STRING_LITERAL1" >STRING_LITERAL1 </a></td><td><a href="../rdf-concepts/index.html#dfn-lexical-form"> lexical form</a></td><td>The characters between the outermost "'"s are <a href="#unescape">unescaped¹</a> to form the unicode string of a lexical form.</td></tr>
- <tr id="handle-STRING_LITERAL2" ><td><a class="type lexicalForm" href="#term-turtle2-STRING_LITERAL2" >STRING_LITERAL2 </a></td><td><a href="../rdf-concepts/index.html#dfn-lexical-form"> lexical form</a></td><td>The characters between the outermost '"'s are <a href="#unescape">unescaped¹</a> to form the unicode string of a lexical form.</td></tr>
- <tr id="handle-STRING_LITERAL_LONG1" ><td><a class="type lexicalForm" href="#term-turtle2-STRING_LITERAL_LONG1" >STRING_LITERAL_LONG1 </a></td><td><a href="../rdf-concepts/index.html#dfn-lexical-form"> lexical form</a></td><td>The characters between the outermost "'''"s are <a href="#unescape">unescaped¹</a> to form the unicode string of a lexical form.</td></tr>
- <tr id="handle-STRING_LITERAL_LONG2" ><td><a class="type lexicalForm" href="#term-turtle2-STRING_LITERAL_LONG2" >STRING_LITERAL_LONG2 </a></td><td><a href="../rdf-concepts/index.html#dfn-lexical-form"> lexical form</a></td><td>The characters between the outermost '"""'s are <a href="#unescape">unescaped¹</a> to form the unicode string of a lexical form.</td></tr>
- <tr id="handle-LANGTAG" ><td><a class="type langTag" href="#term-turtle2-LANGTAG" >LANGTAG </a></td><td><a href="../rdf-concepts/index.html#dfn-language-identifier">language tag</a></td><td>The characters following the "@" form the unicode string of the language tag.</td></tr>
- <tr id="handle-RDFLiteral" ><td><a class="type literal" href="#term-turtle2-RDFLiteral" >RDFLiteral </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the first rule argument (<code>String</code>) and either a language tag of <code>LANGTAG</code> or a datatype IRI of <code>IRIref</code>, depending on which rule matched the input.</td></tr>
- <tr id="handle-INTEGER" ><td><a class="type integer" href="#term-turtle2-INTEGER" >INTEGER </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the input string, and a datatype of xsd:integer.</td></tr>
- <tr id="handle-DECIMAL" ><td><a class="type decimal" href="#term-turtle2-DECIMAL" >DECIMAL </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the input string, and a datatype of xsd:decimal.</td></tr>
- <tr id="handle-DOUBLE" ><td><a class="type double" href="#term-turtle2-DOUBLE" >DOUBLE </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the input string, and a datatype of xsd:double.</td></tr>
+ <tr id="handle-IRIREF" ><td><a class="type IRI" href="#grammar-production-IRIREF" >IRIREF </a></td><td><a href="../rdf-concepts/index.html#dfn-iri"> IRI </a></td><td>The characters between "<" and ">" are <a href="#unescape">unescaped¹</a> to form the unicode string of the IRI. Relative IRI resolution is performed per <a href="http://www.w3.org/TR/rdf-sparql-query/#QSynIRI">SPARQL Query section 4.1.1</a>.</td></tr>
+ <tr id="handle-PNAME_NS" ><td><a class="type string" href="#grammar-production-PNAME_NS" >PNAME_NS </a></td><td><a href="#prefix"> prefix </a></td><td>The potentially empty unicode string matching the first argument of the rule is a key into the <a href="#namespaces">namespaces map</a>.</td></tr>
+ <tr id="handle-PNAME_LN" ><td><a class="type IRI" href="#grammar-production-PNAME_LN" >PNAME_LN </a></td><td><a href="../rdf-concepts/index.html#dfn-iri"> IRI </a></td><td>A <a href="#prefix">prefix</a> is identified by the first argument, <code>PNAME_NS</code>. The <a href="#namespaces">namespaces map</a> has a corresponding <code>namespace</code>. The unicode string of the IRI is formed by concatenating this <code>namespace</code> and the second argument, <code>PN_LOCAL</code>. Relative IRI resolution is performed per <a href="http://www.w3.org/TR/rdf-sparql-query/#QSynIRI">SPARQL Query section 4.1.1</a>.</td></tr>
+ <tr id="handle-STRING_LITERAL1" ><td><a class="type lexicalForm" href="#grammar-production-STRING_LITERAL1" >STRING_LITERAL1 </a></td><td><a href="../rdf-concepts/index.html#dfn-lexical-form"> lexical form</a></td><td>The characters between the outermost "'"s are <a href="#unescape">unescaped¹</a> to form the unicode string of a lexical form.</td></tr>
+ <tr id="handle-STRING_LITERAL2" ><td><a class="type lexicalForm" href="#grammar-production-STRING_LITERAL2" >STRING_LITERAL2 </a></td><td><a href="../rdf-concepts/index.html#dfn-lexical-form"> lexical form</a></td><td>The characters between the outermost '"'s are <a href="#unescape">unescaped¹</a> to form the unicode string of a lexical form.</td></tr>
+ <tr id="handle-STRING_LITERAL_LONG1" ><td><a class="type lexicalForm" href="#grammar-production-STRING_LITERAL_LONG1" >STRING_LITERAL_LONG1 </a></td><td><a href="../rdf-concepts/index.html#dfn-lexical-form"> lexical form</a></td><td>The characters between the outermost "'''"s are <a href="#unescape">unescaped¹</a> to form the unicode string of a lexical form.</td></tr>
+ <tr id="handle-STRING_LITERAL_LONG2" ><td><a class="type lexicalForm" href="#grammar-production-STRING_LITERAL_LONG2" >STRING_LITERAL_LONG2 </a></td><td><a href="../rdf-concepts/index.html#dfn-lexical-form"> lexical form</a></td><td>The characters between the outermost '"""'s are <a href="#unescape">unescaped¹</a> to form the unicode string of a lexical form.</td></tr>
+ <tr id="handle-LANGTAG" ><td><a class="type langTag" href="#grammar-production-LANGTAG" >LANGTAG </a></td><td><a href="../rdf-concepts/index.html#dfn-language-identifier">language tag</a></td><td>The characters following the "@" form the unicode string of the language tag.</td></tr>
+ <tr id="handle-RDFLiteral" ><td><a class="type literal" href="#grammar-production-RDFLiteral" >RDFLiteral </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the first rule argument (<code>String</code>) and either a language tag of <code>LANGTAG</code> or a datatype IRI of <code>IRIref</code>, depending on which rule matched the input.</td></tr>
+ <tr id="handle-INTEGER" ><td><a class="type integer" href="#grammar-production-INTEGER" >INTEGER </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the input string, and a datatype of xsd:integer.</td></tr>
+ <tr id="handle-DECIMAL" ><td><a class="type decimal" href="#grammar-production-DECIMAL" >DECIMAL </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the input string, and a datatype of xsd:decimal.</td></tr>
+ <tr id="handle-DOUBLE" ><td><a class="type double" href="#grammar-production-DOUBLE" >DOUBLE </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the input string, and a datatype of xsd:double.</td></tr>
<tr id="handle-BooleanLiteral" ><td><a class="type boolean" href="#grammar-production-BooleanLiteral" >BooleanLiteral </a></td><td><a href="../rdf-concepts/index.html#dfn-literal"> literal </a></td><td>The literal has a lexical form of the "true" or "false", depending on which matched the input, and a datatype of xsd:boolean.</td></tr>
- <tr id="handle-BLANK_NODE_LABEL" ><td><a class="type bNode" href="#term-turtle2-BLANK_NODE_LABEL" >BLANK_NODE_LABEL </a></td><td><a href="../rdf-concepts/index.html#dfn-blank-node"> blank node </a></td><td>The string matching the second argument, <code>PN_LOCAL</code>, is a key in <a href="#bnodeLabels">bnodeLabels</a>. If there is no corresponding blank node in the map, one is allocated.</td></tr>
- <tr id="handle-ANON" ><td><a class="type bNode" href="#term-turtle2-ANON" >ANON </a></td><td><a href="../rdf-concepts/index.html#dfn-blank-node"> blank node </a></td><td>A blank node is generated.</td></tr>
+ <tr id="handle-BLANK_NODE_LABEL" ><td><a class="type bNode" href="#grammar-production-BLANK_NODE_LABEL" >BLANK_NODE_LABEL </a></td><td><a href="../rdf-concepts/index.html#dfn-blank-node"> blank node </a></td><td>The string matching the second argument, <code>PN_LOCAL</code>, is a key in <a href="#bnodeLabels">bnodeLabels</a>. If there is no corresponding blank node in the map, one is allocated.</td></tr>
+ <tr id="handle-ANON" ><td><a class="type bNode" href="#grammar-production-ANON" >ANON </a></td><td><a href="../rdf-concepts/index.html#dfn-blank-node"> blank node </a></td><td>A blank node is generated.</td></tr>
<tr id="handle-blankNodePropertyList"><td><a class="type bNode" href="#grammar-production-blankNodePropertyList">blankNodePropertyList</a></td><td><a href="../rdf-concepts/index.html#dfn-blank-node"> blank node </a></td><td>A blank node is generated. Note the rules for <code>blankNodePropertyList</code> in the next section.</td></tr>
<tr id="handle-collection" ><td><a class="type bNode" href="#grammar-production-collection" >collection </a></td><td><a href="../rdf-concepts/index.html#dfn-blank-node"> blank node </a></td><td>A blank node is generated. Note the rules for <code>collection</code> in the next section.</td></tr>
</tbody>
</table>
- <p><a id="unescape">¹</a> <a href="http://www.w3.org/TeamSubmission/turtle/#sec-strings">Section 3.3</a> defines a mapping from <code>escaped unicode strings</code> to <code>unicode strings</code>. The following lexical tokens are unescaped to produce <code>unicode strings</code>: <a class="type IRI" href="#term-turtle2-IRI_REF">IRI_REF</a>, <!-- <a class="type PNAME_NS" href="#term-turtle2-PNAME_NS">PNAME_NS</a>, --><!-- <a class="type IRI" href="#term-turtle2-PNAME_LN">PNAME_LN</a>, --><a class="type lexicalForm" href="#term-turtle2-STRING_LITERAL1">STRING_LITERAL1</a>, <a class="type lexicalForm" href="#term-turtle2-STRING_LITERAL2">STRING_LITERAL2</a>, <a class="type lexicalForm" href="#term-turtle2-STRING_LITERAL_LONG1">STRING_LITERAL_LONG1</a> and <a class="type lexicalForm" href="#term-turtle2-STRING_LITERAL_LONG2">STRING_LITERAL_LONG2</a><!-- and <a class="type langTag" href="#term-turtle2-LANGTAG">LANGTAG</a> --><!-- and <a class="type bNode" href="#term-turtle2-BLANK_NODE_LABEL">BLANK_NODE_LABEL</a> -->.</p>
+ <p><a id="unescape">¹</a> <a href="#sec-escapes">Escape Sequences</a> defines a mapping from <code>escaped unicode strings</code> to <code>unicode strings</code>. The following lexical tokens are unescaped to produce <code>unicode strings</code>: <a class="type IRI" href="#grammar-production-IRI_REF">IRI_REF</a>, <!-- <a class="type PNAME_NS" href="#grammar-production-PNAME_NS">PNAME_NS</a>, --><!-- <a class="type IRI" href="#grammar-production-PNAME_LN">PNAME_LN</a>, --><a class="type lexicalForm" href="#grammar-production-STRING_LITERAL1">STRING_LITERAL1</a>, <a class="type lexicalForm" href="#grammar-production-STRING_LITERAL2">STRING_LITERAL2</a>, <a class="type lexicalForm" href="#grammar-production-STRING_LITERAL_LONG1">STRING_LITERAL_LONG1</a> and <a class="type lexicalForm" href="#grammar-production-STRING_LITERAL_LONG2">STRING_LITERAL_LONG2</a><!-- and <a class="type langTag" href="#grammar-production-LANGTAG">LANGTAG</a> --><!-- and <a class="type bNode" href="#grammar-production-BLANK_NODE_LABEL">BLANK_NODE_LABEL</a> -->.</p>
</section>
<section id="sec-parsing-triples">
<h3>RDF Triples Constructors</h3>
@@ -1515,7 +1515,7 @@
<ul>
- <li>Adopted three additional string syntaxes from SPARQL: <a href="#term-turtle2-STRING_LITERAL2">STRING_LITERAL2</a>, <a href="#term-turtle2-STRING_LITERAL_LONG1">STRING_LITERAL_LONG1</a>, <a href="#term-turtle2-STRING_LITERAL_LONG2">STRING_LITERAL_LONG2</a></li>
+ <li>Adopted three additional string syntaxes from SPARQL: <a href="#grammar-production-STRING_LITERAL2">STRING_LITERAL2</a>, <a href="#grammar-production-STRING_LITERAL_LONG1">STRING_LITERAL_LONG1</a>, <a href="#grammar-production-STRING_LITERAL_LONG2">STRING_LITERAL_LONG2</a></li>
<li>Adopted SPARQL's syntax for prefixed names (see <a href="http://www.w3.org/TR/sparql11-query/#rPrefixedName">editor's draft</a>):
<ul>