Re: Issue 1 - ToMultiSet

On 15/07/16 17:59, Peter F. Patel-Schneider wrote:
>
> 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.
Yes - it's the better conversion process.  My point is that is does use 
ToMultiSet.

18.2.4.3 will need revising (the additional ToMultiSet not inserted) as 
well as all the translation is done in 18.2.2.6 now.

>
> 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 Tuesday, 19 July 2016 10:04:14 UTC