Microsoft published XLANG[*] in 2001 as the business process language for its BizTalk ecommerce suite. Compared with the offerings of more recent BPM standards, XLANG is a relatively simple language, but its ideas, along with those of WSFL, form the basis for the design of BPEL. As an author and supporter of BPEL, Microsoft has turned away from XLANG and effectively shelved it. (BPM time moves rapidly!) Nonetheless, understanding XLANG is valuable for two reasons:
Its influence on BPEL
Its basis in the pi-calculus
The pi-calculus connection is examined in Chapter 3. This chapter focuses on the first point.
XLANG is an early XML-based, web services-aware process definition language. An XLANG process is defined in a WSDL as part of the definition of a WSDL service. The XLANG process defines the behavior of the service.
Basic WSDL knowledge is essential to understanding XLANG. In previous chapters we have seen that a WSDL port type is a set of operations with message input and output types. A WSDL port binds a port type to a specific transport endpoint. A service is a set of ports. Calling a web service means connecting to one of its ports and interfacing with one of the port's operations by exchanging messages with it.
In the code sample in Example 9-2, the service
AcctService (lines 31-49), which
AcctPort (lines 32-34)
AcctCallbackPort (lines 35-37)
corresponding to port types
(lines 8-12) and
AcctCallbackPT (lines 12-21) respectively, ...