Opaque Chaining Geoprocessing Workflow

12 Copyright © 2009 Open Geospatial Consortium, Inc.Copyright © 2009 Open Geospatial Consortium, Inc. Figure 8. Opaque Chaining Pattern In step 1, the user invokes an aggregate service unaware of the implementation details e.g. if the aggregate service uses a service chain and what kind of services are involved. The aggregate service starts now the predefined execution order at this point, so the first service is invoked in step 2. The processed results or a reference are returned back to the aggregate engine in step 3. These results or a reference are passed in the second service in step 4. If the aggregate service supplies a reference, the service has to obtain the actual data in step 5 from the previous service. Again, after processing, the results or a reference are returned back to the aggregate service as can be seen in step 6. In step 7, the aggregate service invokes the third service with the results from the two previous services. In case a reference to actual data is delivered, the third service requests the actual data from the corresponding service as presented in step 8 and 9. After processing, the final results are returned to the aggregate service in step 10 and from there back to the user in step 11.

4.2.4 Business Process Execution Language BPEL

The de-facto standard for Web Service workflow composition van der Aalst et al., 2003a is the Business Process Execution Language for Web Services BPEL4WS, commonly referred as BPEL, which is a standard proposed by IBM, Microsoft and BEA Andrews et al., 2003a, that evolved from former standards, such as graph based WSFL or block based and algebraic XLANG. BPEL descriptions scripts are XML based documents, which describe the roles involved in the message exchange, supported port types and orchestration information of a process. BPEL is also a service composition model Wohed et al., 2003, which supports composition and coordination protocols Chen et al., 2006. It consists of an activity-based component model, an orchestration model that allows the definition of structured activities, XML schema data types, a service selection model and a mechanism for exception and event handling. 2 3 4 5 6 7 8 9 10 1 11 Copyright © 2009 Open Geospatial Consortium, Inc.Copyright © 2009 Open Geospatial Consortium, Inc. 13 A BPEL process does not only interact with a set of partners through Web Service interfaces but also represents a Web Service from an external point of view figure 9. This process is internally implemented by the interaction of participating Web Services, whose interfaces are specified by WSDL documents. Reuse and simplicity of BPEL processes are guaranteed by operating only on the “abstract” PortType definitions instead of the concrete Port definitions of a Web Service. Thereby, specific binding and deployment issues remain at the Web Service and not at the BPEL process itself Leymann et al., 2003. Figure 9. BPEL Process Overview Since BPEL is strongly related to Web Services, BPEL4WS is build on top of numerous XML based specifications: WSDL 1.1, XML Schema 1.0 and XPath 1.0. WSDL describes all external resources and participating Web Services. XML Schema specifies the datatypes in conjunction with the WSDL messages and XPath is needed for internal data manipulation.