-
Key: UML24-45
-
Legacy Issue Number: 15126
-
Status: closed
-
Source: Model Driven Solutions ( Mr. Steve Cook)
-
Summary:
If we consider class A inherits from class B, and we have an instance of A called a, and a property in B called p. Let’s calculate the visibility of p in a, assuming p is private. I’m doing substitutions, a bit loosely, but you’ll get the point.
a::hasVisibilityOf(p) : Boolean if (a.inheritedMember->includes(p)) then hasVisibilityOf = false else hasVisibilityOf = true
-> we need to calculate a.inheritedMember
a.inheritedMember->includesAll(a.inherit(
{B.inheritableMembers(a) }))
-> we need to calculate B.inheritableMembers(a)
B.inheritableMembers(a) =
{p}->select(m | a.hasVisibilityOf(m)) . a.hasVisibilityOf(p)
-> we are in a loop!
-
Reported: UML 2.3 — Wed, 10 Mar 2010 05:00 GMT
-
Disposition: Resolved — UML 2.4
-
Disposition Summary:
See issue 10006 for disposition
-
Updated: Fri, 6 Mar 2015 20:58 GMT
UML24 — UML2.3 definition of Classifier::hasVisibilityOf is circular
- Key: UML24-45
- OMG Task Force: UML 2.4 RTF