<!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>Towards an abstract architecture for service discovery with semantic alignment</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Analay Baltá</string-name>
          <email>analay@ia.urjc.es</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alberto Fernández</string-name>
          <email>alberto.fernandez@urjc.es</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CETINIA, University Rey Juan Carlos</institution>
          ,
          <addr-line>Móstoles</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <fpage>94</fpage>
      <lpage>105</lpage>
      <abstract>
        <p>In large-scale open environments mechanisms for locating appropriate services have to deal with the additional problem of semantic mismatches among the components. Semantic alignment mechanisms need to be purposefully integrated into a service discovery framework in order to fully exploit its potential. The objective of this paper is to present an ongoing work towards the analysis and design of basic mechanisms able to locate adequate services in open heterogeneous environments. An abstract architecture that addresses the semantic mismatches at service description model level as well as domain ontology is presented. Several open issues are pointed out.</p>
      </abstract>
      <kwd-group>
        <kwd>service oriented architecture</kwd>
        <kwd>semantic web services</kwd>
        <kwd>service discovery</kwd>
        <kwd>matchmaking</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        In multiagent systems, agents communicate with the aim of achieving their objectives.
Agents are autonomous entities capable of planning the tasks they have to carry out to
maximize their utilities. An individual agent may require a service to be performed by
another entity. In order to be able to achieve a fruitfully interaction the two agents
must understand the semantic of the messages they exchange. This is typically done
by sharing the same ontology, although this is not easy to achieve in open systems.
Another option is to use ontology bridges, which make use of ontology alignment
techniques [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ] to transform information from one ontology to another.
      </p>
      <p>
        There are several stages since an agent identifies a given need until the service that
provides it is eventually executed. First, the agent identifies some functionality that it
is not able to perform or that might be executed more efficiently by an external entity.
Then, candidate service providers must be located. Once a set of potential providers
are known, the agent must choose one among them. This decision can be made based
on several factors such as quality of service, price, reputation, etc. After the selection
is made the two agents might engage in a negotiation about the conditions under
which the service is going to be performed. After an agreement has been reached the
service can be called. Agreement Technologies [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] like semantic alignment,
negotiation, argumentation, virtual organizations, decision making, learning, trust,
and so on, will be used to develop such large-scale open systems.
      </p>
      <p>We concentrate on the phase of provider location. Distributed service directories
and efficient decentralised matching techniques with powerful description languages
are essential for dynamic and scalable service discovery. Furthermore, in such
environments the mechanisms for locating appropriate services have to deal with the
additional problem of semantic mismatches among the components.</p>
      <p>In this paper we present an ongoing work towards the development of a service
discovery framework where semantic alignment mechanisms are purposefully
integrated into.</p>
      <p>The rest of the paper is organized as follows. In the next section we begin by
describing the Service Oriented Architecture so as to establish the context in which
this work is situated. Section 3 presents an abstract architecture for semantic service
discovery, which pays especial attention to semantic alignments of service
descriptions. In section 4 we discuss several open issues for further research. Finally,
we present some conclusions and future work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Service Oriented Architectures</title>
      <p>Web Services are the reference enabling technology for SOA. Web Services can be
seen as a collection of technologies, protocols and standards that build programming
solutions for specific application integration problems. As the number of available
web services is steadily increasing, companies realize the need for automatically
discovering web services and having an automated composition.</p>
      <p>SOA combines the service discovery, selection, and engagement, thus adding a
new level of functionality on top of the current Web. The addition of semantic
information to describe Web Services, in order to enable the automatic location,
combination and use of distributed components, is nowadays one of the most relevant
research topics due to its potential to achieve dynamic, scalable and cost-effective
Enterprise Application Integration and eCommerce.</p>
      <p>
        The process of discovering and interacting with a Semantic Web Service includes
the following phases [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]:
      </p>
      <p>(i) Candidate Service Discovery is the distributed search for available services that
