UML 2.4 RTF Avatar
  1. OMG Issue

UML24 — Operation with multiple return parameter

  • Key: UML24-114
  • Legacy Issue Number: 15769
  • Status: closed  
  • Source: NASA ( Dr. Maged Elaasar)
  • Summary:

    We are talking about an operation declared in the UML metamodel, so

    Operation::returnResult() : Parameter [0..1]

    is definitely valid UML notation.

    while

    Operation::returnResult() : Set(Parameter)

    which is the way it is now in spec is definitely not valid UML notation, it is supposed to be:

    Operation::returnResult() : Parameter [*]

    In both cases, the way OCL interprets the result of such opertion is similar to how it interprets any value, as a collection, and as such collection operations can be called on it.

    Therefore, to be consistent, this operation should be changed have a simple "Parameter" as a return type.

    However, if we are going to leave this operation with * multiplicity to be more robust or OCL friendly, then at least we should be consistent in those other cases, where we have singular return result.

    OperationHasSingularReturnResult : 16
    operation = <Operation> UML::Vertex::containingStateMachine () : StateMachine
    operation = <Operation> UML::Transition::redefinitionContext () : Classifier
    operation = <Operation> UML::Transition::containingStateMachine () : StateMachine
    operation = <Operation> UML::Stereotype::profile () : Profile
    operation = <Operation> UML::Stereotype::containingProfile () : Profile
    operation = <Operation> UML::StateMachine::LCA (s1 : State, s2 : State) : Namespace
    operation = <Operation> UML::State::redefinitionContext () : Classifier
    operation = <Operation> UML::State::containingStateMachine () : StateMachine
    operation = <Operation> UML::Region::redefinitionContext () : Classifier
    operation = <Operation> UML::Region::containingStateMachine () : StateMachine
    operation = <Operation> UML::Property::opposite () : Property
    operation = <Operation> UML::Package::containingProfile () : Profile [0..1]
    operation = <Operation> UML::Operation::type () : Type
    operation = <Operation> UML::LinkAction::association () : Association
    operation = <Operation> UML::Extension::metaclassEnd () : Property
    operation = <Operation> UML::Extension::metaclass () : Class

  • Reported: UML 2.3 — Fri, 15 Oct 2010 04:00 GMT
  • Disposition: Resolved — UML 2.4
  • Disposition Summary:

    The issue is obsolete. The generated Operation descriptions are now correct.
    Disposition: Closed - No Change

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