Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-owl] Please disambiguate property notation 'A = (p has x)' et al.

Timothy Redmond tredmond at stanford.edu
Wed Oct 29 05:14:49 PDT 2008


On Oct 29, 2008, at 10:25 AM, Patrick McCrae wrote:

> Thanks for your in depth explanation, Timothy.
>
> I am not sure, however, I know how to interpret the notation you use  
> correctly. To disambiguate, I have added natural language  
> paraphrases below each formula. Could you please indicate briefly  
> which of my paraphrases are correct?
>
>> > Please let me know why you say it is generally not a good idea to
>> > define a class via a propery as in 'A = (p has x)'.
>>
> Paraphrase 1.1:
> 'A' is the set of all classes that have one or more property  
> relations 'p' of which at least one takes value 'x'.

Should be: 'A' is the set of all individuals that have one or more  
property relations 'p' of which at least one takes value 'x'.

Or simpler: A is the set of all individuals with a 'p' value of 'x'.

There is a bit of inprecision here.  As one of our famous presidents  
said "it depends what the definition of 'is' is" ;).  But probably  
better to ignore this for now...

>
>
> (Or is it Paraphrase 1.2: 'A' is the set of all classes that, if  
> they have one or more property relations 'p', then at least on of  
> them takes value 'x'. ?)


No - existential quantification doesn't give you this type of thing.   
But you could have

     A = (not (p some Thing)) or (p has x)

which says that A is the set of individuals that either don't have a  
'p' value or have a 'p' value of 'x' (and possibly others).

>
>> This always comes down to a question of meaning.  If 'A = (p has x)'
>> is exactly what you mean then this is how the definition should be
>> written.  The trouble is that sometimes such statements are too  
>> strong
>> - they need to be bounded.  So it may be that an assertion like
>>
>> 	A = B that (p has x)
>>
> Paraphrase 2.1:
> 'A' is the set of all subclasses of 'B' that also have one or more  
> property relations 'p' of which at least one takes value 'x'.

Should be, A is the set of individuals that are in B and that also  
have a p property value of x (and possibly others).

>
>
> (Or is it Paraphrase 2.2: 'A' is the set of all subclasses of 'B. If  
> that class also has one or more property relations 'p', at least one  
> of them takes value 'x'. ?)
>

no

>> is what you really wanted.  This is less extreme for the existential
>> restrictions than for the universal restrictions.  Thus
>>
>> 	A = p all C
>>
> Paraphrase 3.1:
> 'A' is the set of all classes that have at least one property 'p'.  
> All values of 'p' are from class 'C'.

no.  It is not true that a universal quantification implies an  
existential quantification.


>
>
> (Or is it Paraphrase 3.2: 'A' is the set of all classes. If the  
> class also has one or more property relations 'p' then all values of  
> 'p' must be from class 'C'. ?)


Should be A is the set of all individuals that have a p value of x  
(and possibly others).

>
>> is almost always an incorrect definition.   It means in particular
>> that if an individual has no p property value then that individual is
>> in A.
>>
> If I understand correctly, this conclusion can only be arrived at  
> with Paraphrase 3.2.

yes.

Cheers,

-Timothy


>
>
> Thanks for your clarification!
>
> Regards -
>
> Pat
>> -Timothy
>>
>>
>> On Oct 23, 2008, at 1:19 PM, Patrick McCrae wrote:
>>
>> > Thanks for your response, Timothy.
>> >
>> > Please let me know why you say it is generally not a good idea to
>> > define a class via a propery as in 'A = (p has x)'.
>> >
>> > I am asking because in my ontology I have defined several helper
>> > classes in this way and am accessing their inferred contents via  
>> the
>> > OWL API.
>> >
>> > Thanks and regards -
>> >
>> > Pat
>> > _______________________
>> >
>> > Patrick McCrae
>> >
>> > CINACS Graduate Research Group
>> > Department of Informatics
>> > Hamburg University
>> > Vogt-Kölln-Straße 30
>> > 22527 Hamburg, Germany
>> >
>> > patrick.mccrae at informatik.uni-hamburg.de
>> > fon: +49 . 40 . 428 83 - 23 60
>> > fax: +49 . 40 . 42883 - 2515
>> >
>> >
>> > Timothy Redmond wrote:
>> >>
>> >>
>> >>> I was now hoping that when I create an instance of the above
>> >>> class, that instance would have the very same property. This,
>> >>> however, turned out not to be the case. It seems that such class
>> >>> properties are not propagated by inheritance.
>> >>
>> >> How did you conclude this?  I may have misunderstood but this is
>> >> something that a reasoner can deduce.
>> >>
>> >> To make sure that I am understanding, let me give an example.  I
>> >> can do this example in Protege 4.  Let's say that I have a class  
>> A,
>> >> an object property p and an individual, x.  I make a definition
>> >>
>> >>     A = (p has x).
>> >>
>> >> (This is not generally a very good definition but that is another
>> >> story).  Now I add an individual y in the class A.  I select a
>> >> reasoner (pellet, say) and select classify.  In the individuals
>> >> tab, I select the individual y and then under Object Property
>> >> Assertions, I will see a highlighted item " p x ".  This
>> >> highlighted item says that x is a p-value of y.  The fact that it
>> >> is highlighted means that this was one of the things that the
>> >> reasoner inferred.
>> >>
>> >> -Timothy
>> >>
>> >>
>> >>
>> >> On Oct 1, 2008, at 1:54 PM, Patrick McCrae wrote:
>> >>
>> >>> Dear Protege List -
>> >>>
>> >>> Can anyone please help me with the following modelling question
>> >>> today:
>> >>>
>> >>> In Protege 4 I have created a class which is defined by the  
>> property
>> >>> has_Lexicalisation value Lex_word.
>> >>> This is analogous to
>> >>> has_Lexicalisation has Lex_word
>> >>> in the Protege 3.x world.
>> >>>
>> >>> I was now hoping that when I create an instance of the above
>> >>> class, that instance would have the very same property. This,
>> >>> however, turned out not to be the case. It seems that such class
>> >>> properties are not propagated by inheritance.
>> >>>
>> >>> I am hence wondering how I can inherit properties of the above
>> >>> kind from the class to its individuals.
>> >>>
>> >>> Thanks in advance for your help!
>> >>>
>> >>> Best regards -
>> >>>
>> >>> Pat
>> >>> _______________________
>> >>>
>> >>> Patrick McCrae
>> >>>
>> >>> CINACS Graduate Research Group
>> >>> Department of Informatics
>> >>> Hamburg University
>> >>> Vogt-Kölln-Straße 30
>> >>> 22527 Hamburg, Germany
>> >>> _______________________________________________
>> >>> protege-owl mailing list
>> >>> protege-owl at lists.stanford.edu
>> >>> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>> >>>
>> >>> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
>> >>
>>
>>
>>
>> -- 
>> _______________________
>>
>> Patrick McCrae
>>
>> CINACS Graduate Research Group
>> Department of Informatics
>> Hamburg University
>> Vogt-Kölln-Straße 30
>> 22527 Hamburg, Germany
>>
>> patrick.mccrae at informatik.uni-hamburg.de
>> fon: +49 . 40 . 428 83 - 23 60
>> fax: +49 . 40 . 42883 - 2515
>




More information about the protege-owl mailing list