Business Process Execution Language (BPEL) is a non-proprietary, XML-based
language developed by a group of major vendors including IBM, BEA, and
Microsoft. Its function is to describe how Web Services interact with one
another to form workflow systems that implement business processes. As a
model and grammar for describing this behavior, it lets you implement complex
processes by creating and wiring together different activities such as
invoking a service, manipulating data, throwing faults, or terminating
processes. With BPEL you can take a structured top-down approach to
implementing a Service-Oriented Architecture (SOA).
The BPEL specification, like most first editions, is rather basic. While
extremely powerful and flexible, it also had to gain agreement from all of
its many contributors, and so it lacks some important features that make it
more practical. Here... (more)