W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > October to December 2010

Re: BIND, FILTERs and BGPs

From: Andy Seaborne <andy.seaborne@epimorphics.com>
Date: Thu, 14 Oct 2010 13:10:35 +0100
Message-ID: <4CB6F33B.8080108@epimorphics.com>
To: Axel Polleres <axel.polleres@deri.org>
CC: Lee Feigenbaum <lee@thefigtrees.net>, SPARQL Working Group <public-rdf-dawg@w3.org>


On 14/10/10 12:18, Axel Polleres wrote:
...
>> I suggest that a sequence of BINDs is considered as ending one BGP, not
>> having nested BGPs subject to FILTERs.
>>
>> ASK { BIND("foo" AS ?bar) . BIND(2 AS ?two) . FILTER(?two = 2) }
>>
>
> ah, ok, gotcha, so you say all BINDs and FILTERS belong to the same group and will be ordered
> in the sense that first the BINDs are evaluated lexicographically and then the FILTERs.
> that looks fine to me then in principle, it just means that the Subselect rwriting discussed
> in the last call would need to put the FILTERs outside the subselect, right?

I wasn't planning on defining the translation of BIND in to the algebra 
using that syntactic form.  Instead, I was thinking of going direct 
during group pattern translatation whch already gathers up FILTER
(not that there are BGPs in the *syntax* any more because of paths).

However, roughly, if P1 and P2 are constrained appropriately:

     { F1 P1 KW(Expr AS ?Var)  P2 F2}
     =:=
     { { SELECT * (Expr AS ?Var) { P1 P2 } } F1 F2 }


	Andy

>
> cheers,
> Axel
Received on Thursday, 14 October 2010 12:11:14 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:44 GMT