Listing 1
<process>
<variables>
<variable name="receivedContext" ... />
<variable name="quoteParticipant" ... />
</variables>
. . .
<!-- handlers appear in the script before the forward work -->
<faultHandler/>
<!-- clean up partial provisional work -->
<!—- no op: getQuote operation failure leaves no trace -->
<cancelHandler>
<!-- cancel prepared, provisional work -->
<invoke operation="cancelQuote" . . . />
</cancelHandler>
<confirmHandler>
<!-- finalize prepared, provisional work -->
<invoke operation="executeOrder" . . . />
</confirmHandler>
<!-- the forward work>
<receive . . .
businessTransactionContext="receivedContext">
...
</receive>
<businessTransaction action="register"
registerWith="receivedContext"
registeredAs="quoteParticipant">
<!-- provisional work, implicit prepare -->
<invoke
operation="getQuote" . . . />
<reply
businessTransactionParticipant="quoteParticipant"
. . . >
</process>