- From: Ian Horrocks <horrocks@cs.man.ac.uk>
- Date: Tue, 30 Sep 2003 19:35:29 +0100
- To: "Smith, Michael K" <michael.smith@eds.com>
- Cc: Frank van Harmelen <Frank.van.Harmelen@cs.vu.nl>, webont <www-webont-wg@w3.org>
On September 29, Smith, Michael K writes: > > I agree with most of what has been said in this thread. > > But, I would argue that use of oneOf is not really gratuitous. We > needed at least one example in order to present the concept. And the > selected uses are very similar and natural. The example ontologies > must be DL and because they were contrived to use all of the language > it should not be surprising that they are a little odd. > > That it has implications for efficiency for certain classes of > reasoners is important to know, and alternative, more efficient > formulations would be good to present. > > Ian, what is the preferred, more efficient formulation? Do you make > the constants into classes and define WineFlavor as a union rather > than collection? And then what? How do you rewrite > > <WhiteWine rdf:ID="StGenevieveTexasWhite"> > <locatedIn rdf:resource="#CentralTexasRegion" /> > <hasMaker rdf:resource="#StGenevieve" /> > <hasSugar rdf:resource="#Dry" /> > <hasFlavor rdf:resource="#Moderate" /> > </WhiteWine> > > Create an instance of a class Dry, to plug into the hasSugar > relation? No, make "StGenevieveTexasWhite" an instance of the intersection of WhiteWine and someValuesFrom restrictions "locatedIn CentralTexasRegion" etc. (e.g., see below). Another point here is that I would also question the use of an individual for StGenevieveTexasWhite. Why not make it a sub class of WhiteWine rather than an instance? This seems more intuitive and is much more flexible as we can now add, say, Vintage2001StGenevieveTexasWhite and/or StGenevieveTexasWhiteReserva as a subClasses of StGenevieveTexasWhite. Instead, by choosing to make it an individual, you have fixed a priori the level of detail that can be represented in the ontology, seriously restricting its applicability. Here is the rewriting - don't blame me for the verbosity of the syntax! (In practice you would probably have classes such as "DryWine", "CentralTexasWine" etc, which would make this much easier to write.) <WhiteWine rdf:about="StGenevieveTexasWhite"> <rdf:type> <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Restriction> <owl:onProperty rdf:resource="#locatedIn"/> <owl:someValuesFrom> <owl:Class rdf:about="CentralTexasRegion"/> </owl:someValuesFrom> </owl:Restriction> <owl:Restriction> <owl:onProperty rdf:resource="#hasMaker"/> <owl:someValuesFrom> <owl:Class rdf:about="StGenevieve"/> </owl:someValuesFrom> </owl:Restriction> <owl:Restriction> <owl:onProperty rdf:resource="#hasSugar"/> <owl:someValuesFrom> <owl:Class rdf:about="Dry"/> </owl:someValuesFrom> </owl:Restriction> <owl:Restriction> <owl:onProperty rdf:resource="#hasFlavor"/> <owl:someValuesFrom> <owl:Class rdf:about="Moderate"/> </owl:someValuesFrom> </owl:Restriction> </owl:intersectionOf> </owl:Class> </rdf:type> </WhiteWine> Regards, Ian > > - Mike > > Michael K. Smith, Ph.D., P.E. > EDS - Austin Innovation Centre > 98 San Jacinto, #500 > Austin, TX 78701 > > phone: +01-512-404-6683 > email: michael.smith@eds.com > > > > -----Original Message----- > From: Ian Horrocks [mailto:horrocks@cs.man.ac.uk] > Sent: Monday, September 29, 2003 10:52 AM > To: Frank van Harmelen > Cc: webont > Subject: Re: Chair's Concerns re: Test Cases and CR > > > > On September 29, Frank van Harmelen writes: > > > > > > > > Ian Horrocks wrote: > > > > > the extensive use of oneOf in the wine and food > > > ontologies is largely gratuitous (it seems to be mainly the result of > > > their origin in a language that supported this constructor but did not > > > support unions of classes), and is setting a bad example to > > > prospective users - it encourages the use of statements that are, in > > > most cases, stronger than is needed/intended, and that are known to be > > > difficult to reason with. > > > > > > One further point. Given the elimination of oneOf, then the wine and > > > food ontologies could even be transformed into OWL Lite, although this > > > would result in some mangling of the syntax (in order to capture > > > negation and disjunction). > > > > Jeremy Carroll wrote: > > > > > I have code for that if needed. > > > > I think all these points: > > > > 1) be careful with oneOf's > > 2) without oneOf's, an ontology can often be transformed from DL into > Lite > > 3) that step can even be done automatically > > > > are all very good points to make in whatever "style/how-to" guide we will > be > > writing. > > Agreed, but w.r.t. point 1, our advice would carry more weight if we > were seen to be taking it seriously in our own example ontologies! > > Ian > > > > > > > Frank. > > ---- > > > > > -- > Ian Horrocks, Department of Computer Science, > University of Manchester, Oxford Road, Manchester, M13 9PL, UK. > Tel: +44 161 275 6133/6248 Fax: +44 161 275 6211 > Email: horrocks@cs.man.ac.uk > URL: http://www.cs.man.ac.uk/~horrocks >
Received on Tuesday, 30 September 2003 14:39:47 UTC