Treating a class as both an individual and a class?

Hi Folks,

I am not clear on the mechanism of using a class as both an individual
and as a class.  Consider this example:

Suppose that River is a subclass of Stream.  Here's the definition of
the River class:

    <rdfs:Class rdf:ID="River">
        <rdfs:subClassOf rdf:resource="#Stream"/>
    </rdfs:Class>

Suppose that I want to use this River class as an individual, as shown
here:

    <Country rdf:ID="China">
        <hasFeature rdf:resource="http://geodesy.org#River"/>
    </Country>

Note that the property "hasFeature" has as its value the class River. 
Thus, the River class is being treated as an "individual". (Correct?)

What confuses me is how the property hasFeature would be declared.
More specifically, what would be the value of its rdfs:range?

    <rdf:Property rdf:ID="hasFeature">
        <rdfs:domain rdf:resource="#Country"/>
        <rdfs:range rdf:resource="???"/>
    </rdf:Property>

Could somebody please tell me how to define rdfs:range above?  Thanks! 
/Roger

Received on Sunday, 9 March 2003 09:11:11 UTC