- From: <Faisal.Alkhateeb@inrialpes.fr>
- Date: Thu, 15 Jun 2006 09:50:50 +0200
- To: Lee Feigenbaum <feigenbl@us.ibm.com>
- Cc: public-rdf-dawg-comments@w3.org
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