Hi,
Last week we discussed the issue of whether daml+oil should reflect
RDFS as it is or RDFS as we would like it to be/believe it will be. In
this regard, I mentioned that if we don't take the acyclicity of
subClass seriously, we could strengthen the statements about
equivalent names in the daml+oil namespace. e.g., instead of saying
just:
<rdfs:Class rdf:ID="Literal">
<sameClassAs rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
</rdfs:Class>
we could add:
<rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Literal">
<sameClassAs rdf:resource="#Literal"/>
</rdfs:Class>
or perhaps:
<rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Literal">
<rdfs:subPropertyOf rdf:resource="#Literal"/>
</rdfs:Class>
In other words, we can assert subClass/property in both directions.
Having thought some more about this, I can't really see the benefit
and so I am not sure that we should do it. It doesn't help
daml+oil-aware processes as they already understand the semantics of
the sameClassAs property, and it will only help RDFS-aware processes
if they are smart enough to work out that two subs make an
equivalent. It might be more likely to confuse/crash RDFS
processes.
Perhaps we could briefly (re)discuss this on Tuesday before I make any
changes.
Ian