<!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>Collective Intelligence support for data service exploration and retrieval (discussion paper)</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Devis Bianchini</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Valeria De Antonellis</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Michele Melchiori</string-name>
          <email>michele.melchiorig@unibs.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dept. of Information Engineering University of Brescia Via Branze</institution>
          ,
          <addr-line>38 - 25123 Brescia</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Agile design of data intensive web applications can rely on existing and well-tested third parties data services as components providing access methods to valuable data sources. Producers of real data services are more and more publishing their services in repositories according to light semantic pro les with simple tag-based descriptions. In this paper, we discuss techniques for data service exploration and retrieval that consider service co-usage in existing applications, patterns of tags co-usage, and ratings declared by developers who used a data service in their own development experiences.</p>
      </abstract>
      <kwd-group>
        <kwd>data service</kwd>
        <kwd>exploratory search</kwd>
        <kwd>collective intelligence</kwd>
        <kwd>weboriented architecture</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Nowadays, we have been observing a growth of research e orts for explorative
techniques and methods to deal with the increasing volume and heterogeneity
of information made available over the Web [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Building web applications, that
integrate information available over the web, increasingly requires frameworks to
support the discovery of available services providing access to web data sources.
      </p>
      <p>
        In literature, service recommendations approaches have been proposed to
consider service co-occurrence in existing applications as an implicit measure
of relatedness of services [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], or suggest services chosen by similar users in a
social network based on their usage information [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Considering this scenario,
in this paper we discuss techniques for data service exploration and retrieval
based on selecting and organizing suitable collective intelligence made available
in developers communities. In particular, we consider service co-usage in existing
applications, patterns of tags co-usage, and ratings declared by developers who
used a data service in their own development experiences. Our contribution with
respect to existing service recommendation approaches, including our previous
work in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], is that here we adopt an explorative viewpoint, enabling developers to
iteratively discover services of interest and progressively increase their knowledge
on available services.
      </p>
      <p>The paper is organized as follows. In Section 2 provides some comparison
with related work to underline the speci c features of our approach. Section 3
developer’s
credibility
creates
aggregationcontextual
rating</p>
      <p>Terminological (tag) perspective
Aggregation perspective</p>
      <p>Service perspective
describes a multi-perspective data service model. In Section 4 we describe the
data service exploration process. Section 5 discusses some preliminary validation.
Finally, Section 6 closes the paper with some nal remarks.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related work</title>
      <p>
        There are several approaches related to our work. In particular, we mention
recent Web service recommendation approaches, that rely on lightweight
descriptions of services, such as the ones featuring public repositories (e.g.,
ProgrammableWeb or Mashape.com): categories, tags or semantic tags, with the
application of advanced IR techniques to enhance topic-based service
recommendation [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], natural language API description [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], the number of times a
service has been used in the past and the co-occurrence of services in
existing applications [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], latent factors (e.g., related to the perceived QoS) that a ect
users to make service selection, identi ed mainly using matrix factorization
techniques [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. In this context, approaches like [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] leverage factors to estimate past
experiences of data service usage are considered, such as votes/ratings assigned
by users to services. These approaches overcome the complexity of traditional
state-of-the-art approaches on service discovery (see [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] for a recent survey), that
are hampered by the availability of complex, structured service descriptions (e.g.,
WSDL, WADL and semantic web service formalisms [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]). Compared to these
contributions, our aim is to de ne an explorative approach, exploiting speci c
collective intelligence, for service recommendation.
      </p>
      <p>Our proposal supports a conversation between the system, used to search for
services, and the developer, who is designing a new web application through the
selection and aggregation of services.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Multi-perspective data service model</title>
      <p>We model data services and organize collective intelligence on them by two
interconnected frameworks, namely a Data Service Framework and an
Experience Framework, that are illustrated in Figure 1 and separately detailed in the
next sections. Each framework focuses on speci c elements further enriched with
cross-framework relationships. Elements considered in such a multi-perspective
data service model are the ones included in lightweight descriptions available
within most popular repositories (e.g., Mashape.com, ProgrammableWeb.com).</p>
      <p>Service Service name Technical features
s1 HotWire DataF ormat = fXML,JSONg</p>
      <p>FsP1rotocol = fRSS, Atom, RESTg
s2 EasyToBook FsD1ataF ormat = fXMLg</p>
      <p>FsP2rotocol = fSOAPg
s3 MyAgentDeals FFssPD24raottaoFcoorlm=atfH=TTfPXgML,JSONg</p>
      <p>Fs4</p>
      <p>Tags
fCity, Star, Hotel, Travelg
fCity, Hotel, Travelg
fCity, Star, Near, Hotel,
Travelg
The Data Service Framework is organized according to three perspectives as
shown in Figure 1. Each perspective considers speci c elements, namely
services, aggregations and terms used to describe them, further described with
proper features and relationships between elements.</p>
      <p>Service Perspective. This perspective focuses on data services, according to the
following de nition.</p>
      <p>De nition 1. We de ne a data service s (hereafter, service) as an
operation/method/query to access data of a web source, whose underlying data schema might
be unknown to those who use the service. Within the scope of this chapter, we
model a service s as hns; Fs; ftsgi, where: ns is the service name; Fs is an array
of elements, where each element FsX represents the technical feature X (e.g.,
protocols, data formats, authentication mechanisms) and is modeled as a set of
allowed values for that feature (e.g., XML or JSON among data formats); ftsg
is a set of tags. We denote with S the overall set of available services.
A tag in Ts may be: (a) a category, taken from a top-down classi cation imposed
within the repository where the data service is stored and advertised1; (b) a user
tag, that is, a term assigned by developers, aimed at classifying the data service
in a folksonomy-like style; (c) a keyword, that is, a recurrent term extracted
from the service name and textual description using common IR techniques.
In Figure 2 data services taken from ProgrammableWeb.com for the running
example are listed.</p>
      <p>Aggregation Perspective. Concerning modern application development, to
implement a web application starting from available data services, developer has to
explore the set of available services, select the most suitable ones, integrate and
compose them, in order to deploy the nal application. Within the scope of this
paper, we focus on the rst step, i.e., service exploration for selection purposes,
and we talk about service aggregations, instead of web applications that are the
nal product of the development process. We model aggregations according to
the following de nition.</p>
      <p>De nition 2. A service aggregation represents a set of services that can be
composed to deploy a Web application. An aggregation g is modeled as a triple
hng; S(g); di, where: ng is the aggregation name; S(g) = fs1; : : : ; sng is the set of
data services used in g; d2D is the developer who designed the web application by
1 See, for instance, the list of ProgrammableWeb.com categories at
http://www.programmableweb.com/category-api.</p>
      <p>v2
composing services in g. We denote with G the overall set of service aggregations,
that is, g2G, and with G(s) the set of aggregations where s has been included.
Fictious examples of aggregations are listed in the following.</p>
      <p>g1 ) hTravelPlan, Sg1 = fs1; s3g, dg1 i
g2 ) hStay&amp;Fun, Sg2 = fs2; s3g, dg2 i
Terminological Perspective. The Terminological Perspective collects and
organises for supporting service exploration the terminological items used to describe
data services. The aim is to provide a term graph, described as shown in this
section, to start from in order to support data service exploration (see Section 4).
We will explain the structure of the graph with the help of the example shown in
Figure 3. Formally, the graph is represented as hV; E i, where V is the set of nodes
and E is the set of edges. In particular, each node vi2V is formally described
as vi = hTvi ; coocvi i, where Tvi is a set of tags jointly used to describe a
number coocvi of data services (intra-service term co-occurrence degree). Each edge
eij 2E V V N is formally described as eij = hvi; vj ; cooceij i, where vi and vj are
nodes (with corresponding sets of tags Tvi and Tvj , respectively), such that tags
in Tvi [Tvj have been jointly used within a number cooceij of aggregations
(intraaggregation term co-occurrence degree). For example in Figure 3, tags in fCity,
Hotel, Travelg have been used to describe three data services (namely, s1, s2
and s3). The same tags, together with fCuisine,City,Restaurant,Tourismg,
are associated with two aggregations (namely, TravelPlan and Stay&amp;Fun). Tags
aim at grouping services that are close from the data viewpoint.</p>
      <p>
        With reference to same gure, Tv1 and Tv5 can be used to suggest developers
to aggregate services s1, s2 and s3 with s5. The framework suggests rstly sets
corresponding to an existing aggregation already deployed and tested (let us
suppose, fs1; s5g). Other solutions are suggested as well although they do not
correspond to existing aggregations (for example fs2; s5g and fs3; s5g).
Therefore, the intra-aggregation term co-occurrence enables developers to explore
services that have not been aggregated yet, but can be considered for aggregation
because tagged with tags forming patterns used in some existing aggregation.
This enables a greater coverage of proposed solutions, at the cost of a lower
precision, that however can be acceptable in an explorative process. The term
graph can be built and maintained in a fully automatic way.
3.2
We integrate the Data Service Framework with methods and techniques designed
to exploit the experience of developers in selecting data services, thus enabling
their ranked recommendation. Such a framework, that in this paper we refer to
as Experience Framework (EF), has been investigated in our previous work [
        <xref ref-type="bibr" rid="ref11 ref4">4,
11</xref>
        ]. For the sake of completeness, we report here only few details that are useful
to understand the rest of this paper.
      </p>
      <p>
        The Experience Framework is focused on the set D of developers. Given a
data service s2S, we denote with (s; g; d)2[0; 1] the vote assigned to s by a
developer d2D with reference to the aggregation g2G in which s has been used
(aggregation-contextual rating). Votes are assigned according to the NHLBI
9point Scoring System2. Furthermore, in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] we included credibility assessment
techniques, inspired by the ones de ned in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], with respect to which we
introduced the notion of aggregation-contextual rating. In the Experience Framework,
a developer is de ned according to the following de nition.
      </p>
      <p>De nition 3. A developer represents an actor that is in charge of exploring
