- From: Gregory Williams <greg@evilfunhouse.com>
- Date: Sun, 20 Feb 2011 15:40:34 -0800
- To: SPARQL Working Group <public-rdf-dawg@w3.org>
On Feb 18, 2011, at 1:31 PM, Axel Polleres wrote:
> For any unnamed bnode _:B in a modify_template_DEL
> (i) new variables ?Var_B ?Var_B1 ?Var_B2 ?Var_Bg are introduced,
> (ii) _:B is replaced by ?Var_B in a modify_template_DEL,
> (iii) Pattern P is replaced by P_B such that
>
> P_B = { P } UNION {
> SELECT DISTINCT ?Var_B
> { { ?Var_B ?Var_B1 ?Var_B2 } UNION
> { ?Var_B1 ?Var_B ?Var_B2 } UNION
> { ?Var_B1 ?Var_B2 ?Var_B } UNION
> { GRAPH ?Var_Bg {?Var_B1 ?Var_B2 ?Var_B } } UNION
> { GRAPH ?Var_Bg {?D1 ?Var_B2 ?Var_B } } UNION
> { GRAPH ?Var_Bg {?Var_B1 ?Var_B2 ?Var_B } } }
>
> That is, ?Var_B binds to all possible values in the vocabulary of GS.
I'm not totally swapped in on this issue, but I don't understand how this pattern aligns with the description. In all three named graph union branches, ?Var_B appears in the object position. Since ?Var_B is the only projected variable, don't these three branches return the same results?
> I know that the definition of P_B doesn't look very nice, but this definition should cover the intended semantics of [2].
> In principle, the idea is that bnodes, that should behave as wildcard should bind to *any* element in the signature of GS,
> which is what is returned by the subquery
> Q = SELECT DISTINCT ?D
> { { ?D ?D1 ?D2 } UNION
> { ?D1 ?D ?D2 } UNION
> { ?D1 ?D2 ?D } UNION
> { GRAPH ?Dg {?D1 ?D2 ?D } } UNION
> { GRAPH ?Dg {?D1 ?D2 ?D } } UNION
> { GRAPH ?Dg {?D1 ?D2 ?D } } }
Even more obvious in this one. Am I missing something?
thanks,
.greg
Received on Sunday, 20 February 2011 23:41:04 UTC