- From: Steve Harris <S.W.Harris@ecs.soton.ac.uk>
- Date: Fri, 1 Oct 2004 18:17:16 +0100
- To: DAWG public list <public-rdf-dawg@w3.org>
On Fri, Oct 01, 2004 at 01:01:44 -0400, Kendall Clark wrote: > > On Thu, Sep 30, 2004 at 03:45:20PM +0100, Steve Harris wrote: > > > Simple algorithm for conveting a disjuntive expression to one expressed on > > optionals: take any common part of each branck of the disjunction, express > > that as the must-bind part, place each of the remaining parts of the > > disunction as an optional subgraph. You may then need to apply some value > > constraints to reduce the set to the answer your interested in. eg: > > Okay, but surely the, uh, "smart" thing to do here is for you to treat > syntactic disjunction in this way, i.e., rewrite the query according > to this algorithm before executing it, instead of requiring the Poor > Dumb User (i.e., *me*) to do it? That's a good point, but algorithm was too strong a term, the easily implementable part only produces a superset of the results, they then need to be winnowed, which I dont have a mechanistic transform for. There is a (fairly) simple transform from disjuntive expressions to a set of conjunctive ones, but it explodes the number of queries needed dramatically. In any case, I'm not convinced that users generally think in terms of graph level disjunction, as I said I've not had requests for it. SQL has no equivalent syntaxic form to graph disjunction, and I havent seen any calls for it. It doesn have left joins though (optional), and union queries (multiple SELECTs per query). > We have 2.13 and 3.13 in UC&R that imply disjunction in SPARQL. I > haven't heard enough to disregard that. 2.13 can be answered just as well with []'s, and 2.13 is the justification for 3.13. - Steve
Received on Friday, 1 October 2004 17:17:18 UTC