services and using them to design new aggregations. A developer might also
assign aggregation-contextual votes to services. A developer d is modeled as
hnd; c(d)i, where: (i) nd is the developer nickname in the considered repository;
(ii) c(d)2[0; 1] is the estimated developer's credibility.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Data service exploration</title>
      <p>
        We envision the service exploration process as a sequence of exploration steps
between the developer and the system, used to search for services. The
developer starts the exploration by specifying: (i) the set T r of terms used within the
search request, that provide some initial hints about developer's interests; (ii)
the set F r of required technical features, for further re ning requester's search
constraints. Sets T r and F r compose the service request R, that is completed
with the set gr of services, representing the current composition of the
aggregation that is being designed. The framework is equipped with proper wizards
(described in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]), that guide the developer in formulating the request. The
system suggests services by computing similarity, ltering and ranking techniques
such as the ones introduced in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] and summarised in the following.
Service similarity evaluation and ranking. A set of similarity metrics
have been designed to compare each service description s2S extracted from
ProgrammableWeb.com and the corresponding elements of the request R. The
rationale behind these metrics is that the more tags set Ts of s is similar to
T r, the more technical features Fs of s are similar to F r and the more
aggregations where s has been used are similar to the aggregation gr that is being
designed, the more description of service s2S ts the request R. The building
2 http://www.nhlbi.nih.gov/funding/policies/nine point scoring system and
program project review.htm.
blocks are the term similarity (T ermSim()2[0; 1]), the technical feature
similarity (T echSim()2[0; 1]) and the aggregation similarity (AggSim()2[0; 1]) metrics
that are combined into a overall similarity Sim(R; s)2[0; 1]. We denote the set
Se S of search results such that Se = fsi2SjSim(R; si) g, where 2[0; 1] is
a threshold set by the developer.
      </p>
      <p>A ranking function over the set of services in Se, denoted with : Se 7! [0; 1],
