BPMN 2.0 FTF Avatar
  1. OMG Issue

BPMN2 — Inclusive Gateway Semantics

  • Key: BPMN2-289
  • Legacy Issue Number: 15155
  • Status: closed  
  • Source: International Business Machines ( Mr. Hagen Voelzer)
  • Summary:

    In the current semantics description of the inclusive gateway:

    The Inclusive Gateway is activated if
    • At least one incoming sequence flow has at least one Token and
    • for each empty incoming sequence flow, there is no Token in the
    graph anywhere upstream of this sequence flow, i.e., there is no
    directed path (formed by Sequence Flow) from a Token to this
    sequence flow unless

    • the path visits the inclusive gateway or
    • the path visits a node that has a directed path to a non-empty
      incoming sequence flow of the inclusive gateway.

    it does not get clear that the latter path is also not allowed to visit the inclusive gateway.

    I suggest to reword the entire sentence.

    The same applies to the semantics of the complex gateway.

  • Reported: BPMN 2.0b1 — Tue, 30 Mar 2010 04:00 GMT
  • Disposition: Resolved — BPMN 2.0
  • Disposition Summary:

    Table 14.3, first row, second column: replace the contents of the column with the following:
    "The Inclusive Gateway is activated if
    1. At least one incoming sequence flow of the inclusive gateway has at least one Token and
    2. for every directed path formed by sequence flow that
    i. starts with a sequence flow f of the diagram that has a Token,
    ii. ends with an incoming sequence flow of the inclusive gateway that has no Token, and
    iii. does not visit the inclusive gateway,
    there is also a directed path formed by sequence flow that
    iv. starts with f,
    v. ends with an incoming sequence flow of the inclusive gateway that has a Token, and
    vi. does not visit the inclusive gateway.
    If the inclusive gateway is contained in a sub-process, then no paths are considered that cross the boundary of that sub-process.
    Upon execution, a Token is consumed from each incoming sequence flow that has a Token. A Token will be produced on some of the outgoing sequence flows.
    In order to determine the outgoing sequence flows that receive a Token, all conditions on the outgoing sequence flows are evaluated. The evaluation does not have to
    respect a certain order.
    For every condition, which evaluates to true, a Token must be passed on the respective sequence flow.
    If and only if none of the conditions evaluates to true, the Token is passed on the default sequence flow.
    In case all conditions evaluate to false and a default flow has not been specified, the inclusive gateway throws an exception."
    Disposition: Resolved

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