Another Example Scenario: Semantic Validation of Service Compositions
A Web service alone can only handle a certain part of an application's functionality. It either serves and stores the content, it extends the processing functionality, or can even take over some of the rendering. Composing various Web services into a workflow (which itself masks itself as Web service) gives the application developers the option to delegate even complex tasks to the "cloud".
In the German GDI-Grid project, we make use of workflows (encoded in BPEL, a workflow language used for chaining Web services compliant to W3C standards) to process environmental models (noise dispersion for traffic noise mapping, and water runoff models in rivers for flood risk maps) with OGC-compliant Web services (with Grids in the back-end for the more complex calculations). Service compositions have several serious drawbacks which might still be reason for their low acceptance. It is not necessarily easy to create the service compositions. Besides the lack of intuitive workflow languages and editors, the problem of the semantic interoperability has yet to be solved. Here, we understand semantic interoperability as the capability of Web services (or other software components) to exchange data without misunderstandings. During service composition, it has to be clear that all pairs of Web services in the workflow simply make sense. Semantic Annotations support the user already during design time to check the semantics (note that structural interoperability is not addressed here, other libraries exist which deal with this problem). Semantic Validation takes the semantic annotations as input, and tries to verify that all components can interact. Our approach, based on WSML and the IRIS reasoning engine, showed its feasibility, a demo can be watched in this (German only) video.
Another issue of service compositions is trust. Complex workflows are usually designed, executed, and tweaked by domain experts (e.g. studied hydraulic engineers in the case of flood models). If these workflows are relocated into the Web, the domain experts loose control over the execution. Semantic Annotations can support the evaluation of the results at the end, and help to backtrack (potentially wrong) decisions made by the workflow engine.