<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>A semantic approach for the requirement-driven discovery of web services in the Life Sciences</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Mar´ıa P´erez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Rafael Berlanga</string-name>
          <email>berlanga@uji.es</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ismael Sanz</string-name>
          <email>isanz@uji.es</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universitat Jaume I</institution>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Research in the Life Sciences depends on the integration of large, distributed and heterogeneous data sources and web services. The discovery of which of these resources are the most appropriate to solve a given task is a complex research question, since there is a large amount of plausible candidates and there is little, mostly unstructured, metadata to be able to decide among them. We contribute a semi-automatic approach, based on semantic techniques, to assist researchers in the discovery of the most appropriate web services to fulfill a set of given requirements.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Introduction
Contemporary research in the Life Sciences depends on the sophisticated
integration of large amounts of data obtained by in-house experiments with reference
databases available on the web. This is followed by analysis workflows that rely
on highly specific algorithms, often available as web services. The amount of
data produced and consumed by this process is prodigious; however, the sheer
amount of available resources is a source of severe difficulties.</p>
      <p>
        Within this huge set of resources, one of the main problems to the user is
finding the right web services for a given research task. The landscape of Life
Sciences web services is large and complex: there are thousands of resources [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ],
most of them available in public repositories, i.e. BioCatalogue [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], but
unfortunately only a few are described by adequate metadata, which is essentially
textual in nature and this makes the discovery and the integration difficult. In
addition, there are many versions of different services that apparently provide
the same broad functionality, but not enough metainformation is available to
decide which of these services is the most appropriate for a precise task.
      </p>
      <p>Given this context, it is a pressing question how to help researchers to discover
