Legacy Issue Number: 14820
Source: International Business Machines ( Suzette Samoojh)
Can a single Data Input be the target of multiple Data Associations? The spec does not explicitly disallow this.
What would be the outcome of executing this model - would the last data association defined always overwrite the results of executing prior ones?
Is there a use-case or scenario where this produces meaning results, or should this pattern be disallowed?
Reported: BPMN 2.0b1 — Mon, 23 Nov 2009 05:00 GMT
Disposition: Resolved — BPMN 2.0
Add the following paragraph after the last paragraph in Section 10.3.2 Execution Semantics for Data
Once an InputSet becomes "available", all DataAssociations whose target is any of the DataInputs of the InputSet are executed. These executions fill the Activity
DataInputs and the execution of the Activity can begin.
When an Activity finishes execution, all DataAssociations whose sources are any of the DataOutputs of the OutputSet are executed. These executions copy the values
from the DataOutputs back to the container's context (DataObjects, Properties, etc).
Execution Semantics for DataAssociation
The execution of any DataAssociation must follow these semantics:
a) If the DataAssociation specifies a "transformation" Expression, this expression is evaluated and the result is copied to the targetRef. This operation replaces
completely the previous value of the targetRef element.
b) For each "assignment" element specified:
) Evaluate the Assignment's "from" expression and obtain the *source value
) Evaluate the Assignment's "to" expression and obtain the *target element. The target element can be any element in the context or a sub-element of it (e.g. a
DataObject or a sub-element of it).
) Copy the *source value to the target element.
c) If no "transformation" Expression nor any "assignment" elements are defined in the DataAssociation:
*) copy the DataAssociation "sourceRef" value into the "targetRef". Only one sourceRef element is allowed in this case.
Add the following sentence in Section 14.2.2 Activity, at the end of the bullet that starts with "When some data InputSet becomes available,"
Please refer to section 10.3.2 for a description of the execution semantics for DataAssociations.
Updated: Fri, 6 Mar 2015 20:57 GMT