The Web Services Business Process Execution Language (WS-BPEL) provides a language for formally describing business processes and business interaction protocols. WS-BPEL (pronounced 'bee-pell', 'bipple', or 'bepple') was designed to extend the Web Services interaction model to support business transactions.
WS-BPEL 2.0 was approved as an OASIS Standard in April 2007. It defines a model and a grammar for describing the behavior of a business process based on interactions between the process and its partners. The interaction with each partner occurs through Web services interfaces. The WS-BPEL process defines how multiple service interactions with these partners are coordinated to achieve a business goal, as well as the state and the logic necessary for this coordination.
Think of a WS-BPEL process as a reusable definition that can be deployed in different ways and in different scenarios, while maintaining a uniform application-level behavior across all of them. WS-BPEL introduces systematic mechanisms for dealing with business exceptions. This is essential because not all transactions are straightforward and simple. WS-BPEL lets you define how you want activities to be compensated in cases where exceptions occur or a partner requests reversal.
WS-BPEL separates the public aspects of business process behavior from internal or private aspects--and supports both. The standard can be used both for executable processes, which describe the actual behavior of participants in business interactions, and for abstract processes, that may be used to represent publicly observable behaviors. Abstract processes serve a descriptive role and allow for more than one possible use case.
By providing a language for specifying both executable and abstract business processes, BPEL extends the Web services interaction model to help better support business-to-business transactions. This protects business partners from the need to reveal all their internal decision making and data management to one another. Separating public from private processes also provides companies with the freedom to change confidential aspects of the process implementation without affecting the observable behavior.
WS-BPEL leverages other Web services standards such as SOAP and WSDL for communication and interface description. By describing the inbound and outbound process interfaces in WSDL, BPEL enables them to be easily integrated into other processes or applications. In turn, this allows consumers of a process to inspect and invoke a BPEL process just like any other Web service, thereby inheriting all other aspects of a Web service such as quality of service policies.
- Frequently Asked Questions (FAQ)
- WS-BPEL 2.0 Primer
- BPEL4WS Design Goals