<!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>Anatomy of a Semantic Web-enabled Knowledge-based Recommender System</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>CEFRIEL</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Politecnico of Milano</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Via Fucini</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Milano</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Italy</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>name.surnameg@cefriel.it</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>Knowledge-based Recommender Systems suggest to users items of their interest, on the basis of some understanding of both items' characteristics and users' pro les. In order to properly work, this kind of recommender systems need a thorough modeling of items and users; the usual barrier to their development is, therefore, the availability of the necessary knowledge and its maintenance over time. With this respect, Semantic Web technologies can be of great help: not only knowledge technologies and languages can be employed to build the knowledge base, but the large availability of open and linked data about a growing variety of elds and topics, published on the Web of Data, further simpli es the modeling step for recommender systems. In this paper, we present our concept of Semantic Web-enabled Recommender System, based on the retrieval from the linked data Web of the necessary pieces of knowledge about items and users. We illustrate the general structure of this new family of Knowledge-based Recommender Systems and we explain how we concretely followed this approach to develop a tool to recommend Web services in the context of the SOA4All project. We also o er our considerations about the strengths, the current limitations and the possible extensions of our proposal.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Additionally, another category of systems, the Hybrid Recommender Systems [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ],
tries to join the advantages of two or more techniques described above. In this
paper we focus on the Knowledge-based Recommender Systems.
      </p>
      <p>Knowledge-based Recommender Systems o ers some advantages with respect
to the other techniques. First, they need a minimal amount of users, i.e. they
do not require a huge amount of data to compute recommendations, di erently
from other classes of Recommender Systems; moreover, they do not su er the
so-called cold start problem: when a new user/item is added with its
description, the system is immediately able to compute recommendations for the new
user/item; nally, by their very nature, they are able to generate proofs for the
recommendations, i.e. they are able to \explain" the motivation behind an item
proposal on the basis of the user/item modeling at disposal.</p>
      <p>The main drawback of Knowledge-based Recommender Systems, however,
consists in the modeling, building and maintenance of the knowledge base: a
correct and up-to-date description of items to be recommended, as well as of
users to which provide suggestions must be ensured, in order to guarantee a
high level of recall and precision of the generated recommendations. Several
elements can change over time: new users and new items can be added, old users
and old items can require an updated description, the domain knowledge can
evolve or be modi ed to take into consideration new features, the set of policies
de ned to compute recommendations can be revised to better meet users' needs
and requirements, and so on.</p>
      <p>This knowledge base creation and maintenance require a lot of e ort, with
a heavy human intervention. A special attention must also be given to assure
the consistency, quality and reliability of the modeled knowledge. Therefore, in
this context, it is quite natural to think about applying technologies and tools
coming from the Semantic Web community to help and support this phase.
Some e orts in this directions were already explored (as we report in Section 5);
still, a comprehensive work to design a Semantic Web-enabled Knowledge-based
Recommender System is missing.</p>
      <p>
        In this paper, we present a holistic approach to apply Semantic Web