can accomplish the client's internal goal or objective. It is a process of identifying
candidate services by clients. It involves three types of stakeholders: service providers
that publish service advertisements, service requesters that require a service and
matchmakers that accept descriptions of available service from providers and match
them against requirements from requesters.</p>
      <p>(ii) Service Engagement includes the process of interpreting candidate service
enactment constraints, described by each candidate service published, and then
requesting or possibly negotiating with prospective services to reach an agreement.
Engagement concludes with both service and client knowing and agreeing to the
terms of service provision in an explicit or implicit service contract.</p>
      <p>(ii) Service Enactment consists of alternative protocols to initiate service activity,
monitor service processes, and confirm service completion. If the service terminates
abnormally after a contract has been formed, there may be a final set of protocol
interactions to address compensation issues.</p>
      <p>
        Proper methods to enable the automatic location and selection of suitable services
in order to solve a given task or user request are an essential ingredient. To this end,
several description frameworks to annotate provided services on the one hand and
express service requests on the other have been proposed. They range from
logicbased complex and expressive semantic service descriptions (e.g. OWLS [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], WSMO
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]) to syntactical ones (WSDL [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], keywords, tag clouds), with some approaches in
between (SAWSDL [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]). Semantic service descriptions are supported on ontologies.
      </p>
      <p>In this context, several description frameworks to semantically match services on
the one hand and service requests on the other have been presented in the literature.
Many of the current proposals for defining the degree of match between service
advertisements and requests are based on subsumption checking of concepts present
in inputs and outputs of service descriptions.</p>
    </sec>
    <sec id="sec-3">
      <title>Abstract Service Discovery Architecture</title>
      <p>The first step in the matching of two services is the alignment of the service
description models. Note that service description approaches not only differ in the
language in which they are written. They are classified at different levels of
expressiveness, ranging from complex, formal, logic-based semantic descriptions to
lightweight syntactical ones. Service model alignment consists of mapping both
service descriptions (request and advertisement) into a common service model.</p>
      <p>Once the adequate model alignment has been applied, the unified service
descriptions are prepared to be matched. The Service Matching module takes those
two descriptions and returns the degree of match between them. We envision here the
existence of different matchmakers to deal with different common models.
Matchmaking algorithms usually include a Semantic Concept Matching process to
analyze the (similarity) relation between concepts used in advertisements and
requests. As it was pointed out above, those concepts might belong to different
ontologies so a Concept Alignment is carried out to solve this problem. In this case,
we keep a local knowledge base of alignments and assume the existence of a external
registry of alignments. The local knowledge base acts as a cache of alignments used
in previous matchings. The external alignment registry is consulted to avoid carrying
out a process of ontology alignment if there is an alignment published by third parties.</p>
      <p>In the next sections we go into details of the building blocks of the proposed
architecture.
3.1</p>
      <sec id="sec-3-1">
        <title>Service Model Alignment</title>
        <p>As commented above, service model alignment consists of defining a common model
for two different ones, and mapping descriptions described in those source models
into the common model. This transformation may produce a loss of expressiveness in
at least one of the original descriptions, especially if they use models with different
expressiveness power. Here, we do not aim at the design of a unified model for any
description, which would probably lead us to the definition of a very simple
(lightweight) model to account for all the different source models. However, we
envision the definition of mappings between pairs of models, thus keeping that
particular common model as close to the original ones as possible. Besides, this
approach is more modular and flexible to consider new models. Model-to-Model
alignments consist of three steps:
1. Conceptual analysis of characteristics finding mappings between models. Note
that this task can be done focusing on service matchmaking, i.e. only the
aspects considered by the matching techniques have to be mapped.
2. Definition of a common model language (CML), which might be one of the
originals. The use of standard languages is encouraged here.
3. Implementation of a tool for automatic transformation of service descriptions
from the original models to the CML.</p>
        <p>In the next subsection we show an example of the alignment between the two most
