W3C home > Mailing lists > Public > www-webont-wg@w3.org > March 2004

Re: different range values based on different domain instances

From: <ewallace@cme.nist.gov>
Date: Wed, 31 Mar 2004 17:06:51 -0500 (EST)
Message-Id: <200403312206.RAA07705@clue.msid.cme.nist.gov>
To: www-webont-wg@w3.org



As you can see below, I answered the neophyte question about
local range restrictions.  While I also suggested using rdf-interest
for further such questions, I do not think that it is the best place
for such discussions.  Questions like this are just one reason why it
would be good to have a W3C hosted OWL-specific open mailing list.
A list focused on using OWL and SW tools rather than developing them.
Such a list would be a good interface for the SWBPD wg to gather 
requirements and promulgate results.  

What mechanisms are there for requesting the creation of such a list?

-Evan




----- Begin Included Message -----

From ewallace@cme.nist.gov  Wed Mar 31 11:06:58 2004
From: ewallace@cme.nist.gov
Date: Wed, 31 Mar 2004 11:06:31 -0500 (EST)
To: anjum@oslab.khu.ac.kr
Subject: Re: different range values based on different domain instances
Cc: ewallace@cme.nist.gov
X-Sun-Charset: US-ASCII
X-MailScanner-Information: Please contact your ISP for more information
X-MailScanner: Found to be clean
X-MailScanner-SpamCheck: 
X-MailScanner-From: ewallace@cme.nist.gov
Content-Length: 3128


You asked on the W3C Web Ontology working group list:

>Hi,
>I have some confusion, may be i lack some knowledge but in short, the
>question is:
>Can i have different ranges for a property based on the different domains.
>E.g. I have a class activity which can have different values like
>sleeping, running , inhand,ontable etc. i want that when the domain of
>activity is user, only running and sleeping can be associated with it but
>when the domain of activity is device, only values of inhand,ontable can
>be associated. I want to associate multiple domains with associated ranges
>for a property. Is it possible and if it possible, can u refer me where i
>can find in the specs.
>Thanks in advance
>--
>Anjum

First, a comment on where to ask these sorts of questions.  At the moment,
rdf-interest@w3.org is the only appropriate w3c list for this.  While it is 
hardly the ideal list for a neophyte OWL user, your questions are still 
likely to be answered.  Now to the question at hand.

What you wish to do, can easily be done in OWL.  Local range restriction
is a common term for a restriction on a property range that only applies in
the context of a particular domain (see OWL Overview - OWL Lite Property 
Restrictions[1]).  Below is some OWL that does this.  However, I wouldn't use 
the term "activity" to describe the property as you define it.  The term 
"state" is more general and thus more applicable.  This and some other of 
my own design choices lead to the following ontology elements.

 Classes: 
   User, 
   Device, 
   Activity(sleeping, running), 
   Location(inHand, onTable) 

 Properties: 
   state

The RDF/XML syntax below, describing these elements, was created using the 
OWL plugin for Protege[2].

  <owl:Class rdf:ID="User">
    <owl:equivalentClass>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="state"/>
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class rdf:about="#Activity"/>
        </owl:allValuesFrom>
      </owl:Restriction>
    </owl:equivalentClass>
  </owl:Class>

  <owl:Class rdf:ID="Device">
    <owl:equivalentClass>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#state"/>
        <owl:allValuesFrom>
          <owl:Class rdf:about="#Location"/>
        </owl:allValuesFrom>
      </owl:Restriction>
    </owl:equivalentClass>
  </owl:Class>

  <owl:Class rdf:ID="Activity">
    <rdfs:subClassOf>
      <owl:Class>
        <owl:oneOf rdf:parseType="Collection">
          <Activity rdf:ID="Running"/>
          <Activity rdf:ID="Sleeping"/>
        </owl:oneOf>
      </owl:Class>
    </rdfs:subClassOf>
  </owl:Class>

  <owl:Class rdf:ID="Location">
    <rdfs:subClassOf>
      <owl:Class>
        <owl:oneOf rdf:parseType="Collection">
          <Location rdf:ID="inHand"/>
          <Location rdf:ID="onTable"/>
        </owl:oneOf>
      </owl:Class>
    </rdfs:subClassOf>
  </owl:Class>


[1] http://www.w3.org/TR/2004/REC-owl-features-20040210/#s3.4
[2] http://protege.stanford.edu/


-Evan

Evan K. Wallace
Manufacturing Systems Integration Division
NIST
ewallace@nist.gov


----- End Included Message -----
Received on Wednesday, 31 March 2004 17:12:34 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:58:03 GMT