## 2 Background and Related Work
### Semantic Web Services  
The syntactic description of web services and their orchestration results in a semantic gap between the syntactic description of the web service interface and the meaning of the underlying functionality. On the basis of a semantic annotation using semantic technologies, the meaning of a web service definition can be described in a machine-understandable manner. This additional semantic layer helpsto enable the efficient discovery and the dynamic orchestration of services to build higher-value services or processes.  
Several approaches exist to describe web services, their operations and parameter types semantically [7]. The most common semantic web service technologies include SAWSDL, WSMO and OWL-S.  
SAWSDL (Semantic Annotations for WSDL) is a W3C recommendation, which describes a lightweight mechanism to add semantics to web services [11]. It is aimed at annotating certain parts of the web service's WSDL descriptions by adding references to semantic models. It does not specify any description language for the referenced semantic model, i.e. arbitrary models can be used such as UML or OWL ontologies. SAWSDL uses the _modelReference_ attribute to annotate XML Schema type definitions, element declarations, portTypes, operations, and messages. In addition, the attributes _liftingSchemaMapping_ and _loweringSchemaMapping_ are used for the mapping between the technical representation of parameter types using XML and the corresponding semantic concepts. In contrast to other approaches such as OWL-S, there is no support for the description of preconditions and effects of a service.  
WSMO (Web Service Modeling Ontology) provides a conceptional model for the description of different aspects of a semantic web service [12]. Its corresponding description language WSML (Web Service Modeling Language) is used to model WSMO services in a formal manner. WSMO defines four top level concepts, namely ontologies, goals, services and mediators. Ontologies provide the terminology that is used by the other WSMO elements. Goals describe the task a web service is required to solve. Services provide a semantic description of the web service's functional and behavioral aspects. Mediators are used to resolve mismatches between different WSMO elements.  
OWL-S is a technology to describe the semantics of a web service based on OWL ontologies [13]. To achieve this, it consists of three types of knowledge about a web service: what does the service do (ServiceProfile), how does the service work (ServiceModel) and how can the service be invoked (ServiceGrounding). As opposed to SAWSDL, which follows a bottom-up approach to annotate services, OWL-S models the semantic service description on a high level of abstraction as an OWL ontology and then links this description to the concrete WSDL file. This approach is very expressive and makes it possible to describe highly powerful semantics of a service. However, at the same time, this increases the complexity of the description process significantly.  
OWL-S not only offers ways to describe single web services semantically, but also to model processes composed of single web services. To this end, OWL-S distinguishes between so called Atomic Processes, Composite Processes and Simple Processes. An Atomic Process can be invoked directly as it is connected to a concrete WSDL file. It corresponds to the operation of a WSDL service. A Composite Process can be composed of Atomic Processes or further Composite Processes. The composition is described by OWL-S control constructs like Sequence, Split, and so on. A Simple Process represents an abstract template of a service, _i.e._, it depicts a semantic description of a service without concrete linking to a WSDL file. However, it can be assigned to an Atomic Process at runtime using the _realizedBy_ reference.