Re: ISSUE-29: MINUS / NOT EXISTS

Andy Seaborne wrote:
> 
> 
> On 03/02/2010 1:42 PM, Lee Feigenbaum wrote:
>>
>>> ISSUE-29
>>> Should negation be done via a binary operator on subqueries, a binary
>>> operator within graph patterns, or a filter+subquery?      ??
>>>   This is MINUS / NOT EXISTS issue.
>>
>> This might be a good place to start with a test case or three. Andy, do
>> you happen to have any cases that illustrate the difference here?
>>
>> (I know that personally, my preference here is pretty much "no
>> preference".)
> 
> You gathered:
> http://lists.w3.org/Archives/Public/public-rdf-dawg/2009JulSep/0030.html
> 
> 
> http://lists.w3.org/Archives/Public/public-rdf-dawg/2009JulSep/0137.html
> 
> shows that one can be used to implement the other in the majority of 
> cases (it's the nested optionals case we had in SPARQL 1.0 in a 
> different guise) but we don't have a definition of MINUS to accurately 
> compare.  What's the cardinality in the results?
> 
> So it's not about implementation as I understand the problem space today.
> 
> I find it clearer to read and explain the EXISTS form - someone (Simon?) 
> said he'd asked the same of an SQL expert and EXISTS is better 
> understood by application writers than MINUS there.
> 
> The additional condition in MINUS ("dom(μ) and dom(μ') are disjoint") 
> concerns me because I don't know what's being "MINUSed" - it's not a 
> regular set/multiset operation and certainly not like SQL MINUS which is 
> set difference.

Thanks, Andy. If only I were as swapped in as the July 8, 2009 version 
of me :)

It sounds to me like you have good reasons for preferring EXISTS. I'd be 
inclined to move ahead the way the draft currently is (with EXISTS/NOT 
EXISTS), and to resolve this issue along with others as part of a Last 
Call decision down the road. In the meantime, if there is feedback from 
either outside the WG or inside the WG (I think Chime preferred MINUS?), 
we can spend more WG time on it.

Lee

Received on Wednesday, 3 February 2010 15:04:28 UTC