- From: Jeremy Carroll <jjc@hplb.hpl.hp.com>
- Date: Fri, 17 Jan 2003 15:40:01 +0100
- To: <www-webont-wg@w3.org>
This msg proposes a substantive change in the mapping rules.
I will make later comments of a more editorial/bug-fixing nature.
The focus is on class expressions e.g. a unionOf.
With the current mapping rules the following is an OWL DL document (modulo
declarations etc)
DocA
====
<owl:Class rdf:ID="u">
<owl:sameClassAs>
<rdf:Description>
<owl:unionOf rdf:parseType="Collection">
<owl:Class rdf:ID="a"/>
<owl:Class rdf:ID="b"/>
</owl:unionOf>
</rdf:Description>
</owl:sameClassAs>
</owl:Class>
The following, which I believe better follows standard DAML+OIL idiom, is
not:
DocB
====
<owl:Class rdf:ID="u">
<owl:sameClassAs>
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<owl:Class rdf:ID="a"/>
<owl:Class rdf:ID="b"/>
</owl:unionOf>
</owl:Class>
</owl:sameClassAs>
</owl:Class>
The relevant mapping rule is:
unionOf(description1 … descriptionn)
=>
_:x owl:unionOf T(SEQ description1…descriptionn) .
Three options are:
A) leave us as
B) change to
unionOf(description1 … descriptionn)
=>
_:x owl:unionOf T(SEQ description1…descriptionn) .
_:x rdf:type owl:Class .
C) add above rule as an alternative
==========
Effect
A) DocA is OWL DL, DocB is OWL Full
B) DocB is OWL DL, DocA is OWL Full
C) both DocA and DocB are OWL DL
I argue that (B) has the additional advantage of being easier to articulate,
e.g.:
"Within OWL Lite and OWL DL all nodes must have a type."
So I propose B, and similarly for the other class expression rules.
(Issuette what type should a datarange have?)
Jeremy
Received on Friday, 17 January 2003 09:40:12 UTC