- From: Drew McDermott <drew.mcdermott@yale.edu>
- Date: Fri, 30 Jan 2004 14:09:34 -0500 (EST)
- To: www-rdf-logic@w3.org
> [Jeff Lansing] > Given the following OWL ontology (in an abstract syntax) is it possible > to determine anything about the overlap of the classes 'leg' and 'fin'? > > Ontology( > Class(animal) > Class(part) > Class(fin > subclassOf(part)) > Class(leg > subclassOf(part)) > Class(fish > subclassOf(animal) > complementOf(restriction(has someValuesFrom (leg))) > restriction(has someValuesFrom (fin))) > Class(reptile > subclassOf(animal) > complementOf(restriction(has someValuesFrom (fin))) > restriction(has someValuesFrom (leg))) > ObjectProperty(has > domain(animal) > range(part)) > DisjointClasses(fish reptile) > ) > > Presumably, if the writer went to the trouble of putting in the > distinguishing restrictions, they ('fin' and 'leg') have to be different > classes, but that's just presupposition, and not implication. > I think Lewis Carroll could have answered this one, possibly after a quick glance at the Owl manual. (Actually, translating your notation into Owl requires a few extra subclass statements. E.g., I think you meant Class(fish subclassOf(animal) subclassOf(complementOf(restriction(has someValuesFrom (leg)))) subclassOf(restriction(has someValuesFrom (fin))))) All you've said is that fish have fins and do not have legs, and similarly for reptiles, mutatis mutandis. So if there are any fish there must be fins that are not legs, and if there are any reptiles there must be legs that are not fins. But nothing is said about whether there are any things that are both fins and legs. > But is > there anything more that can be said? You can say Class(fin subclassOf(part) disjointFrom(leg)) Is that what you meant? -- -- Drew McDermott Yale University CS Dept. P.S. Thanks for the opportunity to say "mutatis mutandis."
Received on Friday, 30 January 2004 14:10:08 UTC