- From: Bernard Vatant <bernard.vatant@mondeca.com>
- Date: Mon, 08 Jan 2007 18:52:02 +0100
- To: Dave Reynolds <der@hplb.hpl.hp.com>
- Cc: Semantic Web <semantic-web@w3.org>, Marc <marc@geonames.org>
Dave Thanks again for those detailed explanations which make perfect sense to me. So I will come up now with two versions of geonames ontology, one in OWL-Lite and one in OWL-Full. The difference being the following block in the OWL-Full version, containing the declaration of rdfs:label subproperties. As you say, explicit and easy to maintain. <!-- OWL-Full part --> <!-- Declaration of subproperties of rdfs:label --> <!-- Remove to use with OWL-DL tools --> <rdf:Description rdf:about="#name"> <rdfs:subPropertyOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#label"/> </rdf:Description> <rdf:Description rdf:about="#alternateName"> <rdfs:subPropertyOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#label"/> </rdf:Description> <rdf:Description rdf:about="http://www.w3.org/2004/02/skos/core#prefLabel"> <rdfs:subPropertyOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#label"/> </rdf:Description> <rdf:Description rdf:about="http://www.w3.org/2004/02/skos/core#altLabel"> <rdfs:subPropertyOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#label"/> </rdf:Description> <!-- End of OWL-Full part --> As for the option ... "The second alternative is to stick to OWL/full and ask the editor maintainers nicely if they could arrange to round trip your OWL/full files without breaking quite so badly. " I've read enough remarks during Protégé+OWL plugin development that I had "exotic requirements", so I decided at some point to avoid any further feature request. ;-) Cheers Bernard Dave Reynolds a écrit : > > Hi Bernard, > >>> Well in a sense the point of Annotation properties is that they >>> don't really carry any semantics, that's why they can be safely used >>> in DL. >> I understand that. So according to you, declaration of annotation >> subproperties cannot bear any semantics. > > Note the various "in DL" qualifications. > > It's true that in OWL/full you can have something which is an > owl:AnnotationProperty and can use it in rdfs:subClassOf relations. > The point is that as soon as you do so you are back in OWL/full. Since > the only point of owl:AnnotationProperty is to allow you do some > annotation while sticking in OWL/DL then if what you are trying to do > is in OWL/full anyway I don't see much point to trying to use the > annotation mechanism at all. Just stick to plain rdf:Property as in > your second example. > >> So would you recommend to avoid such declarations altogether? And in >> this case, what do I do about Tim's request for such declarations to >> be present in order to make Tabulator happy? > > Fundamentally by extending rdfs:label you are in OWL/full, I don't > think there is a way round that. Personally many things I do with OWL > end up in OWL/full and generally I don't find that to be a fatal problem. > > One approach in your case might be to partition your ontology. Keep > most of it in DL (O-DL.owl) and edit that with DL editors. For those > few axioms which break DL put this in a separate file (O-full.owl). > Then the ontology you publish (O.owl) can a simple top level file > which owl:imports both the O-DL and O-full fragments. > > The chances are the O-full fragment will be very small and easy to > maintain manually. From your example so far its only axiom might be: > > <rdf:Property rdf:about="http://www.example.org/ontology#altName"> > <rdfs:subPropertyOf > rdf:resource="http://www.w3.org/2000/01/rdf-schema#label"/> > </rdf:Property> > > That way general semantic web browsers such as Tabulator get the whole > picture but you can still use DL editors for most of your work and > people who need OWL/DL compliance have any easy partition of your > ontology that they can work with. > > If I remember correctly that's sort of what Dan et al did with foaf to > get round the limitations of owl:InverseFunctionalProperty. > > The second alternative is to stick to OWL/full and ask the editor > maintainers nicely if they could arrange to round trip your OWL/full > files without breaking quite so badly. > >>>> a:myProperty1 rdfs:subPropertyOf b:yourProperty2 >>>> b:yourProperty2 rdf:type ex:SomePropertyType >>>> >>>> Does the above entails in RDFS >>>> >>>> a:myProperty1 rdf:type ex:SomePropertyType >>>> >>>> ?? (I guess yes, but maybe I'm wrong) >>> >>> No. For example, instead of ex:SomePropertyType consider >>> owl:TransitiveProperty then there is no reason why a subProperty of >>> a transitive property should itself be transitive. >> OK I see an example >> >> ex:ancestorOf rdf:type owl:TransitiveProperty >> ex:fatherOf rdfs:subPropertyOf ex:ancestorOf >> >> and ex:fatherOf is not a transitive property. > > Exactly. > >> So there is no formal opposition (in OWL-Full) to have a >> owl:DatatypeProperty being a subproperty of rdfs:label, even in an >> ontology where annotation, datatype and object properties are disjoint. > > In OWL/DL then annotation, datatype and object properties are disjoint > so you can't have a datatype property as a subproperty of rdfs:label. > Indeed you can't have a subproperty of rdfs:label, period. > > In OWL/full they are not required to be disjoint. > > If by "even in an ontology where ... are disjoint" you mean you are > explicitly declaring them yourself to be disjoint then you would have > an inconsistency even in OWL/full. However, I doubt you are doing that. > >> Well I guess I am not the only one to get this wrong, if I judge by >> the way RDF tools handle this. > > Careful now, the tools that gave you problems were OWL/DL tools not > RDF tools. I do agree that it would be better if OWL/DL editors > degraded more gracefully when faced with OWL/full. > >> Are such examples documented somewhere? > > Examples of tricks you can/can't play with AnnotationProperties? > Not that I know of. If you are in DL you can't do anything with them > except annotate and if you are not in DL you probably wouldn't use > them in the first place. > > Dave -- *Bernard Vatant *Knowledge Engineering ---------------------------------------------------- *Mondeca** *3, cité Nollez 75018 Paris France Web: www.mondeca.com <http://www.mondeca.com> ---------------------------------------------------- Tel: +33 (0) 871 488 459 Mail: bernard.vatant@mondeca.com <mailto:bernard.vatant@mondeca.com> Blog: Leçons de Choses <http://mondeca.wordpress.com/>
Received on Monday, 8 January 2007 17:52:11 UTC