W3C home > Mailing lists > Public > www-rdf-interest@w3.org > February 2001

Re: RDF IG meeting at W3C Technical Plenary 2001-02-28

From: David Allsopp <dallsopp@signal.dera.gov.uk>
Date: Fri, 09 Feb 2001 09:35:12 +0000
Message-ID: <3A83B9D0.5F70B50B@signal.dera.gov.uk>
CC: www-rdf-interest@w3.org


"Matola,Tod" wrote:

> 
> I agree as well. I have been leaning towards something like:
> RDF Query Specification [1]
> from Ashok Malhotra (IBM) <petsa@us.ibm.com>  and Neel Sundaresan (IBM)
> <neel@almaden.ibm.com>
> 
> Just wonder how others felt about it.

It doesn't seem realistic to write queries in that syntax (although you
could use that specification of triples, created from a more concise
syntax) - for example

  <rdfq:rdfquery>
        <rdfq:From eachResource="http://www.research.ibm.com/people/">
        <rdfq:Select>
        <rdfq:Property name="??BelongTo" />
        <rdfq:Select>
        <rdfq:Condition>
          <rdfq:greaterThan>
                <rdfq:Property name="Budget" />
                <rdf:Integer>1000000</rdf:Integer>
          </rdfq:greaterThan>
        </rdfq:Condition>
        </rdfq:Select>
        </rdfq:Select>
        </rdfq:From>
  </rdfq:rdfquery>

which might be expressed in an SQL-like syntax as something like:

  select ?x from http://www.research.ibm.com/people/ where
  (?x $$BelongTo ?y),(?x Budget >1000000)

> Second what would the result of such a query (regardless of the QL) be? A
> list of triples, a list of lists of triples, a RDF document or list of RDF
> documents?

From my perspective, working with software agents message-passing over a
network, it's useful to be able to return complete RDF document(s),
which an agent can merge into its own Model if required.  However, if
the agents are extracting information from their in-memory/on-disk
database for their own use, they just need primitive values (String,
int).  I think both styles are needed.

My own experimental query language implementation allows:

  select ?x ?y where (?x rdf:type abc:SomeType)(?x foo:bar ?y)

  select triples where (?x ...

  select reachable http://URI.of.some.resource/foo

The first form just returns the requested values as an array of
strings.  The second form performs the same query, but returns the
traversed triples, which can be collected in a Model, serialised and
sent to another agent.  The third form returns all the triples which are
reachable from some resource; very useful for my particular application
domain, as I don't want to have to send either multiple queries (given
that we may be communicating by message-passing over an unreliable slow
network) or excessively complex queries, to extract all the information
about a particular resource

Regards,

David Allsopp

-- 
The peason-molesworth space ship threatened by wild mercurian maths 
masters lies disabled in the onion bed of the kitchen garden. 
Meanwhile in the master's common room, Sigismund arbuthnot the mad 
maths master musters his rhomboids...
Received on Friday, 9 February 2001 04:40:29 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:47 GMT