W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > April to June 2005

Re: V. odd example

From: Bijan Parsia <bparsia@isr.umd.edu>
Date: Wed, 13 Apr 2005 08:53:17 -0400
Message-Id: <a29086403f484e53347c304247ad9f0a@isr.umd.edu>
Cc: DAWG Mailing List <public-rdf-dawg@w3.org>
To: andy.seaborne@hp.com

On Apr 13, 2005, at 4:14 AM, Seaborne, Andy wrote:

> Bijan Parsia wrote:
>> http://www.w3.org/2001/sw/DataAccess/rq23/#GraphPatternMatching
>> I find the example:
>> 	SELECT ?x ?v WHERE ( ?x ?x ?v )
>> against
>> 	rdf:type rdf:type rdf:Property .
>> and
>> 	rdfs:seeAlso rdf:type rdf:Property .
>> To be a bit abstruse, involving reflection on the rdf syntax. Perhaps 
>> the following would do just as well, and be more in the spirit of the 
>> other examples:
>> 	SELECT ?x ?v WHERE ( ?x ?v ?x)
>> against:
>> 	:bob ns:loves :bob
>> and
>> 	:bob ns:loves :mary
>
> I will see about a new example.

Great! All I care about is that it's not tricky.

>> (Actually, I don't know how this query would behave/ought to behave 
>> in the presense of equivalentTos and other OWLisms)
>
> Is there an example you woudl provide to illusrate the problems?

Not really. I can't remember what I was thinking.

> As an RDF query language, all that matters is the appearance of the 
> graph to graph pattern matching.  How that graph came about is outside 
> pattern matching.

This relies on always getting a graph of the right form. I'm unclear 
how well this works with more expressive languages. It is something I 
am investigating.

(Of course, the simplest thing to do is to be very conservative about 
queries. So, for example, in OWL DL, since in the *abstract model*, the 
only triply part is the ABox, perhaps one should fail all the queries 
that reflect on the tbox or on class expression syntax. That's viable, 
I think.)

>> In any case, something a bit more concrete seems to be in order.
>> Actually, you could just have
>> 	SELECT ?x ?v WHERE ( ?x foaf:knows :mary)
>> against
>> 	:bob foaf:knows :mary.
>
> That is a bit odd because FOAF is typically bNodes for people, not 
> URIs. Generally, we have tried to use FOAF in "the usual way" (an 
> undefined term :-).

Yes, sorry. I was just trying to grap a known term. So

SELECT ?x WHERE (?x dc:creator "Dance Steps for the Legally Clumsy")

against
	:trippy  dc:creator "Dance Steps for the Legally Clumsy"

and

	:trippy dc:creator "How to Wear your hat"

The main point being is that match failure can be done with a single 
variable or no variable.

Cheers,
Bijan.
Received on Wednesday, 13 April 2005 12:53:20 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:23 GMT