UML 2.2 RTF Avatar
  1. OMG Issue

UML22 — Section: 15.3.14

  • Key: UML22-315
  • Legacy Issue Number: 10959
  • Status: closed  
  • Source: International Business Machines ( Mr. Adam Neal)
  • Summary:

    On page 569 in section 15.3.4 (Transitions), constaint # 5 identifies which outgoing transitions, given their source pseudostates, may not have triggers: [5] Transitions outgoing pseudostates may not have a trigger. source.oclIsKindOf(Pseudostate) and ((source.kind <> #junction) and (source.kind <> #join) and (source.kind <> #initial)) implies trigger->isEmpty() This OCL is incorrect since transitions leaving either a Junction Point, Initial State or a Join should not have triggers. The given OCL specifies the inverse - that only those pseudostates may have triggers. One contradiction to the above OCL exists on page 537 in section 15.3.8 (Pseudostates), constraint #9: [9] The outgoing transition from an initial vertex may have a behavior, but not a trigger or guard. (self.kind = PseudostateKind::initial) implies (self.outgoing.guard->isEmpty() and self.outgoing.trigger->isEmpty()) Furthermore, transitions leaving a fork are also not allowed triggers (constraint #1), so this could also be contained in the transition's OCL constraint (#5). Therefore the OCL for constraint #5 should be written as: [5] Transitions outgoing pseudostates may not have a trigger. source.oclIsKindOf(Pseudostate) and ((source.kind = #junction) or (source.kind = #join) or (source.kind = #initial) or (source.kind = #fork)) implies trigger->isEmpty()

  • Reported: UML 2.1.1 — Wed, 18 Apr 2007 04:00 GMT
  • Disposition: Resolved — UML 2.2
  • Disposition Summary:

    Text has already been fixed in the UML 2.2 specification to be
    [5] Transitions outgoing pseudostates may not have a trigger (except for those coming out of the initial pseudostate).
    (source.oclIsKindOf(Pseudostate) and
    (source.kind <> #initial)) implies trigger->isEmpty()
    which resolves the above issue

    Revised Text:
    N/A

    Disposition: ClosedNoChange

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