- From: james anderson <james@dydra.com>
- Date: Fri, 17 Jun 2016 12:01:49 +0000
- To: public-sparql-dev@w3.org
- Message-ID: <010201555e3d1423-fbd315b8-374f-4b85-a610-2a81c41fa3a5-000000@eu-west-1.amazonse>
good afternoon;
> On 2016-06-17, at 13:16, Peter F. Patel-Schneider <pfpschneider@gmail.com> wrote:
>
>> On 17 Jun 2016, at 03:58, james anderson <james@dydra.com> wrote:
>>
>> good morning;
>>
>>> On 2016-06-17, at 01:11, Peter F. Patel-Schneider <pfpschneider@gmail.com>
> wrote:
>>>
> [...]
>> given this form:
>>
>> Input:
>>
>> 1 SELECT ?x WHERE {
>> 2 ?x a ?y .
>> 3 FILTER EXISTS {
>> 4 SELECT ?z WHERE { ?z ?w ?v . FILTER sameTerm(?x,?y) }
>> 5 }
>> 6 }
>>
>> Algebra structure:
>>
>> 1 (base <http://example/base/>
>> 2 (project (?x)
>> 3 (filter (exists
>> 4 (project (?z)
>> 5 (filter (sameTerm ?x ?y)
>> 6 (bgp (triple ?z ?w ?v)))))
>> 7 (bgp (triple ?x <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> ?y)))))
>>
>> why would the result change were the project evaluated logically later?
>>
>> best regards, from berlin,
>> ---
>> james anderson | james@dydra.com | http://dydra.com
>
> Evaluating the project first results in an empty solution sequence because x
> and y are unbound. Evaluating the project after an exists substitution will
> result in a solution sequence with a solution mapping binding z for each
> triple in the active graph if x and y were bound to the same term.
“bound to the same term”, how?
---
james anderson | james@dydra.com | http://dydra.com
Received on Friday, 17 June 2016 12:02:18 UTC