Re: [SKOS, SPARQL, ALL] Closure and SPARQL

On 8 Dec 2005, at 15:09, Christoffel Dhaen wrote:
> As far as I know, RDF does not allow you to state that a property  
> is transitive, but the RDF schema itself has 2 transitive  
> properties: rdfs:subClassOf and rdfs:subPropertyOf.

True: these are fixed properties that are by definition transitive.  
But what if you want to ask for a descendant (which is the transitive  
closure of a "child" property) when in the RDF graph yoy have only  
the "child" property (which is not transitive)? This is exacttly the  
classical example calling for a transitive closure operator in the  
query language.

> I could be horribly wrong here, but one of the use-cases listed is:
> "2.17 Building Ontology Tools (Semantic Web)"
> It says: "Some parts of the ontology editor require the transitive  
> closure of the query and other parts do not."
>
> Imho, a lot of applications will require the transitive closure of  
> the query.

Perfectly true. The main problem here is that the existence of a  
transitive closure operatore raises the data complexity of the query  
language beyond SQL (it becomes of the same complexity as datalog).

> I don't think I said that RDF and OWL express transitive closure,  
> but they do express transitivity.

This does not help. You want the transitive closure of existing non  
transitive properties (see the example of "child").

> And indeed, the transitive closure of the transitive properties is  
> what I would expect to find in a query language for RDF.

Sure, but it ain't easy: you need a full fledged "graph" query  
language (see, e.g., [1]), while I guess that SPARQLl suffers of a  
mixed origin: a bit of SQL/relational data model and a bit of graph  
data model.

cheers
--e.

[1] C Gutierrez, C Hurtado, AO Mendelzon. Foundations of Semantic Web  
Databases. PODS'04

Received on Thursday, 8 December 2005 22:58:24 UTC