ebnf 2.3.4 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/VERSION +1 -1
- data/etc/ebnf.html +26 -39
- data/etc/ebnf.ll1.rb +1 -1
- data/etc/ebnf.peg.rb +1 -1
- data/etc/sparql.html +1424 -1604
- data/etc/turtle.html +120 -68
- data/lib/ebnf/writer.rb +87 -61
- metadata +16 -16
data/etc/turtle.html
CHANGED
@@ -1,229 +1,273 @@
|
|
1
|
-
|
2
|
-
<!-- Generated with ebnf version #{EBNF::VERSION}. See https://github.com/dryruby/ebnf. -->
|
1
|
+
<!-- Generated with ebnf version 2.3.4. See https://github.com/dryruby/ebnf. -->
|
3
2
|
<table class="grammar">
|
4
3
|
<tbody id="grammar-productions" class="ebnf">
|
5
|
-
<tr id="grammar-
|
4
|
+
<tr id="grammar-production-turtleDoc">
|
6
5
|
<td>[1]</td>
|
6
|
+
<td><code>turtleDoc</code></td>
|
7
7
|
<td>::=</td>
|
8
8
|
<td><a href="#grammar-production-statement">statement</a><code class="grammar-star">*</code></td>
|
9
9
|
</tr>
|
10
|
-
<tr id="grammar-
|
10
|
+
<tr id="grammar-production-statement">
|
11
11
|
<td>[2]</td>
|
12
|
+
<td><code>statement</code></td>
|
12
13
|
<td>::=</td>
|
13
14
|
<td><a href="#grammar-production-directive">directive</a> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><a href="#grammar-production-triples">triples</a> "<code class="grammar-literal">.</code>"<code class="grammar-paren">)</code></td>
|
14
15
|
</tr>
|
15
|
-
<tr id="grammar-
|
16
|
+
<tr id="grammar-production-directive">
|
16
17
|
<td>[3]</td>
|
18
|
+
<td><code>directive</code></td>
|
17
19
|
<td>::=</td>
|
18
20
|
<td><a href="#grammar-production-prefixID">prefixID</a> <code class="grammar-alt">|</code> <a href="#grammar-production-base">base</a> <code class="grammar-alt">|</code> <a href="#grammar-production-sparqlPrefix">sparqlPrefix</a> <code class="grammar-alt">|</code> <a href="#grammar-production-sparqlBase">sparqlBase</a></td>
|
19
21
|
</tr>
|
20
|
-
<tr id="grammar-
|
22
|
+
<tr id="grammar-production-prefixID">
|
21
23
|
<td>[4]</td>
|
24
|
+
<td><code>prefixID</code></td>
|
22
25
|
<td>::=</td>
|
23
26
|
<td>"<code class="grammar-literal">@prefix</code>" <a href="#grammar-production-PNAME_NS">PNAME_NS</a> <a href="#grammar-production-IRIREF">IRIREF</a> "<code class="grammar-literal">.</code>"</td>
|
24
27
|
</tr>
|
25
|
-
<tr id="grammar-
|
28
|
+
<tr id="grammar-production-base">
|
26
29
|
<td>[5]</td>
|
30
|
+
<td><code>base</code></td>
|
27
31
|
<td>::=</td>
|
28
32
|
<td>"<code class="grammar-literal">@base</code>" <a href="#grammar-production-IRIREF">IRIREF</a> "<code class="grammar-literal">.</code>"</td>
|
29
33
|
</tr>
|
30
|
-
<tr id="grammar-
|
34
|
+
<tr id="grammar-production-sparqlPrefix">
|
31
35
|
<td>[28s]</td>
|
36
|
+
<td><code>sparqlPrefix</code></td>
|
32
37
|
<td>::=</td>
|
33
38
|
<td><a href="#grammar-production-SPARQL_PREFIX">SPARQL_PREFIX</a> <a href="#grammar-production-PNAME_NS">PNAME_NS</a> <a href="#grammar-production-IRIREF">IRIREF</a></td>
|
34
39
|
</tr>
|
35
|
-
<tr id="grammar-
|
40
|
+
<tr id="grammar-production-sparqlBase">
|
36
41
|
<td>[29s]</td>
|
42
|
+
<td><code>sparqlBase</code></td>
|
37
43
|
<td>::=</td>
|
38
44
|
<td><a href="#grammar-production-SPARQL_BASE">SPARQL_BASE</a> <a href="#grammar-production-IRIREF">IRIREF</a></td>
|
39
45
|
</tr>
|
40
|
-
<tr id="grammar-
|
46
|
+
<tr id="grammar-production-triples">
|
41
47
|
<td>[6]</td>
|
48
|
+
<td><code>triples</code></td>
|
42
49
|
<td>::=</td>
|
43
50
|
<td><code class="grammar-paren">(</code><a href="#grammar-production-subject">subject</a> <a href="#grammar-production-predicateObjectList">predicateObjectList</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><a href="#grammar-production-blankNodePropertyList">blankNodePropertyList</a> <a href="#grammar-production-predicateObjectList">predicateObjectList</a><code class="grammar-opt">?</code><code class="grammar-paren">)</code></td>
|
44
51
|
</tr>
|
45
|
-
<tr id="grammar-
|
52
|
+
<tr id="grammar-production-predicateObjectList">
|
46
53
|
<td>[7]</td>
|
54
|
+
<td><code>predicateObjectList</code></td>
|
47
55
|
<td>::=</td>
|
48
56
|
<td><a href="#grammar-production-verb">verb</a> <a href="#grammar-production-objectList">objectList</a> <code class="grammar-paren">(</code>"<code class="grammar-literal">;</code>" <code class="grammar-paren">(</code><a href="#grammar-production-verb">verb</a> <a href="#grammar-production-objectList">objectList</a><code class="grammar-paren">)</code><code class="grammar-opt">?</code><code class="grammar-paren">)</code><code class="grammar-star">*</code></td>
|
49
57
|
</tr>
|
50
|
-
<tr id="grammar-
|
58
|
+
<tr id="grammar-production-objectList">
|
51
59
|
<td>[8]</td>
|
60
|
+
<td><code>objectList</code></td>
|
52
61
|
<td>::=</td>
|
53
62
|
<td><a href="#grammar-production-object">object</a> <code class="grammar-paren">(</code>"<code class="grammar-literal">,</code>" <a href="#grammar-production-object">object</a><code class="grammar-paren">)</code><code class="grammar-star">*</code></td>
|
54
63
|
</tr>
|
55
|
-
<tr id="grammar-
|
64
|
+
<tr id="grammar-production-verb">
|
56
65
|
<td>[9]</td>
|
66
|
+
<td><code>verb</code></td>
|
57
67
|
<td>::=</td>
|
58
68
|
<td><a href="#grammar-production-predicate">predicate</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">a</code>"</td>
|
59
69
|
</tr>
|
60
|
-
<tr id="grammar-
|
70
|
+
<tr id="grammar-production-subject">
|
61
71
|
<td>[10]</td>
|
72
|
+
<td><code>subject</code></td>
|
62
73
|
<td>::=</td>
|
63
74
|
<td><a href="#grammar-production-iri">iri</a> <code class="grammar-alt">|</code> <a href="#grammar-production-BlankNode">BlankNode</a> <code class="grammar-alt">|</code> <a href="#grammar-production-collection">collection</a></td>
|
64
75
|
</tr>
|
65
|
-
<tr id="grammar-
|
76
|
+
<tr id="grammar-production-predicate">
|
66
77
|
<td>[11]</td>
|
78
|
+
<td><code>predicate</code></td>
|
67
79
|
<td>::=</td>
|
68
80
|
<td><a href="#grammar-production-iri">iri</a></td>
|
69
81
|
</tr>
|
70
|
-
<tr id="grammar-
|
82
|
+
<tr id="grammar-production-object">
|
71
83
|
<td>[12]</td>
|
84
|
+
<td><code>object</code></td>
|
72
85
|
<td>::=</td>
|
73
86
|
<td><a href="#grammar-production-iri">iri</a> <code class="grammar-alt">|</code> <a href="#grammar-production-BlankNode">BlankNode</a> <code class="grammar-alt">|</code> <a href="#grammar-production-collection">collection</a> <code class="grammar-alt">|</code> <a href="#grammar-production-blankNodePropertyList">blankNodePropertyList</a> <code class="grammar-alt">|</code> <a href="#grammar-production-literal">literal</a></td>
|
74
87
|
</tr>
|
75
|
-
<tr id="grammar-
|
88
|
+
<tr id="grammar-production-literal">
|
76
89
|
<td>[13]</td>
|
90
|
+
<td><code>literal</code></td>
|
77
91
|
<td>::=</td>
|
78
92
|
<td><a href="#grammar-production-RDFLiteral">RDFLiteral</a> <code class="grammar-alt">|</code> <a href="#grammar-production-NumericLiteral">NumericLiteral</a> <code class="grammar-alt">|</code> <a href="#grammar-production-BooleanLiteral">BooleanLiteral</a></td>
|
79
93
|
</tr>
|
80
|
-
<tr id="grammar-
|
94
|
+
<tr id="grammar-production-blankNodePropertyList">
|
81
95
|
<td>[14]</td>
|
96
|
+
<td><code>blankNodePropertyList</code></td>
|
82
97
|
<td>::=</td>
|
83
98
|
<td>"<code class="grammar-literal">[</code>" <a href="#grammar-production-predicateObjectList">predicateObjectList</a> "<code class="grammar-literal">]</code>"</td>
|
84
99
|
</tr>
|
85
|
-
<tr id="grammar-
|
100
|
+
<tr id="grammar-production-collection">
|
86
101
|
<td>[15]</td>
|
102
|
+
<td><code>collection</code></td>
|
87
103
|
<td>::=</td>
|
88
104
|
<td>"<code class="grammar-literal">(</code>" <a href="#grammar-production-object">object</a><code class="grammar-star">*</code> "<code class="grammar-literal">)</code>"</td>
|
89
105
|
</tr>
|
90
|
-
<tr id="grammar-
|
106
|
+
<tr id="grammar-production-NumericLiteral">
|
91
107
|
<td>[16]</td>
|
108
|
+
<td><code>NumericLiteral</code></td>
|
92
109
|
<td>::=</td>
|
93
110
|
<td><a href="#grammar-production-INTEGER">INTEGER</a> <code class="grammar-alt">|</code> <a href="#grammar-production-DECIMAL">DECIMAL</a> <code class="grammar-alt">|</code> <a href="#grammar-production-DOUBLE">DOUBLE</a></td>
|
94
111
|
</tr>
|
95
|
-
<tr id="grammar-
|
112
|
+
<tr id="grammar-production-RDFLiteral">
|
96
113
|
<td>[128s]</td>
|
114
|
+
<td><code>RDFLiteral</code></td>
|
97
115
|
<td>::=</td>
|
98
116
|
<td><a href="#grammar-production-String">String</a> <code class="grammar-paren">(</code><a href="#grammar-production-LANGTAG">LANGTAG</a> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">^^</code>" <a href="#grammar-production-iri">iri</a><code class="grammar-paren">)</code><code class="grammar-paren">)</code><code class="grammar-opt">?</code></td>
|
99
117
|
</tr>
|
100
|
-
<tr id="grammar-
|
118
|
+
<tr id="grammar-production-BooleanLiteral">
|
101
119
|
<td>[133s]</td>
|
120
|
+
<td><code>BooleanLiteral</code></td>
|
102
121
|
<td>::=</td>
|
103
122
|
<td>"<code class="grammar-literal">true</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">false</code>"</td>
|
104
123
|
</tr>
|
105
|
-
<tr id="grammar-
|
124
|
+
<tr id="grammar-production-String">
|
106
125
|
<td>[17]</td>
|
126
|
+
<td><code>String</code></td>
|
107
127
|
<td>::=</td>
|
108
128
|
<td><a href="#grammar-production-STRING_LITERAL_QUOTE">STRING_LITERAL_QUOTE</a> <code class="grammar-alt">|</code> <a href="#grammar-production-STRING_LITERAL_SINGLE_QUOTE">STRING_LITERAL_SINGLE_QUOTE</a> <code class="grammar-alt">|</code> <a href="#grammar-production-STRING_LITERAL_LONG_SINGLE_QUOTE">STRING_LITERAL_LONG_SINGLE_QUOTE</a> <code class="grammar-alt">|</code> <a href="#grammar-production-STRING_LITERAL_LONG_QUOTE">STRING_LITERAL_LONG_QUOTE</a></td>
|
109
129
|
</tr>
|
110
|
-
<tr id="grammar-
|
130
|
+
<tr id="grammar-production-iri">
|
111
131
|
<td>[135s]</td>
|
132
|
+
<td><code>iri</code></td>
|
112
133
|
<td>::=</td>
|
113
134
|
<td><a href="#grammar-production-IRIREF">IRIREF</a> <code class="grammar-alt">|</code> <a href="#grammar-production-PrefixedName">PrefixedName</a></td>
|
114
135
|
</tr>
|
115
|
-
<tr id="grammar-
|
136
|
+
<tr id="grammar-production-PrefixedName">
|
116
137
|
<td>[136s]</td>
|
138
|
+
<td><code>PrefixedName</code></td>
|
117
139
|
<td>::=</td>
|
118
140
|
<td><a href="#grammar-production-PNAME_LN">PNAME_LN</a> <code class="grammar-alt">|</code> <a href="#grammar-production-PNAME_NS">PNAME_NS</a></td>
|
119
141
|
</tr>
|
120
|
-
<tr id="grammar-
|
142
|
+
<tr id="grammar-production-BlankNode">
|
121
143
|
<td>[137s]</td>
|
144
|
+
<td><code>BlankNode</code></td>
|
122
145
|
<td>::=</td>
|
123
146
|
<td><a href="#grammar-production-BLANK_NODE_LABEL">BLANK_NODE_LABEL</a> <code class="grammar-alt">|</code> <a href="#grammar-production-ANON">ANON</a></td>
|
124
147
|
</tr>
|
125
148
|
<tr id="grammar-declaration-terminals">
|
126
149
|
<td>@terminals</td>
|
150
|
+
<td><code></code></td>
|
127
151
|
<td></td>
|
128
152
|
<td><strong># Productions for terminals</strong></td>
|
129
153
|
</tr>
|
130
|
-
<tr id="grammar-
|
154
|
+
<tr id="grammar-production-IRIREF">
|
131
155
|
<td>[18]</td>
|
156
|
+
<td><code>IRIREF</code></td>
|
132
157
|
<td>::=</td>
|
133
158
|
<td>"<code class="grammar-literal"><</code>" <code class="grammar-paren">(</code><code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">^<>"{}|^`\</code><code class="grammar-brac">]</code> <code class="grammar-diff">-</code> <code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="null">#x00</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="space">#x20</abbr></code><code class="grammar-brac">]</code><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <a href="#grammar-production-UCHAR">UCHAR</a><code class="grammar-paren">)</code><code class="grammar-star">*</code> "<code class="grammar-literal">></code>"</td>
|
134
159
|
</tr>
|
135
|
-
<tr id="grammar-
|
160
|
+
<tr id="grammar-production-PNAME_NS">
|
136
161
|
<td>[139s]</td>
|
162
|
+
<td><code>PNAME_NS</code></td>
|
137
163
|
<td>::=</td>
|
138
164
|
<td><a href="#grammar-production-PN_PREFIX">PN_PREFIX</a><code class="grammar-opt">?</code> "<code class="grammar-literal">:</code>"</td>
|
139
165
|
</tr>
|
140
|
-
<tr id="grammar-
|
166
|
+
<tr id="grammar-production-PNAME_LN">
|
141
167
|
<td>[140s]</td>
|
168
|
+
<td><code>PNAME_LN</code></td>
|
142
169
|
<td>::=</td>
|
143
170
|
<td><a href="#grammar-production-PNAME_NS">PNAME_NS</a> <a href="#grammar-production-PN_LOCAL">PN_LOCAL</a></td>
|
144
171
|
</tr>
|
145
|
-
<tr id="grammar-
|
172
|
+
<tr id="grammar-production-BLANK_NODE_LABEL">
|
146
173
|
<td>[141s]</td>
|
174
|
+
<td><code>BLANK_NODE_LABEL</code></td>
|
147
175
|
<td>::=</td>
|
148
176
|
<td>"<code class="grammar-literal">_:</code>" <code class="grammar-paren">(</code><a href="#grammar-production-PN_CHARS_U">PN_CHARS_U</a> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code> <code class="grammar-paren">(</code><code class="grammar-paren">(</code><a href="#grammar-production-PN_CHARS">PN_CHARS</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">.</code>"<code class="grammar-paren">)</code><code class="grammar-star">*</code> <a href="#grammar-production-PN_CHARS">PN_CHARS</a><code class="grammar-paren">)</code><code class="grammar-opt">?</code></td>
|
149
177
|
</tr>
|
150
|
-
<tr id="grammar-
|
178
|
+
<tr id="grammar-production-LANGTAG">
|
151
179
|
<td>[144s]</td>
|
180
|
+
<td><code>LANGTAG</code></td>
|
152
181
|
<td>::=</td>
|
153
182
|
<td>"<code class="grammar-literal">@</code>" <code class="grammar-brac">[</code><code class="grammar-literal">a-zA-Z</code><code class="grammar-brac">]</code><code class="grammar-plus">+</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">-</code>" <code class="grammar-brac">[</code><code class="grammar-literal">a-zA-Z0-9</code><code class="grammar-brac">]</code><code class="grammar-plus">+</code><code class="grammar-paren">)</code><code class="grammar-star">*</code></td>
|
154
183
|
</tr>
|
155
|
-
<tr id="grammar-
|
184
|
+
<tr id="grammar-production-INTEGER">
|
156
185
|
<td>[19]</td>
|
186
|
+
<td><code>INTEGER</code></td>
|
157
187
|
<td>::=</td>
|
158
188
|
<td><code class="grammar-brac">[</code><code class="grammar-literal">+-</code><code class="grammar-brac">]</code><code class="grammar-opt">?</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-plus">+</code></td>
|
159
189
|
</tr>
|
160
|
-
<tr id="grammar-
|
190
|
+
<tr id="grammar-production-DECIMAL">
|
161
191
|
<td>[20]</td>
|
192
|
+
<td><code>DECIMAL</code></td>
|
162
193
|
<td>::=</td>
|
163
194
|
<td><code class="grammar-brac">[</code><code class="grammar-literal">+-</code><code class="grammar-brac">]</code><code class="grammar-opt">?</code> <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-star">*</code> "<code class="grammar-literal">.</code>" <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-plus">+</code><code class="grammar-paren">)</code></td>
|
164
195
|
</tr>
|
165
|
-
<tr id="grammar-
|
196
|
+
<tr id="grammar-production-DOUBLE">
|
166
197
|
<td>[21]</td>
|
198
|
+
<td><code>DOUBLE</code></td>
|
167
199
|
<td>::=</td>
|
168
200
|
<td><code class="grammar-brac">[</code><code class="grammar-literal">+-</code><code class="grammar-brac">]</code><code class="grammar-opt">?</code> <code class="grammar-paren">(</code><code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-plus">+</code> "<code class="grammar-literal">.</code>" <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-star">*</code> <a href="#grammar-production-EXPONENT">EXPONENT</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">.</code>" <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-plus">+</code> <a href="#grammar-production-EXPONENT">EXPONENT</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-plus">+</code> <a href="#grammar-production-EXPONENT">EXPONENT</a><code class="grammar-paren">)</code><code class="grammar-paren">)</code></td>
|
169
201
|
</tr>
|
170
|
-
<tr id="grammar-
|
202
|
+
<tr id="grammar-production-EXPONENT">
|
171
203
|
<td>[154s]</td>
|
204
|
+
<td><code>EXPONENT</code></td>
|
172
205
|
<td>::=</td>
|
173
206
|
<td><code class="grammar-brac">[</code><code class="grammar-literal">eE</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">+-</code><code class="grammar-brac">]</code><code class="grammar-opt">?</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-plus">+</code></td>
|
174
207
|
</tr>
|
175
|
-
<tr id="grammar-
|
208
|
+
<tr id="grammar-production-STRING_LITERAL_QUOTE">
|
176
209
|
<td>[22]</td>
|
210
|
+
<td><code>STRING_LITERAL_QUOTE</code></td>
|
177
211
|
<td>::=</td>
|
178
|
-
<td>'<code class="grammar-literal">"</code>' <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">^</code><code class="grammar-char-escape"><abbr title="
|
212
|
+
<td>'<code class="grammar-literal">"</code>' <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">^</code><code class="grammar-char-escape"><abbr title="dquote">#x22</abbr></code><code class="grammar-char-escape"><abbr title="back slash">#x5C</abbr></code><code class="grammar-char-escape"><abbr title="new line">#x0A</abbr></code><code class="grammar-char-escape"><abbr title="carriage return">#x0D</abbr></code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <a href="#grammar-production-ECHAR">ECHAR</a> <code class="grammar-alt">|</code> <a href="#grammar-production-UCHAR">UCHAR</a><code class="grammar-paren">)</code><code class="grammar-star">*</code> '<code class="grammar-literal">"</code>'</td>
|
179
213
|
</tr>
|
180
|
-
<tr id="grammar-
|
214
|
+
<tr id="grammar-production-STRING_LITERAL_SINGLE_QUOTE">
|
181
215
|
<td>[23]</td>
|
216
|
+
<td><code>STRING_LITERAL_SINGLE_QUOTE</code></td>
|
182
217
|
<td>::=</td>
|
183
|
-
<td>"<code class="grammar-literal">'</code>" <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">^</code><code class="grammar-char-escape"><abbr title="
|
218
|
+
<td>"<code class="grammar-literal">'</code>" <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">^</code><code class="grammar-char-escape"><abbr title="apos">#x27</abbr></code><code class="grammar-char-escape"><abbr title="back slash">#x5C</abbr></code><code class="grammar-char-escape"><abbr title="new line">#x0A</abbr></code><code class="grammar-char-escape"><abbr title="carriage return">#x0D</abbr></code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <a href="#grammar-production-ECHAR">ECHAR</a> <code class="grammar-alt">|</code> <a href="#grammar-production-UCHAR">UCHAR</a><code class="grammar-paren">)</code><code class="grammar-star">*</code> "<code class="grammar-literal">'</code>"</td>
|
184
219
|
</tr>
|
185
|
-
<tr id="grammar-
|
220
|
+
<tr id="grammar-production-STRING_LITERAL_LONG_SINGLE_QUOTE">
|
186
221
|
<td>[24]</td>
|
222
|
+
<td><code>STRING_LITERAL_LONG_SINGLE_QUOTE</code></td>
|
187
223
|
<td>::=</td>
|
188
224
|
<td>"<code class="grammar-literal">'''</code>" <code class="grammar-paren">(</code><code class="grammar-paren">(</code>"<code class="grammar-literal">'</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">''</code>"<code class="grammar-paren">)</code><code class="grammar-opt">?</code> <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">^'\</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <a href="#grammar-production-ECHAR">ECHAR</a> <code class="grammar-alt">|</code> <a href="#grammar-production-UCHAR">UCHAR</a><code class="grammar-paren">)</code><code class="grammar-paren">)</code><code class="grammar-star">*</code> "<code class="grammar-literal">'''</code>"</td>
|
189
225
|
</tr>
|
190
|
-
<tr id="grammar-
|
226
|
+
<tr id="grammar-production-STRING_LITERAL_LONG_QUOTE">
|
191
227
|
<td>[25]</td>
|
228
|
+
<td><code>STRING_LITERAL_LONG_QUOTE</code></td>
|
192
229
|
<td>::=</td>
|
193
230
|
<td>'<code class="grammar-literal">"""</code>' <code class="grammar-paren">(</code><code class="grammar-paren">(</code>'<code class="grammar-literal">"</code>' <code class="grammar-alt">|</code> '<code class="grammar-literal">""</code>'<code class="grammar-paren">)</code><code class="grammar-opt">?</code> <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">^"\</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <a href="#grammar-production-ECHAR">ECHAR</a> <code class="grammar-alt">|</code> <a href="#grammar-production-UCHAR">UCHAR</a><code class="grammar-paren">)</code><code class="grammar-paren">)</code><code class="grammar-star">*</code> '<code class="grammar-literal">"""</code>'</td>
|
194
231
|
</tr>
|
195
|
-
<tr id="grammar-
|
232
|
+
<tr id="grammar-production-UCHAR">
|
196
233
|
<td>[26]</td>
|
234
|
+
<td><code>UCHAR</code></td>
|
197
235
|
<td>::=</td>
|
198
236
|
<td><code class="grammar-paren">(</code>"<code class="grammar-literal">u</code>" <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">U</code>" <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code></td>
|
199
237
|
</tr>
|
200
|
-
<tr id="grammar-
|
238
|
+
<tr id="grammar-production-ECHAR">
|
201
239
|
<td>[159s]</td>
|
240
|
+
<td><code>ECHAR</code></td>
|
202
241
|
<td>::=</td>
|
203
242
|
<td>"<code class="grammar-literal">\</code>" <code class="grammar-brac">[</code><code class="grammar-literal">tbnrf"'</code><code class="grammar-brac">]</code></td>
|
204
243
|
</tr>
|
205
|
-
<tr id="grammar-
|
244
|
+
<tr id="grammar-production-SPARQL_PREFIX">
|
206
245
|
<td>[28t]</td>
|
246
|
+
<td><code>SPARQL_PREFIX</code></td>
|
207
247
|
<td>::=</td>
|
208
248
|
<td><code class="grammar-brac">[</code><code class="grammar-literal">Pp</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">Rr</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">Ee</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">Ff</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">Ii</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">Xx</code><code class="grammar-brac">]</code></td>
|
209
249
|
</tr>
|
210
|
-
<tr id="grammar-
|
250
|
+
<tr id="grammar-production-SPARQL_BASE">
|
211
251
|
<td>[29t]</td>
|
252
|
+
<td><code>SPARQL_BASE</code></td>
|
212
253
|
<td>::=</td>
|
213
254
|
<td><code class="grammar-brac">[</code><code class="grammar-literal">Bb</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">Aa</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">Ss</code><code class="grammar-brac">]</code> <code class="grammar-brac">[</code><code class="grammar-literal">Ee</code><code class="grammar-brac">]</code></td>
|
214
255
|
</tr>
|
215
|
-
<tr id="grammar-
|
256
|
+
<tr id="grammar-production-WS">
|
216
257
|
<td>[161s]</td>
|
258
|
+
<td><code>WS</code></td>
|
217
259
|
<td>::=</td>
|
218
260
|
<td><code class="grammar-char-escape"><abbr title="space">#x20</abbr></code> <code class="grammar-alt">|</code> <code class="grammar-char-escape"><abbr title="horizontal tab">#x09</abbr></code> <code class="grammar-alt">|</code> <code class="grammar-char-escape"><abbr title="carriage return">#x0D</abbr></code> <code class="grammar-alt">|</code> <code class="grammar-char-escape"><abbr title="new line">#x0A</abbr></code></td>
|
219
261
|
</tr>
|
220
|
-
<tr id="grammar-
|
262
|
+
<tr id="grammar-production-ANON">
|
221
263
|
<td>[162s]</td>
|
264
|
+
<td><code>ANON</code></td>
|
222
265
|
<td>::=</td>
|
223
266
|
<td>"<code class="grammar-literal">[</code>" <a href="#grammar-production-WS">WS</a><code class="grammar-star">*</code> "<code class="grammar-literal">]</code>"</td>
|
224
267
|
</tr>
|
225
268
|
<tr id="grammar-production-PN_CHARS_BASE">
|
226
269
|
<td>[163s]</td>
|
270
|
+
<td><code>PN_CHARS_BASE</code></td>
|
227
271
|
<td>::=</td>
|
228
272
|
<td><code class="grammar-brac">[</code><code class="grammar-literal">A-Z</code><code class="grammar-brac">]</code></td>
|
229
273
|
</tr>
|
@@ -235,100 +279,108 @@
|
|
235
279
|
<tr>
|
236
280
|
<td colspan=2></td>
|
237
281
|
<td><code class="grammar-alt">|</code></td>
|
238
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="
|
282
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+00C0">#xC0</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+00D6">#xD6</abbr></code><code class="grammar-brac">]</code></td>
|
239
283
|
</tr>
|
240
284
|
<tr>
|
241
285
|
<td colspan=2></td>
|
242
286
|
<td><code class="grammar-alt">|</code></td>
|
243
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="
|
287
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+00D8">#xD8</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+00F6">#xF6</abbr></code><code class="grammar-brac">]</code></td>
|
244
288
|
</tr>
|
245
289
|
<tr>
|
246
290
|
<td colspan=2></td>
|
247
291
|
<td><code class="grammar-alt">|</code></td>
|
248
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="
|
292
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+00F8">#xF8</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+02FF">#x02FF</abbr></code><code class="grammar-brac">]</code></td>
|
249
293
|
</tr>
|
250
294
|
<tr>
|
251
295
|
<td colspan=2></td>
|
252
296
|
<td><code class="grammar-alt">|</code></td>
|
253
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
297
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+0370">#x0370</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+037D">#x037D</abbr></code><code class="grammar-brac">]</code></td>
|
254
298
|
</tr>
|
255
299
|
<tr>
|
256
300
|
<td colspan=2></td>
|
257
301
|
<td><code class="grammar-alt">|</code></td>
|
258
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
302
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+037F">#x037F</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+1FFF">#x1FFF</abbr></code><code class="grammar-brac">]</code></td>
|
259
303
|
</tr>
|
260
304
|
<tr>
|
261
305
|
<td colspan=2></td>
|
262
306
|
<td><code class="grammar-alt">|</code></td>
|
263
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
307
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+200C">#x200C</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+200D">#x200D</abbr></code><code class="grammar-brac">]</code></td>
|
264
308
|
</tr>
|
265
309
|
<tr>
|
266
310
|
<td colspan=2></td>
|
267
311
|
<td><code class="grammar-alt">|</code></td>
|
268
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
312
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+2070">#x2070</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+218F">#x218F</abbr></code><code class="grammar-brac">]</code></td>
|
269
313
|
</tr>
|
270
314
|
<tr>
|
271
315
|
<td colspan=2></td>
|
272
316
|
<td><code class="grammar-alt">|</code></td>
|
273
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
317
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+2C00">#x2C00</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+2FEF">#x2FEF</abbr></code><code class="grammar-brac">]</code></td>
|
274
318
|
</tr>
|
275
319
|
<tr>
|
276
320
|
<td colspan=2></td>
|
277
321
|
<td><code class="grammar-alt">|</code></td>
|
278
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
322
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+3001">#x3001</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+D7FF">#xD7FF</abbr></code><code class="grammar-brac">]</code></td>
|
279
323
|
</tr>
|
280
324
|
<tr>
|
281
325
|
<td colspan=2></td>
|
282
326
|
<td><code class="grammar-alt">|</code></td>
|
283
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
327
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+F900">#xF900</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+FDCF">#xFDCF</abbr></code><code class="grammar-brac">]</code></td>
|
284
328
|
</tr>
|
285
329
|
<tr>
|
286
330
|
<td colspan=2></td>
|
287
331
|
<td><code class="grammar-alt">|</code></td>
|
288
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
332
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+FDF0">#xFDF0</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+FFFD">#xFFFD</abbr></code><code class="grammar-brac">]</code></td>
|
289
333
|
</tr>
|
290
334
|
<tr>
|
291
335
|
<td colspan=2></td>
|
292
336
|
<td><code class="grammar-alt">|</code></td>
|
293
|
-
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode
|
337
|
+
<td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+10000">#x00010000</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+EFFFF">#x000EFFFF</abbr></code><code class="grammar-brac">]</code></td>
|
294
338
|
</tr>
|
295
|
-
<tr id="grammar-
|
339
|
+
<tr id="grammar-production-PN_CHARS_U">
|
296
340
|
<td>[164s]</td>
|
341
|
+
<td><code>PN_CHARS_U</code></td>
|
297
342
|
<td>::=</td>
|
298
343
|
<td><a href="#grammar-production-PN_CHARS_BASE">PN_CHARS_BASE</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">_</code>"</td>
|
299
344
|
</tr>
|
300
|
-
<tr id="grammar-
|
345
|
+
<tr id="grammar-production-PN_CHARS">
|
301
346
|
<td>[166s]</td>
|
347
|
+
<td><code>PN_CHARS</code></td>
|
302
348
|
<td>::=</td>
|
303
|
-
<td><a href="#grammar-production-PN_CHARS_U">PN_CHARS_U</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">-</code>" <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-char-escape"><abbr title="
|
349
|
+
<td><a href="#grammar-production-PN_CHARS_U">PN_CHARS_U</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">-</code>" <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-char-escape"><abbr title="unicode U+00B7">#xB7</abbr></code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+0300">#x0300</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+036F">#x036F</abbr></code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="unicode U+203F">#x203F</abbr></code><code class="grammar-literal">-</code><code class="grammar-char-escape"><abbr title="unicode U+2040">#x2040</abbr></code><code class="grammar-brac">]</code></td>
|
304
350
|
</tr>
|
305
|
-
<tr id="grammar-
|
351
|
+
<tr id="grammar-production-PN_PREFIX">
|
306
352
|
<td>[167s]</td>
|
353
|
+
<td><code>PN_PREFIX</code></td>
|
307
354
|
<td>::=</td>
|
308
355
|
<td><a href="#grammar-production-PN_CHARS_BASE">PN_CHARS_BASE</a> <code class="grammar-paren">(</code><code class="grammar-paren">(</code><a href="#grammar-production-PN_CHARS">PN_CHARS</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">.</code>"<code class="grammar-paren">)</code><code class="grammar-star">*</code> <a href="#grammar-production-PN_CHARS">PN_CHARS</a><code class="grammar-paren">)</code><code class="grammar-opt">?</code></td>
|
309
356
|
</tr>
|
310
|
-
<tr id="grammar-
|
357
|
+
<tr id="grammar-production-PN_LOCAL">
|
311
358
|
<td>[168s]</td>
|
359
|
+
<td><code>PN_LOCAL</code></td>
|
312
360
|
<td>::=</td>
|
313
361
|
<td><code class="grammar-paren">(</code><a href="#grammar-production-PN_CHARS_U">PN_CHARS_U</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">:</code>" <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <a href="#grammar-production-PLX">PLX</a><code class="grammar-paren">)</code> <code class="grammar-paren">(</code><code class="grammar-paren">(</code><a href="#grammar-production-PN_CHARS">PN_CHARS</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">.</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">:</code>" <code class="grammar-alt">|</code> <a href="#grammar-production-PLX">PLX</a><code class="grammar-paren">)</code><code class="grammar-star">*</code> <code class="grammar-paren">(</code><a href="#grammar-production-PN_CHARS">PN_CHARS</a> <code class="grammar-alt">|</code> "<code class="grammar-literal">:</code>" <code class="grammar-alt">|</code> <a href="#grammar-production-PLX">PLX</a><code class="grammar-paren">)</code><code class="grammar-paren">)</code><code class="grammar-opt">?</code></td>
|
314
362
|
</tr>
|
315
|
-
<tr id="grammar-
|
363
|
+
<tr id="grammar-production-PLX">
|
316
364
|
<td>[169s]</td>
|
365
|
+
<td><code>PLX</code></td>
|
317
366
|
<td>::=</td>
|
318
367
|
<td><a href="#grammar-production-PERCENT">PERCENT</a> <code class="grammar-alt">|</code> <a href="#grammar-production-PN_LOCAL_ESC">PN_LOCAL_ESC</a></td>
|
319
368
|
</tr>
|
320
|
-
<tr id="grammar-
|
369
|
+
<tr id="grammar-production-PERCENT">
|
321
370
|
<td>[170s]</td>
|
371
|
+
<td><code>PERCENT</code></td>
|
322
372
|
<td>::=</td>
|
323
373
|
<td>"<code class="grammar-literal">%</code>" <a href="#grammar-production-HEX">HEX</a> <a href="#grammar-production-HEX">HEX</a></td>
|
324
374
|
</tr>
|
325
|
-
<tr id="grammar-
|
375
|
+
<tr id="grammar-production-HEX">
|
326
376
|
<td>[171s]</td>
|
377
|
+
<td><code>HEX</code></td>
|
327
378
|
<td>::=</td>
|
328
379
|
<td><code class="grammar-brac">[</code><code class="grammar-literal">0-9A-Fa-f</code><code class="grammar-brac">]</code></td>
|
329
380
|
</tr>
|
330
|
-
<tr id="grammar-
|
381
|
+
<tr id="grammar-production-PN_LOCAL_ESC">
|
331
382
|
<td>[172s]</td>
|
383
|
+
<td><code>PN_LOCAL_ESC</code></td>
|
332
384
|
<td>::=</td>
|
333
385
|
<td>"<code class="grammar-literal">\</code>" <code class="grammar-paren">(</code>"<code class="grammar-literal">_</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">~</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">.</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">-</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">!</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">$</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">&</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">'</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">(</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">)</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">*</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">+</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">,</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">;</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">=</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">/</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">?</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">#</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">@</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">%</code>"<code class="grammar-paren">)</code></td>
|
334
386
|
</tr>
|