Re: [OK?] Re: Error definition

Quoting Lee Feigenbaum <feigenbl@us.ibm.com>:

> Hello,
> 
> Thank you for your feedback. I've attempted to address your questions and 
> comments inline below.
> 
> ---
> Please respond indicating whether you are or are not satisfied with
> this response. If you are, you can help our issue tracking system by
> prefixing the subject of your response with [CLOSED] (where this
> subject has [OK?]).
> ---
> 
> Faisal Alkhateeb wrote on 06/14/2006 04:33:52 AM:
> 
> > 
> > Hi,
> > 
> > While reading the last version of SPARQL, I am surprised with the 
> following 
> > definition. I don't know if the semantics of RDF (and consequently 
> SPARQL) is 
> > changed.
> > 
> > 
> > Definition: Triple Pattern 
> > 
> > A triple pattern is member of the set:
> >     (RDF-T union V) x (I union V) x (RDF-T union V)
> > 
> > >From the above definition, the literals are allowed in the subject 
> position. 
> > However, they are not allowed in RDF. So, I want to know if it is a 
> > mistake or 
> > not?
> 
> As per the text following this definition at 
> http://www.w3.org/TR/rdf-sparql-query/#BasicGraphPattern:
> 
> """
> This definition of Triple Pattern includes literal subjects. This has been 
> noted by RDF-core.
> 
> "[The RDF core Working Group] noted that it is aware of no reason why 
> literals should not
>   be subjects and a future WG with a less restrictive charter may
>   extend the syntaxes to allow literals as the subjects of statements."
> 
> Any SPARQL triple pattern with a literal as subject will fail to match on 
> any RDF graph.
> """
> 
> That is to say, the syntax for triple patterns within SPARQL does indeed 
> allow literals as subjects, but because current RDF syntax does not allow 
> literal subjects, such a triple pattern will not match against an RDF 
> graph. 
> 
oK.

> > - For blanks in SPARQL, I want to know if they act as variables or not, 
> that 
> > is, if a blank can be mapped to any RDF term (or just to a resource)? I 
> need 
> > some explannation on that, because blanks = anonymous variables. What is 
> a 
> > resource? Is it a literal or an IRI or just an IRI?
> 
> Blank nodes in a triple pattern can match any type of RDF Term (URI 
> reference, (plain or typed) literal, or blank node) in the target dataset. 
> (This is a consequence of the simple-entailment based definition of 
> pattern matching in http://www.w3.org/TR/rdf-sparql-query/#BGPgeneral and 
> the definitions of simple entailment and graph instances as per
> http://www.w3.org/TR/2004/REC-rdf-mt-20040210/#entail and 
> http://www.w3.org/TR/2004/REC-rdf-mt-20040210/#graphdefs .)
> 
> For the most part, then, blank nodes function as non-distinguished 
> variables, with the caveat be that blank node labels are scoped only to 
> basic graph patterns. (Therefore, for instance { { _:a :p :o } { _:a :p2 
> :o2 } } is the same graph pattern as { { _:a :p :o } { _:b :p :o } }.
>  

oK.

> > - Is the case that blanks are not allowed in the predicate position?
> 
> SPARQL does allow blank nodes in the predicate position of triple 
> patterns. As per http://www.w3.org/TR/rdf-sparql-query/#BasicGraphPattern:
> 
> """
> This definition also allows blank nodes in the predicate position.
> """
> 

I think the definition does not allow blank nodes in the predicate position.


> thanks,
> Lee
> 
> 
> > 
> > Best regards,
> > Faisal Alkhateeb
> > Ph.d. student, INRIA Rhône-Alpes
> > 
> 
> 
> 
> 

Received on Thursday, 15 June 2006 07:51:09 UTC