<!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 Graphical Evaluation Tool for Semantic Web Service Matchmaking</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Ulrich Lampe</string-name>
          <email>ulrich.lampe@kom.tu-darmstadt.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Melanie Siebenhaar</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Stefan Schulte</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ralf Steinmetz</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Multimedia Communications Lab (KOM), Technische Universitat Darmstadt</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Semantic matchmaking { i.e., the task of nding matching (Web) services based on semantic information { has been a prominent eld of research lately, and a wide range of supporting tools both for research and practice have been published. However, no suitable solution for the visualization of matchmaking results exists so far. In this paper, we present the Matchmaking Visualizer, an application for the visual representation and analysis of semantic matchmaking results. It allows for the comparing of matchmaking approaches for semantic Web services in a ne-grained manner and thus complements existing evaluation suites that are based on rather coarse-grained information retrieval metrics.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        In the envisioned Internet of Services (IoS), organizations will be able to
realize business processes using not only internal (Web) services, but also external
(Web) services from public marketplaces. One prerequisite to this vision is that
functionally equivalent services can be e ectively and e ciently identi ed in
the potentially huge collection of available service o ers. This service discovery
process based on functional requirements is referred to as matchmaking. Recent
approaches to matchmaking frequently utilize semantic information in addition
to the purely syntactical service descriptions [1{3], based on the notion of
Semantic Web services (SWS) [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>In current research, the evaluation of matchmaking approaches is mostly
based on standard Information Retrieval (IR) metrics such as precision and
recall. These metrics are, for instance, employed in the popular Semantic
Matchmaking Evaluation Environment (SME2) tool1. IR metrics, however, exhibit a
rather coarse-grained representation of matchmaking performance, because the
service rankings are merged into a selected number of (more or less
representative) gures. This type of evaluation provides little insight into the actual
matching process. For instance, the similarities that have been assigned to certain pairs
of components in a service, such as operations, and the resulting assignments
can not be assessed in detail. However, this type of information can be bene cial</p>
      <sec id="sec-1-1">
        <title>1 http://projects.semwebcentral.org/projects/sme2/</title>
        <p>in order to comprehend a matchmaking process in detail. It can also help to
analyze required modi cations to a (Web) service for actual consumption within,
e.g., a complex business work ow.</p>
        <p>In this paper, we present the Matchmaking Visualizer (MV) as a complement
to existing matchmaking evaluation tools. It facilitates the visual representation
and analysis of individual service o ers and requests and the respective matching
results. This permits a much more ne-grained evaluation and assessment of
matchmaking engines.
2</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Prototype Description</title>
      <p>2.1</p>
      <sec id="sec-2-1">
        <title>Representation of Matchmaking Results</title>
        <p>A matchmaking result consists of three parts in principle: The description of the
initial (1) service request and (2) service o er, and (3) the collection of matching
results between pairs of components in both services. The latter express the
similarity between individual components in service request and o er, based on
their functional and/or semantic description.</p>
        <p>
          We assume that both service request and o er are represented in the
identical form, namely as a complete service description le. Re ecting the variety of
available service description formats for both WS-* and RESTful services, MV
handles the Web Service Description Language (WSDL)2 in conjunction with
Semantic Annotations for WSDL and XML Schema (SAWSDL)3, Web
Ontology Language for Services (OWL-S)4, Web Application Description Language
(WADL) [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], and HTML for RESTful Services (hRESTS) [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ].
        </p>
        <p>
          Each individual matching result consists of the quali ed names (QNames) of
the two regarded components and a ag that indicates if the two components
have been assigned to each other. The matching result further links to at least one
similarity assessment, which consists of a numerical and textual similarity and a
free-text comment. QNames comprise the namespace of a component as well as
its local name and are unique to each component in a service description. Because
some components, such as individual parameters, may be referenced multiple
times, the QName of any parent of a component may optionally be provided
as well. Both numerical and textual similarity have been included because they
also appear in existing matchmaking approaches. For example, discrete Degrees
of Match are used in [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ], whereas [
          <xref ref-type="bibr" rid="ref1 ref3">1, 3</xref>
          ] apply continuous numerical measures.
The data structure for the representation of matching results is made available
as Java classes. This facilitates compatible external matchmakers generating the
appropriate data at runtime.
        </p>
        <sec id="sec-2-1-1">
          <title>2 http://www.w3.org/TR/wsdl, http://www.w3.org/TR/wsdl20/ 3 http://www.w3.org/TR/sawsdl/ 4 http://www.w3.org/Submission/OWL-S/</title>
        </sec>
      </sec>
      <sec id="sec-2-2">
        <title>2.2 Integration of External Matchmakers</title>
        <p>Because MV constitutes an (uno cial) complement to SME2, we have decided
to facilitate SME2's plug-in architecture for the integration of external
matchmakers. It requires matchmakers to be provided as a JAR le (optionally with
additional libraries) along with an XML-based description. As does SME2, MV
requires each compatible matchmaker to implement a Java interface class. This
interface, IMatchmaker, speci es one method, matchServices, which conducts
the matchmaking process for a service request and o er le. The locations of
the respective description les are provided as URLs. The matching result is
returned using the Java data structure outlined in the previous section.
Alternatively, complete matchmaking results may be provided to MV in the form of
XML-based les. This can be useful to matchmakers that do not facilitate MV's
plug-in architecture, e.g., if they are not implemented in Java.</p>
      </sec>
      <sec id="sec-2-3">
        <title>2.3 Implementation</title>
        <p>MV has been implemented in Java using di erent existing frameworks. For the
visualization of graphs, the Java Universal Network/Graph Framework (JUNG)5
is used. To read semantic service descriptions, we employ Woden4SAWSDL6
and OWL-S API7 to read (SA)WSDL and OWL-S documents respectively. For
the processing of WADL documents, the generic JDOM8 framework is utilized.
hRESTS documents are rst converted into an RDF model, using a XSLT
stylesheet by Kopecky9, and subsequently processed using the JENA
framework10.
2.4</p>
      </sec>
      <sec id="sec-2-4">
        <title>User Interface</title>
        <p>MV provides a platform-independent Graphical User Interface (GUI) based on
the Java Swing framework. A portal site, including a demo video, screenshots,
and additional example resources, is available at:</p>
        <p>http://www.kom.tu-darmstadt.de/~lampeu/iswc-2010/</p>
        <p>The GUI depicts a service request and service o er in the form of a tree
structure, representing the increasing level of abstraction. The root, i.e., the
whole service, branches into individual leaves, i.e., components, with parameters
constituting the most ne-grained level of abstraction. The level of expansion
for the tree may be globally selected, thus allowing to focus on the level of
abstraction of highest interest. Between all components on the currently selected
5 http://jung.sourceforge.net/
6 http://lsdis.cs.uga.edu/projects/meteor-s/opensource/woden4sawsdl/
7 http://on.cs.unibas.ch/owls-api/index.html
8 http://www.jdom.org/
9 http://cms-wg.sti2.org/TR/d12/v0.1/20081202/xslt/hrests.xslt
10 http://jena.sourceforge.net/
level, the matching results are visualized in the form of edges. By selecting a
component, the associated source code from the service description le may be
displayed in the GUI. Further, by selecting a connecting edge, details about the
respective matching result can be displayed.</p>
        <p>MV allows conducting matchmaking on a selected service request and o er
using any of the plug-in matchmaking engines. Results may also be combined
for direct comparison. That way, users may assess in detail which similarities
have been given to pairs of components and why certain components have been
assigned to each other. Further, an existing XML result le may be loaded or
an individual service may simply be displayed for analysis.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Summary</title>
      <p>In the work at hand, we presented the Matchmaking Visualizer, a tool for the
visualization of semantic Web service matchmaking results. It complements
existing evaluation tools for semantic matchmakers that rely on rather
coarsegrained information retrieval metrics. Matchmaking Visualizer permits a much
more ne-grained, in-detail analysis of matchmaking results, down to the level of
individual components and o ers support for the direct comparison of di erent
matchmaking approaches. For that matter, the tool is compatible with the
plugin architecture of the popular SME2 evaluation suite, o ering the convenient
integration of external matchmakers.</p>
      <p>Acknowledgements. This work is supported in part by E-Finance Lab e. V.,
Frankfurt am Main, Germany (www.efinancelab.de).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Schulte</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lampe</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eckert</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Steinmetz</surname>
          </string-name>
          , R.:
          <source>LOG4SWS</source>
          .KOM:
          <article-title>Self-Adapting Semantic Web Service Discovery for SAWSDL</article-title>
          .
          <source>In: IEEE 2010 Fourth International Workshop of Software Engineering for Adaptive Service-Oriented Systems (SEASS '10)</source>
          , Los Alamitos, CA, USA, IEEE, IEEE Computer Society (Jul
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Klusch</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kapahnke</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zinnikus</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Hybrid Adaptive Web Service Selection with SAWSDL-MX and WSDL-Analyzer</article-title>
          .
          <source>In: The Semantic Web: Research and Applications, Proceedings of the 6th European Semantic Web Conference (ESWC</source>
          <year>2009</year>
          ). Volume
          <volume>5554</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>2009</year>
          )
          <volume>550</volume>
          {
          <fpage>564</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Plebani</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pernici</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>URBE: Web Service Retrieval Based on Similarity Evaluation</article-title>
          .
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          <volume>21</volume>
          (
          <issue>11</issue>
          ) (
          <year>2009</year>
          )
          <volume>1629</volume>
          {
          <fpage>1642</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>McIlraith</surname>
            ,
            <given-names>S.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Son</surname>
            ,
            <given-names>T.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zeng</surname>
          </string-name>
          , H.:
          <article-title>Semantic Web Services</article-title>
          .
          <source>IEEE Intelligent Systems</source>
          <volume>16</volume>
          (
          <issue>2</issue>
          ) (
          <year>2001</year>
          )
          <volume>46</volume>
          {
          <fpage>53</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Hadley</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Web Application Description Language (WADL). Sun Microsystems</surname>
          </string-name>
          , Inc. Technical Reports; Vol.
          <article-title>SERIES13103; SMLI TR-</article-title>
          <year>2006</year>
          -
          <volume>153</volume>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Kopecky</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gomadam</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vitvar</surname>
          </string-name>
          , T.:
          <article-title>hRESTS: an HTML Microformat for Describing RESTful Web Services</article-title>
          . In: 2008 IEEE/WIC/ACM International Conference on Web Intelligence and
          <article-title>Intelligent Agent Technology</article-title>
          , IEEE (
          <year>2008</year>
          )
          <volume>619</volume>
          {
          <fpage>625</fpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>