- From: Smith, Michael K <michael.smith@eds.com>
- Date: Fri, 1 Nov 2002 14:37:33 -0600
- To: "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>, "Smith, Michael K" <michael.smith@eds.com>
- Cc: www-webont-wg@w3.org
So, to confirm some XML syntax. SubClassOf( TableWine, intersectionOf( Wine, restriction( hasSugar, hasValue( #Dry )))) Becomes: <owl:Class rdf:ID="TableWine"> <owl:subClassOf> <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Wine" /> <owl:Restriction> <owl:onProperty rdf:resource="#hasSugar" /> <owl:hasValue rdf:resource="#Dry" /> </owl:Restriction> </owl:intersectionOf> </owl:Class> </owl:subClassOf> </owl:Class> Which seem oddly asymmetric with EquivalentClasses( TableWine, intersectionOf( Wine, restriction( hasSugar, hasValue( #Dry )))) <owl:Class rdf:ID="TableWine"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Wine" /> <owl:Restriction> <owl:onProperty rdf:resource="#hasSugar" /> <owl:hasValue rdf:resource="#Dry" /> </owl:Restriction> </owl:intersectionOf> </owl:Class> Which could equivalently be written (?) <owl:Class rdf:ID="TableWine"> <owl:sameClassAs> <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Wine" /> <owl:Restriction> <owl:onProperty rdf:resource="#hasSugar" /> <owl:hasValue rdf:resource="#Dry" /> </owl:Restriction> </owl:intersectionOf> </owl:Class> </owl:sameClassAs> </owl:Class> -----Original Message----- From: Peter F. Patel-Schneider [mailto:pfps@research.bell-labs.com] Sent: Friday, November 01, 2002 10:48 AM To: michael.smith@eds.com Cc: www-webont-wg@w3.org Subject: Re: comments on wine.owl From: "Smith, Michael K" <michael.smith@eds.com> Subject: RE: comments on wine.owl Date: Fri, 1 Nov 2002 08:51:33 -0600 [...] > ------------------------------------------------------------ > <!-- PFPS the sameClassAs that used to be here was wrong. Similar problems > occur elsewhere, I may not have caught them all. In general the OWL > keywords should have an uppercase/lowercase alternation. --> > > > <owl:Class rdf:ID="WhiteWine"> > > <owl:intersectionOf rdf:parseType="Collection"> > > <owl:Class rdf:about="#Wine" /> > > <owl:Restriction> > > <owl:onProperty rdf:resource="#hasColor" /> > > <owl:hasValue rdf:resource="#White" /> > > </owl:Restriction> > > </owl:intersectionOf> > > </owl:Class> > > I'm confused. I thought in your message > (http://lists.w3.org/Archives/Public/www-webont-wg/2002Oct/0228.html) > you prefered having these wrapped up in a sameClassAs. Argh! I was WRONG. Yuk. I added in the sameClassAs there by mistake. [...] > --------------------------------------------------------------- > <!-- PFPS this should really be a unionOf > I think that this is a holdover from CLASSIC --> CLASSIC does not have unionOf. Here is a great place for it, as it is even suggested by the class name. I would use: <owl:Class rdf:ID="SemillonOrSauvignonBlanc"> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Semillon" /> <owl:Class rdf:about="#SavignonBlanc" /> </owl:unionOf> </owl:Class> <owl:Class rdf:ID="Semillon"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasColor" /> <owl:hasValue rdf:resource="#White" /> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasBody" /> <owl:allValuesFrom> <owl:Class> <owl:oneOf rdf:parseType="Collection"> <owl:Item rdf:resource="#Medium" /> <owl:Item rdf:resource="#Full" /> </owl:oneOf> </owl:Class> </owl:allValuesFrom> </owl:Restriction> </rdfs:subClassOf> <owl:intersectionOf rdf:parseType="Collection"> <owl:Restriction> <owl:onProperty rdf:resource="#madeFromVarietal" /> <owl:hasValue rdf:resource="#SemillonGrape" /> </owl:Restriction> <owl:Restriction> <owl:onProperty rdf:resource="#madeFromVarietal" /> <owl:maxCardinality>1</owl:maxCardinality> </owl:Restriction> </owl:intersectionOf> </owl:Class> <owl:Class rdf:ID="SauvignonBlanc"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasColor" /> <owl:hasValue rdf:resource="#White" /> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasBody" /> <owl:allValuesFrom> <owl:Class> <owl:oneOf rdf:parseType="Collection"> <owl:Item rdf:resource="#Medium" /> <owl:Item rdf:resource="#Full" /> </owl:oneOf> </owl:Class> </owl:allValuesFrom> </owl:Restriction> </rdfs:subClassOf> <owl:intersectionOf rdf:parseType="Collection"> <owl:Restriction> <owl:onProperty rdf:resource="#madeFromVarietal" /> <owl:hasValue rdf:resource="#SauvignonBlancGrape" /> </owl:Restriction> <owl:Restriction> <owl:onProperty rdf:resource="#madeFromVarietal" /> <owl:maxCardinality>1</owl:maxCardinality> </owl:Restriction> </owl:intersectionOf> </owl:Class>
Received on Friday, 1 November 2002 15:37:52 UTC