Re: SPARQL 1.1 - LeftJoin definition

On Thu, Nov 24, 2011 at 2:32 PM, Eric Prud'hommeaux <eric@w3.org> wrote:

> LeftJoin(Ω1, Ω2, expr) =
>    { merge(μ1, μ2) | μ1 in Ω1 and μ2 in Ω2, and μ1 and μ2 are compatible
> and expr(merge(μ1, μ2)) is true }
> ∪
>    { μ1 | μ1 in Ω1 | ∄ μ2 in Ω2 | μ1 and μ2 are compatible and
> expr(merge(μ1, μ2)) is true }
>
> ?
>

Eric -  Doesn't this definition have a problem in the case where there is a
u1 for which there is a u2 that is compatible and expr(...) is true and
there is another u2 that is compatible and expr(...) is false? I think the
definition you gave in this email would only produce a single output for
u1, whereas the main definition of LeftJoin in the SPARQL 1.1 draft would
have two outputs for u1: one to reflect the u2 where expr(...) is true and
another to reflect the u2 where expr(...) is false.

-David

Received on Monday, 28 November 2011 14:34:43 UTC