the best possible mapping between their requirements and the available tools.
We present a semi-automatic approach to assist the researcher in web service
discovery, looking for web services that are appropriate to fulfill the information
requirements in the Life Sciences domain. The whole process is driven by
wellcaptured requirements, in order to avoid the high costs associated with
nondisciplined, non-reusable, ad-hoc development of integration applications. The
matching between the requirements and web services is based on a semantic
normalization of both the requirements and the web services metadata.</p>
      <p>
        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 [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. More details about this phase
can be found on [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Figure 1 shows a fragment of the requirements model
in which a subgoal and the tasks to achieve this subgoal are specified.
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 [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. In our case, it annotates the
task description with concepts from the UMLS and myGrid ontologies.
To determine the similarity between a text and a concept this annotator
uses the following information-theoretic function:
      </p>
      <p>sim(C, T ) = maxS∈lex(C)(ratio(S, T ))
ratio(S, T ) =
idf (cw(S, T )) − missing(S, T )</p>
      <p>idf (S)
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 )
is the amount of information contained in S that have not been covered
with T . idf (S) measures the relevance of the terms in the string S, and
cw(S, T ) is the set of terms in common between the concept string S
and the text T . The function idf is defined as follows:
idf (S) = −</p>
      <p>
        log(P (w|U M LS))
w∈S
The relevance of word is measured by means of its estimated
probability within the whole UMLS lexicon (i.e. P (w|U M LS)). After applying
the semantic annotator, each task is represented with a semantic vector
with the tf ∗ idf values of each concept. For example, the task
“Analyze domains in protein sequences” is represented with the semantic
vector {’C1513868’:8, ’D9000419’:15} where C1513868 is retrieved by
“domains” and D9000419 is retrieved by “protein sequences”.
2.2. Application specific annotations. The next step is to determine the
functionality the task is describing. For that purpose, we use the
taxonomy of categories defined by BioCatalogue to classify the user-defined
tasks. The matching between the tasks and the categories is made by
using the ISub metric [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] that performs a string matching algorithm. For
example, the task “Analyze domains in protein sequences” is annotated
with the category “Protein Sequence Analysis” with a score of 0.5586.
3. Web services selection. The discovery of the suitable web services for the
user’s requirements is based on the matching between the annotations of
the tasks and the metadata of the web services. However, most web service
registries suffer from the lack of metadata. To address this problem, we
have automatically annotated the description (or the documentation in case
there is no description available), the categories and the tags of the 1729
web services registered in BioCatalogue. The annotations of each service are
stored as a vector that contains the tf ∗ idf of each concept.
      </p>
      <p>The discovery process is made by two independent searches: (i) search the
web services that are annotated with the same category as the task, and (ii)
search the web services that have concepts in common with the user-defined
task. The results of both searches are combined and scored based on the
following linear combination:</p>
      <p>score = C-score ∗ w1 + S-score ∗ w2
where w1 and w2 are weights that depend on the relevance of each search and
fulfill the condition w1 + w2 = 1, C-score is the score calculated by the ISub
metric, that is, the score of the string matching between the categories of
the taxonomy and the user-defined task, and S-score is the cosine similarity
between the vector of the task and the vector of the service.</p>
      <p>Table 1 shows the highest ranked services for the task “Analyze domains in
protein sequences”.</p>
      <p>At the end, the user obtains a set of ranked lists of web services that are supposed
to provide the functionality required by the tasks. In case the results are not those
expected by the user, she can refine the process at the three phases of the guide.
3</p>
    </sec>
    <sec id="sec-2">
      <title>Conclusions and Future work</title>
      <p>We have presented a semi-automatic approach that guides researchers in the Life
Sciences to the discovery of web services that respond to their informational
requirements. Due to the importance of the semantic normalization, we have
annotated the available information of the services registered in BioCatalogue
by using a biomedical semantic annotator. In turn, the user requirements are also
annotated with the same ontologies, thus allowing the application of a semantic
search technique to find mappings between requirements and services. The result
of the process is that the user is provided with a set of ranked lists of web services
that are appropriate for her stated information needs.</p>
      <p>Some direct follow-ups of this work are the refinement of some details of the
semantic techniques, the exploitation of other sources of metadata
(bibliographical information, referenced web pages), and the creation of a GUI to facilitate
its application.</p>
    </sec>
    <sec id="sec-3">
      <title>Acknowledgements</title>
      <p>This research has been supported by the Spanish Ministry of Education and
Science (grant TIN2008-01825/TIN) and by Universitat Jaume I – Fundaci´o
Bancaixa (grant P11B2008-43). Mar´ıa P´erez has been supported by Universitat
Jaume I predoctoral grant PREDOC/2007/41.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <source>Nucleic Acids Research</source>
          , volume
          <volume>38</volume>
          <issue>suppl 2</issue>
          (
          <issue>Web Server Issue</issue>
          ),
          <year>July 2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Rafael</given-names>
            <surname>Berlanga</surname>
          </string-name>
          , Victoria Nebot, and
          <string-name>
            <given-names>Ernesto</given-names>
            <surname>Jimenez</surname>
          </string-name>
          .
          <article-title>Semantic annotation of biomedical texts through concept retrieval</article-title>
          .
          <source>In BioSEPLN</source>
          <year>2010</year>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>J.</given-names>
            <surname>Bhagat</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Tanoh</surname>
          </string-name>
          , E. Nzuobontane,
          <string-name>
            <given-names>T.</given-names>
            <surname>Laurent</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Orlowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Roos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Wolstencroft</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Aleksejevs</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Stevens</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Pettifer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Lopez</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.A.</given-names>
            <surname>Globe</surname>
          </string-name>
          .
          <article-title>BioCatalogue: a universal catalogue of web services for the life sciences</article-title>
          .
          <source>NAR</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. Mar´ıa P´erez, Sven Casteleyn, Ismael Sanz, and Mar´ıa Jos´e Aramburu.
          <article-title>Requirements gathering in a model-based approach for the design of multi-similarity systems</article-title>
          .
          <source>In MoSE+DQS '09. ACM</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Giorgos</given-names>
            <surname>Stoilos</surname>
          </string-name>
          , Giorgos B.
          <string-name>
            <surname>Stamou</surname>
            , and
            <given-names>Stefanos D.</given-names>
          </string-name>
          <string-name>
            <surname>Kollias</surname>
          </string-name>
          .
          <article-title>A string metric for ontology alignment</article-title>
          .
          <source>In The Semantic Web - ISWC</source>
          <year>2005</year>
          , pages
          <fpage>624</fpage>
          -
          <lpage>637</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Eric</given-names>
            <surname>Yu</surname>
          </string-name>
          .
          <article-title>Modelling Strategic Relationships for Process Reenginering</article-title>
          .
          <source>PhD thesis</source>
          , University of Toronto, Canada,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>