is de ned as follows:
(si) =
1
N</p>
      <p>
        X[ (si; gk; di) c(di) AggSim(gr; gk)]
N
(1)
where N votes have been assigned to si, each vote (si; gk; di) is weighted with
the credibility c(di)2[0; 1] of di2D as computed in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] and with the
aggregation similarity AggSim( ) of gk with respect to the aggregation gr that is being
developed. The rationale behind Equation (1) is that a service si2S is ranked
better if it received better votes by more credible designers in the context of
more similar aggregations. The system reacts to developer's actions by
supporting exploration according to the following three modalities.
      </p>
      <p>Exploration by simple search. The system also looks for nodes vi2V such
that T r Tvi . If multiple nodes are found, for each vi2V the system will suggest
to the developer additional terms to be included within the set T r considering
the set Tvi nT r. A suggestion is given for each vi2V, ranked in decreasing order
with respect to the coocvi value. The developer can explore these suggestions in
order to consider services alternative to Se and to formulate a di erent request.
For instance, with reference to Figure 3, if T r = fCity, Hotel, Travelg, the
system might also suggests as additional terminological item the term fStarg
rst (coocv2 = 2), and fNearg as second option (coocv3 = 1). In this way, the
developer might realize that hotels can be searched either based on the number
of stars or based on the proximity to a given location and he/she might re ne
the request by choosing one of the two options.</p>
      <p>Exploration by proactive completion. The developer selects a subset Se Se
of services he/she is interested in. The system suggests services that could be
used together with services in gr, by updating the set Se, according to the
intra-aggregation co-occurrence. Let's consider the example shown in Figure 4.
After performing a search based on T r = fCity; Hotel; Travelg, thus
obtaining Se = fs1; s2; s3g as results, the developer chooses s1 to be included in gr.
With reference to Figure 3, s1 is associated with v1 and v2 nodes. Considering
node v1, other nodes connected to v1 by graph edges are v4 (associated with
s4, cooce14 = 2) and v5 (associated with s5, cooce15 = 1). Similarly, considering
node v2, cooce24 = 1 and cooce25 = 1. Therefore, the system ranks better the
service s4 than s5, since cooce14 + cooce24 &gt; cooce15 + cooce25 . The developer can
accept one of these results. If more than one service is included in gr, the step
of retrieving services is repeated for each service in gr.</p>
      <p>Exploration by hybrid completion. This explorative modality is a
combination of proactive completion and simple search. After Se has been updated, the
developer selects a subset Se Se of services he/she is interested in, as well as</p>
      <p>T e Se
fCity; Hotel; s1</p>
      <p>Travelg s2</p>
      <p>s3
w

he/she speci es a new set T r of terms. The system suggests services that could
be used together with services in gr, by updating the set Se. In order to obtain
this set, a proactive completion step on gr retrieves some services as explained
before.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Preliminary validation of the framework</title>
      <p>The exploration process described in Section 4 calls for a quantitative evaluation
of the scalability of the exploration activities and the execution of experiments
with developers, to test the e ectiveness of the approach in supporting data
service exploration. In this section, we present preliminary experiments on
scalability, performed on a dataset of 1317 services extracted from ProgrammableWeb.</p>
      <p>We initially considered a set of service pairs hs1; s2i in the dataset and we
manually compared them according to tags, technical feature and aggregation
similarity, considering aggregations where they have been used. We run the
similarity evaluator to compute Sim(s1; s2) by varying the threshold from 0.0 to
1.0 and we chose the value of that maximized the F-measure.</p>
      <p>Then, experiments have been performed ten times using di erent requests.
To this purpose we randomly retrieved aggregations from the repository and we
considered as relevant the services included in the aggregations. We then issued
the requests using the features of the services in the selected aggregations and
we calculated the precision and recall of search results given by our system. The
aim of these preliminary experiments is to con rm the advantages for service
search brought by our approach, that considers the elements from the
multiple perspectives described in the model. For these reasons, we compared our
approach against: (a) the keyword-based search facilities made available within
the ProgrammableWeb repository; (b) a partial implementation of our system,
where we excluded the aggregation similarity from Sim(R; s) computation.
Table 1 shows the precision, recall and F-measure results, the standard deviation
and the variance of F-measure for the compared systems. As expected, the
complete implementation of the system presents the best F-measure value. Although
the exploitation of term and technical feature similarity bring signi cant
improvements compared to the basic searching facilities of the ProgrammableWeb
repository, it is quite evident as the highest enhancement in F-measure value is
due to the integration also of aggregation similarity, that mainly relies on service
co-occurrence.</p>
      <p>System
ProgrammableWeb
WISeR (no AggSim)
WISeR</p>
    </sec>
    <sec id="sec-6">
      <title>Concluding remarks</title>
      <p>In this paper, we proposed an approach for data service explorative search, based
on a multi-perspective model for data services and speci c collective intelligence
on them. The approach includes proactive search facilities and enables developers
to iteratively increase their knowledge on available web data services. Future
work will be devoted to the study of techniques for including latent factors
(e.g., related to the perceived QoS) in the exploration process. Further open
research includes the de nition of the visualization interface to further increase
the exploration experience of developers.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>S.</given-names>
            <surname>Idreos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Papaemmanouil</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Chaudhuri</surname>
          </string-name>
          ,
          <article-title>Overview of data exploration techniques</article-title>
          ,
          <source>in: ACM Conference on Management of Data (SIGMOD)</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>W.</given-names>
            <surname>Gao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Wu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Bouguettaya</surname>
          </string-name>
          , Joint Modeling Users,
          <article-title>Services, Mashups and Topics for Service Recommendation</article-title>
          ,
          <source>in: Proc. of 23rd International Conference on Web Services (ICWS</source>
          <year>2016</year>
          ),
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>R.</given-names>
            <surname>Hu</surname>
          </string-name>
          , J. Liu,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wen</surname>
          </string-name>
          ,
          <string-name>
            <surname>Y. Mao,</surname>
          </string-name>
          <article-title>USER: A usage-based service recommendation approach</article-title>
          ,
          <source>in: Proc. of 23rd International Conference on Web Services (ICWS</source>
          <year>2016</year>
          ),
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>D.</given-names>
            <surname>Bianchini</surname>
          </string-name>
          , V. De Antonellis,
          <string-name>
            <given-names>M.</given-names>
            <surname>Melchiori</surname>
          </string-name>
          ,
          <article-title>A Multi-perspective Framework for Web API Search in Enterprise Mashup Design (Best Paper)</article-title>
          ,
          <source>in: Proc. of 25th Int. Conference on Advanced Information Systems Engineering (CAiSE)</source>
          ,
          <source>Vol. LNCS 7908</source>
          ,
          <year>2013</year>
          , pp.
          <volume>353</volume>
          {
          <fpage>368</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>B.</given-names>
            <surname>Cao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Tang</surname>
          </string-name>
          , T. Zhang,
          <article-title>Mashup Service Clustering Based on an Integration of Service Content and Network via Exploiting a Two-level Topic Model</article-title>
          ,
          <source>in: Proc. of 23rd International Conference on Web Services (ICWS</source>
          <year>2016</year>
          ),
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>W.</given-names>
            <surname>Xiong</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Wu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Gu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Yuan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Hang</surname>
          </string-name>
          ,
          <article-title>Inferring service recommendation from natural language api description</article-title>
          ,
          <source>in: Proc. of 23rd International Conference on Web Services (ICWS</source>
          <year>2016</year>
          ),
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>X.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Fulia</surname>
          </string-name>
          ,
          <article-title>Incorporating User, Topic, and Service Related Latent Factors into Web Service Recommendation</article-title>
          ,
          <source>in: Proc. of IEEE International Conference on Web Services (ICWS</source>
          <year>2015</year>
          ),
          <year>2015</year>
          , pp.
          <volume>185</volume>
          {
          <fpage>192</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Z.</given-names>
            <surname>Malik</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Bouguettaya,
          <article-title>RATEWeb: Reputation Assessment for Trust Establishment among Web Services</article-title>
          ,
          <source>VLBD Journal 18</source>
          (
          <year>2009</year>
          )
          <volume>885</volume>
          {
          <fpage>911</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>S.</given-names>
            <surname>Pakari</surname>
          </string-name>
          , E. Kheirkhah,
          <string-name>
            <given-names>M.</given-names>
            <surname>Jalali</surname>
          </string-name>
          ,
          <article-title>Web Service Discovery Methods and Techniques: A Review, Int</article-title>
          .
          <source>Journal of Computer Science, Engineering and Information Technology</source>
          <volume>4</volume>
          (
          <issue>1</issue>
          ) (
          <year>2014</year>
          )
          <volume>1</volume>
          {
          <fpage>14</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. H.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Gibbins</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Payne</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Patelli</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Wang</surname>
          </string-name>
          ,
          <article-title>A survey of Semantic Web Services formalisms</article-title>
          ,
          <source>Concurrency and Computation Practice and Experience.</source>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>D.</given-names>
            <surname>Bianchini</surname>
          </string-name>
          , V. De Antonellis,
          <string-name>
            <given-names>M.</given-names>
            <surname>Melchiori</surname>
          </string-name>
          , Capitalizing the Designers'
          <article-title>Experience for Improving Web API Selection, in: On the Move to Meaningful Internet Systems: OTM 2014 Conferences</article-title>
          , Vol.
          <source>LNCS 8841</source>
          ,
          <year>2014</year>
          , pp.
          <volume>364</volume>
          {
          <fpage>381</fpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>