<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Towards Choreography Transactions</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Oliver Kopp</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Matthias Wieland</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Frank Leymann</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute of Architecture of Application Systems, University of Stuttgart, Germany Universitatsstra e 38</institution>
          ,
          <addr-line>70569 Stuttgart</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The focus of choreography modeling is to capture the message exchange between processes. Common choreography modeling languages do not provide capabilities to group activities of di erent participants together into an all-or-nothing group. This paper presents choreography spheres as a modeling technique for cross-process transactions based on BPEL4Chor and sketches a mapping to BPEL.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        BPMN [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] is an established standard for modeling processes and process
choreographies. While BPMN is mostly used for modeling business processes, BPEL [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]
is used for executing processes. BPEL itself de nes orchestration only. Support for
process choreographies is added by BPEL4Chor [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Since the execution semantics
of BPMN is still not de ned for all cases, we focus on BPEL4Chor, which has an
agreed semantics [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>In BPEL4Chor a choreography is modeled by modeling the behavior of each
participant as BPEL process and interconnecting the pools using message links.
Internal transaction behavior is modeled in BPEL by scopes. A scope groups
activities together. If a scope is completed, its whole work may be compensated as
a response to failures in subsequent steps. The compensation is either performed
by explicitly modeled compensation behavior or by the default compensation. The
default compensation executes the (explicitly modeled) compensation actions for
each activity in reverse order of their execution. Thus, an all-or-nothing behavior
may be achieved even for activities not providing an \undo" operation themselves.
However, there exist scenarios where it is helpful for process modelers to use
modeling constructs spanning over di erent processes to express that the selected
activities of di erent processes belong together and have to be coordinated.
Usually, the coordination has to be modeled manually including the activities
needed to communicate with a coordinator. The contribution of this paper is the
introduction of choreography spheres, which represent this missing construct. The
main advantage of using choreography spheres is that the coordination between
the participant does not have to be modeled explicitly. By using choreography
spheres, the coordination is done automatically. We present two distinct types of
choreography spheres, each being a new modeling construct for the two common
transaction types: short running and long running transactions.</p>
      <p>In general, we de ne a choreography sphere as shown in De nition 1.
De nition 1 (Choreography Sphere). A choreography sphere ensures
transactional behavior of all enclosed activities that can be part of multiple processes.
The de nition leads to a all or nothing semantic of the sphere, which means all
activities are either executed successfully or the e ects are undone.</p>
      <p>In the following, an overview on background and related work is given in
Section 2. Afterwards, two types of spheres with di erent transaction properties
are described in Section 3 and Section 4. Finally, Section 5 concludes and presents
an outlook on future work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Background and Related Work</title>
      <p>
        The concept of spheres with transactional behavior was rst introduced in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
The spheres were allowed to overlap, but the semantics for choreography spheres
was put as future work. Currently, there exist no work on cross-organizational
transactions, where arbitrary activities may be chosen to be coordinated.
      </p>
      <p>
        There are two di erent types of transaction styles available in the the business
area: business transactions and ACID style transactions [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Both are supported
by spheres. But they have di erent implications on the modeling and also the
technical coordination needed. Because of that we de ne in this paper 2PC
Spheres in Section 3 for the ACID transactions and the BPEL Sphere in Section
4 for the Business transactions.
      </p>
      <p>
        In the eld of Web services, the standards published by the OASIS Web
Services Transaction (WS-TX) Technical Committee are the standards used in
practice. They provide transaction support across di erent vendors. The
WSCoordination speci cation [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] describes the general transaction framework. It
describes the protocols for participant registration and de nes a transaction
context. This context can be passed using messages to enable the recipient to register
as participant of the same transaction. WS-Coordination describes a protocol
service, which handles the concrete coordination protocols. WS-Coordination is open
to any transaction protocol. Up to now, WS-Atomic Transaction (WS-AT, [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ])
and WS-Business Activity (WS-BA, [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]) are de ned. WS-AT de nes the
twophase-commit protocol, which is used for ACID transactions and thus provides
and all-or-nothing behavior [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. WS-BA is used for long-running transactions,
which may last for years. It builds on the Saga model [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], where each activity
has an associated compensation activity. In Saga, the activities are executed
one after another. If an activity fails, the executed activities are compensated
in reverse order. An overview of the history of transaction handling and current
approaches in the eld of Web services is given in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
      <p>
        It is shown in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] how transactional behavior of services called by a BPEL
process can be enforced. A transaction policy is attached to a group of BPEL
activities. The transaction policy states which transaction protocol is used at
invoking the grouped activities. We re-use this idea in our approach to enable
transaction context propagation from the choreography sphere to the called
services.
      </p>
      <p>
        A variant of cross-process spheres is presented in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], called \split BPEL
scopes". These scopes result from a split of a BPEL process among di erent
participants. The split BPEL scopes keep the semantics of the BPEL scope in the
unsplit process and are coordinated using the WS-Coordination infrastructure [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
Our approach allows for picking arbitrary activities in a choreography to be
coordinated.
      </p>
      <p>
        In the eld of WS-Coordination, transaction protocols are de ned using a
coordination protocol graph and additional textual description. The approach
presented in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] shows how the coordination protocol graphs can be transformed
to an abstract BPEL process for the coordinator and one BPEL process for the
participant. Each of them has to be manually re ned to adhere the requirements of
the textual description of the transaction protocol. This has to be done only once
for each transaction protocol. We use the resulting executable BPEL coordination
logic in our approach as described in Section 3.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>2PC Spheres</title>
      <p>The two-phase commit protocol (2PC for short) is a well-known protocol to
coordinate distributed ACID transactions enabling an all-or-nothing behavior.
Due to their nature, ACID transactions are used for short-term operations (a
few seconds). The two booking work ows presented on the left side (participant
behavior descriptions) in Fig. 1 are executed in parallel, but need to be coordinated
to ensure an all-or-nothing semantics of the two pay activities. To achieve that
they are nested in a 2PC sphere, which ensures that no money is transferred
if one activity fails. Only if both are executed successfully the whole sphere is</p>
      <sec id="sec-3-1">
        <title>BPEL Flow:</title>
        <p>Flight Service</p>
      </sec>
      <sec id="sec-3-2">
        <title>BPEL Flow: Hotel Service</title>
        <p>BPEL process
with scope+policy annotation
1. transformation
2a. deploy
&lt;receive&gt;
travel data
&lt;invoke&gt;
search and
select flight
&lt;invoke&gt;
book and
pay flight
&lt;invoke&gt;
print ticket
&lt;reply&gt;
confirmation
&lt;receive&gt;
travel data
&lt;invoke&gt;
search and
select hotel
&lt;invoke&gt;
book and
pay hotel
&lt;invoke&gt;
print hotel
confirmation</p>
        <p>&lt;reply&gt;
confirmation
policy</p>
        <p>reference
2PC
Sphere
choreography
sphere definition
participant behavior</p>
        <p>descriptions
(BPEL processes)
projected
scope
n
o
itr
a
e
n
e
g
.
b
2
choreography
scope enabled
BPEL engine</p>
        <sec id="sec-3-2-1">
          <title>WS-AT coordination logic</title>
        </sec>
        <sec id="sec-3-2-2">
          <title>3b. deploy</title>
          <p>coordination
logic</p>
          <p>standard
BPEL engine</p>
          <p>Fig. 1. Transformation steps required for the execution of choreography spheres
committed. Thus, one is sure that no money needs to be claimed back in any
case of failure. Until now, 2PC spheres are de ned for the ow activity only and
cannot be nested.</p>
          <p>The sphere de nition has to be represented in each BPEL process to enable
proper execution. The necessary steps for that are presented in Fig. 1. In step 1,
each participant behavior description is transformed to a BPEL process, where
a scope is put around the activities belonging to the choreography scope. The
scope is annotated with a policy stating that the scope belongs to a choreography
scope. In step 2a, each process is deployed on a choreography scope enabled
BPEL engine. Step 2b is motivated by the non-existence of BPEL engines
supporting choreography scopes. Thus, the alternative approach is to generate
the coordination logic into each BPEL process. Finally, step 3 deploys each
executable process on a standard BPEL engine.
4</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>BPEL Spheres</title>
      <p>
        In contrast to short-running transactions, business transactions are usually
longrunning [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] as shown in example presented in Fig. 2. In this example a production
company plans a new product and orders the parts for that product from di erent
subcontractors. They produce the parts and send them to the production company
that assembles them to the end product. In case of a fault in the inner BPEL
sphere, the production company tires to nd a new subcontractor. If this is
not possible or any other error is propagated to the outer BPEL sphere, all
running activities inside the outer BPEL sphere are terminated and all successful
completed activities are compensated. The inner BPEL sphere is treated as child
BPEL Flow: Production Company
&lt;invoke&gt;
plan product
&lt;invoke&gt;
      </p>
      <p>find
subcontractors
&lt;forEach&gt;
&lt;recieve&gt;
get parts
BPEL Sphere
&lt;invoke&gt;
build product</p>
      <p>BPEL Flow: Subcontractor
&lt;receive&gt;
get part
specification
&lt;invoke&gt;
build part
&lt;invoke&gt;
deliver part
Fault:
=&gt; invoke find new
subcontractor</p>
      <p>Fig. 2. BPEL sphere extending BPEL's scope semantics across BPEL processes
activity of the outer sphere and is handled the same way. This kind of process
is running signi cantly longer than the money transfer actions presented in
Section 3. Due to the long processing time, it is not possible to lock all data used
in the processes. Thus, WS-AT cannot be used for the involved Web services as
done in the case of 2PS spheres. The transformation steps presented in Section 3
are similar for BPEL spheres. The only change is that the used coordination
protocol changes from WS-AT to WS-BA.</p>
      <p>In BPEL, long-running transactions are realized by scopes. The concept of
BPEL spheres extends BPEL's scope semantics to choreographies. A BPEL
sphere groups activities together to form a transactional unit. The BPEL sphere
is a long-running sphere and therefore uses compensation as undo operation.</p>
      <p>
        Each BPEL sphere may have fault handlers and a compensation handler
attached. BPEL spheres must be properly nested similar to scopes. BPEL spheres
may not overlap with BPEL scopes similar to 2PC spheres. The activities in
these handlers must be annotated which the participant, where the respective
activities run. After the choreography is de ned and it comes to the mapping to
separate BPEL processes, the activities inside the handlers are split as presented
in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. The remainder of the transformation and the deployment follows the
procedure presented in Fig. 1. The projected scopes are annotated with a policy
including the reference to the choreography scope de nition.
      </p>
      <p>
        It is possible to require that at least one activity in each participant runs in
a BPEL sphere. This requirement ensures that all projected scopes run, which in
turn is a requirement resulting from the premises by [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Thus, the projected
BPEL scopes can be coordinated using the protocols described in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. An
implementation of BPEL spheres has been described in [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], which is based on
the pluggable framework [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ].
5
      </p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion and Outlook</title>
      <p>In this paper, we presented the concept of choreography spheres, where arbitrary
activities of di erent processes can be grouped together. We showed a sketch of
a possible implementation using the BPEL and WS-Coordination. We plan to
add a full runtime support for choreography spheres to the Apache ODE engine.</p>
      <p>
        Currently, choreography spheres may not overlap and the included activities
may only be part of the same scope and loop. We sketched the nesting of BPEL
spheres and the interplay with local scopes. A semantics for overlapping spheres is
shown in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Thus, our future work is to study possible semantics of overlapping
BPEL spheres and of BPEL spheres overlapping with local BPEL scopes.
      </p>
      <p>
        Motivated by [
        <xref ref-type="bibr" rid="ref20 ref6">6,20</xref>
        ], we research whether there are requirements for additional
types of spheres. We are going to evaluate the applicability of these types in
choreography settings.
      </p>
      <p>Acknowledgments This work is supported by the BMBF funded project
Tools4BPEL (01ISE08B) and the DFG project Nexus (SFB627).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Object</given-names>
            <surname>Management</surname>
          </string-name>
          <article-title>Group (OMG): Business Process Modeling Notation (BPMN) Version 1</article-title>
          .
          <fpage>2</fpage>
          . (
          <year>2009</year>
          ) http://www.bpmn.org/.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <source>OASIS: Web Services Business Process Execution Language Version</source>
          <volume>2</volume>
          .0 {
          <string-name>
            <given-names>OASIS</given-names>
            <surname>Standard.</surname>
          </string-name>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Decker</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kopp</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weske</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>BPEL4Chor: Extending BPEL for Modeling Choreographies</article-title>
          . In: ICWS. (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Lohmann</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kopp</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Reisig</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          :
          <article-title>Analyzing BPEL4Chor: Veri - cation and Participant Synthesis</article-title>
          . In: WS-FM. (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Supporting Business Transactions Via Partial Backward Recovery In Work ow Management Systems</article-title>
          . In Lausen, G., ed.
          <source>: BTW</source>
          . (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Green</surname>
            <given-names>eld</given-names>
          </string-name>
          , P.,
          <string-name>
            <surname>Fekete</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jang</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Compensation is Not Enough</article-title>
          . In: EDOC, Washington, DC, USA (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. OASIS:
          <article-title>Web Services Coordination (WS-Coordination) Version 1</article-title>
          .
          <fpage>1</fpage>
          . (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8. OASIS:
          <article-title>Web Services Atomic Transaction (WS-AtomicTransaction) Version 1</article-title>
          .
          <fpage>1</fpage>
          . (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9. OASIS:
          <article-title>Web Services Business Activity (WS-BusinessActivity) Version 1</article-title>
          .
          <fpage>1</fpage>
          . (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Gray</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Reuter</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Transaction Processing: Concepts and Techniques</article-title>
          . Morgan Kaufman (
          <year>1993</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Garcia-Molina</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Salem</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          : Sagas. In: SIGMOD. (
          <year>1987</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vonk</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kratz</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grefen</surname>
            ,
            <given-names>P.:</given-names>
          </string-name>
          <article-title>A survey on the history of transaction management: from at to grid transactions</article-title>
          .
          <source>Distributed and Parallel Databases</source>
          <volume>23</volume>
          (
          <issue>3</issue>
          ) (
          <year>2008</year>
          )
          <volume>235</volume>
          {
          <fpage>270</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Tai</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Khalaf</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mikalsen</surname>
            ,
            <given-names>T.A.</given-names>
          </string-name>
          :
          <article-title>Composition of Coordinated Web Services</article-title>
          . In Jacobsen, H.A., ed.: Middleware. (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Khalaf</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Coordination Protocols for Split BPEL Loops and Scopes</article-title>
          .
          <source>Technical Report Computer Science</source>
          <year>2007</year>
          /01, University of Stuttgart,
          <source>Institute of Architecture of Application Systems</source>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Khalaf</surname>
          </string-name>
          , R.:
          <article-title>Supporting business process fragmentation while maintaining operational semantics: a BPEL perspective</article-title>
          .
          <source>Doctoral thesis</source>
          , University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology,
          <string-name>
            <surname>Germany</surname>
          </string-name>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Kopp</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wetzstein</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mietzner</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pottinger</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karastoyanova</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>A Model-Driven Approach to Implementing Coordination Protocols in BPEL</article-title>
          . In: MDE4BPM. (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roller</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Production Work ow { Concepts and</article-title>
          <string-name>
            <surname>Techniques. Prentice Hall PTR</surname>
          </string-name>
          (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Steinmetz</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Ein Event-Modell fur WS-BPEL 2.0 und dessen Realisierung in Apache ODE</article-title>
          .
          <source>Diploma thesis</source>
          , University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology,
          <string-name>
            <surname>Germany</surname>
          </string-name>
          (
          <year>2008</year>
          )
          <article-title>(In German)</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Khalaf</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karastoyanova</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Pluggable Framework for Enabling the Execution of Extended BPEL Behavior</article-title>
          . In: WESOA. (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pottinger</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Rethinking the Coordination Models of WSCoordination and WS-CF</article-title>
          . In: ECOWS. (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>