Integrating Islands with Landmasses

EAI notes and thoughts

Monday, June 27, 2005

BPEL in a nutshell

BPEL (Business Process Execution Language) is a language that can be used to model business process flows. BPELScript is an XML schema based script that is used to write or generate process flow steps (activities). A runtime interpretor aka BPEL Engine executes the BPEL scripts. A Partner Link contains the context or role of the BPEL script and the application(s) interactions. Partner Links are present as tags in the BPEL script. Client and Service Provider (Server) are a few roles that can be defined using a Partner Link.

Anatomy of a BPEL Script
A BPEL script, in general, consists of:
  1. A root tag named Process
  2. Required WSDL or other schema imports
  3. Partner Links to establish the role of this BPEL script (process) and the interacting applications
  4. Variable definitions
  5. Fault Handlers and Event Handlers
  6. A sequence containing any of the activities defined below.
Activities
Process modeling in BPEL is done using activities and there are four main types of activities in BPEL.
  1. Communication: These activities are for receiving input messages or text from other applications or invoking methods in other applications to get input.
  2. Control: Control activities are the control structures in BPEL. Switch, Case, Otherwise, While, Flow and Wait are the activities available.
  3. Fault: Fault activities are used to handle errors and exceptions. Throw, Catch, CatchAll, Terminate and Compensate are the activities available.
  4. Other: Other activities are available for assigning, copying or transforming variables and returning their values
In order to better understand the capabilities of BPEL, I hope to model a process using the different Partner Links and activities available in BPEL. I will do a post on the outcome of that activity here. Lack of time led to the Cape Clear license getting expired, so no more BPEL :(

del.icio.us  digg  technorati