Issue 14799: Section 10.5.1/10.5.6 Need to clarify how initiating gateway is specifed: via sequence flow, attribute, or both (bpmn2-ftf) Source: International Business Machines (Mr. Matthias Kloppmann, matthias.kloppmann(at)de.ibm.com) Nature: Revision Severity: Significant Summary: Description of issue: Section 8.4.1 states that a gateway's behavior is performed at instantiation time of the process if there is a gateway with no incoming sequence flow (top of p. 126). However, section 8.4.6 introduces an "instantiate" flag for Event-base Gateways, which seems to have the exact same purpose (table 8-85 on p. 128). These two ways of tying process instantiation and gateway execution together need to be reconciled. Proposal: Preferably, get rid of the instantiate flag and allow the behavior described in 8.4.1 for all gateways, including the event-based gateway. Alternatively, introduce an instantiate flag for all gateways (or for those where it makes sense), and describe the relationship between no incoming sequence flow and the flag. Resolution: Section 10.2.3, Sub-Section Receive Tasks, page 139 (169 pdf): (a) delete the three bullets on page. (b) Third paragraph: replace the second sentence of the paragraph with the following: "In order for the Task to instantiate the Process its instantiate attribute must be set to true and it must not have any incoming Sequence Flow." (c) Last paragraph on page: add the following to the paragraph: "If the instantiate attribute is set to true, the envelope marker looks like a Message Start Event (as shown in Figure 10.X)." (d) Add new figure after Figure 10.15 that shows the instantiate version of the Receive Task (see (10698_New+Icon+for+Instantiating+Receive+Task.jpg) ), which is a Task with a marker that looks like a small Message Start Event. (e) The new Figure will have the following caption: "A Receive Task Object that instantiates a Process" (f) Table 10.10, second row, second column: delete "after the Start Event or a starting Task if there is no Start Event" Section 10.5.6: (g) Delete the first three bullets after Figure 10.114 (h) First paragraph after Figure 10.114: replace "meet one of the following conditions:' with "not have any incoming Sequence Flow." Section 14.1, Second paragraph, First sentence: (i) Replace "Event-Based Gateway" with "Event-Based Gateway or a Receive Task" (j) Replace "Instantiate flag is true" with "instantiate flag set to true" (k) Section 14.2.3, Bullet for Receive Task: Add the following to the bullet: "If the Receive Task's instantiate attribute is set to true, the Receive Task itself can start a new Process instance." Disposition: Resolved Revised Text: Actions taken: November 24, 2009: received issue October 21, 2010: closed issue Discussion: End of Annotations:===== ection 10.5.1/10.5.6 Need to clarify how initiating gateway is specifed: via sequence flow, attribute, or both ##Source: IBM (Matthias Kloppmann, matthias-kloppmann@de.ibm.com) ##Original Issue: http://www.osoa.org/jira/browse/BPMN-72 ##Original Info: (Severity: Significant - Nature: Revision) Section(s) of Spec: 8.4.1 and 8.4.6 Raised by: Matthias Kloppmann Sub-Team responsible: Type: Technical Description of issue: Section 8.4.1 states that a gateway's behavior is performed at instantiation time of the process if there is a gateway with no incoming sequence flow (top of p. 126). However, section 8.4.6 introduces an "instantiate" flag for Event-base Gateways, which seems to have the exact same purpose (table 8-85 on p. 128). These two ways of tying process instantiation and gateway execution together need to be reconciled. Proposal: Preferably, get rid of the instantiate flag and allow the behavior described in 8.4.1 for all gateways, including the event-based gateway. Alternatively, introduce an instantiate flag for all gateways (or for those where it makes sense), and describe the relationship between no incoming sequence flow and the flag. Comments: From: hvo created: Mon, 13 Jul 2009 10:10:18 -0500 (CDT) The spec should clarify the use cases of the "instantiate" flag. Hence I suggest to move this issue to the FTF. From: wstephe created: Mon, 13 Jul 2009 12:37:03 -0500 (CDT) In V0.9.14 the sections cited above are now 10.5.1 and 10.5.6, respectively. Section 10.5.1 says: "If the Gateway does not have an incoming Sequence Flow, and there is no Start Event for the Process, then the Gateway's divergence behavior, depending on the type of Gateway (see below), SHALL be performed when the Process is instantiated." This means that the start of the process is not explicitly defined. When the Process is started, however that is done, then the Gateway is handled. It was not intended to indicate that the Gateway was the mechanism for instantiating the Process. The instantiate flag is part of the Event Gateway since that GW can be used to instantiate a Process (when it is the first non Start Event element). We applied Issue 442 to be sensitive to that flag (by changing the notation). We can use this issue to clarify the text.