P1: JDW
Sahai WL040/Bidgolio-Vol I WL040-Sample.cls July 16, 2003 18:35 Char Count= 0
WEBSERVICESTODAY 757and discovery, e-marketplaces offer their participants a
number of value-added services, including the following:Enabling inter-Web service interaction after the discovery
(the actual interaction may happen with or without the
direct participation of the e-marketplace);
Enabling supply and demand mechanisms through tradi-
tional catalogue purchasing and request for purchase
(RFP), or through more dynamic auctions and ex-
changes;
Enabling supply-chain management through collabora-
tive planning and inventory handling; and
Other value-added services, such as rating, secured pay-
ment, financial handling, certification services, and no-
tification services.Thus, e-marketplaces can be developed as an entity that
uses public UDDI registries. The e-marketplaces are cat-
egorized as vertical and horizontal depending on their
target market. The vertical e-marketplaces, such as Ver-
ticalNet, GlobalNetXChange, and Retailer Market Ex-
change, target a specific industry sector where partici-
pants perform B2B transactions. In particular, Chemdex,
E-Steel, DirectAg.com, and many more have been success-
ful in their respective markets. By contrast, horizontal ex-
changes, such as eBay, are directed at a broad range of
clients and businesses.Web Services Orchestration
By specifying a set of operations in their WSDL document,
Web services make visible to the external world a certain
subset of internal business processes and activities. There-
fore, the internal business processes must be defined and
some of their activities linked to the operations before
publication of the document. This in turn requires mod-
eling a Web service’s back-end business processes as well
as interactions between them. On the other hand, Web ser-
vices are developed to serve and utilize other Web services.
This kind of interaction usually takes a form of a sequence
of message exchanges and operation executions, termed
conversation. Although conversations are described inde-
pendently of the internal flows of the Web services, they
result in executions of a set of backend processes. A Web
service and its ensuing internal processes together form
what is called aglobal process.Intra-Web Service Modeling and Interaction
The Web Services Flow Language (WSFL) (Leymann,
2001), the Web Services Conversation Language (WSFL)
(W3C, 2002), the Web Service Choreography Interface
(WSCI) (BEA, 2002) and XLANG (Thatte, 2001) are some
of many business process specification languages for Web
services.
WSFL introduces the notion of activities and flows
which are useful for describing both local business pro-
cess flows and global message flows between multiple Web
services. WSFL models business processes as a set of ac-
tivities and links. An activity is a unit of useful work while
a link connects two activities. A link can be a control link
where a decision of what activity to follow is made, or a
data link specifying that a certain datum flows from anactivity to another. These activities may be made visible
through one or more operations grouped as endpoints. As
in WSDL, a set of endpoints defines a service. WSFL de-
fines global message flows in a similar way. A global flow
consists of plug links that link up operations of two ser-
vice providers. Complex services involving more than two
service providers are created by recursively defining plug
links.
XLANG developed by Microsoft extends the XML
Schema Definition Language (XSDL) to provide a mecha-
nism for process definition and global flow coordination.
The extension elements describe the behavioral aspects
of a service. A behavior may span multiple operations.
Action is an atomic component of a behavior definition.
An action element can be anoperation,adelayelement,
or araiseelement. A delay element can be of type de-
layFor or delayUntil. delayFor and delayUntil introduce
delays in execution for a process to wait for something
to happen (for example, a timeout) and to wait till an
absolute date-time has been reached, respectively. Raise
elements are used to specify exception handling. Excep-
tions are handled by invoking the corresponding handler
registered with a raise definition. Finally, processes com-
bine actions in different ways: some of them are sequence,
switch, while, all, pick, and empty.Inter-Web Service Modeling and Interaction
Web services must negotiate and agree on a protocol in
order to engage in a business transaction on the Web.
X-EDI, ebXML, BTP, TPA-ML, cXML, and CBL have been
proposed as an inter-Web service interaction protocol. We
focus on ebXML as it is by far the most successful one.
(See Figure 2.)
In ebXML (http://www.ebxml.org/) parties to engage in
a transaction have Collaboration Protocol Profiles (CPP’s)
that they register at ebXML registries. A CPP contains the
following:Process Specification Layer—Details the business transac-
tions that form the collaboration. It also specifies the
order of business transactions.
Delivery Channels—Describes a party’s message receiving
and sending characteristics. A specification can con-
tain more than one delivery channel.AB CXYZPt. o2o3Pt. o5o7GFAB CXYZP t’.o 2o 3P t’. o1Pt’.o5o 7GFP t’. o 2Figure 2: Intra and inter-Web service modeling and interac-
tion.