Anatomy of a Process
The BPEL specification[*] is positioned as a business process extension to existing web services standards. In the past, web services were limited to stateless interactions; BPEL and other process and choreography languages show how to build stateful, conversational business processes from web services. BPEL is a rigorous language that builds on and extends web services for interacting processes.
A BPEL process definition consists of two types of files:
Web Services Definition Language (WSDL) files specifying the web service interfaces—partner link types, properties, port types and operations, message and part—of interest to the process, including services implemented by and called by the process. WSDL is a well-known technology with many uses besides process definition.
BPEL files, each of which encodes in XML form the definition of a process, including its main activities, partner links, correlation sets, variables, and handlers for compensation, faults, and events.
When combined, the WSDL and the process definition form a
business control flow that can act as an interface with external
parties through web services. In a sense, the main steps in a
process—the ones that drive the flow—are its service touchpoints,
reply activities. The most rigid rule of
BPEL programming is that a process must begin with a
pick activity, implying that a process must start by being called as a service of a particular type. Thereafter, ...