UML 1.4 NO IDEA Avatar
  1. OMG Issue

UML14 — OCL: Enumeration types inconsistent with UML metamodel

  • Key: UML14-972
  • Legacy Issue Number: 3143
  • Status: closed  
  • Source: OpenModeling ( Jos Warmer)
  • Summary:

    Enumerations are Datatypes in UML and have a name. They can be shown
    with the notation of a class. In the attribute box, the possible values
    of the enumeration are written. In fact these names are class
    constants (class-scopes frozen attribute) for the enumeration type.
    If we use this UML definition in OCL, the logical way to
    refer to them will be as class attributes, for which there is already a
    defined notation in OCL (Classname.attributeName):

    When we have Datatype named Sex with values 'female' or 'male'
    they can be used as follows:

    context Person inv:
    sex = Sex.male

    Also the enumeration type has a name, therefore the "var :

    { …}

    " type declaration in OCL is superfluous. We can use
    the typename instead: "var : EnumTypeName".
    A logical consequence of this is that the special notation for
    enumerations will disappear completely and only the above syntax is allowed.

  • Reported: UML 1.2 — Fri, 17 Dec 1999 05:00 GMT
  • Disposition: Resolved — UML 1.3
  • Disposition Summary:

    No Data Available

  • Updated: Fri, 6 Mar 2015 21:37 GMT