BPML

BPML is an XML process definition language that, like BPEL, describes the structural representation of a process and the semantics of its execution. As with BPEL, the vision of BPML is to run XML processes on an engine element by element, according to precisely defined semantics. The code of a BPML process—laden with familiar constructs such as loops, decisions, parallel paths, variables, and structured exception handling—is readily understood by a programmer.

BPML Example

Once again, the best way to start learning a new language is to dive into an example . Example 6-1 demonstrates several features of BPML, including event-driven processes, context, properties, schedules, exception processes, fault handlers, compensation, and several activity types.

Example 6-1. BPML sample: placing an order
1 <wsdl:message name="requestMessage"> 2 <wsdl:part name="details" element="type:orderDetails"/> 3 </wsdl:message> 4   5 <wsdl:message name="requestAck"> 6 <wsdl:part name="orderID" element="type:orderID"/> 7 <wsdl:message> 8   9 <wsdl:message name="cancelMessage"> 10 <wsdl:part name="orderID" element="type:orderID"/> 11 <wsdl:message> 12   13 <wsdl:message name="requestComplete"> 14 <wsdl:part name="orderID" element="type:orderID"/> 15 </wsdl:message> 16   17 <wsdl:portType name="requesterService"> 18 <wsdl:operation name="onComplete"> 19 <wsdl:input name="requestComplete"/> 20 </wsdl:operation> 21 </wsdl:portType> 22   23 <wsdl:portType name="serverService"> 24 <wsdl:operation name="request"> ...

Get Essential Business Process Modeling now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.