<!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>Semantic Social Collaborative Filtering with FOAFRealm</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sebastian Ryszard Kruk</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Stefan Decker</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Digital Enterprise Research Institute</institution>
          ,
          <addr-line>Galway</addr-line>
          ,
          <country country="IE">Ireland</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The most popular collaborative filtering implementations require either a critical mass of referenced resources and a lot of active users. Other solutions are based on finding a referral with an expertise on the given domain of discourse. In this article we present the semantic social collaborative filtering solution to information retrieval. We describe how the concept of users' managed collections can be exploited to provide collaborative filtering system based on social network maintained by the users themselves. We present FOAFRealm, a user profile management system based on the social networking and the FOAF metadata. FOAFRealm enables distributed collaboration between parties in the semantic social collaborative filtering way.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        The contemporary Internet contains a lot of information. In the unorganised
structure of the Web all the information that we are looking for seems to be
always just behind the corner. Though, still beyond our scope. And when we
fail to find that information, it turns to be useless. Search engines and online
catalogues tend to return a lot of resources as an answer to our queries. Very
often some of results are unrelated to given queries. No wonder, we end up
asking our friends and acquaintances for interesting references on the exact topic.
Collaborative filtering is an idea of automating the process of asking around when
looking for the information on the Internet[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        Since early implementations of collaborative filtering, like introduced in [
        <xref ref-type="bibr" rid="ref4">2</xref>
        ],
a number of methods have been developed for the ”collaborative filtering” and
”social filtering” [
        <xref ref-type="bibr" rid="ref4 ref5 ref6">2–4</xref>
        ]
Contributions The paper makes the following contribution to the field of
collaborative filtering and user profile management systems:
? This material is based upon works supported by the Science
Foundation Ireland under Grant No. SFI/02/CE1/I131. Authors thank all members
of the JeromeDL (cf. http://www.jeromedl.org/) and the FOAFRealm (cf.
http://www.foafrealm.org/) working groups for fruitful discussions on this
document.
– We introduce a new approach to collaborative filtering - the semantic social
collaborative filtering that covers both active and passive types and solves
additionally some privacy/security issues.
– The reference implementation library (FOAFRealm), can be embedded into
of web applications, providing additionally unified, distributed users
management system based on FOAF.
– Our solution introduces goals like: distributed user profile management,
privacy of the profile information, security of the provided knowledge, utilisation
of social networks.
      </p>
      <p>Outline of the paper The next section describes the architecture of the
semantic social collaborative filtering in the context of other similar solutions. In
section 3 we present the evaluation of the underlying model of social
interactions in the semantic social collaborative filtering. We describe in section 4, the
FOAFRealm system that implements a distributed user profile management
system and delivers semantic social collaborative filtering features. Later, we discuss
the relations between social collaborative filtering and digital library systems.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Semantic Social Collaborative Filtering</title>
      <p>The semantic social collaborative filtering presented in this article is based on
two concepts: distributed collections and annotations of resources. Each user
classifies only a small subset of the knowledge, based on the level of expertise
he/she has on the specific topic. This knowledge is later shared across the social
network.
2.1</p>
      <sec id="sec-2-1">
        <title>How does Social Collaboration Work</title>
        <p>The problem that there is a trade-off between accuracy and scalability is often
found in search engine applications. The information gathered in online
collections is very precise, as the human factor is involved in the indexing process.
But since the Internet is growing so fast, the process of creating the catalogue
does not scale. On the other hand, search engines do the indexing work without
involving the human activity. And results of queries are not always satisfiable.</p>
        <p>
          A social network is a set of people or group of people, with some pattern
of interactions or ”ties” between them[
          <xref ref-type="bibr" rid="ref10 ref2 ref3 ref7 ref8 ref9">5–8</xref>
          ]. A social network is modeled by
a digraph where the nodes represent individuals, and a directed edge between
nodes indicates direct relationship between two individuals.
        </p>
        <p>It is possible to construct a subgraph, on top of a social network, that
represents flow of expertise in the certain domain. The idea of the semantic social
collaborative filtering is based on this observation. Each person in the social
network gathers the interesting information in collections he/she has created.
Collections maintained by other people can be easily linked into own collections
created by the user. As we show later (see section 3) the information
disseminated through the collections linking across the social network corresponds to
the expertise level on particular subject in the social network.</p>
        <p>Distributed collections. The
information is gathered in
colletions by a number of people.</p>
        <p>Each of them handles specific
domains of discourse within the
colletions information space he/she
has created. The quality of the
information gathered across the
colletions can be satisfied by
approving the expertise in given domain
of discourse.</p>
        <p>
          Each user maintains his own
collections (private bookshelf [
          <xref ref-type="bibr" rid="ref11">9</xref>
          ])
and renders them accessible to
his/her friends [
          <xref ref-type="bibr" rid="ref12">10</xref>
          ]. We can as- Fig. 1. The scenario of a simple semantic
sume that some of topics are bet- social collaborative filtering model
ter explored by some people. Each
collection has a quality level
assigned to it, based on the expertise the owner has on the related topic. Each
user is also aware of the expertise level of other people on given topics.
Resources annotations. Apart from managing collections by providing the
categorisation description of resources, the semantic social collaborating filtering
utilises comments and annotations provided by the users. The annotations are
represented as fora with some additional semantic content. Annotations can
be used by other people as a shorthand to quickly explore: (1) the content or
meaning of the resource; (2) the context of resources; (3) the general opinion of
other users.
2.2
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Semantic Social Collaborative Filtering Scenario</title>
        <p>In our example scenario, Alice writes a thesis on ”Mediation in Bibliographic
Ontologies”. She registers to the digital library run by the University. She
discovers that some of her friends are already registered to the library as well. With
features based on online communities, she connects her profile to her friends
profiles. Later on, Alice starts to gather the information required for her thesis topic.
She keeps links to resources she has found in collections managed by the online
bookmarks system. Soon she discovers that resources that she has bookmarked
do not cover the topic of the thesis at satisfiable level. The following sections
describe different algorithms Alice uses to find the desired information with the
help of the semantic social collaborative filtering.</p>
        <p>Simple Social Collaborative Filtering To find the desired information Alice
sings up to the university digital library. The system used by the library is based
on the simple semantic social collaborative filtering implementation (see Fig. 1).
Alice uses the searching features provided by the digital library web application
(see Fig. 2(a)) to find interesting resources.</p>
        <p>We introduce a solution to the problem stated in previous section (see 2.2) –
a simple semantic social collaborative filtering model (see Fig. 2(b)). Each
collection is categorised by the owner. Collaborative filtering feature in the digital
library lists all the collections, within the given range of friendship
neighbourhood, with topics related to the ones defined by Alice. Each collection has a
quality level assigned to it. The quality of the collection corresponds to the
expertise level of the owner on related topic. The expertise level can be computed
with PageRank algorithm applied to graphs of collections inclusions and social
network. Both graphs represents the rank value each person and each collection
receives from other people. The rank values are assigned directly (by people to
people) and indirectly (by including someone’s collection to own collection).</p>
        <p>Alice finds out that one of her friends, Caroline, gathers the information
about digital libraries and her expertise level on that topic is very high. Though
her direct friend Bob is interested in Artificial Intelligence, she finally decides
to link resources provided by Eric, who has a highly ranked ”Semantic Web”
collection. From now on, Alice takes the advantage of the information gathered
by Caroline and Eric in their collections.</p>
        <p>Secured Semantic Social Collaborative Filtering Alice is still looking for
more information required for her thesis. She decides to register in an open,
hererogenous digital library. Some people protect their collections with access
control restrictions (see Fig.3). The restrictions applied on the collection are
based on maximal distance and minimal trust level between two people in the
social network graph. Apart from defining friendship relations, users express the
quality (trust level) of every outgoing social connection.</p>
        <p>Since not all information should be accessible by everyone, some of it need to
be protected from people from the outside of the given community. This is why
access control lists (ACL) have been introduced (see Fig.4(a)). In the semantic
social collaborative filtering environment based on ACL each collection has its
own ACL, that defines the maximal distace and minimal friendship quantisation
level from the specific person1 to the person willing to access that collection.
Only when this is satisfied the user can access and include this collection in
his/her collections.</p>
        <p>Alice wants to make use of the knowledge provided by Damian. But the
algorithm for retrieving a list of collections in the secured environment (see
Fig.4(b)) omitted some of collections. With ACL applied Alice is out of the
range defined in Damian’s ACL constrains. The collection managed by Damian
is not presented to her.
1 please note that it does not have to be an owner of the collection, thought the owner
is the one that manages ACL
procedure ListCollectionsSM (p,t) : collections[]
for p0 ∈ P with PeerDistance(p,p0) &lt; knowsRange
C0 ← C0 S PeerCollection(p0)
end for
sort C0 according to FinalRankingSM
end procedure</p>
        <p>(a) Algorithm retrieving list of collections
P is a set of peers
C is a set of collections
F oaf Knows is a set of directed connections between peers
Gpeers(P, F oaf Knows) is a digraph of friendship relations
T is a lattice of categorisation topics
We assume that each collection c ∈ C has exactly one owner p ∈ P .</p>
        <p>
          PeerCollection: P → 2C – returns all collections owned by the peer
OwnedBy: C → P – returns the owner of the collection
Expertise: (P, C) → [
          <xref ref-type="bibr" rid="ref1">0, 1</xref>
          ] – computes the quality of the collection based on the peer’s
expertise on related topic
Categorisation: C → T – returns the list of topic describing collection
PeerDistance: (P, P ) → N – computes distance between two peers in the social
network graph using Dijkstra algorithm
Similarity: (T, T ) → [
          <xref ref-type="bibr" rid="ref1">0, 1</xref>
          ] – computes similarity level between two topics
FinalRankingSM : (PeerDistance,Similarity,Expertise) → [
          <xref ref-type="bibr" rid="ref1">0, 1</xref>
          ] – computes ranking
value for a collection based on distance to the owner, similarity level and quality
measure
knowsRange – defines a maximal distance between two people when traversing the
graph of friendship relations.
        </p>
        <p>
          (b) Definition of model
The main bottleneck of existing passive collaborative filtering systems is the
process of gathering users’ preferences[
          <xref ref-type="bibr" rid="ref6">4</xref>
          ]. A reliable system requires a very large
number of people to express their opinion about a large number of topics. This
requires from users to either fill out a survey or perform some activities (like e.g.
buying a product, reading a book) over a certain time.
        </p>
        <p>Active collaborative filtering solutions depends on maintaining the social
network by users themselves. Outdated information on list of friends can mislead
the person in his quest for an answer.</p>
        <p>Backward Referral Chaining Maintaining a list of friends, posting a
question and gathering the answers may be time consuming. That is why the social
collaborative filtering (a new approach to active collaborative filtering) tends to
ease some hardships by introducing the concept of backward referral chaining,
reusing existing classification schemata and extrapolating user’s profile
information with interests of his friends.</p>
        <p>Usually, a user is not aware of the whole social network. To gather the
knowledge outside of his direct friendship neighbourhood the user has to rely on
references provided by his friends. Because the expert in the specific domain can
be quite distant from the user, in terms of relationship links, the access to the
answer provided dependents on the path to an expert. As it has been introduced
in 2.2, an expert can restrict the access to some parts of information by applying
access control lists.</p>
        <p>
          The referral chaining[
          <xref ref-type="bibr" rid="ref13">11</xref>
          ] has two strong dependencies: accuracy of finding the
right path to an expert, and responsiveness factor of the found expert. The
backward referral chaining introduced in the social collaborative filtering inverses the
process of finding an expert. The answers provided by different people (including
experts) are being assembled into hierarchical knowledge base. Users link into
their collections, information provided by some other people. In many cases, the
expertise of the latter, on given topic is higher.
        </p>
        <p>Connection to the established classification schemata. In social
collaborative filtering each person can create own categories according to the local
understanding of the world. The definition of the category might be hard to
understand to other peers because of the use of ambiguous descriptions or an
native language.</p>
        <p>
          We propose to apply additional semantically reach description based on
existing thesauri or classification ontologies, like WordNet[
          <xref ref-type="bibr" rid="ref14">12</xref>
          ] or Dewey Decimal
Classification[
          <xref ref-type="bibr" rid="ref11 ref15">13, 9</xref>
          ]. This description can help to understand the meaning of the
category both to people and machines. The latter can then utilise this knowledge
in e.g. recommending related categories created by other peers.
        </p>
        <p>
          ACLP D is an access control constrains, defining maximal distance D (in number of
’hops’) from user P
ACLF Q is an access control constrains, defining minimal F riendshipQuantization
value (calculated across the graph) from user P
DistanceACL: (C) → 2ACLPD – defines a list of allowed maximal distances to the user
QuantizationACL: (C) → 2ACLFQ – defines a list of allowed minimal
F riendshipQuantization values
Peer: (ACL) → P – returns a peer from which the computation of ACL dinstance/level
is do be performed
Distance: (ACLP D) → N – returns the maximal distance defined in ACL
Quantisation: (ACLF Q) → [
          <xref ref-type="bibr" rid="ref1">0, 1</xref>
          ] – returns the minimal F riendshipQuantization
level
        </p>
        <p>
          (a) Definition of model
procedure ListCollectionsACL(p,t) : collections[]
cp ← PeerCollection(p)
for p0 ∈ P with PeerDistance(p,p0) &lt; knowsRange
Extrapolated user’s profile. When information about user’s activities
(personal bookshelf, resources’ annotations) is gathered for a longer time it can be
re-used during the search process. The query expansion process[
          <xref ref-type="bibr" rid="ref11">9</xref>
          ] takes into
account semantically rich descriptions of users’ preferences reflecting their
activities. The result set becomes more user oriented than with a generic search.
        </p>
        <p>New users registered to the system very often suffer from lack of rich profile
information. This may have a strong influence on the quality of search results.
To overcome this problem then social collaborative filtering paradigm introduces
the concept of an extrapolated user’s profile. The profile of the new user can
be represented with some probability depending on trust level (see 2.4) as a
combination of profiles of his/her friends.
Collaborative filtering implementations suffer in most cases from very weak
security features or frequent privacy abuse. The information about the user in
passive collaborative filtering systems is very often gathered without his
knowledge. In the active collaborative filtering the user very often has no chance to
protect himself from gathering information about him.</p>
        <p>To implement the security and privacy features the concept of digraph of
interpersonal connections have been utilised. Each user defines a list of his friends
and states the level of trust to each of them. The user can then define the maximal
distance and minimal trust level required from the person which wants to view
information gathered in specific category.</p>
        <p>As all the information about the user is provided by himself and he/she
manages the access control lists for each piece of information, the privacy of the
user is preserved.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Evaluation of Semantic Social Collaborative Filtering</title>
      <p>Semantic social collaborative filtering utilises existing social networks instead of
creating artificial connections between people. That is why on the contrary to
other collaboration filtering solution, there is no need to evaluate an algorithm
for creating a social network, as the social network is given explicitly.</p>
      <p>On the other hand, since the semantic social collaborative filtering is based
on friendship connections, the actual similarities of interests between connected
users might differ. That is why, the evaluation of this collaborative filtering
approach should prove that the dissemination of knowledge is possible within
graph of semantically annotated friendship connections.</p>
      <p>Simulation model In this section we present the implementation of the simple
semantic social collaborative filtering model. We prove that average level of
expertise in the subgraph of social network is almost maximal within 6 degrees
of separation.</p>
      <p>
        The definition of a simulation model has been based on similar ideas defined
in Refferal Web project[
        <xref ref-type="bibr" rid="ref13">11</xref>
        ]. The main difference between social semantic
collaborative filtering and the Refferal Web is that in the Refferal Web project, the
process of finding an expert on certain topic is performed manually by the user.
In semantic social collaborative filtering, semantical annotation on the
knowledge provided in the social network is used to automate the process of finding
the high quality of information. The simulation model itself might be similar to
the one presented in [
        <xref ref-type="bibr" rid="ref13">11</xref>
        ], so we just need prove that it is possible to find an
expert on the given maximal degree of separation.
      </p>
      <p>Underlying assumptions. In the model of social network for the semantic
social collaborative filtering, each user manages collections with information on
selected topic. The different users represent different expertise on the given topic.
We assume that:
– The quality of the information provided by a user on a certain collection is
proportional to the expertise level of the user on the topic of collection.
– It is possible to find a user with a high expertise on given topic within the
network of social connections.</p>
      <p>According to simple social collaborative filtering model (see Fig. 2(b)) the
simulation environment is modeled by a set of users and a set of collections
managed by those users. There is exactly one user that owns each collection.
On the base of the user’s expertise on related topic the quality of the collection
is defined. Each user has a predefined set of other users he knows (this relation
should not be considered as implicitly symmetric).</p>
      <p>
        Although according to the Small World Phenomena[
        <xref ref-type="bibr" rid="ref16 ref17">14, 15</xref>
        ] the distribution of
the degree of the friendship connections is power-law based (Zipf’s distribution,
see Eq. 1) we have decided to perform second set of experiments where the
degree of friendship connections is a bell-curve shaped (normal random variable
see Eq. 2).
      </p>
      <p>O(i) =</p>
      <p>n
iθHθ(V )
, Hθ(V ) = XV i1θ</p>
      <p>i=1
f (x) = √
1
2πσ2</p>
      <p>(x−μ)2
e− 2σ2
(1)
(2)</p>
      <p>
        The distribution of expertise on a certain topic within the social network
can be based on the Lotka’s Law[
        <xref ref-type="bibr" rid="ref18">16</xref>
        ], stating that the number of authors making
n contributions is about n1a of those making one contribution, where a is often
nearly 2. Since the expertise on a certain topic is proportional to the number of
high quality of publications, the probability of the level of expertise (the level
of expertise over the number of users that have one) is Zipfian shaped as well.
Each collection has a quality value assigned to it that represents the expertise
the owner has on the related topic.
      </p>
      <p>In order to make sure that there would be at least one absolute (Expertise(T )
= 1) expert in each topic T , we have normalised the associated expertise values
dividing each but the value of the highest expertise in each topic.</p>
      <p>
        The list of topics used to describe content of collection has been based on
Dewey Decimal Classification[
        <xref ref-type="bibr" rid="ref15">13</xref>
        ]. This simplifies the computability of the model
in the sense of comparison similarity between topics. Each category has a
threedigit number (100 - 999) associated. Categories are structured as a three level
tree. Although in the real world implementation categories are described
additionally with WordNet words vectors, DDC seems to be enough for the modeling
purpose.
procedure AverageMaximalExpertise(R) : Em¯ax(R)
for p0 ∈ P with
select t ∈ Tp find c that
t =Categorisation(c)
PeerDistance(p, Owner(c)) &lt; R
e =Expertize(Owner(c), c) is maximal
      </p>
      <p>AverageMaximalExpertise + = NeP
end procedure
Definition of the experiment. During the experiment each user (p ∈ P ,
sizeOf(P ) = NP ) tries to find in the social network within a given range R,
the collection that provides the information on the topic t ∈ Tp. The topic is
randomly selected from the list of topics associated to collections owned by the
user. The average value of the highest expertise E¯max(R) level found within
given range is computed (see Fig.5).</p>
      <p>We have performed four experiments. Each time the social network model
consited of NP = 1000 users.</p>
      <p>Each user in our social collaborative filtering environment had only one
collection associated. This simplification is correct since during the experiment we
are looking only for collections with exactly the same topic as selected. So
collections associated with each topic creates a subgraph that is independent of the
actual number of collections owned by each user.</p>
      <p>
        The expertise level for each collection has been randomly selected according
to power law distribution. In the first two experiments the degree of
friendship connections has been randomly selected according to normal distribution
(μ =25, σ =12.5). In the last two experiments the power law distribution
(θ =1.9) has been applied. During each experiment average maximal expertise
values E¯max(R) has been calculated for maximal degree of separation R ∈ [
        <xref ref-type="bibr" rid="ref1 ref10 ref3">1, 8</xref>
        ].
Results of simulation. Table 1 presents results of all four experiments.
      </p>
      <p>It is interesting that even for the power law based distribution user is able
to find information with almost the highest possible quality within 6 degrees of
separation (see Fig.6).</p>
    </sec>
    <sec id="sec-4">
      <title>FOAFRealm - the Reference Implementation of</title>
    </sec>
    <sec id="sec-5">
      <title>Semantic Social Collaborative Filtering</title>
      <p>
        The FOAFRealm is a library for distributed users management based on the
FOAF vocabulary. It enables users to control their profile information, as the
information can be accessed in the open FOAF format. Users can sign-in
automatically across the P2P network (called D-FOAF2) of FOAFRealm enabled
systems[
        <xref ref-type="bibr" rid="ref19">17</xref>
        ].
      </p>
      <p>FOAFRealm provides a basic implementation of the semantic social
collaborative filtering concept. The knowledge (annotations and private collections) can
be shared among registered users. Security constraints can be applied to each
piece of information separately.</p>
      <p>The current implementation of FOAFRealm consists of four layers:</p>
      <sec id="sec-5-1">
        <title>2 D-FOAF project: http://d-foaf.foafrealm.org/</title>
        <p>– The distributed communication layer providing access to highly scalable
HyperCuP3 P2P infrastructure to communicate and share the information with
other FOAFRealm implementations..
– FOAF and collaborative filtering ontology management. It wraps the actual
RDF storage being used from the upper layers providing simple access to the
semantic information. The Dijkstra algorithm for calculating distance and
friendship quantisation is implemented in that layer.
– Implementation of the org.apache.catalina.{Realm,Valve} interfaces to
easily plug-in the FOAFRealm in to Tomcat-based web applications. It
provides authentication features including autologin based on Cookies.
– A set of Java classes, Tagfiles and JSP files plus list of guidelines that can
be used while developing user interface in own web applications.</p>
        <p>The library has been successfully deployed as a user management system in
JeromeDL - e-Library with Semantics4. It is used to handle private bookshelves
of readers, and provides additional semantical annotations to the resources. The
concept of extrapolated user profile has been adapted in the semantically
enhanced search engine in JeromeDL. So that even new users to the system can
benefit from the full-fledged semantic search process.</p>
        <p>The FOAFRealm system has also become a part of MarcOnt Initiative5
collaboration portal for ontologies management based on negotiations. The portal
will utilise social networks based features of FOAFRealm to:
– isolate outside world from the ontology management community. The
registered users will be allowed to take part of the ontology management process
when they will be defined as a friend of at least on of the community
members.
– differentiate evaluations of ontology changes suggestions provided by different
members of the community. We will explore if evaluations provided by close
friends of the person that posted the suggestion should be ranked lower
than evaluations provided by people with higher degree of separation from
the suggestion owner.
5</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Related work</title>
      <p>Collaborative filtering. The most popular types of the collaborative filtering
systems are Active Collaborative Filtering and Passive Collaborative Filtering.
The distinction between those is based on the activeness of the user that receives
information. With passive collaborative filtering, the information about the user,
such as: mailing-lists posts, links on home pages, citations in publications and
co-authors of articles, is utilised. Since the user does not actively take part in
maintaining his network of friends, he has no direct impact on information he/she
receives.
3 Lightweight HyperCuP Implementation project: http://www.hypercup.org/
4 JeromeDL - e-Library with Semantics: http://www.jeromedl.org/
5 MarcOnt Initiative: http://www.marcont.org/</p>
      <p>Active collaborative filtering implements two models of information retrieval:
user pull model - where a user generates a query to the network of other users,
and user push model - where the answers on previously stated questions or
information filters, are feed to the user.</p>
      <p>
        Though by shifting from central (a search engine) to a distributed method of
recommendation the problem tends to be more manageable, particular
collaboration filtering implementations suffer various difficulties: (1) ”heterophilous
diffusion” (exchange information across different socio-economic groups) is
neglected in favour to ”homophilous diffusion” (exchange of information within
socio-economic groups); (2) security and privacy issues are weakly supported;
(3) meaning (semantics) of shared concepts are lost; (4) when the network of
friends is created automatically by harvesting various databases with advance
algorithms: the ”critical mass” of registered users is required to provide
satisfiable level of correlation to user’s interests; it is impossible to create a digraph of
social connection from most of commonly used sources; privacy of individuals is
violated; monopolies are supported[
        <xref ref-type="bibr" rid="ref20">18</xref>
        ] because a service provider has to gather
a lot of information to become accurate (”critical mass”); (5) when the user
actively uses fora or mailing-lists: (i) there is no guarantee that there will be
an answer to the posted question, or that the answer will be through; (ii) there
might be no expert on the specific field of discourse in the ”direct friendship
neighbourhood” of the user; (6) some systems requires from users to answer
long questionnaires [
        <xref ref-type="bibr" rid="ref6">4</xref>
        ] in order to find similarities in users’ interests.
      </p>
      <p>
        Hybrid filtering[
        <xref ref-type="bibr" rid="ref21">19</xref>
        ], the combination of content filtering and social filtering,
is used to maximise precision with a recall still above specified limit.
      </p>
      <p>
        Active collaborative filtering solutions concentrate on utilising the existing
social connections provided explicitly. One of the approaches [
        <xref ref-type="bibr" rid="ref12">10</xref>
        ] is build on the
the common practise where people tell their friends or colleagues of interesting
documents. Users collect bookmarks on the interesting World Wide Web pages
that they have found. [
        <xref ref-type="bibr" rid="ref22">20</xref>
        ] describes a social collaborative filtering system where
users have direct impact on filtering process. The changes in the users interests
are exploited to provide thorough relevance feedback to the system..
      </p>
      <p>
        To format and distribute collections of bookmarks several simple system have
been developed. With Simon system [
        <xref ref-type="bibr" rid="ref23">21</xref>
        ] users can create ”subject spaces” which
are lists of hypertext links to the WWW pages with annotations on them. One
of other possible solutions is to find a personal referral that can answer the given
query. The network of relationships can also help in exploring the hidden web,
the part of the Internet that is not indexed by search engines [
        <xref ref-type="bibr" rid="ref13">11</xref>
        ], as some of
the information is deliberately not accessible outside the intranets [
        <xref ref-type="bibr" rid="ref12 ref24">10, 22</xref>
        ].
Online social communities are the underlying key concept of the semantic
social collaborative filtering presented in this article. In the last few years this
field has been widely explored by several implementations.
      </p>
      <p>Some of them, like Orkut6 provides forum-like channels of dissemination
of knowledge, where community members can ask questions to their friends</p>
      <sec id="sec-6-1">
        <title>6 Orkut online community portal: http://www.orkut.com/</title>
        <p>
          or other members of specific thematic group. In the Semantic Web field the
FOAF (a vocabulary for RDF [
          <xref ref-type="bibr" rid="ref25">23</xref>
          ]) format has been introduced to describe the
interpersonal connections.
        </p>
        <p>User Profile Management The existing implementations of user profile
management lack: (i) fine granularity of security constraints; (ii) scalability; (iii)
openness/privacy. Both of which play important roles in semantic social
collaborative filtering.</p>
        <p>
          One of the features that is becoming more and more important in social P2P
environment is single-sign-on[
          <xref ref-type="bibr" rid="ref26">24</xref>
          ]. Each time a user uses a new web system, he
would rather not provide all the same information about himself over and over
again. Solutions like Microsoft Passport7 or Sxip8 provide such features.
6
        </p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Future Work and Conclusions</title>
      <p>The semantic social collaborative filtering presented in the article opens new
possibilities of exchanging and managing knowledge. Users can share their
bookmarks (collections and their content) with their friends. Everyone can organise
the knowledge by gathering collections that other people are maintaining. Since
collections can be linked it is possible to find more relevant information in
categories provided by some distant people. Annotations are also a key part of the
semantic social collaborative filtering. Together with private collections (private
bookshelves) they are utilised in the semantically enhanced information retrieval
in systems like digital libraries.</p>
      <p>FOAFRealm is a reference implementation of the semantic social
collaborative filtering. It refers to social networks and open standards like FOAF.
FOAFRealm provides support for J2EE based web applications for quick extending
their features with user management and social collaborative filtering. Since the
social network is represented as a digraph, FOAFRealm utilises informations
about distance between two people and the trust level, to provide the security
and privacy features.</p>
      <p>Current implementation of FOAFRealm, D-FOAF, provides a distributed
user profile management system and hence, the social semantic collaborative
filtering across different systems. The future step, DigiMe, will deliver this features
to mobile devices and will explore the ad-hoc social networks paradigm.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Goldberg</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nichols</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oki</surname>
            ,
            <given-names>B.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Terry</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Using collaborative filtering to weave an information tapestry</article-title>
          .
          <source>Commun. ACM</source>
          <volume>35</volume>
          (
          <year>1992</year>
          )
          <fpage>61</fpage>
          -
          <lpage>70</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>7 Microsoft Passport: http://www.passport.net/</mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>8 SXIP - Passport/Liberty done right: http://www.sxip.com/</mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          2.
          <string-name>
            <surname>Resnick</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Iacovou</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Suchak</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bergstorm</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riedl</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>GroupLens: An Open Architecture for Collaborative Filtering of Netnews</article-title>
          .
          <source>In: Proceedings of ACM 1994 Conference on Computer Supported Cooperative Work</source>
          , Chapel Hill, North Carolina, ACM (
          <year>1994</year>
          )
          <fpage>175</fpage>
          -
          <lpage>186</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          3.
          <string-name>
            <surname>Breese</surname>
            ,
            <given-names>J.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heckerman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kadie</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Empirical Analysis of Predictive Algorithms for Collaborative Filtering</article-title>
          . (
          <year>1995</year>
          )
          <fpage>43</fpage>
          -
          <lpage>52</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          4.
          <string-name>
            <surname>Shardanand</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maes</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          : Social Information Filtering:
          <article-title>Algorithms for Automating “Word of Mouth”</article-title>
          .
          <source>In: Proceedings of ACM CHI'95 Conference on Human Factors in Computing Systems. Volume</source>
          <volume>1</volume>
          . (
          <year>1995</year>
          )
          <fpage>210</fpage>
          -
          <lpage>217</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          5.
          <string-name>
            <surname>Trevor</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hilbert</surname>
            ,
            <given-names>D.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Billsus</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vaughan</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tran</surname>
            ,
            <given-names>Q.T.</given-names>
          </string-name>
          :
          <article-title>Contextual Contact Retrieval (</article-title>
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          6.
          <string-name>
            <surname>Fukui</surname>
            ,
            <given-names>H.O.:</given-names>
          </string-name>
          <article-title>SocialPathFinder: Computer Supported Exploration of Social Networks on WWW (</article-title>
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          7.
          <string-name>
            <surname>Newman</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Watts</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Strogatz</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Random graph models of social networks</article-title>
          .
          <source>In: Proc. Natl. Acad. Sci</source>
          ., to appear. (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          8.
          <string-name>
            <surname>Hoadley</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pea</surname>
          </string-name>
          , R.:
          <article-title>Finding the ties that bind: Tools in support of a knowledgebuilding community (</article-title>
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          9.
          <string-name>
            <surname>Kruk</surname>
            ,
            <given-names>S.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Decker</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zieborak</surname>
          </string-name>
          , L.:
          <article-title>JeromeDL - Reconnecting Digital Libraries and the Semantic Web</article-title>
          . In: DEXA'
          <year>2005</year>
          . (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          10.
          <string-name>
            <surname>Maltz</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ehrlich</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Pointing the way: active collaborative filtering</article-title>
          .
          <source>In: Proceedings of the Conference on Computer-Human Interaction</source>
          . (
          <year>1995</year>
          )
          <fpage>202</fpage>
          -
          <lpage>209</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          11.
          <string-name>
            <surname>Kautz</surname>
            ,
            <given-names>H.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Selman</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shah</surname>
            ,
            <given-names>M.A.</given-names>
          </string-name>
          :
          <article-title>The Hidden Web</article-title>
          .
          <source>AI Magazine</source>
          <volume>18</volume>
          (
          <year>1997</year>
          )
          <fpage>27</fpage>
          -
          <lpage>36</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          12.
          <string-name>
            <surname>Fellbaum</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <string-name>
            <surname>WordNet An Electronic Lexical Database</surname>
          </string-name>
          (
          <year>1998</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          13.
          <string-name>
            <surname>Dewey</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A Classification and Subject Index for Cataloguing and Arranging the Books and Pamphlets of a Library - Dewey Decimal Classification</article-title>
          . guternberg.net, http://www.gutenberg.net/catalog/world/ readfile?fk files=
          <volume>59063</volume>
          (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          14.
          <string-name>
            <surname>Milgram</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>The small world problem</article-title>
          .
          <source>Psychology Today</source>
          <volume>67</volume>
          (
          <year>1967</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          15.
          <string-name>
            <surname>Barabasi</surname>
            ,
            <given-names>A.L.</given-names>
          </string-name>
          :
          <article-title>Linked: The new science od Networks</article-title>
          . Cambridge Perseus Press (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          16.
          <string-name>
            <surname>Lotka</surname>
            ,
            <given-names>A.J.:</given-names>
          </string-name>
          <article-title>The Frequency Distribution of Scientific Productivity</article-title>
          .
          <source>Journal of the Washington Academy of Sciences</source>
          <volume>16</volume>
          (
          <year>1926</year>
          )
          <fpage>317</fpage>
          -
          <lpage>323</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          17.
          <string-name>
            <surname>Grzonkowski</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gzella</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krawczyk</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kruk</surname>
            ,
            <given-names>S.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moyano</surname>
            ,
            <given-names>F.J.M.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Woroniecki</surname>
          </string-name>
          , T.:
          <article-title>D-FOAF - Security Aspects in Distributed User Managment System. (In: TEHOSS'</article-title>
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          18.
          <string-name>
            <surname>Techniques</surname>
            ,
            <given-names>R.P.</given-names>
          </string-name>
          :
          <article-title>Privacy-Preserving Collaborative Filtering using (</article-title>
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          19.
          <string-name>
            <surname>Basu</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hirsh</surname>
          </string-name>
          , H.,
          <string-name>
            <surname>Cohen</surname>
            ,
            <given-names>W.W.</given-names>
          </string-name>
          :
          <article-title>Recommendation as Classification: Using Social and Content-Based Information in Recommendation</article-title>
          . In: AAAI/IAAI. (
          <year>1998</year>
          )
          <fpage>714</fpage>
          -
          <lpage>720</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          20.
          <string-name>
            <surname>Sugiyama</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hatano</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yoshikawa</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Adaptive web search based on user profile constructed without any effort from users</article-title>
          .
          <source>In: WWW '04: Proceedings of the 13th international conference on World Wide Web</source>
          , New York, NY, USA, ACM Press (
          <year>2004</year>
          )
          <fpage>675</fpage>
          -
          <lpage>684</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          21.
          <string-name>
            <surname>Simons</surname>
          </string-name>
          , J.:
          <article-title>Using a Semantic User Model to Filter the ”</article-title>
          <source>World Wide Web” Proactively</source>
          . (
          <year>1995</year>
          )
          <fpage>455</fpage>
          -
          <lpage>456</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          22.
          <string-name>
            <surname>Kautz</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Selman</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shah</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          : Referral Web:
          <article-title>Combining Social Networks and Collaborative Filtering</article-title>
          .
          <source>Communications of the ACM</source>
          <volume>40</volume>
          (
          <year>1997</year>
          )
          <fpage>63</fpage>
          -
          <lpage>65</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          23. http://www.w3.org/TR/rdf: Resource Description Framework (RDF).
          <source>W3C Recommendation</source>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          24.
          <string-name>
            <surname>Pearlman</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Welch</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Foster</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kesselman</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tuecke</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>A Community Authorization Service for Group Collaboration (</article-title>
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>