UML 2.4 RTF Avatar
  1. OMG Issue

UML24 — UML2.3 definition of Classifier::hasVisibilityOf is circular

  • 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