allValues versus domain/range

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

allValues versus domain/range

Hugo Ferreira
Hi,

Its seems that when one creates a property and indicates a domain and
range the result is equivalent to the use of the allValues restriction.
Is this correct? If so, when should one opt for one solution or the other?

TIA,
Hugo Ferreira
-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html

Reply | Threaded
Open this post in threaded view
|

Re: allValues versus domain/range

dimitris bilidas
hello,

I think that the allValues restriction is defined with respect to particular
class, whereas the definition of range when one creates a property applies
to all the classes which have this property.

So the allValuesFrom restriction is defined - I don't know if i use the
correct term- "locally" for a particular class.

When we have created a property with a specific range and we have put an
allValuesFrom restriction locally for that property on a class, then the
range definition is retracted and the allValuesFrom restriction is applied
but only for this class.

I don't know if there are other differences.

Dimitris.


>From: Hugo Ferreira <[hidden email]>
>Reply-To: [hidden email]
>To: [hidden email]
>Subject: [protege-owl] allValues versus domain/range
>Date: Thu, 27 Apr 2006 15:00:36 +0100
>
>Hi,
>
>Its seems that when one creates a property and indicates a domain and range
>the result is equivalent to the use of the allValues restriction. Is this
>correct? If so, when should one opt for one solution or the other?
>
>TIA,
>Hugo Ferreira
>-------------------------------------------------------------------------
>To unsubscribe go to http://protege.stanford.edu/community/subscribe.html
>


-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html

Reply | Threaded
Open this post in threaded view
|

Re: allValues versus domain/range

Ulrike Sattler

On 2 May 2006, at 11:34, dimitris bilidas wrote:

> hello,
>
> I think that the allValues restriction is defined with respect to  
> particular class,

I would rather say that you can use the allValues restriction in the  
definition of a particular class. Eg, a

HappyParent = ConjunctionOf(Parent and restriction(hasChild  
allValuesFrom(Happy))

In contrast, you can state the domain and range of a property as a  
piece of general background knowledge, say

domain hasChild (Mammal)
range hasChild (Mammal)

An unexpected thing then might happen if you (or your colleague who  
doesn't know about what you said about hasChild) further adds, eg

range hasChild (Fish)

since this is read as

"everbody who is a "hasChild"-filler of somebody must be both a  
Mammal AND a fish", and this might lead to an inconsistency in case  
you have defined Mammal and Fish as disjoint classes.

In constrast, saying that

Fish SubclassOf restriction(hasChild allValuesFrom Fish) and
Mammal SubclassOf restriction(hasChild allValuesFrom Mamma)

is perfectly ok.

Cheers, Uli

> whereas the definition of range when one creates a property applies  
> to all the classes which have this property.
>
> So the allValuesFrom restriction is defined - I don't know if i use  
> the correct term- "locally" for a particular class.
>
> When we have created a property with a specific range and we have  
> put an allValuesFrom restriction locally for that property on a  
> class, then the range definition is retracted and the allValuesFrom  
> restriction is applied but only for this class.
>
> I don't know if there are other differences.
>
> Dimitris.
>
>
>> From: Hugo Ferreira <[hidden email]>
>> Reply-To: [hidden email]
>> To: [hidden email]
>> Subject: [protege-owl] allValues versus domain/range
>> Date: Thu, 27 Apr 2006 15:00:36 +0100
>>
>> Hi,
>>
>> Its seems that when one creates a property and indicates a domain  
>> and range the result is equivalent to the use of the allValues  
>> restriction. Is this correct? If so, when should one opt for one  
>> solution or the other?
>>
>> TIA,
>> Hugo Ferreira
>> ---------------------------------------------------------------------
>> ----
>> To unsubscribe go to http://protege.stanford.edu/community/ 
>> subscribe.html
>>
>
>
> ----------------------------------------------------------------------
> ---
> To unsubscribe go to http://protege.stanford.edu/community/ 
> subscribe.html
>

-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html

Reply | Threaded
Open this post in threaded view
|

Re: allValues versus domain/range

Hugo Ferreira
Uli and Dimitris,

Thank you for the information. It is clearer now.

Regards,
Hugo Ferreira.


Uli Sattler wrote:

>
> On 2 May 2006, at 11:34, dimitris bilidas wrote:
>
>> hello,
>>
>> I think that the allValues restriction is defined with respect to  
>> particular class,
>
>
> I would rather say that you can use the allValues restriction in the  
> definition of a particular class. Eg, a
>
> HappyParent = ConjunctionOf(Parent and restriction(hasChild  
> allValuesFrom(Happy))
>
> In contrast, you can state the domain and range of a property as a  
> piece of general background knowledge, say
>
> domain hasChild (Mammal)
> range hasChild (Mammal)
>
> An unexpected thing then might happen if you (or your colleague who  
> doesn't know about what you said about hasChild) further adds, eg
>
> range hasChild (Fish)
>
> since this is read as
>
> "everbody who is a "hasChild"-filler of somebody must be both a  Mammal
> AND a fish", and this might lead to an inconsistency in case  you have
> defined Mammal and Fish as disjoint classes.
>
> In constrast, saying that
>
> Fish SubclassOf restriction(hasChild allValuesFrom Fish) and
> Mammal SubclassOf restriction(hasChild allValuesFrom Mamma)
>
> is perfectly ok.
>
> Cheers, Uli
>
>> whereas the definition of range when one creates a property applies  
>> to all the classes which have this property.
>>
>> So the allValuesFrom restriction is defined - I don't know if i use  
>> the correct term- "locally" for a particular class.
>>
>> When we have created a property with a specific range and we have  put
>> an allValuesFrom restriction locally for that property on a  class,
>> then the range definition is retracted and the allValuesFrom  
>> restriction is applied but only for this class.
>>
>> I don't know if there are other differences.
>>
>> Dimitris.
>>
>>
>>> From: Hugo Ferreira <[hidden email]>
>>> Reply-To: [hidden email]
>>> To: [hidden email]
>>> Subject: [protege-owl] allValues versus domain/range
>>> Date: Thu, 27 Apr 2006 15:00:36 +0100
>>>
>>> Hi,
>>>
>>> Its seems that when one creates a property and indicates a domain  
>>> and range the result is equivalent to the use of the allValues  
>>> restriction. Is this correct? If so, when should one opt for one  
>>> solution or the other?
>>>
>>> TIA,
>>> Hugo Ferreira
>>> ---------------------------------------------------------------------
>>> ----
>>> To unsubscribe go to http://protege.stanford.edu/community/ 
>>> subscribe.html
>>>
>>
>>
>> ----------------------------------------------------------------------
>> ---
>> To unsubscribe go to http://protege.stanford.edu/community/ 
>> subscribe.html
>>
>
> -------------------------------------------------------------------------
> To unsubscribe go to http://protege.stanford.edu/community/subscribe.html
>
>

-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html