- From: Aidan Hogan <aidan.hogan@deri.org>
- Date: Thu, 30 Jan 2014 15:42:11 -0300
- To: Enrico Franconi <franconi@inf.unibz.it>
- CC: PAUL WARREN <paul.w.warren@btinternet.com>, Dave Reynolds <dave.e.reynolds@gmail.com>, "semantic-web@w3.org" <semantic-web@w3.org>
On 30/01/2014 14:55, Enrico Franconi wrote: > > On 30 Jan 2014, at 16:29, Aidan Hogan <aidan.hogan@deri.org> wrote: > >> Paul, I think Dave's advice is sound: as tempting as it might be, it is *not* helpful to talk about OWL subsumption using phrases like inheritance. This will do more harm than good (esp. since the counter-examples will heavily outweigh the examples). > > Not really. > "Inheritance" (in the object oriented sense) holds true in DL: a property of all the *objects* of a superclass is inherited to all the *objects* of the subclass. > So, if class C is subsumed by class D, then if all the objects in class D have a property P, then all the objects in class C have the property P. > This is true in Java, description logics, OWL, Smalltalk, CLOS, etc. Yes but I think this is quite a jump away from the topic of the thread so far. We were discussing the (lack of) "inheritance" of transitivity in properties. Your argument specifically relates to one feature of OWL: someValuesFrom. Indeed there's some notion of "inheritance" in an object-oriented sense here (as well as for the other property-based restrictions on classes). But again this is only a subset of the features of OWL (and not the ones we were discussing). Some "features" of OWL are "inherited". Others are not. a sCO b. b equivClass c . ⊬ a equivClass c . a sPO b . b inverseOf c . ⊬ a inverseOf c . a sPO b . b equivProp c . ⊬ a equivProp c . a sPO b . b type SymProp . ⊬ a type SymProp . a sPO b . b type TransProp . ⊬ a type TransProp . ... ... I still maintain my original point that it is *not* helpful to talk about OWL subsumption using phrases like inheritance. :) Cheers, Aidan > cheers > —e. > > >> >> Hence why the "inheritability" of different OWL features isn't documented (and nor should it be). >> >> If you want a non-technical means of introducing the features of OWL, examples using IF -- THEN -- (i.e., rules) will give a sound but incomplete picture. Studying the rules in OWL 2 RL/RDF is a great starting point for anyone wanting to learn a bit about what the *key* entailments of the OWL (2) features are (and without having to get into the formal semantics): >> >> http://www.w3.org/TR/owl2-profiles/#Reasoning_in_OWL_2_RL_and_RDF_Graphs_using_Rules >> >> The OWL features mean more than what's represented in these rules, but IF you can understand these rules, THEN you'll have a working knowledge of OWL. >> >> (Unfortunately though, I feel we're fighting a losing battle with regards the didactic aspects of OWL in the broader sense of it being a *Web standard*. Perhaps the battle is even already lost.) >> >> Best, >> Aidan >> >> >> On 30/01/2014 05:43, PAUL WARREN wrote: >>> I have come across this problem recently in some work I have been doing >>> investigating people's understanding of OWL constructs. You can't >>> assume that property characteristics are inherited - some are (e.g. >>> functionality), some aren't (e.g. transitivity and symmetry). But I >>> have found no reference in any documentation to this fact. >>> >>> Cheers, >>> >>> Paul Warren >>> >>> ------------------------------------------------------------------------ >>> *From:* Dave Reynolds <dave.e.reynolds@gmail.com> >>> *To:* semantic-web@w3.org >>> *Sent:* Wednesday, 29 January 2014, 17:05 >>> *Subject:* Re: Deduced property >>> >>> OWL, and the underlying logic, are quite different from object oriented >>> modelling so using terms like "inheritance" can trip you up. Especially >>> when it comes to property axioms. >>> >>> In the RDF/OWL way of thinking then a property corresponds to set of >>> pairs of things that are related by the property. So saying >>> >>> :hasParent rdfs:subPropertyOf :hasAncestor >>> >>> means, and only means, that the set of pairs of things related by >>> :hasParent is a subset of the set of pairs of things related by >>> :hasAncestor. >>> >>> It's sets all the way down :) >>> >>> Dave >>> >>> On 29/01/14 16:47, Jean-Claude Moissinac wrote: >>>> OK >>>> I really thought that the transitivity was inherited. I will try to find >>>> where and how the non-inheritance is specified >>>> Thank you >>>> >>>> -- >>>> Jean-Claude Moissinac >>>> >>>> >>>> >>>> 2014-01-29 Matthew Horridge <matthew.horridge@stanford.edu >>> <mailto:matthew.horridge@stanford.edu> >>>> <mailto:matthew.horridge@stanford.edu >>> <mailto:matthew.horridge@stanford.edu>>> >>>> >>>> Hi Jean-Claude, >>>> >>>> Asserting >>>> >>>> :hasParent rdfs:subClassOf :hasAncestor >>>> >>>> and >>>> >>>> :hasAncestor rdf:type owl:TransitiveProperty >>>> >>>> does not mean that :hasParent is also transitive. Transitivity >>>> isn’t “inherited” down the property hierarchy, so it’s possible to >>>> have a non-transitive sub property of a transitive super property. >>>> >>>> Cheers, >>>> >>>> Matthew >>>> >>>> On 29 Jan 2014, at 08:30, Jean-Claude Moissinac >>>> <jean-claude.moissinac@telecom-paristech.fr >>> <mailto:jean-claude.moissinac@telecom-paristech.fr> >>>> <mailto:jean-claude.moissinac@telecom-paristech.fr >>> <mailto:jean-claude.moissinac@telecom-paristech.fr>>> wrote: >>>> >>>>> No, it's not the answer because hasAncestor is transitive and >>>>> hasParent isn't... >>>>> (I've a lot of similar situations) >>>>> >>>>> -- >>>>> Jean-Claude Moissinac >>>>> >>>>> >>>>> >>>>> 2014-01-29 Richard Cyganiak <richard@cyganiak.de >>> <mailto:richard@cyganiak.de> >>>>> <mailto:richard@cyganiak.de <mailto:richard@cyganiak.de>>> >>>>> >>>>> Jean-Claude, >>>>> >>>>> You’re looking for this (in Turtle syntax): >>>>> >>>>> :hasParent rdfs:subClassOf :hasAncestor. >>>>> >>>>> (Don’t try to read or write RDF/XML directly. You’ll go mad. >>>>> Use the friendly syntaxes such as Turtle, or graphical tools.) >>>>> >>>>> Best, >>>>> Richard >>>>> >>>>> >>>>> On 29 Jan 2014, at 16:18, Jean-Claude Moissinac >>>>> <jean-claude.moissinac@telecom-paristech.fr >>> <mailto:jean-claude.moissinac@telecom-paristech.fr> >>>>> <mailto:jean-claude.moissinac@telecom-paristech.fr >>> <mailto:jean-claude.moissinac@telecom-paristech.fr>>> wrote: >>>>> >>>>> > Sorry if my question is very naive, but I'm stuck on this >>>>> for a while >>>>> > if I go to examples in the document >>>>> http://www.w3.org/TR/2009/WD-owl2-primer-20090421/ >>>>> > I just want to add the following axiom (expressed here in my >>>>> syntax) >>>>> > if >>>>> > ?s :hasParent ?f >>>>> > Then >>>>> > ?s :hasAncestor ?f >>>>> > >>>>> > I've checked a lot of documents and I don't figure how to do >>>>> it (directly in XML/RDF or interactively with Protégé) >>>>> > >>>>> > Thank you in adavnace for your help >>>>> > >>>>> > -- >>>>> > Jean-Claude >>>>> > >>>>> >>>>> >>>>> >>>> >>>> >>> >>> >>> >>> >> >
Received on Thursday, 30 January 2014 18:42:36 UTC