technologies and the knowledge coming from the Web of Data to support and enhance the
knowledge base modeling as well as all other phases of the recommender life
cycle. Indeed, we believe that the recent availability of large amounts of linked data
can de nitely o er new opportunities to build innovative and enriched
recommender systems. Moreover, the widespread uptake of Semantic Web standards
{ RDF [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], SPARQL [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] and also the recently published RIF [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] W3C
Recommendation { provides new favorable circumstances to improve recommendation
algorithms and tools, by leveraging on users' and items' semantics.
      </p>
      <p>The rest of the paper is structured as follows: in Section 2 we describe our
concept for a Semantic Web-enabled Recommender System and we introduce
the scenario in which we applied our proposed approach to recommend Web
services, in the context of the SOA4All project. The details of our approach are
o ered in Section 3, in which we explain how the Web of Data can be leveraged
to build a knowledge base, and in Section 4, where we illustrate how Semantic
Web technologies can help in computing recommendations; those sections
include also the description of the actual realization of our conceptual approach
in the Web service recommendation scenario. Finally, in Section 5, we introduce
some previous works to combine Semantic Web technologies with Recommender
Systems and in Section 6 we conclude with our considerations about open issues
and current limitations and we provide hints for future extensions.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Our Concept of Semantic Web-enabled Recommender</title>
    </sec>
    <sec id="sec-3">
      <title>System</title>
      <p>
        For the last years, the Semantic Web community has been working to realize
the Web of Data, i.e. to publish structured information and datasets on the
Web and interlinking them. Thanks to the popularity of Tim Berners-Lee linked
data meme [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and to the growing interest and coordinated e ort of the Web
community, a rst nucleus of this Web of Data has been built and constantly
updated and enriched since early 2007 to constitute the so-called \Linking Open
Data dataset cloud" or simply LOD Cloud 1, which comprises around 4.7 billion
RDF statements, connected by 142 million RDF links (as of May 2009 [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]).
      </p>
      <p>We believe that the Web of Data should be considered as an interesting
source of information to be used by Knowledge-based Recommender Systems.
The LOD Cloud is a huge public source where information can be found to
describe several kinds of items, users and domains. Accessing and exploiting the
Web of Data can allow the partial automation of the knowledge base creation
and maintenance, simplifying the modeling and pro ling of items and users.
Furthermore, the computation tasks to generate recommendations, operating
on the knowledge base, can be performed and enhanced by the use of Semantic
Web tools like SPARQL processors, reasoners or rule-based systems.</p>
      <p>In this paper we propose a holistic approach to design and to realize a
Knowledge-based Recommender System using Semantic Web technologies. In
Section 2.1 we explain the high level architecture of such a system, which will be
detailed in Sections 3 and 4. The scenario in which we demonstrate the
applicability of our approach is introduced in Section 2.2; we will use this application
scenario also in the following sections to explain how we realized in practice a
prototype of our Semantic Web-enabled Recommender System.</p>
      <sec id="sec-3-1">
        <title>2.1 High-level Architecture of a Semantic Web-enabled</title>
      </sec>
      <sec id="sec-3-2">
        <title>Recommender System</title>
        <p>A recommender system is usually part of a more complex application (like a Web
site), so it exchanges data with other components. It provides its functionalities
to a set of known users about a prede ned set of items; both those sets can be
modi ed over time (users and items can be removed or added).</p>
        <p>Our concept of recommender system processes information from both private
and public sources. We call private data the information about users and items
generated by other parts of the application; with public data we identify the data
published and freely accessible on the Web of Data.</p>
        <sec id="sec-3-2-1">
          <title>1 Cf. http://lod-cloud.net/.</title>
          <p>Semantic Web‐enabled Recommender System
Users 
Items </p>
          <p>Model Builder</p>
          <p>Private 
data</p>
          <p>Model of  Recommendation  Recommendations
users and  Engine
items</p>
          <p>Public data
(Web of Data)
The Model Builder is related to the knowledge base building and maintenance; its
goal is to create a model containing the descriptions of items' and users' pro les.
Additionally, this model should contain information about how users (and their
interests) are related to items (and their features). In order to build such a
model, this component queries and interacts with the available data sources, both
private and public ones, and identi es the knowledge \bits" useful to describe the
items to be recommended and the users. For what regards the items, the Model
Builder should look for available descriptions, categorizations and classi cations,
reviews and ratings, related entities, etc.; it should also reconstruct the users'
pro les by retrieving useful information about their tastes and their preferences.</p>
          <p>The second component, the Recommendation Engine, is devoted to the
computation of item suggestions; it receives as input the model generated by the
Model Builder and analyzes this knowledge to nd semantic connections
between users and items. The assumption is that, if a user pro le can be connected
to an item description by a set of semantic links, this means that that item is a
good candidate for recommendation. Still, the component should also check for
speci c characteristics of those connection \paths" in order to compute a score
{ the so-called utility value { that represents the system's degree of con dence
in the usefulness of such recommendation for the user.
2.2</p>
        </sec>
      </sec>
      <sec id="sec-3-3">
        <title>Application Scenario: Recommending Web Services</title>
        <p>SOA4All2 is a European research project aimed to provide a comprehensive
framework that integrates SOA, context management, Web principles, Web 2.0
and semantic technologies into a service delivery platform. SOA4All tools can
be used by developers to discover, compose and reuse services in order to build a
new application. In this scenario, the users of the system are developers looking</p>
        <sec id="sec-3-3-1">
          <title>2 Cf. http://www.soa4all.eu/.</title>
          <p>for services, which are the items to be recommended. For example, a developer
who wants to build an e-commerce website is interested in nding pre-existing
services to be reused, like a shopping cart manager or a payment service.</p>
          <p>Within the SOA4All project, we applied the approach sketched above to
realize a Semantic Web-enabled Recommender System3 to suggest developers
(users) services of their interest (recommended items). Developers are identi ed
by their OpenID, which is an unambiguous Web identi er; by using this
identier, the Model Builder retrieves a user description from the Web of Data which
complements the \private" data about the user. Moreover, the services to be
recommended have their own URIs to identify them and are semantically
annotated with a categorization ontology; this lets the Model Builder nd related
information. Finally, the Recommendation Engine processes the SOA4All users'
pro les and the services' description to nd if and how they are semantically
connected; if such connections exist, the engine computes their utility values in
order to detect which services can be interesting for the system users.</p>
          <p>
            It is worth noting that, since our Recommender System is a Semantic Web
application that accesses distributed linked data sources, we developed it on top
of LarKC4 [
            <xref ref-type="bibr" rid="ref11">11</xref>
            ], an integrated and pluggable platform for Web-scale semantic
computing. We con gured a set of LarKC \work ows" to search for relevant
sources on the (Semantic) Web and to interact with them to retrieve the desired
data. A LarKC work ow is activated when it receives a request under the form
of SPARQL query.
3
          </p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Building a Knowledge Base with the Web of Data</title>
      <p>The Model Builder creates a model containing users' pro les and items'
descriptions by processing the available data sources, both private and public data.
This component can be further divided in three parts, as depicted in Figure 2:
the User Pro ler, the Item Pro ler and the Linker.</p>
      <p>Users </p>
      <p>Items 
Private data
Public data</p>
      <p>Model Builder</p>
      <p>User Profiler
Item Profiler</p>
      <p>Linker</p>
      <p>Model of 
users and 
items
The User Pro ler and the Item Pro ler respectively build a description of the
users and a description of the items; the main task of the Linker is to connect</p>
      <sec id="sec-4-1">
        <title>3 Cf. http://etechdemo.cefriel.it/rs-answers-service/.</title>
      </sec>
      <sec id="sec-4-2">
        <title>4 Cf. http://www.larkc.eu/.</title>
        <p>the users to the items, adding the missing data to complete the \paths" between
users, their tastes and interests on the one hand, and items and their features
on the other hand.
3.1</p>
        <sec id="sec-4-2-1">
          <title>Generic Entity Pro ler</title>
          <p>Since both User and Item Pro lers aim at building a semantic description of a
user/item respectively, to better clarify their role, we rstly describe a generic
Entity Pro ler. Then, in Sections 3.2 and 3.3, we detail the speci cities of those
two components within the Model Builder.</p>
          <p>An Entity Pro ler can be characterized by the entities to be described and
by some speci cation of the desired description of those entities, e.g. in terms
of the requested entity attributes. To reconstruct the entity description, the
Entity Pro ler accesses both the private sources and the public data published
on the Web of Data; the Entity Pro ler queries and traverses those knowledge
sources and retrieves the needed data; in case, it interlinks the gathered data to
reconstruct a complete model of the entities to be described.</p>
          <p>We assume that the entities to pro le can be identi ed by URIs; this kind
of identi er can be used to retrieve more information from the Web. We also
consider that the entity pro le will be expressed in terms of RDF triples and
RDF links to external sources. In order to build such a pro le, the Entity Pro ler
can be con gured to specify what kind of pro le data should be fetched; the
basic assumption is a SPARQL query in the form DESCRIBE &lt;entity-URI&gt;, but
con guring this component could mean de ning a detailed CONSTRUCT query.
In the latter case, the CONTRUCT clause could be used to transform the original
retrieved data into a common format that is more suitable for the subsequent
elaborations. When the entity description is fetched from several heterogeneous
sources, this transformation is needed to homogenize the di erent pieces of data.</p>
          <p>
            For what regards the data sources, the Entity Pro ler should rst search in
the application private data; then it should look for additional data from external
sources. Those public sources can either be manually identi ed or dynamically
discovered; in the former case, the Entity Pro ler can be con gured with a list
of known data sources (to be used, for example, in the FROM clause of SPARQL
queries), while, in the latter case, the component should query a Semantic Web
search engine service (like Sindice5 [
            <xref ref-type="bibr" rid="ref22">22</xref>
            ] or Watson6 [
            <xref ref-type="bibr" rid="ref10">10</xref>
            ]) and then interact with
the returned list of sources to retrieve the additional information.
          </p>
          <p>A nal note about the \storage" of entity pro les: the most natural approach
would be to store all the reconstructed pro les locally; this is also the most
common approach in existing recommender systems. Growing the amount of
data gathered from public sources, however, this could be unfeasible. Being the
Web of Data distributed by nature, moving from a dataset to a connected one is
always possible by following RDF links. A Semantic Web-enabled Recommender
System could therefore have a local knowledge base for the RDF links to external</p>
        </sec>
      </sec>
      <sec id="sec-4-3">
        <title>5 Sindice http://sindice.com/.</title>
      </sec>
      <sec id="sec-4-4">
        <title>6 Watson http://watson.kmi.open.ac.uk/.</title>
        <p>public datasets, leaving in their original locations a large part of the public
data. Incorporating only the links to the remote locations lets the system keep
its knowledge base small and manageable, without hindering the possibility to
access the public data on the Web. Of course, a pragmatic solution could include
partial local caching of remote data.</p>
        <sec id="sec-4-4-1">
          <title>3.2 User Pro ler</title>
          <p>The User Pro ler is the instantiation of the generic Entity Pro ler with the
goal of reconstructing the user pro le. Usually, recommender systems adopt two
di erent strategies to derive a user pro le: by analyzing implicit user feedbacks
and by processing explicit user inputs.</p>
          <p>
            The implicit feedbacks analysis [
            <xref ref-type="bibr" rid="ref14">14</xref>
            ] allows to de ne users' needs by collecting
data about their behavior, for example capturing navigation links, bookmarks
and so on. The resulting user pro le in this case can be inaccurate, but the
advantage is that it is reconstructed without bothering users, e.g. when they
cannot or do not want to provide personal details. On the other hand, when
users insert speci c information about themselves and their preferences, they
build an explicit pro le describing their interests. As a consequence, the system
gets a very accurate user pro le based on what users voluntarily provide.
          </p>
          <p>Our concept of Semantic Web-enabled Recommender System does not
require the adoption of either speci c technique. The User Pro ler addresses the
challenge of complementing a user description, derived via implicit/explicit
techniques, with additional public information from the Web of Data. Therefore, the
following considerations are valid in both scenarios.</p>
          <p>
            The Web of Data allows for a relevant enrichment of the pro les, through
the discovery of di erent kinds of information. Not only the User Pro ler can
look for speci c information about users and their tastes; it can also enrich the
description of users' needs, by retrieving more detailed descriptions of interest
topics. The availability of such information is due to the growing success of
social networks; Web users are more and more accustomed to describe their
pro le on a multitude of di erent platforms and the Semantic Web community
has investigated how to automatically derive a structured user pro le from the
social Web (e.g. extracting users' interests from their Facebook pages [
            <xref ref-type="bibr" rid="ref27">27</xref>
            ]).
          </p>
          <p>
            In particular, we refer to FOAF 7 [
            <xref ref-type="bibr" rid="ref7">7</xref>
            ] pro le information which, in the LOD
Cloud, represents one of the largest datasets. To recommender systems, FOAF
can o er useful kinds of information, like relations between users (foaf:knows
links between pro les) and users' topics of interest (foaf:interest property
values). Retrieving the FOAF pro les of the recommender system's users can
be a successful way to obtain additional data to enrich users' pro les; for
example, turning to FOAF data can be very useful when the system has no available
information about new users (the so-called user cold start problem).
Unfortunately, existing FOAF pro les do not always contain useful information, but
we believe that, with the growing adoption of this vocabulary, more and more
relevant information about people will be made available on the Web of Data.
          </p>
        </sec>
      </sec>
      <sec id="sec-4-5">
        <title>7 Cf. http://www.foaf-project.org.</title>
        <sec id="sec-4-5-1">
          <title>Reconstructing SOA4All developers' pro les. In the scenario of service</title>
          <p>recommendation introduced in Section 2.2, system users are developers identi ed
by their OpenID. In this context, therefore, we used this identi er to nd an
available FOAF pro le, since FOAF speci cation de nes the inverse functional
property foaf:openid. If such a pro le is found, we retrieve foaf:interests,
thus collecting the useful hints to understand users' preferences.</p>
          <p>
            Since we want to build a pro le that lets the recommender system provide
useful service suggestions, we do not limit the developers' pro ling to their FOAF
description. Starting from the values of the foaf:interest property, we try to
identify related DBpedia resources [
            <xref ref-type="bibr" rid="ref5">5</xref>
            ]. In this way, as explained later, we pave
the way for an easier discovery of semantic connections between developers and
the services to be recommended. An example of FOAF pro le expressed in N3
retrieved from the Web of Data starting from an OpenID could be the following:
&lt;user-uri&gt; foaf:openid &lt;user-openid&gt; ;
          </p>
          <p>foaf:interest dbp:ClassicalMusic .</p>
          <p>Finally, the retrieved pro le data are converted into a common format expressed
by the Weighted Interest Ontology8; this data model lets us keep track of the
di erent interest degree of a user with regards to a topic. Moreover, this ontology
could be used to tell apart the di erent \contexts" of a user's pro le: a person
could be interested in books in his private life and in music for professional
reasons. The example above should therefore be converted as follows:
&lt;user-uri&gt; foaf:openid &lt;user-openid&gt; ;
wi:preference [
rdf:type wi:WeightedInterest ;
wi:topic dbp:ClassicalMusic ;
wi:weight "1" ;
wi:context "professional life"</p>
        </sec>
        <sec id="sec-4-5-2">
          <title>3.3 Item Pro ler</title>
          <p>As the User Pro ler builds users' description, the Item Pro ler performs similar
actions on the recommendable items. The goal of this component is to
reconstruct a description of the items, collecting their relevant features and properties.</p>
          <p>Since an item is any entity that could be recommended to the user, the
speci c kind of information to be retrieved strongly depends on the concrete
scenario and cannot be generalized. Nonetheless, in the following we o er some
hints on how Semantic Web technologies can help this component. In particular,
we focus on enriching the \private data" about items with additional details from
the Web of Data; as with users' pro les, we assume each item can be identi ed
by a URI to let the Item Pro ler search for related information.</p>
          <p>For what regards the data sources to be queried, it is of course hard to
indicate a source that can prove useful in any possible case. As explained in</p>
        </sec>
      </sec>
      <sec id="sec-4-6">
        <title>8 Weighted Interest Ontology http://xmlns.notu.be/wi/.</title>
        <p>Section 3.1, the location of data sources of interest can be reached through the
use of a Semantic Web search engine, by looking for information directly related
to the item or relevant with respect to some domain-speci c concept or entity.</p>
        <p>
          It can also be advisable, however, to retrieve information from the most
common generic sources, like the already cited DBpedia { \the crystallization point
for the Web of Data" [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] { or Freebase9. The connection of an item description
to those broad and common sources, in turn, can result in an easier discovery of
semantic connections with users' pro les, as illustrated in Section 3.4.
Reconstructing SOA4All services' descriptions. In the SOA4All scenario,
the recommendable items are services. Each service { either SOAP or REST {
is identi ed by a URI and semantically described; the basic service data can be
retrieved through the iServe10 linked data endpoint developed in SOA4All. In
particular, services are annotated with regards to the Service-Finder Category
ontology11, which describe general purpose classi cations of services. An example
of service pro le retrieved in such a way is the following:
&lt;service-uri&gt; rdf:type sf:Service ;
        </p>
        <p>sawsdl:modelReference sfcat:Music .</p>
        <p>As illustrated for user pro ling, service description could be turned in a common
format suitable for recommendation computing. A possible expressive model is
o ered by the Service-Finder ontology12 as follows:
&lt;service-uri&gt; rdf:type sf:Service ;
sf:hasCategoryAnnotation [
sf:hasCategory sfcat:Music ;
sf:strength "1"</p>
        <sec id="sec-4-6-1">
          <title>3.4 Linker</title>
          <p>
            The output of the two pro lers consists of two RDF graphs (Figure 3), one
containing users' pro les and one describing recommendable items and their
features. As described in Section 4, computing recommendations is the process of
analyzing the relations between users and items, thus, the goal of the Linker is to
supply the additional RDF triples describing the relations between users (or their
interests) and items (or their features). Some of these connections could already
be part of items/users pro les; otherwise, the Linker should look for the missing
links. In [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ], those three models to be connected are named User Knowledge,
Catalog Knowledge (data about items' features) and Functional Knowledge (data
about the mapping between user interests and items).
          </p>
          <p>To discover useful connections, the Linker could perform two operations on
the Web of Data: inference and RDF paths search. Applying inference on User</p>
        </sec>
      </sec>
      <sec id="sec-4-7">
        <title>9 Freebase http://www.freebase.com/. 10 iServe http://iserve.kmi.open.ac.uk/. 11 Cf. http://www.service-finder.eu/ontologies/ServiceCategories. 12 Cf. http://www.service-finder.eu/ontologies/ServiceOntology.</title>
        <p>and Catalog Knowledge, the Linker could nd hidden relations among the
described entities. In addition, inference could improve the RDF path search by
adding new \starting points" to the data discovery.</p>
        <p>Users’ model</p>
        <p>Items’ model
Web of Data
The RDF path search consists in the discovery of the missing links between users'
and items' pro les on the Web of data. This means that, if additional connections
exist, they could as well be published on the Web of Data. In literature, some
works to perform RDF path search on the LOD Cloud already exist.</p>
        <p>
          RelFinder13 [
          <xref ref-type="bibr" rid="ref12 ref16">16, 12</xref>
          ] is an application that receives as input two entities and
looks for paths among them. It constructs a set of SPARQL queries that ask for
a path between the two entities with a prede ned orientation and length; then
it submits the queries to a SPARQL endpoint to retrieve the paths. RelFinder
works if both the entities are accessible through the same endpoint.
        </p>
        <p>
          SCARLET [
          <xref ref-type="bibr" rid="ref28">28</xref>
          ] copes with the problem of looking for connections between
two concepts. First it looks for an ontology that contains both concepts: if it
exists, the ontology is processed to derive the relation between the concepts
(e.g., disjointness or equivalence). If it doesn't, SCARLET recursively looks for
a set of ontologies that allows to link the two inputs.
        </p>
        <p>The idea behind SCARLET could be extended from concepts to generic
entities. The Linker could act in a similar way: given the two resources for which
a connection should be found, it should rstly identify the datasets potentially
containing the RDF paths; then, traversing the datasets by following a speci c
policy (for example using only a set of prede ned properties), it should try to
nd the connections. It is worth noting that an exhaustive search for paths is
not an issue, since the Linker's aim is to nd useful paths for the computation
of the recommendations.</p>
        <p>
          Linking services to SOA4All users. As explained above, services are
annotated by the use of the Service-Finder Category ontology. Those categories are
13 RelFinder http://relfinder.dbpedia.org/.
mapped to DBpedia categories14, by the use of SKOS [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] mapping properties
(speci cally, skos:closeMatch). This existing mapping enables the connection
between any service annotated with the Service-Finder Category ontology with
the Web of Data. Our Linker, therefore, starting from the service categorization
recalls the link between such categorization and DBpedia categories from the
Service-Finder mapping, fetching additional knowledge, as follows:
sfcat:Music skos:closeMatch dbpcat:Music .
        </p>
        <p>Moreover, DBpedia categories constitute a taxonomy, in which categories are
related via the skos:broader mapping property. DBpedia topics are then
related to DBpedia categories by a skos:subject predicate. Thus, the Linker can
nd a path between user interests (expressed as DBpedia topics) and service
categorizations (mapped to DBpedia categories). The following triples complete
the path between the user and the item of the previous listings:
dbp:ClassicalMusic skos:subject
dbpcat:ClassicalMusic skos:broader
dbpcat:MusicGenre skos:broader
dbpcat:ClassicalMusic .
dbpcat:MusicGenre .</p>
        <p>dbpcat:Music .
4</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Computing Recommendations with the Semantic Web</title>
      <p>The last element in our vision for a Semantic Web Recommender System is of
course the component to generate suggestions of interesting items to the users:
the Recommendation Engine. On the basis of the RDF graph that connects users
to items as computed by the Model Builder, this component must derive a list of
recommendations, i.e. a list of user-item pairs quali ed by a utility value which
represents the con dence in the predicted user/item correlation.</p>
      <p>The approach of our Recommendation Engine is oriented to nd meaningful
relations between users and items in the descriptive graph. The rst step is thus
identifying the relevant path(s) { in terms of RDF triples { that connects a user
with an item within the graph reconstructed by the Linker. It is possible that
no path exists to connect a user to an item: in this case, the Engine does not
produce any recommendation for that pair; on the other hand, when multiple
paths exist, all paths or only a subset of them can be considered. In any case,
each path must be evaluated and given a score.</p>
      <p>In order to judge if an item can be of interest for a user, the bare existence of
a path between them is not enough; indeed, the path should contain evidence of
the recommendation \utility". To this end, Semantic Web technologies can play
again an important role: the RDF path in fact is not only a route connecting
two points in a graph, but it consists in a \semantic" description of the reasons
why the user and the item are linked.</p>
      <p>Under this perspective, the Recommendation Engine must check the
\content" of the user-item connection path, to identify signs of potential utility. For
14 Cf. http://www.service-finder.eu/ontologies/SFC2DBpedia.
example, it could verify if the path contains triples that express interest,
liking or importance (e.g. the user likes a topic which is related to the item); on
the contrary, it should make sure that the path does not contain expressions
of disapproval or distaste (e.g. the user dislikes a subject to which the item
refers). Finally, it could take into account the user \context" or \role" to give
higher scores to paths relevant for the current user needs. Therefore, the
Recommendation Engine should verify a set of constraints within the RDF path(s);
the satisfaction of each constraint leads to the attribution of a score and the
combination of all scores constitutes the utility value for the user-item pair.</p>
      <p>
        Pragmatically, those constraints to be veri ed can be expressed in a
number of di erent ways using Semantic Web technologies, including SWRL [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] or
RIF [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] rules. In the simplest case, those constraints can be expressed as triple
patterns to be veri ed via a SPARQL query [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ]: the query veri es speci c path
characteristics, like triples with speci c predicates. To con gure a Recommender
Engine, a set of constraints should be provided, each one quali ed by a score
that, in case of veri cation, contributes to the utility value computation. Once
all those computations take place, making item recommendations for a speci c
user means selecting the user-item pairs with the highest utility values.
      </p>
      <p>Moreover, when suggesting those recommendations to the user, the
Recommendation Engine could also provide a proof for its choice, i.e. the path
connecting the user to the recommended item. This proof lets the user understand the
\semantics" of the recommendation and check its validity; in turn, this could
enable the possibility to gather feedbacks from the user about the soundness of
a recommendation, thus paving the way for an improvement of the user/item
model (e.g. the user could add/modify his interests in order to get more tailored
suggestions).</p>
      <p>Computing service recommendations scores. In our service
recommendation scenario, we compute the utility value by analyzing the paths. On the
one hand, we rely on the knowledge about users and items: user interests are
\weighted" as exempli ed before and service annotations have a \strength"
representing how much the employed automatic annotator software is con dent
about the categorization. On the other hand, the RDF path connecting a user
to a service contains other information, like the DBpedia topics and categories.</p>
      <p>For each user-service couple, the system computes a correlation value out
of all the paths connecting them. Given a path, a rst utility value is
computed considering speci c characteristics of the RDF path, like the number of
skos:broader relations between DBpedia categories (the fewer relations, the
higher the score) and the presence of DBpedia \top" categories (if present, the
connection path is probably not very meaningful). Then, this value is combined
with the interest's weight and the categorization's strength, in order to compute
a global utility value for the path.</p>
    </sec>
    <sec id="sec-6">
      <title>Related works</title>
      <p>
        Semantic Web and Recommender Systems are two research elds with several
points of contact: in literature, it is possible to nd several works related to the
study of their interaction [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
      </p>
      <p>
        A rst way to use Semantic Web technologies in recommender systems is
to describe users' pro les and items' features. Middleton, Alani and De Roure
in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] use ontologies to model the topics taxonomy of research papers (the items
to be recommended) and users' interests, in order to compute recommendations
and to identify meaningful groups of users (communities of practice). In [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ],
Bannwart et al. present OMORE, a Content-based Recommender System for
movies; it runs as a Firefox plug-in and it predicts how much a movie could be
of interest for a user. When running, the application analyzes the Web pages the
user views; if a page is related to a movie, OMORE processes it, retrieving the
features of the movie through the LOD Cloud and, thus, pro ling the user.
      </p>
      <p>
        Regarding the use of Semantic Web tools for the generation of
recommendations, Abel et al. in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] present a recommender system for an on-line community
with the goal of suggesting relevant discussions to the users. To process the
recommendations, the system can select among several collaborative ltering
algorithms; those algorithms are exposed as Semantic Web Services described
using OWL [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. To choose the best algorithm, the system employs a Semantic
Web rule-based engine (with rules de ned in SWRL [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]).
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], Manikrao and Prabhakar present a recommender system for Web
services. One of the core components of their system is a semantic matcher,
that operates on a knowledge-base in order to match users' needs with services.
Knowledge-based Recommender System can take advantage of Semantic Web
tools like reasoners and inference engines; to our best knowledge, however, the
use of those technologies in recommender systems is still quite limited.
      </p>
      <p>
        Another way Semantic Web could help to build a Knowledge-based
Recommender System is to build recommendations' proof. Passant and Decker in [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]
present dbrec, a recommender system to compute music recommendations. The
system gets description of musicians and music bands from DBpedia and
processes the retrieved RDF graph in order to compute a semantic similarity value
(called Linked Data Semantic Distance) among artists. When users navigate the
dbrec Web site, the system shows the reasons behind the recommendations of
similar musicians.
      </p>
      <p>
        Finally, Semantic Web technologies can be successfully employed to integrate
data from heterogeneous sources. Passant and Raimond in [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] propose the use of
the data in the LOD Cloud to build a music recommender system. They analyze
three di erent kinds of data available on the LOD Cloud that could be used to
compute recommendations: social-network data (the FOAF-o-sphere),
descriptions of artists and bands and user-de ned tags. Those data are distributed on
several sources, such as DBpedia or MusicBrainz, and they are integrated and
interlinked by following the Linked Data principles [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>
        Another example of Semantic Web-based integration can be found in [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ],
where Szomszor et al. cope with the problem of building a uni ed
knowledgebase to compute recommendations from two datasets (IMDb and Net ix). To
achieve their goal, they employ RDF and make the integrated data accessible
via a SPARQL endpoint.
6
      </p>
    </sec>
    <sec id="sec-7">
      <title>Conclusions</title>
      <p>In this paper we presented our vision of how a Knowledge based Recommender
System could be based on and exploit all the capabilities of Semantic Web
technologies. We explained how the model of users and items can be enriched with
the knowledge from the Web of Data and how Semantic Web tools can be
employed to elaborate data and support generating recommendations. We designed
the structure and the main modules that compose such a system at a conceptual
level, giving hints on how this can be realized in practice; additionally, we
illustrated how we concretely built a demonstrator of such a Semantic Web-enabled
Recommender System in the context of service recommendations in the SOA4All
project.</p>
      <p>Our main goal with this paper was to present several opportunities to leverage
the results of the Semantic Web community in the Recommender Systems eld;
we hope that other researchers can take our concept and analysis as reference
for further investigations on the possible interplay of the two \worlds".</p>
      <p>
        The pure adoption of Semantic Web technologies, however, does not solve
some existing open issues in building a Knowledge-based Recommender System.
In particular, since the quality of recommendations is directly correlated with
the quality of data, relying on the knowledge in the LOD Cloud means
trusting the quality of its contents. To dispel the concerns about the quality of data
and the level of \trust" of the linked data sources on the Web, the Semantic
Web community is putting a lot of e ort in the de nition and standardization of
\provenance" descriptions15 [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. With the arrival of massive amounts of
Semantic Web data, information about the origin of that data becomes an important
factor in telling apart reliable data from low-quality information.
      </p>
      <p>In an open and inclusive environment such as the Web, information is often
contradictory or questionable; the distributed and redundant nature of the Web
puts at risk not only the consistency of knowledge, but also its completeness and
reliability. To overcome those problems, usually people make trust judgments
based on what they know about the data provenance. However, when
provenance information is not available or is not enough, the problem of managing
inconsistency remains open. This, in turn, has a direct consequence on the
possibility to evaluate the generated recommendations, e.g. in terms of precision and
recall. On the other hand, the employment of semantic descriptions paves the
way to a recommendation evaluation based on the meaning of data.</p>
      <p>
        All in all, our proposed approach is far from being complete. Our future work
will be devoted to extend and improve the current proof of concept, to evaluate
it and to detail the lessons learned from the adoption of our approach. In our
roadmap, we would like to investigate in the direction of deriving user pro les
from implicit knowledge (as in our previous work [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ]) and of leveraging the
15 Cf. http://www.w3.org/2005/Incubator/prov/.
semantic relations between users and between items. Finally we would like to
explore the feasibility of realizing a hybrid system [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] by joining our Semantic
Web-enabled Recommender System with a Collaborative Filtering approach.
      </p>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgments</title>
      <p>This research has been partially supported by the SOA4All (FP7-IST-215219), LarKC
(FP7-IST-215535) and Service-Finder (FP7-IST-215876) EU co-funded projects.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>F.</given-names>
            <surname>Abel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. I.</given-names>
            <surname>Bittencourt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Henze</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Krause</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Vassileva</surname>
          </string-name>
          .
          <article-title>A Rule-Based Recommender System for Online Discussion Forums</article-title>
          .
          <source>In Proceedings of the 5th international conference on Adaptive Hypermedia and Adaptive Web-Based Systems (AH '08)</source>
          , pages
          <fpage>12</fpage>
          {
          <fpage>21</fpage>
          , Berlin, Heidelberg,
          <year>2008</year>
          . Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>T.</given-names>
            <surname>Bannwart</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Bouza</surname>
          </string-name>
          ,
          <string-name>
            <surname>G.</surname>
          </string-name>
          <article-title>Reif, and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Bernstein</surname>
          </string-name>
          .
          <article-title>Private Cross-page Movie Recommendations with the Firefox add-on OMORE</article-title>
          .
          <source>In 8th International Semantic Web Conference (ISWC2009)</source>
          ,
          <string-name>
            <surname>Washington</surname>
            <given-names>DC</given-names>
          </string-name>
          , USA,
          <year>October 2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>T.</surname>
          </string-name>
          Berners-Lee.
          <article-title>Linked Data { Design Issues</article-title>
          . Online at http://www.w3.org/DesignIssues/LinkedData.html,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>C.</given-names>
            <surname>Bizer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Heath</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Berners-Lee</surname>
          </string-name>
          .
          <article-title>Linked Data { The Story So Far</article-title>
          .
          <source>International Journal on Semantic Web and Information Systems</source>
          ,
          <volume>5</volume>
          (
          <issue>3</issue>
          ):1{
          <fpage>22</fpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>C.</given-names>
            <surname>Bizer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Lehmann</surname>
          </string-name>
          , G. Kobilarov,
          <string-name>
            <given-names>S.</given-names>
            <surname>Auer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Becker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Cyganiak</surname>
          </string-name>
          , and
          <string-name>
            <surname>S. Hellmann.</surname>
          </string-name>
          <article-title>DBpedia { A Crystallization Point for the Web of Data</article-title>
          .
          <source>Journal of Web Semantics: Science, Services and Agents on the World Wide Web</source>
          ,
          <volume>7</volume>
          :
          <fpage>154</fpage>
          {
          <fpage>165</fpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>H.</given-names>
            <surname>Boley</surname>
          </string-name>
          , G. Hallmark,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kifer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Polleres</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Reynold. RIF Core</surname>
          </string-name>
          <article-title>Dialect { W3C Recommendation</article-title>
          . Available at http://www.w3.org/TR/rifcore/, June 22th,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>D.</given-names>
            <surname>Brickley</surname>
          </string-name>
          and
          <string-name>
            <given-names>L.</given-names>
            <surname>Miller</surname>
          </string-name>
          .
          <source>FOAF Vocabulary Speci cation 0</source>
          .97. Available at http://xmlns.com/foaf/spec/, January 1st,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>R.</given-names>
            <surname>Burke</surname>
          </string-name>
          .
          <article-title>Knowledge-Based Recommender Systems</article-title>
          .
          <source>Encyclopedia of Library and Information Science</source>
          ,
          <volume>69</volume>
          (
          <issue>32</issue>
          ),
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>R.</given-names>
            <surname>Burke</surname>
          </string-name>
          .
          <article-title>Hybrid Recommender Systems: Survey and</article-title>
          <string-name>
            <given-names>Experiments. User</given-names>
            <surname>Modeling</surname>
          </string-name>
          and
          <string-name>
            <surname>User-Adapted</surname>
            <given-names>Interaction</given-names>
          </string-name>
          ,
          <volume>12</volume>
          (
          <issue>4</issue>
          ):
          <volume>331</volume>
          {
          <fpage>370</fpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>M. d'Aquin</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Baldassarre</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Gridinoc</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Angeletou</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Sabou</surname>
            , and
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Motta</surname>
          </string-name>
          .
          <article-title>Characterizing Knowledge on the Semantic Web with Watson</article-title>
          .
          <source>In Proceedings of the 5th International Workshop on Evaluation of Ontologies</source>
          and
          <article-title>Ontology-based Tools (EON2007), co-located with the ISWC2007</article-title>
          , pages
          <fpage>1</fpage>
          {
          <fpage>10</fpage>
          ,
          <string-name>
            <surname>Busan</surname>
          </string-name>
          , Korea,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>D.</given-names>
            <surname>Fensel</surname>
          </string-name>
          , F. van
          <string-name>
            <surname>Harmelen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Andersson</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Brennan</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Cunningham</surname>
            ,
            <given-names>E. Della</given-names>
          </string-name>
          <string-name>
            <surname>Valle</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Fischer</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          <string-name>
            <surname>Huang</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Kiryakov</surname>
          </string-name>
          ,
          <string-name>
            <surname>T.</surname>
          </string-name>
          Kyung-il
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>School</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Tresp</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Wesner</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Witbrock</surname>
            , and
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Zhong</surname>
          </string-name>
          .
          <article-title>Towards LarKC: a Platform for Web-scale Reasoning, 8</article-title>
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>P.</given-names>
            <surname>Heim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Hellmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Lehmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Lohmann</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Stegemann</surname>
          </string-name>
          .
          <article-title>RelFinder: Revealing Relationships in RDF Knowledge Bases</article-title>
          .
          <source>In Proceedings of the 4th International Conference on Semantic and Digital Media Technologies (SAMT</source>
          <year>2009</year>
          ), volume
          <volume>5887</volume>
          of Lecture Notes in Computer Science, pages
          <volume>182</volume>
          {
          <fpage>187</fpage>
          . Springer,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13. I. Horrocks,
          <string-name>
            <given-names>P. F.</given-names>
            <surname>Patel-Schneider</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Boley</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tabet</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Grosof</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Dean</surname>
          </string-name>
          .
          <article-title>SWRL: A Semantic Web Rule Language Combining OWL and RuleML</article-title>
          . Available at http://www.w3.org/Submission/SWRL/,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>D.</given-names>
            <surname>Kelly</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Teevan</surname>
          </string-name>
          .
          <article-title>Implicit feedback for inferring user preference: a bibliography</article-title>
          .
          <source>SIGIR Forum</source>
          ,
          <volume>37</volume>
          (
          <issue>2</issue>
          ):
          <volume>18</volume>
          {
          <fpage>28</fpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15. G. Klyne and
          <string-name>
            <given-names>J. J.</given-names>
            <surname>Carroll</surname>
          </string-name>
          .
          <article-title>Resource Description Framework (RDF): Concepts and Abstract Syntax { W3C Recommendation</article-title>
          . Available at http://www.w3.org/TR/rdf-concepts/,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>J. Lehmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>Schuppel, and</article-title>
          <string-name>
            <given-names>S.</given-names>
            <surname>Auer</surname>
          </string-name>
          .
          <article-title>Discovering Unknown Connections - the DBpedia Relationship Finder</article-title>
          .
          <source>In Proceedings of the 1st SABRE Conference on Social Semantic Web</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17. U. S. Manikrao and
          <string-name>
            <given-names>T. V.</given-names>
            <surname>Prabhakar</surname>
          </string-name>
          .
          <article-title>Dynamic Selection of Web Services with Recommendation System</article-title>
          .
          <source>In Proceedings of the International Conference on Next Generation Web Services Practices (NWESP '05)</source>
          , page 117, Washington, DC, USA,
          <year>2005</year>
          . IEEE Computer Society.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>D. L. McGuinness</surname>
            and
            <given-names>F. van Harmelen. OWL</given-names>
          </string-name>
          <string-name>
            <surname>Web Ontology Language Overview { W3C Recommendation</surname>
          </string-name>
          . Available at http://www.w3.org/TR/owl-features/,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>S. E.</given-names>
            <surname>Middleton</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Alani</surname>
          </string-name>
          , and D.
          <string-name>
            <surname>C. De Roure</surname>
          </string-name>
          .
          <article-title>Exploiting Synergy Between Ontologies and Recommender Systems</article-title>
          .
          <source>In Proceedings of the WWW2002 International Workshop on the Semantic Web</source>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>A.</given-names>
            <surname>Miles</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Bechhofer. SKOS Simple</surname>
          </string-name>
          <article-title>Knowledge Organization System Reference { W3C Recommendation</article-title>
          . Available at http://www.w3.org/TR/skosreference/,
          <year>August 18th</year>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <given-names>L.</given-names>
            <surname>Moreau</surname>
          </string-name>
          .
          <article-title>The foundations for provenance on the web</article-title>
          .
          <source>Foundations and Trends in Web Science</source>
          ,
          <year>November 2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22. E. Oren,
          <string-name>
            <given-names>R.</given-names>
            <surname>Delbru</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Catasta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Cyganiak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Stenzhorn</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Tummarello.</surname>
          </string-name>
          <article-title>Sindice.com: a document-oriented lookup index for open linked data</article-title>
          .
          <source>International Journal of Metadata, Semantics and Ontologies</source>
          ,
          <volume>3</volume>
          (
          <issue>1</issue>
          ):
          <volume>37</volume>
          {
          <fpage>52</fpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <given-names>A.</given-names>
            <surname>Passant</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Decker</surname>
          </string-name>
          . Hey!
          <article-title>Ho! Let's Go! Explanatory Music Recommendations with dbrec</article-title>
          .
          <source>In ESWC Part II</source>
          , pages
          <volume>411</volume>
          {
          <fpage>415</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <given-names>A.</given-names>
            <surname>Passant</surname>
          </string-name>
          and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Raimond</surname>
          </string-name>
          .
          <article-title>Combining Social Music and Semantic Web for MusicRelated Recommender Systems</article-title>
          .
          <source>In Proceedings of the 1st Workshop on Social Data on the Web (SDoW2008)</source>
          <article-title>, co-located with the ISWC2008</article-title>
          , Karlsruhe, Deutschland,
          <year>October 2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Pazzani</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Billsus</surname>
          </string-name>
          .
          <article-title>Content-Based Recommendation Systems</article-title>
          .
          <source>In The Adaptive Web</source>
          , pages
          <volume>325</volume>
          {
          <fpage>341</fpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26. E. Peis,
          <string-name>
            <surname>J. M. M. del Castillo</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Delgado-Lopez</surname>
          </string-name>
          .
          <article-title>Semantic Recommender Systems. Analysis of the state of the topic</article-title>
          .
          <source>Hipertext.net</source>
          , 6:online,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <given-names>M.</given-names>
            <surname>Rowe</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Ciravegna</surname>
          </string-name>
          . Getting to Me {
          <article-title>Exporting Semantic Social Network from Facebook</article-title>
          .
          <source>In Proceedings of the 1st Workshop on Social Data on the Web (SDoW2008)</source>
          ,
          <source>co-located with the ISWC2008</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>M. Sabou</surname>
            , M. d'Aquin,
            <given-names>and E.</given-names>
          </string-name>
          <string-name>
            <surname>Motta</surname>
          </string-name>
          . SCARLET:
          <article-title>SemantiC relAtion discoveRy by harvesting onLinE onTologies</article-title>
          .
          <source>In Proceedings of the 5th European Semantic Web Conference (ESWC2008)</source>
          , Tenerife, Spain,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <given-names>A.</given-names>
            <surname>Seaborne</surname>
          </string-name>
          and
          <string-name>
            <given-names>E.</given-names>
            <surname>Prud</surname>
          </string-name>
          <article-title>'hommeaux. SPARQL Query Language for RDF { W3C Recommendation</article-title>
          . Available at http://www.w3.org/TR/rdf-sparql-query/, January 15th,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <given-names>X.</given-names>
            <surname>Su</surname>
          </string-name>
          and
          <string-name>
            <given-names>T. M.</given-names>
            <surname>Khoshgoftaar</surname>
          </string-name>
          .
          <article-title>A Survey of Collaborative Filtering Techniques</article-title>
          .
          <source>Advances in Arti cial Intelligence</source>
          , vol.
          <source>2009(Article ID 421425)</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>M. Szomszor</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Cattuto</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Alani</surname>
          </string-name>
          ,
          <string-name>
            <surname>K. O'Hara</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Baldassarri</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Loreto</surname>
            , and
            <given-names>V. D.</given-names>
          </string-name>
          <string-name>
            <surname>Servedio</surname>
          </string-name>
          .
          <article-title>Folksonomies, the Semantic Web, and Movie Recommendation</article-title>
          .
          <source>In Bridging the Gap between Semantic Web and Web 2</source>
          .0 workshop, colocated with ESWC2007,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32.
          <string-name>
            <given-names>A.</given-names>
            <surname>Turati</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Cerizza</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Celino</surname>
          </string-name>
          , and
          <string-name>
            <given-names>E. Della</given-names>
            <surname>Valle</surname>
          </string-name>
          .
          <article-title>Analyzing User Actions within a Web 2.0 Portal to Improve a Collaborative Filtering Recommendation System</article-title>
          .
          <source>In Web Intelligence/IAT Workshops</source>
          , pages
          <volume>65</volume>
          {
          <fpage>68</fpage>
          . IEEE,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>