- From: Bernard Vatant <bernard.vatant@mondeca.com>
- Date: Tue, 17 Jun 2014 15:10:41 +0200
- To: Semantic Web <semantic-web@w3.org>
- Message-ID: <CAK4ZFVGMoeG0UYhW=xLFXEeMaRdb1pL5Fd7CEo2vE47HRbut1g@mail.gmail.com>
Hi all Sorry this looks like a permathread on namespaces and URIs, but hopefully someday someone will come out with a definitive and convincing explanation which will enlighten my old brain. We've been looking more closely in the OWL namespace publication, for inclusion into LOV cloud [1]. We'd been reluctant so far to include RDF, RDFS and OWL RDF schemas as ordinary LOV citizens, because of their particular status, but we are now experimenting it, in order to capture some information on how various vocabularies use RDFS or OWL, for example. In LOV we have some pragmatic rules, which are as difficult to figure as to enforce, to find out the vocabulary URI and the vocabulary namespace. They can be the same, or quite the same (differing by a final # or /, for example), or completely different. In the best of worlds, the vocabulary URI and the vocabulary namespace dereference ultimately to the same RDF file. Sometimes, the vocabulary URI dereferences, but not the namespace (in case of purl URIs, crazy things happen etc) We tend to trust what the vocabulary publisher declares, if it's consistent. If the vocabulary RDF file contains one predicate (?uri a owl:Ontology), and ?uri is dereferencing properly with or without conneg to the said file, we take ?uri to be the vocabulary URI. In the case of OWL either http://www.w3.org/2002/07/owl or http://www.w3.org/2002/07/owl# dereference to the same Turtle file, in which one can read : <http://www.w3.org/2002/07/owl> a owl:Ontology (A1) So far so good. From the previous rule, we take http://www.w3.org/2002/07/owl to be the vocabulary URI, and http://www.w3.org/2002/07/owl# the associated namespace (defined in the prefix declarations). But, in the OWL elements definition, we read e.g., owl:Class a rdfs:Class ; rdfs:isDefinedBy <http://www.w3.org/2002/07/owl#> One would expect http://www.w3.org/2002/07/owl as the object of rdfs:isDefinedBy, to be consistent with (A1) above. It figures : - Are http://www.w3.org/2002/07/owl# and http://www.w3.org/2002/07/owl equivalent URIs? IOW should a RDF application (e.g., the LOV-Bot) consider them as the same resource? - If no, what is the rationale of using one here and the other there? - If yes ... same question :) In the current state of affairs, in LOV we add automatically in the back-end triple store a triple (?x rdfs:isDefinedBy ?uri) to every element ?x (class or property) found in a vocabulary, with ?uri being the vocabulary URI as above defined. Those triples add to the ones already declared in the vocabulary itself, if any (most of the time there are no such declarations). In the OWL case we will eventually have in the triple store the two following triples, one declared and the other one inferred : owl:Class rdfs:isDefinedBy <http://www.w3.org/2002/07/owl#> owl:Class rdfs:isDefinedBy <http://www.w3.org/2002/07/owl> This is noisy at best. The question is : should LOV change its rules regarding namespaces and URIs, or is the OWL schema broken? Thanks for your attention [1] http://lov.okfn.org/dataset/lov/details/vocabulary_owl.html -- *Bernard Vatant* Vocabularies & Data Engineering Tel : + 33 (0)9 71 48 84 59 Skype : bernard.vatant http://google.com/+BernardVatant -------------------------------------------------------- *Mondeca* 35 boulevard de Strasbourg 75010 Paris www.mondeca.com Follow us on Twitter : @mondecanews <http://twitter.com/#%21/mondecanews> ----------------------------------------------------------
Received on Tuesday, 17 June 2014 13:11:31 UTC