- From: Seaborne, Andy <Andy_Seaborne@hplb.hpl.hp.com>
- Date: Thu, 15 May 2003 17:41:23 +0100
- To: "'Alexander Jerusalem'" <ajeru@vknn.org>
- Cc: "'www-rdf-interest@w3.org'" <www-rdf-interest@w3.org>
Alexander,
> * Is there any way to specify ordering like with the SQL order by clause?
> * Am I right to assume that there is no support for aggregate functions?
You are right - RDQL does not have the features to sort or process the
values returned from a query. In Jnea, they are streamed back in the order
found and this may vary. As RDF does not constrain the data, results can be
a mix of plain string, resources or datatyped literals.
>* Would it be possible to query for all resources that do not have a
certain property?
Not really. RDF does not express negation and the triple patterns matched
on the graph also do not allow tests for the absence of something.
>* If I think of a TriplePatternClause in terms of SQL joins, does it
> have inner or outer join semantics? For example if I say:
>
>
> SELECT ?lastname, ?email
> WHERE
> (?r, <my:lastname>, ?lastname) ,
> (?r, <my:email>, ?email)
Both property values must exist - it is a graph pattern to match against the
RDF graph.
> * Does RDQL mandate anything with respect to inference along
> subPropertyOf/subClassOf lines or is this considered an implementation
detail?
The assumption is that inference happens in the triple interfgace to the
data being stored. It is not a feature of the query language.
RDQL just looks a bit like SQL - it isn't SQL. It is more about the
handling of the RDF than about handling after the values have been extracted
from the model.
Andy
-----Original Message-----
From: Alexander Jerusalem [mailto:ajeru@vknn.org]
Sent: 15 May 2003 12:00
To: www-rdf-interest@w3.org
Subject: Some RDQL questions
Hi,
I'm currently working on the (RDBMS based) storage backend of an OWL based
knowledge/content management system. So I'm looking around what components
are already there. I have come across RDQL but didn't find much in terms of
documentation. I have looked at the BNF and the jena tutorial but some
questions remain:
* Is there any way to specify ordering like with the SQL order by clause?
* Am I right to assume that there is no support for aggregate functions?
* Would it be possible to query for all resources that do not have a
certain property?
* If I think of a TriplePatternClause in terms of SQL joins, does it have
inner or outer join semantics? For example if I say:
SELECT ?lastname, ?email
WHERE
(?r, <my:lastname>, ?lastname) ,
(?r, <my:email>, ?email)
Will the lastname of ?r be included in the result set even if it has no
email address? Can I change this behaviour whichever it may be?
* Does RDQL mandate anything with respect to inference along
subPropertyOf/subClassOf lines or is this considered an implementation
detail?
Thanks in advance,
-Alexander
Received on Thursday, 15 May 2003 12:43:08 UTC