W3C home > Mailing lists > Public > www-rdf-comments@w3.org > July to September 2002

Re: RDF Issue rdfs-clarify-subClass-and-instance

From: pat hayes <phayes@ai.uwf.edu>
Date: Tue, 20 Aug 2002 21:06:27 -0700
Message-Id: <p05111b03b9885767f4fd@[]>
To: graham wideman <graham@wideman-one.com> (by way of "Ralph R. Swick" <swick@w3.org>)
Cc: Frank Manola <fmanola@mitre.org>, Brian McBride <bwm@hplb.hpl.hp.com>, www-rdf-comments@w3.org

Let me see if I can help here.

RDF(S) assumes that the 'universe' consists of things, some of which 
are classes. Classes contain things but they also are things, so one 
can have classes which contain other classes. (Properties are also 
things, by the way.). This means that there isn't a sharp distinction 
in kind between a category of classes and a different category of 
non-classes. (Your table entry 'cannot be a class' is never 
appropriate.) What makes something a class is just that it has some 
things in it (that is, in its extension) and  rdf:type is what puts 
things into a class (extension): A rdf:type B means that A is in B. 
So if you assert that, then B is a class, pretty much by definition. 
That is, rdf:type is the class-membership relation, the relation 
between a thing and a class that the the thing is in. So the only 
'constraint' that you can infer is that in the triple
A rdf:type B .
B must be a class; but as I say, that follows pretty much by 
definition, and is not a real constraint, since anything can be a 

OK, given that, subClass and instances work as one would intuitively 
expect: if A is in a class B and B is a subclass of C, then A must be 
in C. But bear in mind that it is perfectly OK to have a class of 
classes, and indeed rdfs:Class is such a class. Brian's example uses 

bwm:AClass rdf:type rdfs:Class .

Both the subject and object here are classes. All this says is that 
bwm:AClass is in fact a class.

We can also say

bwm:AClass rdf:type bwm:ClassesDefinedByBrianMcBride .

which introduces yet another class of classes (which must therefore 
be a subclass of rdfs:Class, which is the class of *all* classes.) 
Of course, something can be in more than one class.

You refer to 'ancestors' which suggests that you may be thinking of a 
picture like a taxonomy, where each class has single unique 
superclass. But RDFS makes no such assumption; it allows classes to 
overlap and have unions and intersections with complete freedom. For 
example, I am a member of many classes, including human-being, 
red-haired, creatures-who-have-never-written-a-book, 
things-that-weigh-less-than-a-ton, and so on.

Pat Hayes

IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola,  FL 32501			(850)202 4440   fax
Received on Wednesday, 21 August 2002 05:04:56 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:44:00 UTC