From: Peter F. Patel-Schneider ([email protected])
Date: 08/29/01
Here are some thoughts on rdfs:subClassOf.
peter
Notes on the new definition of rdfs:subClassOf
The RDF Core working group has modified the definition of rdfs:subClassOf
to indicate that rdfs:subClassOf means proper subclass. In his model
theory for RDF(S) Pat Hayes gives this the meaning that if A is a subclass
of B then in each model of the entire knowledge base the extension of A
must be a proper subclass of the extension of B.
This definition of rdfs:subClassOf has several unfortunate consequences.
These unfortunate consequences do not appear to affect RDF(S), they only
arise if one wants to create a more-expressive formalism that uses
rdfs:subClass as its generalization primitive, such as DAML+OIL.
1/ If A is an rdfs:subClassOf of B and if B is necessarily empty then the
entire knowledge base is inconsistent. For example, any knowledge base
containing the two following classes
<daml:Class rdf:ID="Confused">
<rdfs:subClassOf>
<daml:Restriction daml:minCardinalty="2">
<daml:onProperty rdf:resource="children">
</daml:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<daml:Restriction daml:maxCardinalty="1">
<daml:onProperty rdf:resource="children">
</daml:Restriction>
</rdfs:subClassOf>
</daml:Class>
<daml:Class rdf:ID="SubConfused">
<rdfs:subClassOf rdf:resource="#Confused">
</daml:Class>
is inconsistent. It is strange that the definitions of two classes, which
may not be used anywhere else in the knowledge base can cause the entire
knowledge base to become inconsistent.
This is a consequence of any reasonable definition that makes
rdfs:subClassOf a proper subclass, not just Pat Hayes's model theory.
2/ If A is an rdfs:subClassOf of B then B has at least one member in every
model. This means that B cannot even be contingently empty. Thus
from
<daml:Class rdf:ID="Confused">
</daml:Class>
<daml:Class rdf:ID="SubConfused">
<rdfs:subClassOf rdf:resource="#Confused">
</daml:Class>
it follows that Confused has cardinality at least one. Again, it is
strange that simply having a subclass provides a minimum cardinality for a
class.
This is a consequence of Pat Hayes's model theory, and need not be true in
other definitions that make rdfs:subClassOf be a proper subclass.
3/ If Ai is an rdfs:subClassOf of Ai+1 for i running from 0 to n, then An
has at least n members in every model. As a consequence, the minimum
number of resources in a model for a knowledge base with an rdfs:subClass
chain of length n is n.
This is a consequence of Pat Hayes's model theory, and need not be true in
other definitions that make rdfs:subClassOf be a proper subclass.
Peter F. Patel-Schneider
This archive was generated by hypermail 2.1.4 : 04/02/02 EST