W3C home > Mailing lists > Public > www-rdf-logic@w3.org > May 2004

Re: Inferring Class Membership w/o OWL Full?

From: Pat Hayes <phayes@ihmc.us>
Date: Fri, 7 May 2004 10:37:51 -0500
Message-Id: <p06001f23bcc15cf02528@[]>
To: Stephen Rhoads <rhoadsnyc@mac.com>
Cc: www-rdf-logic@w3.org

>I realize that everyone is probably beat from that "Classes as 
>Values" discussion in the SWBP, but ... no thoughts on this?
>Would it be unthinkable to create a subPropertyOf rdf:type?

Its explicitly forbidden in OWL-DL by edict of the DL police, but it 
makes perfect semantic sense and could be done in OWL-Full. On the 
other hand, why not just use rdf:type? What do you gain from the 
explicit subpropertying?

If you thought to sneak past the DL syntax restrictions, forget it. 
The DL police have already thought of all the tricks you could use 
and blocked all the exits.


>Something like ...
><owl:ObjectProperty rdf:ID="hasGenre">
>    <rdfs:subPropertyOf rdf:resource="&rdf;type"/>
><ex:Song rdf:ID="PurpleHaze">
>    <ex:hasGenre rdf:resource="&ex;ClassRockMusic"/>
>Thus, the Individual "PurpleHaze" is an instance of both Song and 
>Note that the intent is state class membership, not to say that the 
>"subject" of the Song is a concept denoted by a Class (as in the 
>"Classes as Values" paper).
>--- Stephen
>On Apr 24, 2004, at 4:50 PM, Stephen Rhoads wrote:
>>There are various parts of my (Media Publishing and Distribtuion) 
>>ontology where I would like to avoid the requirement of "multiple 
>>typing".  The objective here is to simplify the ontology and user 
>>interfaces which employ it.
>>A user of the ontology should be able to simply declare an 
>>Individual to be a Song, Album, Movie, MovieSeries, 
>>TelevisionProgram, TelevisionSeries, RadioProgram or RadioSeries. 
>>Other important class membership should be inferred by property 
>>values.  A TelevisionSeries, for example, could have 
>>"hasSeriesType" of "SeasonalSeries" and thus be a member of that 
>>Class.  A Movie could have "hasGenre" of "Drama" and thus be a 
>>The problem is that I can't see how to model this without landing 
>>in OWL Full.  Take the following example:
>>A sample Class hierarchy:
>>    ElectronicMusic
>>    PopMusic
>>    RockMusic
>>       ClassicRockMusic
>>       GlamRockMusic
>>       GrungeRockMusic
>>And sample Class description:
>><owl:Class rdf:ID="ClassicRockMusic">
>>    <rdfs:subClassOf rdf:resource="#RockMusic"/>
>>    <owl:equivalentClass>
>>       <owl:Restriction>
>>          <owl:onProperty rdf:resource="#hasGenre"/>
>>          <owl:hasValue rdf:resource="#ClassicRockMusic"/>
>>       </owl:Restriction>
>>    </owl:equivalentClass>
>>In other words, if the Individual (a Song or Album) hasGenre 
>>ClassicRockMusic, then it *is* ClassicRockMusic (or at least a 
>>member of a Restriction Class with the same class extension).  But 
>>(I think) this puts the ontology into OWL Full because 
>>ClassicRockMusic is being treated as both a Class and an Individual 
>>(I can confirm that Racer will not accept the ontology from Protege 
>>because it is "not in OWL DL").
>>Thoughts?  Solutions?
>>--- Stephen

IHMC	(850)434 8903 or (650)494 3973   home
40 South Alcaniz St.	(850)202 4416   office
Pensacola			(850)202 4440   fax
FL 32501			(850)291 0667    cell
phayes@ihmc.us       http://www.ihmc.us/users/phayes
Received on Friday, 7 May 2004 11:37:53 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 2 March 2016 11:10:42 UTC