Re: from named and graph pattern

Olivier Corby wrote:
> I have a question regarding from named and graph pattern. What happens 
> when the graph pattern first argument is an URI that does not belong to 
> the from named list (here, URI3) :
> 
> FROM NAMED URI1
> FROM NAMED URI2
> select * where {
>     graph ?src { PAT }
>     graph URI3 { PAT }
> }
> 
> 
> My question is : does the graph URI3 pattern fail ? I think that it is 
> not easy to answer this question.
> 
> The paragraph below seems to say that it should fail because D[IRI] is 
> not  in D ? Is it what we want ?
> 
> 12.5 Evaluation Semantics
> 
> Definition: Evaluation of a Graph Pattern
> 
> eval(D(G), Graph(IRI,P)) = eval(D(D[IRI]), P)
> 
> 
> Best regards,
> 
> Olivier Corby
> 

Olivier,

This could be more clearly expressed in sec 12 and I've added it to the
editorial changes list.

The evaluation of eval(D(G), Graph(IRI,P)) for IRI not an IRI of a graph in
the dataset should be the empty multiset.

The results need to be the same as applying a filter which restricts the
graph URI:

   GRAPH ?g {  pattern }
   FILTER ( ?g = <uri> )

and

   GRAPH <uri> {  pattern }

need have the same results, except that the first has ?g bound to <uri>.

In the algebra:

(filter (= ?g <uri>)
    (graph ?g ... ))
and
    (graph <uri> ...)

or for that matter the hypothetical quad form:

(filter (= ?g <uri>)
    (quadpattern [quad ?g ?s ?p ?o]))
and
    (quadpattern [quad <uri> ?s ?p ?o]))

	Thanks for pointing this out,
	Andy


-- 
Hewlett-Packard Limited
Registered Office: Cain Road, Bracknell, Berks RG12 1HN
Registered No: 690597 England

Received on Tuesday, 22 May 2007 10:14:52 UTC