important Semantic Web Service description languages, OWL-S and WSMO.</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.1.1 WSMO/OWL-S alignment</title>
        <p>
          In order to establish the relationships between the terminologies used in each
ontology and propose a mapping, we set out from existing conceptual comparisons
between WSMO and OWL-S [
          <xref ref-type="bibr" rid="ref10">10, 111</xref>
          ]. As shown in Table 1, Web Service
descriptions in WSMO are defined by their preconditions, posconditions, assumptions
and effects, and their equivalent in OWL-S are inputs, outputs, preconditions and
results, respectively.
        </p>
        <p>
          After the conceptual mapping between models, the next step is the definition of a
common description language. We opt for using RDF as the common model
language. RDF is a W3C recommendation language to represent resources on the
Web. There are a lot of RDF contents and tools to process them. Although RDF is
less expressive than OWL-S and WSMO, it is enough (in practice) for representing
the information needed for service search. It also allows the use of SPARQL [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] to
query the descriptions. The resulting RDF Schema graph describing semantic Web
services for this mapping is shown in Fig. 3 and the RDF code is shown in Fig. 4.
&lt;?xml version="1.0"?&gt;
&lt;rdf:RDF&gt;
&lt; rdf: Description rdf:ID="IDserviceName"&gt;
&lt;/rdf:Description&gt;
&lt;rdf:Description rdf:ID="serviceName"&gt;
&lt;rdfs:domain rdf:resource="#IDserviceName"/&gt;
&lt;rdfs:range rdf:resource="#Name"/&gt;
&lt;/rdf:Description&gt;
&lt;rdf:Description rdf:ID="input"&gt;
&lt;rdfs:domain rdf:resource="#IDserviceName"/&gt;
&lt;rdfs:range rdf:resource="#Input"/&gt;
&lt;/rdf:Description&gt;
&lt;rdf:Description rdf:ID="output"&gt;
&lt;rdfs:domain rdf:resource="#IDserviceName"/&gt;
&lt;rdfs:range rdf:resource="#Output"/&gt;
&lt;/rdf:Description&gt;
&lt;rdf:Description rdf:ID="assumptions"&gt;
&lt;rdfs:domain rdf:resource="#IDserviceName"/&gt;
&lt;rdfs:range rdf:resource="#Assumptions"/&gt;
&lt;/rdf:Description&gt;
&lt;rdf:Description rdf:ID="effect"&gt;
&lt;rdfs:domain rdf:resource="#IDserviceName"/&gt;
&lt;rdfs:range rdf:resource="#Effect"/&gt;
&lt;/rdf:Description&gt;
&lt;/rdf:RDF&gt;
Many of the current approaches to Semantic Web Services matching, particularly
those based on OWL-S, started from the work of Paolucci et al. [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ]. This approach
proposes a matching algorithm that takes into account inputs and outputs of
advertised (A) and requested (R) services. A match between two output concepts (OA,
OR) is the (subsumption) relation between the two concepts in the ontology. They
differentiate among four degrees of match: exact (OA = OR), plug-in (OR subsumes
OA), subsumes (OA subsumes OR) and fail (otherwise). An output matches if and only
if for each output of the request there is a matching output in the service description.
If there are several outputs with different degree of match, the minimum degree is
used. The same algorithm is used to compute the matching between inputs, but with
the order of request and advertisement reversed. Finally, the set of service
advertisements is sorted by comparing output matches first, if equally scored,
considering the input matches. Several authors extend or propose variations to that
proposal (e.g.[
          <xref ref-type="bibr" rid="ref14 ref15">14,15</xref>
          ]).
        </p>
        <p>
          Several similarity (or distance) measures for concept matching have been proposed
in the literature, although their application to the concrete domain of service matching
is very limited. One of the most well known distance measures between concepts is
the length of the shortest path between them in the taxonomy, proposed by Rada et al
[
          <xref ref-type="bibr" rid="ref16">16</xref>
          ]. Other proposals further refine that approach ([
          <xref ref-type="bibr" rid="ref17">17, 188</xref>
          ]). Other authors do not
