semantics status of RDF(S)

There has recently been a discussion on the semantic problems with RDF.  

I strongly agree with Pat Hayes's characterization of RDF (and RDFS) as
based on a fundamentally flawed semantic model.  I feel that RDF (and RDFS)
have at least two fundamental flaws when considered as vehicles for
transfering interesting semantic content.  These two flaws are not just
little problems, but instead mean that any attempts to use RDF (or RDFS)
for transferring interesting semantic content are doomed to failure.

[One could argue what ``interesting semantic content'' means.  To satisfy
the assumptions of my argument here it suffices to have to provide a
non-RDF(S) meaning for the triples.]

This is a very strong statement.  I really do mean to make it.  Note,
however, that I am NOT saying that formalisms built on top of RDF (or RDFS)
cannot be used to transfer semantic content.

The two biggest flaws that I see are:


1/ There are many places in the RDF and RDFS documents where vitally
important statements about the semantics of RDF or RDFS are presented with
no formal backup, and in a totally inadequate fashion. 

For example, in Section 2.3.2 of the RDFS Specification 1.0 there are two
paragraphs that give conditions on rdfs:subClassOf.  As far as I can tell,
this is the only place that attempts to provide a meaning for rdfs:subClassOf.
However, these two paragraphs use terms that are not defined in RDF or RDFS
(such as set - classes are not sets and thus the subset relationship is not
meaningful on classes), are sloppy in their terminology (rfds:subClass
vs. sub/superset vs. subclass), and make unenforceable pronouncements
(there is nothing in RDF(S) to prevent someone from creating the triple
{rdfs:subClassOf, foo, foo}).


2/ The triple model does not provide sufficient representational power to
transfer interesting semantic content.   Yes, I know that ``anything'' can be
encoded in triples.  However, ``anything'' can also be encoded in bit
strings or Goedel numbers.  It is not the underlying transfer mechanism
that provides the semantic content---a sequence of bits (or triples, or
Goedel numbers)  does not provide any meaning in and of itself.   
Instead, it is the encoding that provides the representational power.

To make this point even more clear, propositional logic does not provide
sufficient representational power to transfer interesting semantic content.  It
is missing at least one vital component (quantification).  One can
encode quantification in propositional formulae and transfer first-order
formulae using this encoding, but this trick does not do anything to
increase the representational power of propositional logic.



The impact of flaw number 1 is that any attempt to use RDF or RDFS without
providing a separate semantics for its constructs is built on an unusable
foundation.  The impact of flaw number 2 is that any attempt to use RDF or
RDFS to represent proofs, etc., will have to provide its own constructs for
most of the interesting information.



Peter F. Patel-Schneider
Bell Labs Research

Received on Sunday, 1 April 2001 10:40:08 UTC