Re: Comments on 9 "Specifying RDF datasets" (CR 6 Apr 2006)

Fred Zemke wrote:
> 
> 
> 
> 9 Specifying RDF datasets
> The text could be clearer about where the default graph comes from. 
> The first paragraph hints at this, but the description is cloudy
> because of the use of "may".  Thus the first sentence says
> "A SPARQL query may specify the dataset
> ...".  The use of "may" in this sentence evidently refers to the
> user, who "may" choose to use the FROM clause.

Correct - a FROM (or FROM NAMED) clause is not required in a query.  The
dataset can be associated with the query outside of the SPARQL language.

See also section 2.1.2 in the protocol document:
http://www.w3.org/2001/sw/DataAccess/proto-wd/#SparqlQuery


>  Third sentence
> "The RDF dataset may also be specified in a SPARQL protocol
> request".  Does this mean that it is the user's responsibility
> to use at least one of these two techniques?  What happens if the
> user uses neither?  Is this an error?

No, it's not an error.

There has to be a dataset to execute the query against - that can be given in
the query itself with FROM/FROM NAMED or the local system may associate the
dataset with the query in some way but that is outside the definition of
SPARQL Query Language.

The cases where there are alternatives choices are covered in the protocol doc
- there are 3 cases: in the protocol request, in the query, and some default
for that service endpoint.  The dataset is chosen in that order.

> Or perhaps this would mean
> the default graph is empty?  Or does some implementation-defined
> default kick in?  The precise rules for determining the default
> graph need to be specified.
> 
> 
> 9 Specifying RDF datasets
> There is no statement of the formal semantics of the FROM clauses.

The FROM and FROM NAMED clauses don't behave quite the same.

Because FROM NAMED associates a name with a graph (indirectly via it's
representation), the graph from FROM NAMED is exactly the graph obtained from
that that web resource.  TheFROM case is weaker - the FROM clauses presents
one or more graphs to the query processor which uses them to construct the
default graph.  That graph may be merge of the presented graphs, the RDFS
closure of the graphs or some other combination.  Because it is not named,
there is no need rigid requirement from web architecture coming into play.

	Andy

> 
> Fred
> 


Proposed reorganisation changes:

I have reorganised sections 7/8/9 in rq24 to rebalance things: section 9 in
rq24 conatins all the material from the rq23 sections 7/8/9, and the
specifying subsection is before the querying (GRAPH) subsection.

Received on Monday, 24 July 2006 09:35:32 UTC