scoping set for the graph selector variable of a GRAPH pattern

In Perez et.al. "Semantics of SPARQL" Definition 3.9
item (3) second dashed bullet, I think it is saying that the
value of a graph selector variable in a GRAPH pattern
does not need to be in the scoping set; rather, it needs to
be among the names of named graphs.  I agree with this position.

For example

SELECT ?g
FROM NAMED <g1>
FROM NAMED <g2>
SELECT { GRAPH ?g { 'Tom' <loves> 'Mary' } }

the query asks which graphs know that Tom loves Mary.
I do not believe there is any requirement for the value of
?g to be in the scoping set, that is, the RDF terms of the
default graph, which in this particular query will default to
some system default graph.  I see no reason to demand that
?g must be mapped to some term in the default RDF graph.
I see no reason to expect that the default RDF graph is
even aware of the two named graphs <g1> and <g2>.

Of course if ?g was also constrained by appearing in some basic
graph pattern, then the constraints on pattern matching the BGP
would also come into play and ?g would need to match a term
of the graph in which the BGP is evaluated.

Fred

Received on Friday, 10 November 2006 19:02:01 UTC