Querying reified statements

Hi all,

I've been following the various proposals for querying RDF (RDFDB,
Squish, RQL, RDFQuery etc) and was wondering if anyone has given any
thought to querying reified statements.

For example, I can use on of the SQL-like query languages for getting at
John Smith's age

  [John Smith --age--> 42]

  select ?x where (JohnSmith age ?x)

But if I wanted a query along the lines of "What do people say John
Smith's age is?" I would need something like:

  select ?a where (?x rdf:type Statement)(?x rdf:subject JohnSmith)(?x
rdf:predicate age)(?x rdf:object ?a)

which even for this trivial example is getting complex.  I'd like a way
of 'drilling down' through reification, possibly through multiple layers
(A says that B says that John Smith is 42...).

Perhaps the solution is to 'flatten' an RDF model containing reified
statements (applying filters according to the origin of the statements
or other criteria) to generate a model without any reifications, which
can be queried easily.  This could be done explicitly, or we could have
a Virtual Model which acts as a filtered interface to one or more actual
models?

Or have I missed a point or two somewhere?

Regards,

David Allsopp

-- 
Dr David Allsopp
DERA Malvern

Received on Wednesday, 13 December 2000 07:28:11 UTC