RDFS and schema revision

At the first face-to-face meeting of the Web Ontology working group, I
identified a problem with the current method of schema versioning in RDF
Schemas. I was asked to bring the problem to the attention of this list. 

Section 4 of the RDFS Spec recommends that new versions of schemas are
given their own namespaces, so that terms in different versions
essentially have different URIs. It is the recommended that the term in
the new schema, subclasses its equivalent term in the old schema. For
example, V2:Van (the new version of Van) might be a rdfs:subClassOf
V1:Van (the old version of Van).

However, consider the following problem, which is illustrated in the
attached GIF. Imagine that we had a schema in which Dolphin was a
subClassOf Fish. We then recognize that this is a mistake, and decide to
create a new version of the schema in which Dolphin is a subClassOf
Mammal (where the new Dolphin term is in the new schema's namespace). We
then want to establish a connection between these two terms. The RDFS
spec currently suggests that you simply make the new terms subclasses of
the old terms. However if the new Dolphin is a subClassOf the old
Dolphin, then that means it is also a subClassOf Fish. This is the crux
of the problem: the solution recommended by RDFS only works when the new
schema simply adds further definitions (such as more properties or
subClassOf relationships). It breaks down when you
want to remove something (such as the false assertion that a Dolphin is
a subClassOf Fish). 

Jeff Heflin
Assistant Professor
Lehigh University

Received on Tuesday, 29 January 2002 12:06:49 UTC