- From: Olivier Corby <Olivier.Corby@sophia.inria.fr>
- Date: Wed, 18 May 2011 09:04:00 +0200
- To: public-rdf-dawg@w3.org
- Message-ID: <4DD36F60.6030003@sophia.inria.fr>
Action 463: remarks about SPARQL 1.1 Federated Query document for LC.
http://www.w3.org/2009/sparql/docs/fed/service.xml
Best regards,
Olivier
1.1.1 Namespaces
from the SPARQL1.1 Query
->
from the SPARQL 1.1 Query
-- add a " "
1.1.3 Terminology
The following terms are defined in SPARQL Query Language 1.1
->
SPARQL 1.1 Query Language
Solution Mapping (corresponds to the Concepts and Abstract Syntax term
"RDF URI reference")
->
IRI (corresponds to the Concepts and Abstract Syntax term "RDF URI
reference")
2.1 Simple query to a remote SPARQL endpoint
the people I know
->
the people we know
and I want to combine
->
and we want to combine
2.2 SPARQL query with OPTIONAL to two remote SPARQL endpoints
Data in default graph at service: <http://people.example/sparql>
->
<http://people.example.org/sparql>
Query:
SERVICE <http://people.example/sparql> {
->
SERVICE <http://people.example.org/sparql> {
2.3 Variable Services
http://projects1.example/SPARQL
->
http://projects1.example.org/SPARQL
same for projects2 and projects2
2.3 Variable Services
This query, on the data above, has four solutions:
->
three solutions
2.4 Boundedness Condition
For example, the SPARQL graph pattern
->
For example, in the SPARQL graph pattern
?Y is not strongly bound
->
add a reference to the definition of strongly bound below
{ ?X :p :o SERVICE ?Y { ?Z :p :o } SERVICE ?X { ?Y :p :o } } The
->
a "." is missing before The
2.5 Service Execution Failure
unbounded
->
unbound
If the 'SILENT' token it is not present
->
If the 'SILENT' token is not present
Data in <http://people.example/sparql> endpoint:
->
http://people.example.org/sparql
2.6 BINDINGS
SPARQL 1.1 Query includes the BINDINGS clause (Section 18.2.5.6 BINDINGS)
->
Section 10.2 BINDINGS
3.1 Definition of SERVICE
Tranform(syntax form):
->
Tranform (syntax form):
Section 18.2.2.4 Translate Graph
->
Section 18.2.2.5
(may be not a good idea to duplicate section numbers as they may change)
Let SilentOp := boolean, SERVICE indicating error behavior.
->
Let SilentOp := boolean, indicating SERVICE error behavior.
Example: a SERVICE graph pattern in a series of joins:
... WHERE { { ?s :p1 ?v1 } SERVICE <srvc> {?s :p2 ?v2 } { ?s :p3 ?v2 } }
Join( Service( <srvc>,
BGP( ?s :p1 ?v1 ),
BGP( ?s :p2 ?v2 ), false ),
BGP( ?s :p3 ?v2 ) )
->
BGP( ?s :p1 ?v1 ) should not be inside service
Example: a SERVICE SILENT graph pattern in a series of joins:
same remark as above
Definition: Evaluation of a Service Pattern
vars is the set of variables in pattern P
->
I think that vars should be the variables in-scope in P because they are
used as "select vars where P"
if IRI is a SPARQL service
Service(IRI,G,P,SilentOp)) = Invocation( IRI, vars, P, Bindings(G,
vars), SilentOp )
->
eval(D(G), Service(IRI,G,P,SilentOp)) = Invocation( IRI, vars, P,
Bindings(G, vars), SilentOp )
The evaluation of graph uses the SPARQL algebra union operator.
->
The evaluation of service
Definition: Strongly bound variable
P = P1 GROUP BY E1 ... n
->
P = P1 GROUP BY E1 ... En
(what I want say here is that it is not possible to guarantee that a
variable will be bounded after a SERVICE execution).
->
(It is not possible to guarantee that a variable will be bounded after a
SERVICE execution).
UNBOUND is not a possible value for a ?Xi in BindingValues.
->
UNBOUND is not a possible value for ?Xi in BindingValues.
P = GRAPH ?X { P1 } and ?X is strongly bound
->
P = GRAPH ?X { P1 }
Definition: Service safeness
it hold that
->
it holds that
4.1 Grammar
The formal definition for the SPARQL 1.1 Federated Query grammar is
provided with the SPARQL 1.1 Query grammar
->
add a "." at the end
It is a syntax error if to use
->
It is considered as a syntax error to use
as the first argument to a
->
as the first argument of a
5 Conformance
See section 7 Internet Media Type for conformance to the
application/sparql-query media type.
->
there is no such section 7, should be removed
SPARQL 1.1 Query Language for RDF
->
SPARQL 1.1 Query Language
6 Security Considerations (Informative)
SPARQL Query 1.1 [SQRY] Section 18
->
SPARQL 1.1 Query [SQRY] Section 21
Received on Wednesday, 18 May 2011 07:04:29 UTC