- From: Andy Seaborne <andy.seaborne@epimorphics.com>
- Date: Fri, 29 Jul 2011 13:50:05 +0100
- To: Carlos Buil Aranda <cbuil@fi.upm.es>
- CC: public-rdf-dawg@w3.org
Comments on v1.65. Overall: 1/ the SERVICE/BINDINGS relationship example needs changing - suggestion below. 2/ Some editorial things in passing. Other than that, it looks good-to-go to me. Andy ** Abstract s/of a SPARQL/of SPARQL/ ** Intro "consumers" -> "data consumers" "joined with results" -> "combined with results" Both are correct but at this level, join seems a bit techy. s/.././ at end of para. ** 2.2 "Data in default" -> "Data in the default" "and data in default" -> "and data in the default" ** 2.3 "SILENT token" -> "SILENT keyword" token a feature of parsing ** 2.4 "BINDINGS" -> "<tt>BINDINGS</tt>" "SERVICE and BINDINGS are combined" -> "SERVICE and BINDINGS can work together" Example: (this is a rough outline and needs editing to fit it into the document) [NB: No BINDINGS no OPTIONAL in the top level query] Suppose we have the query: PREFIX : <http://example.org/> PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?s ?o { ?s a foaf:Person SERVICE <http://example.org/sparql> {?s foaf:knows ?o } } [NB: No BINDINGS no OPTIONAL. An implementation may choose to execute this as: 1/ Determine that "?s a foaf:Person" has 3 answers, :a :b :c 2/ Instead of asking {?s foaf:knows ?o } at the remote endpoint, it restricts ?s by using BINDINGS: PREFIX : <http://example.org/> PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT * { ?s foaf:knows ?o } BINDINGS ?s { (:a) (:b) (:c) } If <http://example.org/sparql> contains a very large database, {?s foaf:knows ?o } may result in very large set of results. By passing over restricts for :s, the query process involding SERVICE limits the data returned to the data it needs for the overall query. Andy
Received on Friday, 29 July 2011 12:50:41 UTC