- From: Francis McCabe <frankmccabe@mac.com>
- Date: Tue, 9 Oct 2007 22:53:14 -0700
- To: public-rdf-dawg-comments@w3.org
This is a quote from the june 14th edition of the SPARQL document Let SP := list of algebra expressions for sub-patterns of the group Let F := all filters in the group (not in sub-patterns) Let G := the empty pattern, Z, a basic graph pattern which is the empty set. for each algebra sub-expression SA: If SA is an OPTIONAL, If SA is of the form OPTIONAL(Filter(F, A)) G := LeftJoin(G, A, F) else G := LeftJoin(G, A, true) Otherwise for expression SA, G := Join(G, SA) 1. The variable SP is not mentioned again in the algorithm, and presumably is not needed? 2. if SA is an algebra expression (as opposed to a pattern expression), then presumably it cannot be of the form OPTIONAL anything ... as one of the purposes of the algrebafication (sic) is to eliminate optional clauses 3. On the other hand, immediately prior to this is the suggestion that this is a recursive algorithm: A group pattern is mapped into the SPARQL algebra as follows: first, convert all elements making up the group into algebra expressions using this transformation process recursively, then apply the following transformation: which implies that algebrafication (sic again) has already taken place. 4. What exactly, is implied by: Let F := all filters in the group (not in sub-patterns) Does this mean that all FILTER(constraint) expression should be wrapped into a big conjunction prior to determining what to do with them? All in all, this section could do with some rigor. This should not be impossible. Frank McCabe
Received on Wednesday, 10 October 2007 05:53:34 UTC