- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Tue, 29 Oct 2002 12:53:42 -0500 (EST)
- To: michael.smith@eds.com
- Cc: www-webont-wg@w3.org
From: "Smith, Michael K" <michael.smith@eds.com>
Subject: Guide: Legal syntax?
Date: Tue, 29 Oct 2002 11:22:43 -0600
> The question arose in our breakout session on the Guide as to whether the
> following is syntactically legal. I had simply assumed it was. The issue
> is that we are combining what the abstract syntax labels a 'complete' class
> equivalence with a 'partial' one. E.g. white Burgundies are exactly the
> intersection of Burgundy and WhiteWine AND white Burgundies are a subClass
> of things made from the Chardonnay grape.
>
> <owl:Class rdf:ID="WhiteBurgundy">
> <owl:intersectionOf rdf:parseType="Collection">
> <owl:Class rdf:about="#Burgundy" />
> <owl:Class rdf:about="#WhiteWine" />
> </owl:intersectionOf>
> <rdfs:subClassOf>
> <owl:Restriction>
> <owl:onProperty rdf:resource="#madeFromVarietal" />
> <owl:hasValue rdf:resource="#ChardonnayGrape" />
> </owl:Restriction>
> </rdfs:subClassOf>
> </owl:Class>
>
> As far as the XML syntax schema that Peter sent out, this looks fine, modulo
> tag names like owl:SubClassOf.
>
> - Mike
I believe that this would result in a reasonable collection of n-triples.
Whether such constructs should show up in examples is a different matter.
For stylistic reasons I would prefer
<owl:Class rdf:ID="WhiteBurgundy">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#madeFromVarietal" />
<owl:hasValue rdf:resource="#ChardonnayGrape" />
</owl:Restriction>
</rdfs:subClassOf>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Burgundy" />
<owl:Class rdf:about="#WhiteWine" />
</owl:intersectionOf>
</owl:Class>
but even better would be
<owl:Class rdf:ID="WhiteBurgundy">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#madeFromVarietal" />
<owl:hasValue rdf:resource="#ChardonnayGrape" />
</owl:Restriction>
</rdfs:subClassOf>
<owl:sameClassAs>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Burgundy" />
<owl:Class rdf:about="#WhiteWine" />
</owl:intersectionOf>
</owl:sameClassAs>
</owl:Class>
or
<owl:Class rdf:ID="WhiteBurgundy">
<owl:sameClassAs>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Burgundy" />
<owl:Class rdf:about="#WhiteWine" />
</owl:intersectionOf>
</owl:sameClassAs>
</owl:Class>
<owl:Class rdf:ID="WhiteBurgundy">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#madeFromVarietal" />
<owl:hasValue rdf:resource="#ChardonnayGrape" />
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
peter
>
> As far as the XML syntax schema that Peter sent out, this looks fine, modulo
> tag names like owl:SubClassOf.
>
> - Mike
This does not match the XML schema I put out, but that is a different
story.
peter
Received on Tuesday, 29 October 2002 12:53:55 UTC