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-discussion] Restricting Cardinality Restrictions in Subclasses

Natschläger Christine Christine.Natschlaeger at scch.at
Tue Sep 7 02:03:15 PDT 2010


Hello,

 

I have a question regarding the inheritance of cardinality:

Is it possible to restrict cardinality restrictions for subclasses in Protégé 4.x? 

 

I want to define that a class has 1..n relationships (min 1). However, one of the subclasses can only have exactly 1 relationship. If I insert the first restriction for the superclass and the second restriction for the subclass, I see both restrictions (the first under inherited anonymous classes and the second under superclasses). 

Is this correct?  

Having two restrictions [1..n] and [1], is the second really overwriting the first or would it be possible for a user to create nevertheless several relationships for the subclass?

 

I have found a thread on "inheriting quantifier restrictions" from 2007 (http://thread.gmane.org/gmane.comp.misc.ontology.protege.owl/20964), with a discussion whether inherited and actual restrictions are connected with AND or with OR. The answer to this thread was "AND", so if I connect [1..n] and [1], the intersection would be 1. 

Can I, however, somehow adapt or remove the entry [1..n] under inherited anonymous classes to not confuse the user?

 

Regarding the question whether this should be possible at all, I have only found one presentation: http://www.itee.uq.edu.au/~infs3101/_Lectures/09_OWL.pdf

On slide 10, it is stated that the cardinality can be strengthened on subclasses by increasing the min or decreasing the max value. I would agree on this suggestion and would also allow "exactly" if the value is lying between the min and max of the superclass.

 

In addition, I have one further question: Is it possible, to restrict properties based on the value of other properties? E.g. I have a class with a boolean Data Property. If the value of the property is true, then another property must select from a value partition A, however, if the value is false, then the other property must select from a value partition B. Or: If the data property is true, then an object property to class C should be possible, otherwise to class D.

 

Thanks,

christine

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.stanford.edu/pipermail/protege-discussion/attachments/20100907/21ca33eb/attachment.html>


More information about the protege-discussion mailing list