Page 355 -
P. 355
13 The Business Process Modeling Notation 353
<Process Id=’p1’ Name=’Freight in Transit’>
<Properties>
<Property Name=’trackpoints’ Type=’Trackpoints’/>
<Property Name=’currentTrackpoint’ Type=’Trackpoint’/>
<Property Name=’trackpointNotices’ Type=’TrackpointNotices’/>
...
<Task Id=’a1’ Name=’Issue Trackpoint Notice’>
<Properties>
<Property Name=’trackpoints’ Type=’Trackpoints’/>
<Property Name=’trackpointNotice’ Type=’TrackpointNotice’/>
<Property Name=’skipTrackpoint’ Type=’xsd:boolean’/>
...
</Properties>
<Assignments>
<Assignment AssignTime=’Start’ To=’trackpoints’ From=’{p1.trackpoints}’/>
<Assignment AssignTime=’End’ To=’p1.trackpointNotices’
From="{p1.trackpointNotices}
{if (skipTrackpoint/@value=’false’) then (trackpointNotice)}"
...
<SequenceFlow Source=’g1’ Target=’g2’ Condition=’Expression’
ConditionExpression=’{p1.currentTrackpoint!=""}’/>
Fig. 13.4 Example of detailed data specification
In the YAWL-constrained version of BPMN, properties of a subprocess invoca-
tion must be identical to the properties of the process that is invoked. The Input-
PropertyMaps and OutputPropertyMaps of the subprocess invocation are ignored.
Instead, we map properties of the invoking activity to identically named properties
of the invoked process and vice-versa. For example, suppose a process loan appli-
cation invokes a process objection, which has the property application number.The
activity that invokes the process must then also have the property application num-
ber. When performing the subprocess invocation, this activity assigns the value of
its application number property to the application number property of the objec-
tion subprocess. When the subprocess returns, the value of the application number
property of the subprocess is then assigned to the application number property of
the activity.
13.2.3 Resources
BPMN allows modelers to indicate the resources that may perform a given task.
Typically, “lanes” are used for that purpose, although BPMN does not prescribe that
lanes must necessarily be used for this purpose. A lane is a box in which graphical
objects can be placed. The placement of a task inside a lane can represent that the
resource represented by the lane performs the task. Lanes can represent individual
actors, roles, groups, or any type of resource that the designer requires. Alterna-
tively, the performers property of “user” or “manual” tasks can be used to indicate
which resources may perform a task. In the remainder, we assume that lanes have
been used to represent the resources that perform a task.

