Re: how to specify that in SERVICE VAR how we query all possible sparql endpoints

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