# From Service Composition to Mashup Editor: A Multiperspective Taxonomy
## 4 Taxonomy for Services Composition
### User Perspective
#### 4.2.2 Automatic Web Services Composition  
The second approach is the automatic services composition. This approach aims at automatically building composite services that are in response to a user context or request. Except for the request, the end-user does not provide any more information about the composition process. Below, we cite some works that fall into the category of the automatic approach and summarize the overall landscape of contributions made in this area. The most common technique used in this approach is based on the so-called goal-driven service composition, particularly the inputs/outputs matching. In other terms, from a defined goal definition (set by the user and/or their context), this technique uses the matching between output and input interfaces (data types) in order to define the most likely pair of servicesthat can be composed together. Step by step, this operation aims to build the composition pattern that matches the defined goal.  
In [68], the authors propose a method based on semantic matching between the input parameters (respectively, pre-condition properties) of a service with the output parameters (respectively, the post-condition properties) of its predecessor. In a similar way [69] introduces a framework for service composition based on functional aspects, in which services are chained according to their functional description. The suggested framework uses the causal link matrix (CLM) formalism in order to facilitate the computation of the final service composition as a semantic graph.  
Moreover, context-aware service composition is considered as another way to automatically compose services. The authors in [70] argue that incorporating context awareness into Web service composition mechanisms increases the relevance and robustness of produced compositions. [PERSON] proposes a Petri-net-based approach to enhance core composition mechanisms. In particular, to address privacy issues, [PERSON]. [71] focuses on the use of _Ambient_ in the pervasive system systematically with different levels of abstractions. Similar to final state automata, other formal modeling tools [35] are used to perform automatic service composition. Context information can also be used to select the appropriate services for a target composition [72] (although the proposed approach is for network services and not for end-user services).  
The full automation of the composition process is not without inconveniences. Practically, in the absence of user involvement validation, the automated operation offers few guarantees about the relevance of the selected and composed services, and can even lead to an end product that does not match the initial goal.Moreover, automation includes a significant complexity that can lead to situations of indecision (in a formal-based approach). Indeed, Ref. [67] shows that checking an e-service composition model is undecidable in some cases. The authors argue that undecidability is due to unbounded FIFO queues. The transaction sequential consistency problem provides another perspective for understanding the queue effect, where independent transactions are allowed to commute.