Issue 14816: Formalizing the Source-Target relationships between Link Intermediate Event (bpmn2-ftf) Source: International Business Machines (Ms. Suzette Samoojh, ssamoojh(at)ca.ibm.com) Nature: Enhancement Severity: Significant Summary: Currently, there is no formalized way to relate Throw Link Events with their corresponding Catch Link Event(s). The spec briefly mentions that their names must be the same, but names are unreliable. - There is no constraint on names, so I could create multiple Catch Link Events with the same name, thus breaking the model. - Names are not used, in general throughout the spec, for formalizing relationships. Instead IDs are. - Users do sometimes assign different names to the Throw and Catch (for example "A" for the throw and "from A" for the catch). Recommendation: Add an explicit assocation from the Throw Link Event to the Catch Link Event Resolution: Add a new bidirectional association to the LinkEventDefinition. (Updated+Link+Event+Metamodel.jpg) If the LinkEventDefinition represents a 'throw' or 'source' link event, it will reference 1 LinkEventDefinitions representing the corresponding 'catch' or 'target' link event. If the LinkEventDefinition represents a 'catch' or 'target' link event, it will reference 1 or more LinkEventDefinitions representing the corresponding 'throw' or 'source' link events. Spec updates: (a) - Update Figure 10.70 to add new bidirectional association to the LinkEventDefinition class: (Updated+Link+Event+Metamodel.jpg) - Add two new associations to Table 10.91: (b) sources: Used to reference the corresponding 'catch' or 'target' LinkEventDefinitions, when this LinkEventDefinition represents a 'throw' or 'source' LinkEventDefinition. (c) target: Used to reference the corresponding 'throw' or 'source' LinkEventDefinition, when this LinkEventDefinition represents a 'catch' or 'target' LinkEventDefinition. Corresponding additions will be made to the BPMN XSD. Disposition: Resolved Revised Text: Actions taken: November 23, 2009: received issue October 21, 2010: closed issue Discussion: End of Annotations:===== m: webmaster@omg.org Date: 23 Nov 2009 17:46:55 -0500 To: Subject: Issue/Bug Report ******************************************************************************* Name: Suzette Samoojh Company: IBM Canada mailFrom: ssamoojh@ca.ibm.com Notification: No Specification: BPMN 2.0 Section: 10.4.4 FormalNumber: dtc/2009-08-14 Version: 2.0 RevisionDate: 08/14/2009 Page: 235-236 Title: Link Events - Constraints and Usage not clearly documented Nature: Clarification Severity: Minor test: 3qw8 B1: Report Issue Description: The Sequence Flow constraints around the usage of Link Events are not clearly expressed in the spec. Very simply, it should express that: - A Catch Link Event should have no incoming Sequence Flow. - A Throw Link Event should have no outgoing Sequence Flow. Instead the spec has several rather confusing statements (pgs 235-236) that make it hard to infer the simple behavior I described above. Statements like: - If the Intermediate Event is used within normal flow: - Intermediate Events MUST be the target of a Sequence Flow. - An Intermediate Event MUST be a source for Sequence Flow. - An exception to this: a source Link Intermediate Event (as defined below), it is not required to have an outgoing Sequence Flow. - A Link Intermediate Event MUST NOT be both a target and a source of a Sequence Flow. - A Link Intermediate Event MAY be the target (target Link) or a source (source Link) of a Sequence Flow, but MUST NOT be both a target and a source. Recommendation: - Tighten up and simplify the constraint descriptions for Link Events. - Refrain from introducing new terms "source" and "target", or if the new terms are needed, clearly relate them to the existing "catch" and "throw" terms.