OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RDF Schema Question: range of values of an rdfs:Class?

[ Lists Home | Date Index | Thread Index ]
  • From: "Roger L. Costello" <costello@mitre.org>
  • To: xml-dev@ic.ac.uk
  • Date: Tue, 04 May 1999 07:38:59 -0400

I will state my question, then give an example to demonstrate my
question, and then restate my question.

Question: if I create an RDF Schema Class, then what is its rdf:range of
values?

Example: In section 7 of the RDF Schema spec there are a number
examples.  My question pertains to Example 1.  In Example 1 a Person
Class is defined.  A maritalStatus property is then defined and its
domain property is set to Person (i.e., the maritalStatus property can
be used with Person).  The range of maritalStatus is the Class
MaritalStatus.  Here are the definitions:

<rdfs:Class rdf:ID="Person">
  <rdfs:comment>The class of people.</rdfs:comment>
  <rdfs:subClassOf 
        rdf:resource="http://www.classtypes.org/useful_classes#Animal"/>
</rdfs:Class>

<rdf:Property ID="maritalStatus">
  <rdfs:range rdf:resource="#MaritalStatus"/>
  <rdfs:domain rdf:resource="#Person"/>
</rdf:Property>

<rdfs:Class rdf:ID="MaritalStatus"/>

In the example it says that the possible values for the maritalStatus
property are: {Married, Divorced, Single, Widowed}.  Here is where I
have a question.  How did the range of possible values for maritalStatus
suddenly get restricted to these four values?  In the example it creates
four instances of the MaritalStatus Class:

<MaritalStatus rdf:ID="Married"/>
<MaritalStatus rdf:ID="Divorced"/>
<MaritalStatus rdf:ID="Single"/>
<MaritalStatus rdf:ID="Widowed"/>

Presumably, this is where the four values were gotten from.  Something
seems fishy here.  I am having difficulty relating this to my Java
background.  In Java, if I create a class MaritalStatus:

public class MaritalStatus {...}

then in another class create some instances of MaritalStatus:

MaritalStatus married = new MaritalStatus();
MaritalStatus divorced = new MaritalStatus();
MaritalStatus single = new MaritalStatus();
MaritalStatus widowed = new MaritalStatus();

and now if I create a variable maritalStatus, of type MaritalStatus:

MaritalStatus maritalStatus;

then its range of possible values is not {married, divorced, single,
widowed}.  Certainly, maritalStatus can be set equal to one of these
instance variables.  For example:

maritalStatus = married;

However, it can take on values other than these as well.  For example:

maritalStatus = new MaritalStatus();

Okay, now that I've convinced myself that I don't understand the example
in the RDF Schema spec, let me restate my question:  how did that
example come up with just those four values for the maritalStatus
property?  In general, if I create a Class, how do I specify its range
of values?  Cheers!  /Roger


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS