<!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 Directory of Heterogeneous Services1</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Zijie Cong</string-name>
          <email>zijie@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>
        <contrib contrib-type="author">
          <string-name>Carlos A. Soto</string-name>
          <email>casotob@ia.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>
      <abstract>
        <p>This paper presents a directory of heterogeneous web services, which addresses the issue of service discovery involving heterogeneous description languages such as OWL-S, SAWSDL, WSDL and plain text. Service descriptions are mapped into a unified description model, which captures various important elements in different service description approaches. Our directory then performs service registration, automatic discovery and manual browsing utilizing these unified models. A preliminary evaluation shows a satisfying result.</p>
      </abstract>
      <kwd-group>
        <kwd>service directory</kwd>
        <kwd>service discovery</kwd>
        <kwd>matchmaking</kwd>
        <kwd>semantic web services</kwd>
        <kwd>service oriented architecture</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>In Service-Oriented Architectures, web services can be described in various
models, from highly expressive semantic web service description languages such as
OWL-S and WSMO to plain text. The possibility and capability of automatic service
discovery is limited by the diversity of service description models.</p>
      <p>A directory of heterogeneous web services is presented in this paper, which
addresses the issue of service discovery involving various service description models.
Common approaches use the same description language for both advertisements and
requests.</p>
      <p>Services description in different description languages are mapped into a unified
model, which dedicates to service matchmaking purpose, before registration. This
unified model captures many important features of existing description languages,
such as the semantic I/Os, category information and syntactic description. It is
independent of the original service description language, thus it can be modified and
expanded with minimal effort while avoiding the complication of mapping a less
expressive description language, such as keywords, to a highly expressive description
language with additional information requirement. A matchmaking algorithm is
performed over this model, thus providing heterogeneous service discovery
capabilities.</p>
      <p>The rest of the paper is organized as follows: In section 2, we describe the general
structure of the directory, and the mapping from existing service description
languages to a unified model. In section 3, the matchmaking process is explained in
detail, and the implementation and preliminary evaluation of some components is
shown in section 4. The related works and conclusion are then presented in section 5
and 6, respectively.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Service Directory Architecture</title>
      <p>The architecture of our service directory is depicted in Fig. 1. There are two types of
agents that interact with the directory, the one who offers the service (Service
Provider) and the consumer of services (Service Requester). As we will see in section
4, they can access the directory through a REST service or a human-oriented web
interface.</p>
      <p>
        Service providers register services in the directory providing the following
information:
• Service Description: the service description specified by the provider is essential
because it will contain all the information related to the service offered (it can
include the service category). In our framework we allow several service
description models. They include semantic models (OWL-S [16], WSMO [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]),
syntactic models (WSDL [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]), hybrid (SAWSDL [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]), as well as other lighter
approaches (keyword-, cloud-, and text-based service descriptions).
• Grounding: the service provider must attach the information required to access
the service by a client (for example a WSDL file).
• Category (optional): the category of the service can be explicitly defined in this
section according to the NAICS [18] classification. As we will see later, service
category is complemented with information provided in the service description
section, such as explicit annotation (e.g. in some versions of OWL-S) or
extracted from a textual description.
      </p>
      <p>Service descriptions and category are combined and converted into a common
format (AT-GCM) and stored in a Service Registry. The common format (section 2.1)
comprises the relevant characteristics of the original models, from a service
matchmaking point of view. The Mapping to AT-GCM module generates the
ATGCM version of the service from the service description and the category.</p>
      <p>The AT-GCM, the Grounding, and the original Service Description provided by the
Service Provider are stored as an entry in the service registry database.</p>
      <p>When client agents (service requesters) want to use the service directory for
finding a service, they send the necessary information (Query Description) to obtain a
list of matching services (sorted list by their degree of match with the query). Query
descriptions are specified using one of the available description languages. Note that
our framework is able to return services described in a different language to the query.
For instance, it may return an OWL-S service while the query is specified using
WSDL.</p>
      <p>When the service directory receives a query description, the query is transformed
into the ATM-GCM format (Mapping to AT-GCM) and passed to the Matchmaker.
Then, the matchmaker compares the query against the AT-GCM versions of the
services stored in the database and returns a ranked list of services to the client. This
process is detailed in section 3.
2 AT stands for Agreement Technologies, meaning agreement among different service
description models. It is also the name of one of our funding projects
(CSD20070022).
•
•
•</p>
      <p>CGCM is a set of categories of the service, described semantically (Csem⊆ N)
(e.g. NAICS or UNSPSC).</p>
      <p>TGCM is a textual description of the service.</p>
      <p>TCGCM is a tag cloud. TCGCM = {&lt;t, n&gt;| t ∈ {a, …, z}*, n ∈ N}.</p>
      <p>Text</p>
      <p>WSDL</p>
      <p>SAWSDL</p>
      <p>OWL_S / WSMO
GCM</p>
      <p>TC</p>
      <p>KSyn</p>
      <p>T</p>
      <p>ISyn</p>
      <p>OSyn OSem ISem KSem</p>
      <p>C</p>
      <p>P</p>
      <p>E</p>
      <p>Fig. 2 AT-GCM characteristics covered by service description models
2.2</p>
    </sec>
    <sec id="sec-3">
      <title>Model Expansion</title>
      <p>Useful information about services may not always be explicitly defined by the
providers in their service descriptions. Such information could, however, be
discovered from other elements in the description and/or by using external resources.
In this section, we briefly introduce the expansion of AT-GCM using existing
elements and external resources.</p>
      <p>A complete schema is shown in Fig. 3.</p>
    </sec>
    <sec id="sec-4">
      <title>Extracting tag-clouds and keywords from text</title>
      <p>Although, as illustrated in Fig. 2, most service description languages include neither
syntactic keywords nor tag-cloud, these two elements can be extracted from other
parts of description such as text, inputs and outputs.</p>
      <p>Function Δ(T) (Table 1) extracts the k most relevant keywords from T. The
relevance of each word in textual information is their TF-IDF weights [24] calculated
using other textual information of services registered in our directory.</p>
      <p>Before computing the TF-IDF weight of the word, a set of stop-words is filtered
out from the text to accelerate the process. As nouns and verbs are more semantically
significant than other parts of speech, words falling into the rest of lexical categories
are also filtered out. This process is done using WordNet [17].</p>
      <p>WordNet is a lexical database for English language. It groups English words into
sets of synonyms called synsets, with various semantic relations between these
synsets. These semantic relations include hyponym, hypernym, domain, cause,
member, holonym, meronym similar, antonym, instance etc. With these semantic
relations, WordNet can be considered as an ontology.</p>
      <p>We also use WordNet to lemmatization words. Comparing to other popular
stemming algorithms such as Porter’s [23] stemming algorithm, WordNet
significantly reduces over-stemming errors, which could lead to false positive results.</p>
      <p>In addition, the set of input concept names N(I) and output concept names N(O) in
semantic descriptions (OWL-S, WSMO, SAWSDL) are considered for the cloud with
non-character symbols removed and converted to lowercase. In the case of
keywordbased service descriptions (where no text is included), a plain cloud is created with
frequency 1 for every keyword in the description.</p>
      <p>Syntactic keywords can be easily obtained from tag clouds (either original or
calculated with ∆), by simply adopting the words in the cloud (function τ(TC), being
TC a tag-cloud).</p>
      <p>The set of input and output concept parameter types (pt(I) and pt(O)) are also
adopted as semantic keywords.
2.2.2</p>
    </sec>
    <sec id="sec-5">
      <title>Category Discovery</title>
      <p>Our directory is organized using service’s category information based on the North
American Industry Classification System (NAICS). Services need to provide at least
one NAICS category to be registered in our directory.</p>
      <p>Among all service description languages considered by our directory, only OWL-S
provides a mechanism to include NAICS category information in the service
description, but also commonly ignored by service providers.</p>
      <p>To associate an appropriate category with the service, we first extract keywords
related to each category from NAICS 2007 Index file. During each service
registration, if no category information is provided by the service provider nor defined
in the service description, category extractor calculates the similarity between
keywords extracted from service description and keywords of each NAICS 2007
category to find the most suitable categories for the service.</p>
      <p>The similarity is measured by mapping each keyword from both NAICS categories
and service description to WordNet synsets, and the similarity is defined as:
KS ∩ kc
kc
where KS denotes the keywords extracted from service description S, and kc denotes
sets of keywords of each NAICS 2007 category c.
3</p>
    </sec>
    <sec id="sec-6">
      <title>Service Matchmaking</title>
      <p>Service matchmaking is an essential part of our service directory. The similarity
between two service descriptions (request and advertisement) is based on the
similarities of each pair of corresponding elements in their AT-GCMs. Only elements
existing in both descriptions are considered, the rest are ignored.</p>
      <p>We further classify the elements in AT-CGM into three categories: semantic
elements, syntactical elements and category information. Each type of element is
associated with an ontology, and a generic ontological similarity algorithm is applied
to calculate the similarity between each pair of corresponding elements of service
request (SR) and advertisement (SA).</p>
      <p>•
•
•</p>
      <p>Semantic elements are associated directly with their original ontologies used
in the service description.</p>
      <p>Syntactic information is associated with external lexical databases such as
WordNet, which can also be considered as an ontology.</p>
      <p>The category of a service is often an element in certain classification systems,
such elements are usually organized in a hierarchy, which can be considered as
an ontology also.</p>
      <p>Table 2 summarizes the AT-GCM components in each category and the associated
ontology:</p>
      <p>Fig. 4. Service Matchmaking based on AT-GCM
Semantic elements in AT-GCMs include semantic inputs, semantic outputs and
semantic keywords. For instance, in an AT-GCM obtained from an OWL-S
description, the semantic elements are Isem, Osem and Ksem=(Isem ∪ Osem).</p>
      <p>The matching process of semantic concepts in web services takes one concept from
service request (CR) and service advertisement (CA) and returns their degree of match.</p>
      <p>The degree of match between these semantic concepts is based on their
subsumption relation in the ontology. In this paper, we adopt the four degrees of
match proposed by Paolucci et al. in [19]: exact (CA=CR), plug-in (CR subsumes CA),
subsumes (CA subsumes CR) and fail (otherwise).</p>
      <p>To obtain a numerical similarity between two concepts, we further calculate the
length of the shortest ancestral path between these two concepts, which was
introduced by Y. Li et al. in [15]:</p>
      <p>where α ≥ 0 and β ≥ 0 are parameters scaling the contribution of the shortest path
length (l) between the two concepts and the depth (h) of the least common subsumer
in the concept hierarchy, respectively.</p>
      <p>We combine this function with the four degrees of match commented above into a
unique numerical real value between 0 and 1, being exact = 1, plug-in ∈ (0.5,1),
subsumes ∈ (0,0.5) and fail = 0:
3.1.1</p>
    </sec>
    <sec id="sec-7">
      <title>Semantic Outputs/Inputs</title>
      <p>In line with Paolucci’s proposal in [19], a semantic output matches if and only if for
each output of the request there is a matching output in the service description, i.e. the
service provides all the outputs required.</p>
      <p>For two sets of semantic outputs, ORsem and OAsem, the similarity between these two
outputs is calculated using function:</p>
      <p>In function OSemMatch OR denotes the semantic outputs from service request.
Therefore, if the service request requires no outputs (|ORsem|=0), it returns 1, exact
match, regardless of the outputs produced by service advertisement OAsem. Otherwise,
the semantic match is obtained by taking, for each output in the request, the best
match against the ones in the advertisement. The worst case (minimum value) is then
chosen to combine the best matches.</p>
      <p>For semantic inputs, an analogous approach is followed, but with the order of the
request and advertisement reversed.
3.1.2</p>
    </sec>
    <sec id="sec-8">
      <title>Semantic Keywords</title>
      <p>
        For semantic keywords from service request, KRsem (R) and from service
advertisement, KAsem (A) the degree of match between two sets of semantic keywords
is calculated using measure proposed in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]:
with , and a analogously.
      </p>
      <p>
        Alternative semantic similarity measures can be used, such as the measure
described by Hau et al. in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
3.2
      </p>
    </sec>
    <sec id="sec-9">
      <title>Syntactic Elements Matching</title>
      <p>Syntactic elements in AT-GCM include syntactic keywords, tag-cloud, syntactic I/Os
and text. To achieve uniformity and simplicity, we would like to adopt the similarity
measures defined in the last section to suit the syntactic elements too.</p>
      <p>However, these elements have no associated ontological concepts explicitly
defined in the service description. Thus, these elements need to be mapped into
concepts of a certain lexical database with subsumption relation defined, such as
Word:et.
3.2.1</p>
    </sec>
    <sec id="sec-10">
      <title>Syntactic Keywords</title>
      <p>Syntactic keywords are first mapped to WordNet synsets, with hypernym/hyponym
relations defined between synsets, we simply adopt function KSemMatch defined in
the last section:
where KRsynsets and KAsynsets denote WordNet synsets associated with keywords in the
service request and service advertisement respectively, and δ denotes weight of a
keyword, which is always 1 at current stage.</p>
      <p>Similarity between tag-clouds is calculated in the same way with weights
(frequencies):
where δr and δa denotes the frequency of term r (in R) and a (in A) respectively.
3.2.2</p>
    </sec>
    <sec id="sec-11">
      <title>Syntactic Inputs/Outputs</title>
      <p>Degree of match of WordNet synsets mapped from syntactic inputs and outputs are
calculated in the same way as their semantic counterparts.
As stated in section 2, our directory uses NAICS 07 as services categorization
standard. With 2341 categories in total, NAICS 07 standard organizes these categories
in a 5-level hierarchy.</p>
      <p>Each category is considered as a concept in this category taxonomy, the calculation
of the similarity between two categories is done by using:
where nc denotes the number of elements in component C (for example, number of
semantic outputs), and N denotes the average number of elements in both service
models.</p>
      <p>Function w is a logistic function, which makes the weights of the components with
number of elements close to the average increase rapidly. Also, logistic function
prevents the over-influence caused by components with excessive number of
elements.</p>
    </sec>
    <sec id="sec-12">
      <title>Implementation and Evaluation</title>
      <p>The directory service implementation consists of a web server to perform various
operations defined in section 2 (register and search services). The server may be
accessible through a web interface implemented on the same server, or through REST
operations to receive and respond to customer requests.</p>
      <p>We used SQLite3 database to facilitate the implementation in future distributions of
the service directory.</p>
      <p>
        The service directory receives search requests and responds to them through JSON
[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] data exchange, including a list of descriptions of the matching services and their
corresponding grounding so that they can be invoked if desired.
      </p>
      <p>Web Interface (PHP)</p>
      <p>Service Search
Service Register</p>
      <p>Other Tools</p>
      <p>ActionScript
C++
Delphi
Java
Visual Basic
...</p>
      <p>REST
Service
Directory</p>
      <p>Directory</p>
      <p>The implemented Web Interface also uses REST to interact with the service
directory. Fig. 5 shows the interaction of our proposed service directory with the Web
Interface and other languages. When the directory receives a client request (GET) it
carries out the operation using the specific parameters included in the request and
answers using JSON objects. The client can use the received information to show it or
invoke the services.
4.1</p>
    </sec>
    <sec id="sec-13">
      <title>Evaluation</title>
      <p>Based on OWLS-TC4 4.0, we performed two experiments to evaluate the precision of
category extraction and syntactic keywords matching.
3 http://www.sqlite.org/
4 http://www.semwebcentral.org/projects/owls-tc/</p>
      <p>As both experiments involve syntactic matching, the relevance is relatively
subjective. Therefore, the precision of the results is calculated against human
judgement.</p>
    </sec>
    <sec id="sec-14">
      <title>Category Extraction</title>
      <p>We selected 78 services from the OWLS-TC, and 5 NAICS-07 categories were
extracted using techniques described in section 2.2. Then we manually evaluated how
many extracted categories were acceptable (agree with human judgement). The
measure is essentially a precision at 5:
where |Cextracted| = 5.</p>
      <p>In comparison, we also performed an experiment in category extraction without
WordNet, i.e, character-wise matching was performed over stemmed keywords from
service description and category index.</p>
      <p>The results showed an average precision of 0.698 from our approach and 0.2734
from using pure syntactic matching.
In general, the precision of extraction with WordNet is higher than pure syntactic
matching. However, Fig. 6 shows that as the number of keywords increases, WordNet
approach’s precision decrease.</p>
      <p>This could be due to the fact that the number of WordNet synsets associated with
keywords increases rapidly hence overgeneralized the domain of the service An other
possible cause could be that the experiment was performed with a relatively small
amout of samples, thus noises are very obivious, for example, only one service has 13
keywords extracted and its value cloud be an exceptional extreme value.</p>
    </sec>
    <sec id="sec-15">
      <title>Syntactic Keywords Matching</title>
      <p>We selected 8 service requests from the OWLS-TC’s Request and Relevance Sets,
and using relevance information provided by OWLS-TC as the benchmark, our
syntactic matching algorithm has an average precision of 80.5%.</p>
      <p>Again, this results could be not reliable due to the small number of samples used.
Therefore, further larger scale experiments will be one of our future works
5</p>
    </sec>
    <sec id="sec-16">
      <title>Related Work</title>
      <p>Some (not many) other efforts have been made trying to align or compare different
service description approaches. As we mentioned in section 2.1, we set out from
existing conceptual comparisons between popular semantic web service languages
[11, 12, 20, 22] to obtain a general model description of services that facilitates their
discovery.</p>
      <p>
        Most of the current approaches to Semantic Web Services matching, particularly
those based on OWL-S, are based on subsumption reasoning on concepts included in
the descriptions (e.g. [14, 19]). Klusch et. al [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] present a hybrid matchmaker that
complements logic based reasoning with approximate matching techniques from
Information Retrieval. In this sense we propose a hybrid approach, which combines
subsumption checking, concepts similarity, and information retrieval. However, we
focus on the integration of several different service description.
      </p>
      <p>The directory service using a common model (AT-GCM) in the same direction as
iServe [21] uses the minimum service model to address interoperability, the
difference is that our board to consider Tag-Cloud, and keywords free text for use in
the directory.</p>
      <p>
        Ambite et al introduced a system (DEIMOS) for constructing semantic web service
from online sources automatically in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. DEIMOS uses an existing semantic web
service as a seed, by calculating the syntactic similarity and a brute-force
invocationobservation learning process, DEIMOS semantically annotated an external source.
Differently to our approach they use only inputs/outputs to characterise services.
Also, they use the Local-As-View (LAV) [13] datalog rules to describe the sources.
We use RDF instead, although this does not reduce expressivity against LAV, in fact
DEIMOS generates an RDF graph from LAV descriptions.
      </p>
      <p>
        In addition, A. Heß introduced a web service classification approach using
machine-learning techniques in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Even though the evaluation showed a remarkable
accuracy, no information about computational efficiency was shown. As techniques
such as Naïve-Bayes and SVM could be noticeably computationally expensive, this
approach might not be entirely suitable for service discovery in a large, open
environment.
      </p>
    </sec>
    <sec id="sec-17">
      <title>Conclusion</title>
      <p>In this paper we have dealt with the problem of service discovery in open systems.
We proposed an architecture that considers the alignment of service description
models, and the transformation of them into a unified common model. We do not only
consider explicit information specified in structured service descriptions, but we
enrich descriptions with additional information extracted using text processing.
Although we provided with an alignment mechanism for a set of service description
languages, other languages can be easily integrated into. In fact, if such new model
fits into the proposed AT-GCM only the adequate mappings have to be specified.</p>
      <p>Regarding computational aspects, note that the mapping of service advertisements
to the AT-GCM can be done at registration time, so we only need to process the
service request at run time (as well as the matchmaking algorithm).</p>
      <p>We also proposed the combination of service matching and concept similarity into
an integrated service-matching framework.</p>
      <p>The implementation and a preliminary evaluation showed a satisfying result
regarding category and keywords extraction. Further evaluations, such as F-measure
and recall of extracted categories as well as precision/recall of service are part of our
future plans.
7
11. Kourtesis, D., and Paraskakis, I. Combining SAWSDL, OWL-DL and UDDI for
Semantically Enhanced Web Service Discovery. Springer Berlin / Heidelberg. Pages
614628. 2008.
12. Lara, R., and Polleres, A. D4.2v0.1 Formal Mapping and Tool to OWL-S, WSMO
working draft 17 december 2004. http://www.wsmo.org/2004/d4/d4.2/v0.1/
13. Levy, A.Y.: Logic-based techniques in data integration. In: Minker, J. (ed.) Logic-Based</p>
      <p>Artificial Intelligence. Kluwer Publishers, Dordrecht, 2000.
