WS-BPEL 2.0 versus BPEL4WS 1.1

BPEL4WS 1.1 was contributed to the OASIS WS-BPEL Technical Committee, where it was advanced through an open process. The following list summarizes the major changes the Committee incorporated in WS-BPEL 2.0.

Data Access

  • Variables can be declared using XML schema complex types
  • XPath expressions are simplified by using the ‘$’ notation for variable access, for example, $myMsgVar.part1/po:poLine[@lineNo=3]
  • Access to WSDL messages has been simplified by mapping directly mapping WSDL message parts to XML schema element/type variables
  • Several clarifications have been added to the description of the <assign> activity’s <copy> semantics
  • The keepSrcElementName option has been added to <copy> in order to support XSD substitution groups or choices
  • The ignoreMissingFromData has been added to automatically some of <copy> operation, when the from data is missing.
  • An extension operation has been added to the <assign> activity
  • A standardized XSLT 1.0 function has been added to XPath expressions
  • The ability to validate XML data has been added, both as an option of the <assign> activity and as a new <validate> activity
  • Variable initialization as part the of variable declaration has been added

Scope Model

  • New scope snapshot semantics have been defined
  • Fault handling during compensation has been clarified
  • The interaction between scope isolation and control links have been clarified
  • Enrichment of fault catching model
  • A <rethrow> activity has been added to fault handlers
  • The <terminationHandler> has been added to scopes
  • The exitOnStandardFault option has been added to processes and scopes

Message Operations

  • The join option has been added to correlation sets in order to allow multiple participants to rendezvous at the same process with a deterministic order
  • Partner link can now be declared local to a scope
  • The initializePartnerRole option has been added to specify whether an endpoint reference must be bound to a partner link during deployment
  • The messageExchange construct has been added to pair up concurrent <receive> and <reply> activities

New Activities

  • Added serial and parallel <forEach> with optional completion condition
  • Added <repeatUntil>
  • Added new extension activity
  • Changed <switch> to <if>-<elseif>-<else>
  • Changed <terminate> to <exit>
  • Differentiate different cases of <compensate> by renaming them to <compensate> and <compensateScope>

Miscellaneous Changes

  • Added repeatEvery alarm feature to event handlers
  • Clarified resources resolution (e.g. variable, partner link) for event handlers
  • Added formal <documentation> support
  • Added extension namespace declarations in order to specify what extension must be understood
  • Add <import> support to import WSDL and XSD formally

Abstract Processes

  • Clarified Abstract Process usage patterns
  • Introduced Abstract Profiles to address different needs in Abstract Processes, and two profiles “Observable Behavior” and “Process Template” listed in the specification


See also:

- Design Goals of the BPEL4WS Specification Focus Areas: BPEL | DITA | ebXML | IDtrust | OpenDocument | SAML | UBL | UDDI
OASIS sites: OASIS | Cover Pages | | AMQP | CGM Open | eGov | Emergency | IDtrust | LegalXML | Open CSA | OSLC | WS-I