W3C home > Mailing lists > Public > www-rdf-interest@w3.org > May 2000

Re: RDF and polymorphism

From: Graham Klyne <GK@dial.pipex.com>
Date: Mon, 08 May 2000 10:54:42 +0100
Message-Id: <>
To: Dan Brickley <danbri@w3.org>
Cc: www-rdf-interest@w3.org
At 04:16 PM 5/4/00 -0400, Dan Brickley wrote:
> > (But I'm still not entirely clear when to use rdfs:subPropertyOf vs
> > rdfs:subClassOf.)
>Does this attempt help?:
>(some of this can sound a bit zen, "rdfs:class is an rdfs:class" etc...)


It turns out I didn't think hard enough before posting that...
I had thought one could express the idea:

   [A] --PID--> [P]
   [PID] is sub-property of [PID1]
   [A] --PID1--> [P]

using subclassing of property types.  But on closer examination it seems 
that this can't be done.

(So thanks for making me think harder ;-)


>If you have a vocabulary resource such as dc:title that is a property,
>ie. a member of the rdfs:Class rdf:Property, it is the sort of thing that
>can used as a label on an arc (in the graph representation of RDF). It is
>a particular type of binary relationship that can hold between resources.
>If you have a resource such as wordnet:Person that is a class, ie. a
>member of the rdfs:Class we call rdfs:Class, it is the sort of thing
>that will itself have members or instances, eg. person-3343,
>employee-234234 might be considered instances of that class.
>Sometimes a modeler will decide to represent something as a relationship
>type (eg. 'title','creator') and sometimes as a class of things
>(eg. 'Person', 'Mammal'). This is similar to the "do I use elements or
>attributes" question familiar from XML/SGML, except the mismatch between
>the technology decisions and modeling style is somewhat gentler. There
>decision here affects whether they express
>"specialisation/generalisation" relationships using sub-class or
>sub-property mechanisms.
>When you want to express property specialisation relationships (eg. that
>dc:creator is more specific than, but implies, the dc:contributor
>relation), you're expressing a sub-property relationship between properties.
>When you want to express class specialisation relationships (eg. that all
>resources that are of rdf:type wordnet:Person are also of rdf:type
>wordnet:Mammal), you use sub-class.
>The difference is that there's no notion of an instance of
>the property dc:contributor (exept perhaps its occurence in an RDF
>statement) but there is a notion of an instance of the class
>wordnet:Person. So we have different relationships that do similar, but
>distinct, work.

Graham Klyne
Received on Monday, 8 May 2000 08:50:55 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:07:29 UTC