Skip to content

Commit 753e340

Browse files
committed
Updates from reviews
1 parent eed6f4f commit 753e340

File tree

1 file changed

+27
-21
lines changed

1 file changed

+27
-21
lines changed

spec/index.html

Lines changed: 27 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -10656,7 +10656,7 @@ <h4>Syntax Restriction</h4>
1065610656
</table>
1065710657
<div class="note">
1065810658
<p>
10659-
This restriction means that <a href="#defn_valuesinsertion">values inserted</a>
10659+
This restriction means that inserted values
1066010660
do not conflict with values assigned to variables within the pattern.
1066110661
</p>
1066210662
<p>
@@ -10679,13 +10679,14 @@ <h4>Remapping</h4>
1067910679
<div class="defn">
1068010680
<b>Definition: <span id="defn_projmap">Projection Expression Variable Remapping</span></b>
1068110681
<p>
10682-
For a projection algebra operation #sparqlProjection `Project(A, PV)` acting on algreg express `A` and with set of variables `PV`, define
10683-
a partial mapping `F` from
10684-
`<a href="#sparqlQueryVariables">V</a>`,
10685-
the set of all variables, to `V` where:
10682+
For a <a href="#sparqlProjection">projection algebra operation</a>
10683+
`Project(A, PV)` acting on algebra expression `A` and with set of variables `PV`,
10684+
define a mapping `F` from `V`,
10685+
<a href="#sparqlQueryVariables">the set of all variables</a>,
10686+
to `V` where:
1068610687
</p>
10687-
<pre>F(v) = v1 if v is in PV, where v1 is a fresh variable
10688-
F(v) = v if v is not in PV</pre>
10688+
<pre>F(v) = v1 if v is not in PV, where v1 is a fresh variable
10689+
F(v) = v if v is in PV</pre>
1068910690
<p>
1069010691
Define the Projection Expression Variable Remapping `ProjectMap(P, PV)`
1069110692
</p>
@@ -10703,15 +10704,15 @@ <h4>Remapping</h4>
1070310704
<div class="defn">
1070410705
<b>Definition: <span id="defn_varrename">Variable Remapping</span></b>
1070510706
<p>
10706-
For any algebra expression `X`, define the Variable Remapping `PrjMap(X)`
10707+
For any algebra expression `X`, define the Variable Remapping `PrjMap(X)`
1070710708
of algebra expression `X`:
1070810709
</p>
1070910710
<pre>PrjMap(X) = replace all project operations Project(P, PV)
10710-
with ProjectMap(P, PV) for each projection in X.</pre>
10711+
with ProjectMap(Project(A, PV), PV) for each projection in X.</pre>
1071110712
</div>
1071210713
<p>
1071310714
The outcome of `PrjMap` is independent of the order of replacement
10714-
(e.g. bottom-up or top-down).
10715+
(whether "bottom-up" or "top-down") order.
1071510716
Replacements may happen several times, depending on recursive order
1071610717
but each time a replacement is made, the variable not used anywhere else.
1071710718
</p>
@@ -10744,6 +10745,7 @@ <h4>Values Insertion</h4>
1074410745
being the current binding of the enclosing filter.
1074510746
</p>
1074610747
</div>
10748+
<p class="ednote">Need to define `BindingInScope`</p>
1074710749
</div>
1074810750

1074910751
<div class="defn">
@@ -10752,13 +10754,14 @@ <h4>Values Insertion</h4>
1075210754
<p>
1075310755
During <a href="#sparqlQuery">translation to the SPARQL algebra</a>
1075410756
</p>
10757+
<p class="ednote">Define putting in the `BindingInScope` operator</p>
1075510758
<pre>
10756-
Replace each occurence of `Y` in X where `Y` is one of
10759+
Replace each occurence of Y where Y is one of
1075710760
<a href="#sparqlTranslateBasicGraphPatterns">Basic Graph Pattern</a>,
10758-
<a href="#sparqlTranslatePathExpressions">Property Path Expression</a>,
10759-
<a href="#sparqlTranslateGraphPatterns">`Graph(Var, pattern)`</a>,
10761+
<a href="#sparqlTranslatePathPatterns">Property Path Patterns</a>,
10762+
<a href="#sparqlTranslateGraphPatterns">Graph(Var, pattern)</a>,
1076010763
<a href="#https://www.w3.org/TR/sparql12-query/#sparqlTranslateGraphPatterns">Inline Data</a>
10761-
with `join(Y, BindingInScope())`.</pre>
10764+
with join(Y, BindingInScope()).</pre>
1076210765
</div>
1076310766
<div class="note">
1076410767
c.f. section <a href="#sparqlTranslateGraphPatterns">Translate Graph Patterns</a>
@@ -10780,18 +10783,18 @@ <h4>Values Insertion</h4>
1078010783
</p>
1078110784
<div class="defn">
1078210785
<div>
10783-
<b>Definition: <span id="defn_valuesinsertion">Values Insertion</span></b>
10786+
<b>Definition: <span id="defn_insertvalues">Insert Values</span></b>
1078410787
<p>
10785-
Define the Values Insertion function `ValuesInsert(X, μ)`
10788+
Define the function `InsertValues(X, μ)`
1078610789
</p>
1078710790
<pre>Let Table(μ) = { μ } and multiplicity( μ | Table(μ) = { μ } ) = 1
1078810791

10789-
Replace each occurence of `Y` in X where `Y` is one of
10792+
Replace each occurence of Y in X where Y is one of
1079010793
<a href="#sparqlTranslateBasicGraphPatterns">Basic Graph Pattern</a>,
10791-
<a href="#sparqlTranslatePathExpressions">Property Path Expression</a>,
10792-
<a href="#sparqlTranslateGraphPatterns">`Graph(Var, pattern)`</a>,
10794+
<a href="#sparqlTranslatePathPatterns">Property Path Patterns</a>,
10795+
<a href="#sparqlTranslateGraphPatterns">Graph(Var, pattern)</a>,
1079310796
<a href="#https://www.w3.org/TR/sparql12-query/#sparqlTranslateGraphPatterns">Inline Data</a>
10794-
with `join(Y, Table(μ))`.</pre>
10797+
with join(Y, Table(μ)).</pre>
1079510798

1079610799
</div>
1079710800
</div>
@@ -10805,8 +10808,11 @@ <h4>Evaluation of EXISTS</h4>
1080510808
Let `μ` be the current solution mapping for a filter, and `X` a graph pattern,
1080610809
define the Evaluation of Exists `exists(X)`
1080710810
</p>
10811+
<p class="ednote">
10812+
@@ Set up the current row for `BindingdInScope`.
10813+
</p>
1080810814
<pre>exists(X) = true
10809-
if eval( D(G), ValuesInScope(PrjMap(X)), μ)
10815+
if eval( D(G), μ)
1081010816
is a non-empty solution sequence.
1081110817
exists(X) = false otherwise</pre>
1081210818
</div>

0 commit comments

Comments
 (0)