- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Fri, 15 Jul 2016 09:59:16 -0700
- To: Andy Seaborne <andy@apache.org>, public-sparql-exists@w3.org
On 07/15/2016 08:18 AM, Andy Seaborne wrote: > On 15/07/16 16:01, Peter F. Patel-Schneider wrote: >> On 07/15/2016 07:41 AM, Andy Seaborne wrote: >> [...] >> >>> >>> Peter wrote: >>>> because multisets also need to be allowed as Graph Patterns. >>> >>> Where exactly? (VALUES uses ToMultiSet). >>> >>> Andy >> >> Not so! >> >> ******* >> 18.2.2.6 Translate Graph Patterns >> >> If the form is InlineData >> >> The result is a multiset of solution mappings 'data'. >> >> data is formed by forming a solution mapping from the variable in the >> corresponding position in list of variables (or single variable), omitting a >> binding if the BindingValue is the word UNDEF. >> ******* >> >> The translation to the SPARQL algebra ends up putting actual multisets of >> solution mappings into the expression before the evaluation phase. These do >> not show up the characterization of the SPARQL algebra. >> >> peter >> >> > > OK - That wording is not very good at all. > > "18.2.4.3 VALUES" does use ToMultiSet. > > I'll start collecting "other errata" as we go along. > > (When someone finds such a point, please draft some text.) > > Andy 18.2.4.3 is for trailing values. Also, it doesn't work right, as it points to 18.2.2.6, which, as above, produces a multiset and ToMultiSet doesn't work on multisets of solution mappings but instead on sequences of solution mappings. So you end up with something like ToMultiSet({ { (?x, :a) } ... }, which is not defined. peter
Received on Friday, 15 July 2016 16:59:47 UTC