- From: Olivier Corby <Olivier.Corby@sophia.inria.fr>
- Date: Wed, 19 Apr 2006 18:19:24 +0200
- To: public-rdf-dawg-comments@w3.org
I have some comments on the SPARQL CR. Best regards, Olivier In the table of content, this link fails : 4.3 Evaluation Order In the Introduction, RDFS is not mentionned at all, one may wonder why. 2.1.8 The term "binding" is used as a descriptive term to refer to a pair of (variable, RDF term). I would say (removing the of) : refer to a pair (variable, RDF term). 2.5 An E-entailment regime is a binary relation between subsets of RDF graphs. Why not just sets of RDF graphs ? 2.5.4 with the scope of the blank node label being the basic graph pattern. This sentence is misleading because in general the scope of a blank node label is the whole query. 2.5.7 Blank nodes in the results of a query are identical to those occurring in the dataset graphs, but this information cannot be used by an application or client which receives these results, since all blank nodes in subsequent queries are treated as being local to that query. I would say (but I am not sure) : since all blank nodes in subsequent query results are treated as being local to each query result. 2.8.4 RDF Collections The list pattern generates a closed list which systematically ends with rdf:nil It could be possible to consider open list and closed list patterns. A closed list pattern could end with . (new syntax) and generate a list that ends with rdf:nil, as in the spec : (1 ?x 3 4 .) an open list pattern (1 ?x 3 4) does not end with rdf:nil. 5 Optionnal pattern Suppose the following case : Data: _:a foaf:name "Jules" _:a foaf:friend _:b _:b foaf:mbox "jules@nowhere.com" _:c foaf:mbox "jim@somewhere.com" Query: select ?x ?m where { ?x foaf:name ?n . { optional { ?x foaf:friend ?y } } . { optional { ?y foaf:mbox ?m } } } It is not completely clear to me from the spec whether this is a solution : ?x ?m _:a "jim@somewhere.com" On one hand, the first optional binds ?y to _:b and hence the second optional has only one solution. But on another hand, the first optional is optional, hence the second optional can have its chance as the spec says that "There is no implied order of graph patterns within a Group Graph Pattern." 6.2 Query results involving a pattern containing GP1 and GP2 will include separate solutions for each match where GP1 and GP2 give rise to different sets of bindings. If sets of bindings are not different, what happens ? 8.4 of two, named graphs -> two named graphs 10 The query forms are -> The query result forms are SELECT Returns all, or a subset of, the variables bound in a query pattern match. A variable may be not bound in the result ... 10.1 The elements of a sequence of solutions can be modified by: 1. ORDER BY: put the solutions in order 2. Projection 3. DISTINCT: ensure solutions in the sequence are unique. 4. LIMIT: restrict the number of solutions processed for query results 5. OFFSET: control where the solutions processed start from in the overall sequence of solutions. applied in the order given by the list. I would put OFFSET before LIMIT in the list if they are to be applied in the order. 10.1.1 project(S, VS) = { (project(Si, VS) | i = 1,2, . . . n } a space is missing between 1 and 2 10.1.3 An ordering condition can be a variable or a function call. The grammar says that it can also be a BrackettedExpression Definition: Ordered Solution Sequence for Si, SJ the J is in cap letter, should be Sj 11.1 datatype IRI (corresponds to the Concepts and Abstract Syntax term "datatype IRI") Isn't it "datatype URI" (second occurrence) 11.4.8, 11.4.9 the the (twice)
Received on Wednesday, 19 April 2006 16:19:54 UTC