UML 2.4.1 RTF Avatar
  1. OMG Issue

UML241 — Validity duration of implicitly assigned parameters in SignalEvent/CallEvent

  • Key: UML241-24
  • Legacy Issue Number: 16649
  • Status: closed  
  • Source: Fraunhofer FOKUS ( Mr. Marc-Florian Wendland)
  • Summary:

    The textual syntax of CallEvent and SignalEvents states the following:

    "<call-event> :: <name> [‘(‘ [<assignment-specification>] ‘)’]
    <assignment-specification> ::= <attr-name> [‘,’ <attr-name>]*

    <assignment-specification> is optional and may be omitted even if the operation has parameters."

    Does this mean that the parameters of the event are still assigned to attributes of the context object? If so, how long are those implicitly assigned
    attribute values stored in the context object? Since this is just a workaround to be able to express guard conditions that evaluate whether a transition can fire based
    on the recieved trigger, I would assume, the implicitly assigned attribute values are kind of transient or temporarly and will become invalid (or deleted) after all guards of the outgoing state are evaluated. Otherwise, I would like have this paragraph stated
    clearer. It is a vital and crucial part how to deal with triggering events and with guard that refer to those trigger events.

  • Reported: UML 2.4 — Mon, 31 Oct 2011 04:00 GMT
  • Disposition: Resolved — UML 2.4.1
  • Disposition Summary:

    There is no implication in this notation of “transient” or “temporary” assignment. The values are assigned to the given
    attributes, which retain those values until reassigned. However, the exact mechanism for accomplishing the intent
    behind this notation is not formalized in the specification. The UML 2.5 specification now includes the following
    clarification (from Subclause 13.3.4):
    “<assignment-specification> is optional and may be omitted even if the Operation has Parameters. No standard mapping
    is defined from an assignment specification to the UML abstract syntax. A conforming tool is not required to
    support this notation. If it does, it may provide a mapping to standard UML abstract syntax, e.g., by implicitly inserting
    Actions to carry out the behavior implied by the notation.”
    Disposition: Closed - No Change

  • Updated: Fri, 6 Mar 2015 20:58 GMT