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

Re: Inferring Class Membership w/o OWL Full?

From: Stephen Rhoads <rhoadsnyc@mac.com>
Date: Fri, 7 May 2004 10:15:12 -0400
Message-Id: <F4893DE3-A030-11D8-9E1D-000A95EF0144@mac.com>
To: 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?  Something 
like ...

<owl:ObjectProperty rdf:ID="hasGenre">
    <rdfs:subPropertyOf rdf:resource="&rdf;type"/>
</owl:ObjectProperty>

<ex:Song rdf:ID="PurpleHaze">
    <ex:hasGenre rdf:resource="&ex;ClassRockMusic"/>
</ex:Song>

Thus, the Individual "PurpleHaze" is an instance of both Song and 
ClassicRockMusic.

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:

>
> Folks,
>
> 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 Drama.
>
> 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:
>
> Music
>    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>
> </owl:Class>
>
> 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
>
>
>
Received on Friday, 7 May 2004 10:18:56 UTC

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