- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Mon, 10 Mar 2003 10:52:13 -0500 (EST)
- To: nogievet@cogx.com
- Cc: costello@mitre.org, www-rdf-logic@w3.org
From: "Nikita Ogievetsky" <nogievet@cogx.com>
Subject: Re: Treating a class as both an individual and a class?
Date: Mon, 10 Mar 2003 07:40:31 -0800
>
> ----- Original Message -----
> From: "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>
> To: <nogievet@cogx.com>
> Cc: <costello@mitre.org>; <www-rdf-logic@w3.org>
> Sent: Monday, March 10, 2003 7:27 AM
> Subject: Re: Treating a class as both an individual and a class?
>
>
> > From: "Nikita Ogievetsky" <nogievet@cogx.com>
> > Subject: Re: Treating a class as both an individual and a class?
> > Date: Mon, 10 Mar 2003 07:24:08 -0800
> >
> > > Peter F. Patel-Schneider wrote:
> > > > No, this is not good modelling. If you want to say that Davenport has
> a
> > > > River, you should say so, via
> > > >
> > > > <City rdf:ID="Davenport">
> > > > <rdfs:subClassOf>
> > > > <owl:Restriction>
> > > > <owl:onProperty rdf:resource="hasFeature" />
> > > > <owl:someValuesFrom rdf:resource="http://geodesy.org#River"/>
> > > > </owl:Restriction>
> > > > </rdfs:subClassOf>
> > > > ....
> > > > </City>
> > > >
> > >
> > > Hmmm....
> > > Peter, in your example an individual city is a class?
> >
> > No, Davenport is an instance of the class City.
>
> Sorry, I am missing this: do you agree with me or not?
> How can rdfs:subClassOf be used to denote "instance of"
> Should not "rdf:Type" be used instead (as I am trying to do bellow)?
Sorry, you are correct. I messed up.
> > > Should not it be something like:
> >
> > > <CityOnARiver rdf:ID="Davenport">
> > > ....
> > > </CityOnARiver>
> > >
> > > <owl:Class rdf:ID="CityOnARiver">
> > > <rdfs:subClassOf rdf:resource="#River">
> > > <rdfs:subClassOf>
> > > <owl:Restriction>
> > > <owl:onProperty rdf:resource="hasFeature" />
> > > <owl:someValuesFrom rdf:resource="http://geodesy.org#River"/>
> > > </owl:Restriction>
> > > </rdfs:subClassOf>
> > > </owl:Class>
> >
> > This makes a city on a river be a river, which is probably not what is
> > wanted.
>
> It is a typo, of course: I meant:
> <rdfs:subClassOf rdf:resource="#Class">
I was concentrating too much on your mistake, and not on mine.
> <rdfs:subClassOf rdf:resource="#Class">
is still incorrect as it makes CityOnARiver a meta-class, and Davenport
would still be a class.
The correct method would be
<CityOnARiver rdf:ID="Davenport">
....
</CityOnARiver>
<owl:Class rdf:ID="CityOnARiver">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="hasFeature" />
<owl:someValuesFrom rdf:resource="http://geodesy.org#River"/>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
In OWL you could do other interesting things then
1/ <CityOnARiver rdf:ID="Davenport">
....
</CityOnARiver>
makes Davenport a city that has a river as a feature (without saying
which one it is).
2/ <http://geodesy.org#River" rdf:ID="YYYRiver" />
<City rdf:ID="Davenport">
<hasFeature rdf:resource="#YYYRiver" />
</City>
makes Davenport a city on the YYYRiver and also an instance of
CityOnARiver (without mentioning CityOnARiver explicitly).
> --Nikita.
peter
Received on Monday, 10 March 2003 10:52:25 UTC