14. Li, L. and Horrocks, I. A software framework for matchmaking based on semantic web
technology. Int. J. of Electronic Commerce, 8(4):39–60, 2004.
15. Li, Y, Bandar, Z.A. and McLean, D. An approach for measuring semantic similarity
between words using multiple information sources. IEEE Trans- actions on knowledge
and data engineering, pages 871–882, 2003.
16. Martin, D., Burstein, M., Hobbs, J., Lassila, O., McDemott, D., McIlraith, D., Narayanan,
D., Paolucci, M., Parsia, B., Payne, T., Sirin, E., Srinivasan, N., and Sycara, K.. OWL-S:
Semantic Markup for Web Services. W3C Member Submission, 2004. Available from
http://www.w3.org/Submission/OWL-S/.
17. Miller, G.A. WordNet: a lexical database for English, Communications of the ACM, pages
39-41, 1995. Association for Computational Linguistics.
18. NAICS Association. NAICS code searching. http://www.naics.com/search.htm, 2004.
19. Paolucci, M., Kawamura, T., Payne, T., and Sycara, K. Semantic Matching of Web</p>
      <p>Service Capabilities. In ISWC, pages 333–347. Springer Verlag, 2002.
20. Paolucci, M., Wagner M., and Martin M. Grounding OWL-S in SAWSDL. Springer</p>
      <p>Berlin / Heidelberg. Pages 416-421. 2007.
21. Pedrinaci, C., Liu, D., Maleshkova, M., Lambert, D., Kopecky, J. and Domingue, J.
iServe: a Linked Services Publishing Platform, Workshop: Ontology Repositories and
Editors for the Semantic Web at 7th Extended Semantic Web Conference, 2010.
22. Polleres, A., and Lara, R. A Conceptual Comparison between WSMO and OWL-S,</p>
      <p>WSMO Working Group working draft, 2005. http://www.wsmo.org/2004/d4/d4.1/v0.1/.
23. Porter, M. F. An algorithm for suffix stripping, Program, vol. 14, no. 3, 130-137, 1980.
24. Salton, G. Automatic Text Processing: The Transformation, Analysis, and Retrieval of
Information by Computer. Addison-Wesley, 1989.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Ambite</surname>
            ,
            <given-names>J.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Darbha</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goel</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Knoblock</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lerman</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parundekar</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Russ</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Automatically constructing semantic web services from online sources</article-title>
          . In: Bernstein,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Karger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.R.</given-names>
            ,
            <surname>Heath</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Feigenbaum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Maynard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Motta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            ,
            <surname>Thirunarayan</surname>
          </string-name>
          ,
          <string-name>
            <surname>K. (eds.) ISWC</surname>
          </string-name>
          <year>2009</year>
          .
          <article-title>LNCS</article-title>
          , vol.
          <volume>5823</volume>
          , pp.
          <fpage>17</fpage>
          -
          <lpage>32</lpage>
          . Springer, Heidelberg,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Balta</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Fernandez</surname>
          </string-name>
          .
          <source>Towards Service Matchmaking of Heterogeneous Service Descriptions. Worshop on Service-Oriented Computing: Agents</source>
          , Semantics, and
          <string-name>
            <surname>Engineering</surname>
          </string-name>
          (SOCASE@AAMAS2010), Toronto,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <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="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Christensen</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Curbera</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Meredith</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Weerawarana</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>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="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Ehrig M. Ontology</surname>
          </string-name>
          <article-title>Alignment: Bridging the Semantic Gap</article-title>
          . Springer.
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Farrell</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Lausen</surname>
            ,
            <given-names>H.</given-names>
          </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="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Hau</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Darlington</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>A Semantic Similarity Measure for Semantic Web Services</article-title>
          .
          <source>In: Proceedings of the Workshop Towards Dynamic Business Integration colocated with the 14th International World Wide Web Conference (WWW)</source>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Heß</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Johnston</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kushmerick</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <article-title>: Machine Learning for Annotating Semantic Web Services</article-title>
          . In: Semantic Web Services:
          <article-title>Papers from the 2004 AAAI Spring Symposium Series</article-title>
          . AAAI Press ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9. JSON, JavaScript Object Notation. http://www.json.org/,
          <year>2011</year>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <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>
          <string-name>
            <surname>OWLS-MX</surname>
          </string-name>
          :
          <article-title>A hybrid Semantic Web service matchmaker for OWL-S services</article-title>
          ,
          <source>Web Semantics: Science, Services and Agents on the World Wide Web</source>
          , Volume
          <volume>7</volume>
          ,
          <string-name>
            <surname>Issue</surname>
            <given-names>2</given-names>
          </string-name>
          ,
          <string-name>
            <surname>April</surname>
            <given-names>2009</given-names>
          </string-name>
          , Pages
          <fpage>121</fpage>
          -
          <lpage>133</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>