base concept similarity on the distance between the concepts ([
          <xref ref-type="bibr" rid="ref19 ref20 ref21">19, 20, 21</xref>
          ]).
        </p>
        <p>
          We propose a combination of service matching and concept similarity. In [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ] we
describe how both approaches can be combined into a unified service selection
framework which returns a numeric value that can be used for ranking services. The
ranking function compares the level of match first (e.g. exact, plugin, ...), and then the
level is refined with the (numerical) similarity value. Since service descriptions
consist of several components (inputs, outputs, ...), the similarity between services
must be defined based on its individual elements (e.g. each of its inputs) and
aggregation operators.
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>3.2.1 SPARQL as service query language</title>
        <p>
          If we envision the representation of services in RDF (like the proposed common
model for OWL-S and WSMO), then SPARQL [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] might be used as a query
language for services. Note that the SPARQL query might be created either from the
scratch or by transforming a service request. In this section we analyse how those
requests look like, and the potential and limitations of SPARQL as service request
language. We use the RDF service descriptions proposed in section 3.1.1.
        </p>
        <p>This is an example of a first attempt of defining a flight service request in
SPARQL:</p>
        <p>SELECT ?Name
WHERE {?x serviceName ?Name .</p>
        <p>?x input #DepartureAirport .
?x input #ArrivalAirport .
?x input #OutboundDate .
?x input #InboundDate .
?x output #FlightsFound .
?x output #PreferredFlightItinerary .</p>
        <p>?x effect #HaveSeatResult}</p>
        <p>This query will return all service names that have at least the four inputs, the two
outputs and the effect specified in the query (conditions in the WHERE section are
interpreted as conjunctions).</p>
        <p>Remember that a service advertisement (A) match a request (R) if and only if all
the inputs of A are provided by R and all the outputs of R are provided by A.</p>
        <p>The first problem we identify is that services that only need a subset of the
specified inputs would not be returned. However, services providing more outputs
than needed by the requester cause no problem. This problem can be solved by
decomposing the query in two: (i) querying the advertisements using the outputs and
(ii) using the results to query the original request about the inputs.</p>
        <p>The next problem identified is that querying RDF graphs only returns exact
matches. The use of an inference engine to classify the ontology (compute subclass
relations) or to interpret the query would provide subsumption reasoning, thus
supporting the matchmaking using levels of match (exact, plugin, subsumes, …).</p>
        <p>However, if we need more refined complex matching functions, e.g. taking into
account the distance between concepts in a taxonomy, there is no straight way to do it.
Instead, new SPARQL inference engines adapted for service matchmaking should be
developed.</p>
        <p>Finally, we have to devise how to include semantic alignments into this approach.
A solution could go in the line of query transformation by including fragments to
consulting RDF alignment specifications (see section 3.3).
where:
In the previous section we saw that current service matchmaking algorithms are based
on checking the relations between the concepts that appear in the different fields of
semantic service descriptions. If the concepts being compared are defined in different
ontologies then semantic alignments must be considered instead of obtaining a fail
match.</p>
        <p>
          An alignment (or mapping) between two ontologies O and O’ can be described as a
quadruple [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ]:
        </p>
        <p>&lt;e, e’, n, R&gt;
e and e’ are the entities between which a relation is asserted by the mapping
(e.g., formulas, terms, classes, individuals)
n is a degree of trust (confidence) in that mapping
R is the relation associated to a mapping, where R identifies the relation
holding between e and e’.</p>
        <p>In this work we are not concerned about ontology alignment techniques, but on the
use of alignments. Thus, we are interested in representing and querying mappings
between ontologies. We propose using RDF as the language for expressing
alignments, so that they can be published on the web and queried using SPARQL. In
particular, we use the format of the Ontology Alignment Evaluation Innitiative1.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Open Issues</title>
      <p>In addition to the aforementioned aspects, we point out here some additional open
issues that will need to be dealt with.</p>
      <p>The abstract architecture proposed in this paper describes the process of obtaining
the degree of match between a service advertisement and a service request. Typically,
this process is carried out by a middle agent or matchmaker (either separated or
integrated in the directory of services). Roughly, that process takes as inputs two
service descriptions and returns a matching degree (a level of match or a numerical
value).</p>
      <p>
        However, there might be situations in which this task should be done in a different
way. Firstly, it is arguable that the matching process can be effectively done in a one
step process. As Lara point out [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], the semantic description capability of services
and of customer goals can be exploited by the service discovery based on a
twophased service discovery model. The first phase identifies services that can provide
results required by the customer or specifies semantic matchmaking on the goal
template level. In the second phase, the input values required by relevant services are
considered and only services for which the customer can provide appropriate input,
and for which this input can lead to the expected results are selected. The input values
will partially determine the results of the service. Then there is a combination of
query of selected service and answer of customer. In the best case the customer can
1 http://oaei.ontologymatching.org/
only guess, when defining his goal, what input values will be required by services
satisfying such goal. In addition, the customer might have a considerable volume of
information from which input values to services can be obtained.
      </p>
      <p>Another usual convention is that service matchmaking is completely carried out in
the middle agent (or directory) side. This is possible under the assumption that the
middle agent has all the necessary information, i.e. it has complete service
descriptions. However, under some circumstances, the provider or the requester might
not be interested in revealing some private data, i.e. a credit card number. In those
contexts, some mechanisms are needed to deal with such sensitive information. One
possible option is to carry out part of the matching on the requester and/or the
provider side. In these cases, efficiency issues have to be considered.</p>
      <p>In the development of methods, techniques and tools for open large scale
environments, scalability issues are fundamental. In the context of service discovery
and the architecture presented in Fig. 2, there are two main points that must be
considered. They are the decentralised service directories and the discovery of
ontology alignments. In both cases, the recent trends in querying distributed data on
the semantic web by means of SPARQL end points will be considered in future
research.</p>
      <p>As described previously, services can be described in different languages at several
levels of expressiveness. Depending on the context in which the searched service is
going to be used, the set of candidate services can be larger or smaller. For instance, if
the service is expected to be used for automatic invocation or for composition, only
semantic service descriptions (OWL-S, WSMO, SAWSDL, ...) would be considered.
However, if the service is expected to be used by a human user then also more
lightweight descriptions (e.g. keyword-based) would be considered.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>In this paper we have dealt with the problem of service discovery in open systems.
We proposed an abstract architecture that has semantic alignment as a first citizen
component. We provided preliminary ideas and developments towards the
construction of a service discovery framework in which semantic alignment
mechanisms are purposefully integrated into.</p>
      <p>In particular, we discussed in detail the alignment of OWL-S and WSMO, their
differences and the transformation of both into a RDF common model. We also
proposed the combination of service matching and concept similarity into an
integrated service matching framework. We analysed the use of SPARQL as a service
query language and identified the pros and cons, and RDF as ontology alignment
representation format.</p>
      <p>The definition of other service description model alignments as well as the
implementation of the proposed framework are part of our ongoing work. In the
future we also plan to investigate the issues pointed out in section 4 (two-phase
service discovery, distributed service directories and context).
Acknowledgment: This work has been partially supported by the Spanish Ministry of
Science and Innovation through grants TIN2006-14630-C03-02, and CSD2007-0022
(CONSOLIDER, INGENIO 2010)
6</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Jérôme</given-names>
            <surname>Euzenat</surname>
          </string-name>
          and
          <string-name>
            <given-names>Pavel</given-names>
            <surname>Shvaiko</surname>
          </string-name>
          . Ontology matching. Springer, Heidelberg (DE),
          <year>2007</year>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Marc</given-names>
            <surname>Ehrig</surname>
          </string-name>
          :
          <article-title>Ontology Alignment: Bridging the Semantic Gap</article-title>
          . Springer.
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Agreement</given-names>
            <surname>Technologies</surname>
          </string-name>
          . www.agreement-technologies.org
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Papazoglou</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , Van den Heuvel, W. Service oriented architectures: approaches, technologies and research issues. Springer-Verlag
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Burstein</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bussler</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zaremba</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Finin</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huhns</surname>
            ,
            <given-names>M. N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paolucci</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sheth</surname>
            ,
            <given-names>A. P.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Williams</surname>
            ,
            <given-names>S. A Semantic</given-names>
          </string-name>
          <string-name>
            <surname>Web</surname>
          </string-name>
          <article-title>Services Architecture</article-title>
          .
          <source>IEEE Internet Computing</source>
          <volume>9</volume>
          ,
          <issue>5</issue>
          ,
          <fpage>72</fpage>
          -
          <lpage>81</lpage>
          .
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Martin</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burstein</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hobbs</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lassila</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McDemott</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McIlraith</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Narayanan</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paolucci</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parsia</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Payne</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sirin</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Srinivasan</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Sycara</surname>
            ,
            <given-names>K..</given-names>
          </string-name>
          <article-title>OWL-S: Semantic Markup for Web Services</article-title>
          .
          <source>W3C Member Submission</source>
          ,
          <year>2004</year>
          . Available from http://www.w3.org/Submission/OWL-S/.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Bruijn</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bussler</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Domingue</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fensel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hepp</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , Keller, U.,
          <string-name>
            <surname>Kifer</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>K</surname>
          </string-name>
          ¨onigRies,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Kopecky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Lara</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Lausen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            ,
            <surname>Oren</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            ,
            <surname>Polleres</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Roman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Scicluna</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            , and
            <surname>Stollberg</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Web Service Modeling Ontology (WSMO)</article-title>
          .
          <source>W3C Member Submission</source>
          ,
          <year>2005</year>
          . http://www.w3.org/Submission/WSMO/.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>E.</given-names>
            <surname>Christensen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Curbera</surname>
          </string-name>
          , G. Meredith, and
          <string-name>
            <given-names>S.</given-names>
            <surname>Weerawarana. Web Services Description</surname>
          </string-name>
          <article-title>Language (WSDL) 1.1</article-title>
          . http://www.w3.org/TR/wsdl, March 2001
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Joel</given-names>
            <surname>Farrell</surname>
          </string-name>
          and
          <string-name>
            <given-names>Holger</given-names>
            <surname>Lausen</surname>
          </string-name>
          .
          <article-title>Semantic Annotations for WSDL and XML Schema (SAWSDL)</article-title>
          .
          <source>W3C Recommendation 28 August</source>
          <year>2007</year>
          . http://www.w3.org/TR/sawsdl/
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Polleres</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lara</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <article-title>A Conceptual Comparison between WSMO and OWL-S</article-title>
          , WSMO Working Group working draft,
          <year>2005</year>
          . http://www.wsmo.
          <source>org/2004/d4/d4.1/v0.1/.</source>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Lara</surname>
            ,
            <given-names>R..</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polleres</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <year>D4</year>
          .
          <year>2v0</year>
          .
          <article-title>1 Formal Mapping and Tool to OWL-S, WSMO working draft 17 december 2004</article-title>
          . http://www.wsmo.
          <source>org/2004/d4/d4.2/v0.1/</source>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12. W3C World Wide Web Consortium.
          <article-title>SPARQL Query Language for RDF</article-title>
          .
          <source>W3C Recommendation 15 January</source>
          <year>2008</year>
          . http://www.w3.org/TR/rdf-sparql-query/.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Paolucci</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kawamura</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Payne</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Sycara</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <article-title>Semantic Matching of Web Service Capabilities</article-title>
          .
          <source>In ISWC</source>
          , pages
          <fpage>333</fpage>
          -
          <lpage>347</lpage>
          . Springer Verlag,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Klusch</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fries</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Sycara</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <article-title>Automated semantic web service discovery with owls-mx</article-title>
          .
          <source>In AAMAS '06: Proceedings of the fifth international joint conference on Autonomous agents and multiagent systems</source>
          , pages
          <fpage>915</fpage>
          -
          <lpage>922</lpage>
          , New York, NY, USA,
          <year>2006</year>
          . ACM Press.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>L</given-names>
          </string-name>
          and Horrocks,
          <string-name>
            <surname>I.</surname>
          </string-name>
          <article-title>A software framework for matchmaking based on semantic web technology</article-title>
          .
          <source>Int. J. of Electronic Commerce</source>
          ,
          <volume>8</volume>
          (
          <issue>4</issue>
          ):
          <fpage>39</fpage>
          -
          <lpage>60</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Rada</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mili</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bicknell</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Blettner</surname>
            ,
            <given-names>M. Development</given-names>
          </string-name>
          <article-title>and application of a metric on semantic nets</article-title>
          .
          <source>IEEE Transactions on Systems, Man and Cybernetics</source>
          ,
          <volume>19</volume>
          (
          <issue>1</issue>
          ):
          <fpage>17</fpage>
          -
          <lpage>30</lpage>
          ,
          <year>1989</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Leacock</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Chodorow</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Combining local context andWord- Net similarity for word sense identification</article-title>
          . In Christiane Fellbaum, editor,
          <source>WordNet: An Electronic Lexical Database</source>
          , pages
          <fpage>265</fpage>
          -
          <lpage>283</lpage>
          . MIT Press,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Wu</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Palmer</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Verbs semantics and lexical selection</article-title>
          .
          <source>In Proceedings of the 32nd annual meeting on Association for Computational Linguistics</source>
          , pages
          <fpage>133</fpage>
          -
          <lpage>138</lpage>
          , Morristown, NJ, USA,
          <year>1994</year>
          .
          <article-title>Association for Computational Linguistics</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Resnik</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <article-title>Using information content to evaluate semantic similarity in a taxonomy</article-title>
          .
          <source>In IJCAI</source>
          , pages
          <fpage>448</fpage>
          -
          <lpage>453</lpage>
          ,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Borgida</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Walsh</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          , and Hirsh,
          <string-name>
            <surname>H.</surname>
          </string-name>
          <article-title>Towards measuring similarity in description logics</article-title>
          .
          <source>In Description Logics</source>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Noia</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Di Sciascio</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Donini</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Mongiello</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Semantic matchmaking in a p-2-p electronic marketplace</article-title>
          .
          <source>In SAC</source>
          , pages
          <fpage>582</fpage>
          -
          <lpage>586</lpage>
          . ACM,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Fernandez</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polleres</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Ossowski</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <article-title>Towards Fine-grained Service Matchmaking by Using Concept Similarity</article-title>
          , ISWC-2007
          <source>Workshop on Service Matchmaking and Resource Retrieval in the Semantic Web (SMR2)</source>
          .
          <fpage>2007</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Paolo</surname>
            <given-names>Bouquet</given-names>
          </string-name>
          , Jérôme Euzenat, Enrico Franconi, Luciano Serafini, Giorgos Stamou, and
          <string-name>
            <given-names>Sergio</given-names>
            <surname>Tessaris</surname>
          </string-name>
          .
          <article-title>Specification of a common framework for characterizing alignment</article-title>
          .
          <source>deliverable D2.2</source>
          .1,
          <string-name>
            <surname>Knowledge</surname>
            <given-names>web NoE</given-names>
          </string-name>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Lara</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <article-title>Two-phased web service discovery</article-title>
          .
          <source>In AI-Driven Technologies for ServicesOriented Computing workshop at the Twenty First National Conference on Artificial Intelligence (AAAI-06)</source>
          , Boston, USA, 07/
          <year>2006</year>
          2006.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>