Re: Semantic Web Phase 2 Activity - Protocol - Query Language

Leo Sauermann wrote:
> If you query
> (?x foaf:firstname ?y) (?x foaf:image ?z)
> I want to retrieve something like:
> x:
> y: "Leo"
> z: 
> or
> x:
> y: "Leo"
> z: null
> but with today's RDQL this is more complicated:
> if there is no <foaf:image> triple for leo, you don't get any data at
> all.
> :-0
> AND THAT IS A PROBLEM, if you have ever programmed RDQL, thats the first
> thing you curse.
> because you can't retrieve a set of properties, you have to formulate
> queries for every single property, its just lame.

The SeRQL query language supports this kind of thing since the latest
release of Sesame[1]. It allows you to flag specific path expressions as
optional. A SeRQL query for the situation described above would be:

select x, y, z
from {x} <foaf:firstname> {y};
         [<foaf:image> {z}]

With the square brackets indicating an optional path expression.

For more info, see the SeRQL query language description at:

Is this the type of thing that you are looking for?


Arjohn Kampman


Aduna B.V. (formerly known as aidministrator) -
prinses julianaplein 14-b, 3817 cs amersfoort, the netherlands
tel. +31-(0)33-4659987  fax. +31-(0)33-4659987

Received on Wednesday, 12 November 2003 10:44:46 UTC