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

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

From: by way of <graham@wideman-one.com>
Date: Tue, 20 Aug 2002 08:37:30 -0400
Message-Id: <5.1.0.14.2.20020820083640.048add58@127.0.0.1>
To: www-rdf-comments@w3.org

[freed from spam filter -rrs]

Date: Tue, 20 Aug 2002 07:20:43 -0400 (EDT)
Message-Id: <4.1.20020820031956.0187f9e0@sunstroke.sdsu.edu>
To: Brian McBride <bwm@hplb.hpl.hp.com>, Frank Manola <fmanola@mitre.org>
From: graham wideman <graham@wideman-one.com>
Cc: www-rdf-comments@w3.org

Brian:

Heh heh heh, your writing is helpful in tone, though I'm not sure whether 
I'm getting clearer or muddier :-)

1. You are right that *part* of what's confusing is the phrase "(or some 
subclass of rdfs:Class)". Absent that phrase, I would believe that if a 
resource Description has a property

rdf:type...Class

then that resource is a Class, and otherwise it's not.  (If we can't delete 
that phrase, then I have no idea how to distinguish a Class from a non-Class.)

Or maybe the escape hatch is that it's possible to write:

rdf:type...SomethingThatsNotAClass

Is that legit? If it is (and I'm now thinking it is) then the earlier 
sentence in the primer:

"The RDF Schema *type* system allows resources to be defined as *instances* 
of one or more *classes*."

... is kind of misleading, since apparently the type system (ie: the system 
using the keyword "type") can define resources to be of something other 
than classes as well.

2.
 >I could define the class
 >bwm:ClassesDefinedByBrianMcBride to be a subclass of rdfs:Class.  I could
 >then say something like:
 >   bwm:ClassesDefinedByBrianMcBride rdfs:subClassOf rdfs:Class .
 >   bwm:AClass                       rdf:type 
bwm:ClassesDefinedByBrianMcBride .
 >
 >This implies
 >
 >   bwm:AClass rdf:type rdfs:Class .
 >
 >Now none of this says anything about the class hierarchy of bwm:AClass.  We
 >know nothing about its sub and super classes.

Eh? Er, I mean, yes indeed, this gets to the heart of the matter!

You've written that AClass is of *type* ClassesDefinedByBrianMcBride, which 
is a *subClassOf* Class. Now, unless I really suspend disbelief, to me this 
looks like you've said that AClass has ancestors 
ClassesDefinedByBrianMcBride and Class!

You say it doesn't mean that, and certainly there are two different 
keywords involved which presumably have two different intents, but I sure 
as heck can't tease out what the different intents are!

Well, anyway, I could continue in this vein, finding all the things that 
don't make sense (to me at least), but I suspect they mostly have as root 
cause the same misunderstanding.

Indeed, my suggestion of a table was intended to get at that issue by 
having an enumeration of popular combinations of rdf:type and subClassOf 
values and what is the nature of resource that results. Maybe I should have 
written it:

type     subClassOf      Resource nature
---------------------------------------
---       ---            Can't be a class
Class     ---            Must be a class
Class     #OtherClass    Must be a class
ClassA    ---            Not sure
ClassA    ClassB         Not sure
Property  ???            A property
... more combos?...

Thanks,

Graham


---------------------------------------------------
Graham Wideman
Resources for programmable diagramming at:
http://www.diagramantics.com
graham@wideman-one.com
http://www.wideman-one.com
Received on Tuesday, 20 August 2002 08:37:37 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 21 September 2012 14:16:30 GMT