Скачиваний:
25
Добавлен:
28.01.2021
Размер:
7.15 Mб
Скачать

Figure 14.1 – A BPMN orchestration process and its block hierarchy

The following sub clauses define a syntactical BPEL mapping prescribing the resulting BPEL model at the syntactical level, and a semantic BPEL mapping prescribing the resulting BPEL model in terms of its observable behavior. The syntactical BPEL mapping is defined for a subset of BPMN models based on certain patterns of BPMN blocks, whereas the semantical BPEL mapping (which extends the syntactical mapping) does not enforce block patterns, allowing for the mapping of a larger class of BPMN models without prescribing the exact syntactical representation in BPEL.

14.2 Basic BPMN-BPEL Mapping

This sub clause introduces a partial mapping function from BPMN orchestration Process models to WS-BPEL executable Process models by recursively defining the mapping for elementary BPMN constructs such as Tasks and Events, and for blocks following the patterns described here. Mapping a BPMN block to WS-BPEL includes mapping all of its associated attributes. The observable behavior of a WS-BPEL process resulting from a BPEL mapping is the same as that of the original BPMN orchestration Process.

We use the notation [BPMN construct] to denote the WS-BPEL construct resulting from mapping the BPMN construct.

Examples are

[ServiceTask] = Invoke Activity

which says that a BPMN Service Task is mapped to a WS-BPEL Invoke Activity, or

446

Business Process Model and Notation (BPMN), v2.0.2

 

p1

 

G1

 

 

 

<if><condition>[p1]</condition>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[G1]

 

 

 

 

 

 

 

 

 

<elseif><condition>[p2]</condition>

 

 

 

 

 

G2

 

 

=

[G2]

 

 

 

p2

 

 

 

</elseif>

[

 

 

 

]

 

 

 

 

 

 

<else>

 

 

 

 

 

 

[G3]

 

 

 

 

 

 

</else>

 

 

 

 

 

G3

 

 

 

</if>

which says that the data-based exclusive choice controlled by the two predicates p1 and p2, containing the three BPMN blocks G1, G2, and G3 is mapped to the WS-BPEL on the right hand side, which recursively uses the mappings of those predicates and those sub-graphs. Note that we use the “waved rectangle” symbol throughout this sub clause to denote BPMN blocks.

14.2.1 Process

The following figure describes the mapping of a Process, represented by its defining Collaboration, to WS-BPEL. The process itself is described by a contained graph G of flow elements to WS-BPEL. The Process interacts with Participants Q1…Qn via Conversations C1…Cm:

[

P

Q2

C2

G

C1

Q1

 

 

<process name="[P-name]"

 

 

targetNamespace="[targetNamespace]"

 

 

expressionLanguage="[expressionLanguage]"

]

 

suppressJoinFailure="yes"

 

xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">

 

<partnerLinks>

 

[ {P-Interfaces} UNION {Qi-Interfaces } ]

=

</partnerLinks>

<variables>

 

 

[ {dataObjects} UNION {properties} ]

 

</variables>

 

 

<correlationSets>

 

 

[ {Ci-CorrelationKeys} ]

 

 

</correlationSets>

 

 

[G]

 

 

</process>

The partner links of the corresponding WS-BPEL process are derived from the set of interfaces associated with each participant. Each interface of the Participant containing the Process P itself is mapped to a WS-BPEL partner link with a “myRole” specification, each interface of each other Participant Qi is mapped to a WS-BPEL partner link with a “partnerRole” specification.

Business Process Model and Notation (BPMN), v2.0.2

447