
## 2 Approach Overview

The overall approach we propose to assist the selection of web services based on users requirements consists of three main phases: (i) **Requirements elicitation** and specification, (ii) Normalization, and (iii) Web service selection **phase. Here,** we focus mainly on the normalization and the web service selection **phases.**
1. Requirements elicitation and specification**. The user's information requirements are the information that drives the discovery of web services.**
Therefore, the requirements are gathered and formally described in the requirements model using the i* **formalism [6]. More details about this phase**
can be found on [4]. Figure 1 shows a fragment of the requirements model in which a subgoal and the tasks to achieve this subgoal are specified.

![0_image_0.png](0_image_0.png)

2. Normalization**. In the requirements model, task descriptions are expressed**
in natural language and, therefore, they must be normalized in order to be automatically processed. The normalization consists of a semantic annotation process in which the description of the tasks are processed and annotated with concepts from a reference ontology to allow the reconciliation of the user's requirements with the web services. It is carried out in two phases:
2.1. Domain specific annotations**. The purpose of this step is to identify**
the terms of the user-defined task related to the Life Sciences domain. We have selected a semantic annotator which is capable of using several ontologies to annotate biomedical texts [2]. In our case, it annotates the task description with concepts from the UMLS and my**Grid ontologies.**
To determine the similarity between a text and a concept this annotator uses the following information-theoretic function:
sim(C, T ) = maxS∈lex(C)(ratio(**S, T** ))

![0_image_2.png](0_image_2.png)

$$r a t i o(S,T)={\underline{{i d}}}$$

![0_image_1.png](0_image_1.png)

missing(S, T ) = (idf(S) − idf(cw(S, T )))
The function ratio(S, T ) defines the ratio between the achieved information evidence for the text T **, in our case the task description, and the**
information encoded in the lexicon form S. The function missing(S, T )