FOAFRealm: Making Social Collaborative Filtering ... - Semantic Scholar

1 downloads 1469 Views 921KB Size Report
laborative filtering require either a critical mass of referenced resources ... the information about a user, such as: (i) mailing-lists posts, (ii) links on home pages ...
FOAFRealm: Making Social Collaborative Filtering Real Sebastian Ryszard Kruk, Stefan Decker Digital Enterprise Research Institute, Galway @deri.org, http://www.deri.org

Abstract. In the last couple of years several methods have been developed for ”collaborative filtering”. The most popular approaches to collaborative filtering require either a critical mass of referenced resources or finding a referral with expertise in the field of discourse. In the article we present FOAFRealm, user management library based on social networking and FOAF metadata. FOAFRealm enables distributed collaboration between parties in different peer-systems. We describe how the ”private catalog” concept can be exploited to provide ”social collaborative filtering” based on decentralized friendship definitions database maintained by the users themselves.

1

Introduction

One might say the knowledge is power. From history we have learned that many emperors have chosen to bereave their subjects of sources of information. In the modern world where the ruling power is mass-media[1], none can say that he lacks information. Though it is easy to see that most of us lacks the knowledge. All information that is at the reach of the hand seems to be useless as it is unorganized. Search engines and on-line catalogs tend to return a lot of resources, most of them are unrelated to the given query, so they are of a little help. That is why very often when we look for information we end up asking around our friends and acquaintances. Collaborative filtering is the idea of automating the process of asking around when looking for information on Fig. 1. Types of Collaborative Filtering the Internet. Since early implementations of collaborative filtering, like introduced in [2], a number of methods have been developed for the ”collaborative

filtering” or ”social filtering” [2–4] The relation between various implementations of collaborative filtering presented in Figure 1. The most popular major types of the collaborative filtering are Active Collaborative Filtering and Passive Collaborative Filtering. The distinction is based on the activeness of the user that receives information based on collaborative filtering. In active collaborative filtering, the user takes active part in creating a network of friendship connections. The passive collaborative filtering, very often known as Automated Collaborative Filtering features creating and maintaining the network of friends for each user. With automated collaborative filtering, the information about a user, such as: (i) mailing-lists posts, (ii) links on home pages, (iii) citations in publications, (iv) co-authors of articles is utilized. Because a user does not actively take part in maintaining his network of friends, he has no direct impact on information he receives. Active collaborative filtering implements two models of information retrieval: (i) user pull model - where a user generates a query to the network of other users, and (ii) user push model - where the answers on previously stated questions or information filters, are feed to the user. 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 favor 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: (i) the ”critical mass” of registered users is required to provide satisfiable level of correlation to user’s interests; (ii) it is impossible to create a digraph of social connection from most of commonly used sources; (iii) privacy of individuals is violated; (iv) monopolies are supported[5] 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 neighborhood” of the user. To overcome presented drawbacks, we propose social collaborative filtering that covers both major types of collaborative filtering. It provides distributed catalog maintained by the users (active collaborative filtering, push model) and resources annotations features (passive collaborative filtering). Social collaborative filtering is based on social online communities ideas like Friend-Of-A-Friend (FOAF)1 metadata for RDF: (i) users have control over their profile information; (ii) the profiles (FOAF files) can be distributed: both files themselves and the content of the files can be distributed among different servers; (iii) connections between users create a digraph of friendship (network of trust); 1

Friend-Of-A-Friend (FOAF): http://www.foaf-project.org/

(iv) it is possible (as described later) to implement security/privacy issue on top of the network of trust.

1.1

Contributions

The paper makes the following contribution to the field of collaborative filtering and users’ profile management systems: – We introduce a new approach to collaborative filtering - social collaborative filtering that covers both active and passive types and solves additionally some privacy/security issues. – Our solution introduces goals like: distributed user profile management, privacy of the profile information, security of the provided knowledge, utilization of semantic social networks. – The reference implementation library (FOAFRealm), can be embedded into ”different types” of web applications, providing additionally unified, distributed users management system based on FOAF.

1.2

Related work

Active Collaborative Filtering solutions concentrate on utilizing the existing social connections provided explicitly. One of the approaches [6] is build on the the common practice where people tell their friends or colleagues of interesting documents. Users collect bookmarks on the interesting World Wide Web pages that they have found. To format and distribute collections of bookmarks several simple system have been developed. With Simon system [7] users can create ”subject spaces” which are lists of hypertext links to the WWW pages with annotations on them. Individual people can either use the bookmarks for keeping track on their own explorations or share their knowledge by sending it to the Simon server. One of other possible solutions is to find a personal referral that can answer the given query. The quality and reliability of the answer depends on the distance to the referral. Several attempts have been made to estimate the average distance between people [8]. The network of relationships can also help in exploring the hidden web, the part of the Internet that is not indexed by search engines [9], as some of the information is deliberately not accessible outside the intranets. Numerous studies have revealed that one of the most effectively used channels of dissemination of knowledge [10], especially in an organization, is an informal network of collaborators [9]. In this article we will describe similarities and improvements that social collaborative filtering introduces in comparison to ”Pointer”[6] and referral chaining[9] solutions.

Online Social Communities are the underlying key concept of social collaborative filtering. In the last few years this field has been widely explored by several implementations. Some of them, like Orkut2 provides forum-like channels of dissemination of knowledge, where community members can ask questions to their friends or other members of specific thematic group. In the Semantic web field the FOAF (a vocabulary for RDF [11])format has been introduced to describe the interpersonal connections. User Profile Management The existing implementations of user profile management lack: (i) fine granularity of security constraints; (ii) scalability; (iii) openness/privacy. One of the features that is becoming more and more important in social P2P environment is single-sign-on[12]. Each time a user uses a new web system, he would rather not provide all the same information about himself again. Solutions like Microsoft Passport3 or Sxip4 provide such features. 1.3

Outline of the paper

The next section describes the architecture of social collaborative filtering in the context of other similar solutions. In section 3 we present an evaluation of the underlying model of social interactions in social collaborative filtering. We describe in section 4 the FOAFRealm library that implements a distributed users management system and delivers social collaborative filtering features. Later, we will discuss the relations between social collaborative filtering and digital library systems.

2

Social Collaborative Filtering

The social collaborative filtering presented in this article is based on two paradigms: distributed cataloging and resources’ annotation. Each user classifies only a small subset of the knowledge, based on the level of expertise he has in a specific topic. The knowledge can be shared across the social network. 2.1

How does the Social Collaboration Works

The problem that there is a trade-off between accuracy and scalability is often found in search engine applications. The information gathered in on-line catalogs is very precise, as the human are involved in the indexing process. But because the Internet is growing so fast, the process of creating the catalog does not scale. 2 3 4

Orkut online community portal: http://www.orkut.com/ Microsoft Passport: http://www.passport.net/ SXIP - Passport/Liberty done right: http://www.sxip.com/

On the other hand, search engines do the indexing work without involving the human activity. That way the result of the query is very often not satisfiable. A social network is a set of people or groups of people, with come pattern of interactions or ”ties” between them[13–16]. A social network is modeled by a digraph where the nodes represent individual, and a directed edge between nodes indicates direct relationship between two individuals. Each person is interested in a couple of topics. Some people can be also known as to have an expertise in a certain domain. Each person has also a general idea about interests of his friends, considering some of them having more knowledge in some domains. It is possible to construct a subgraph, on top of a social network, that represents flow of expertise on certain domain between people. The idea of social collaborative filtering is based on flow of information in this subgraph. Distributed Catalogs To overcome that problem of managing vast and fast growing amount of information the divide-and-conquerer approach can be adopted. The information gathered in catalogs should be divided between a lot of people handling specific domains within the catalog information space. To provide scalability of the solution, the catalog should be distributed. The quality of the information gathered across the catalog can be satisfied by approving the expertise in given domain of discourse by the peers themselves. Each user maintains his own private catalog (private bookshelf [17]) and renders it accessible to his friends [6]. In the private bookshelf all resources are ”cataloged” according to user’s point of view. It can be assumed that some of the domains of interest are better explored by individual person that the others. In some topics the user is considered as an expert by his friends. While he knows someone who is being considered as an expert in some other domains of discourse. The example situation is presented on Fig 2. Alice is interested in Bibliographic Ontologies Mediation. She knows Bob and Caroline, whom she considers experts in Artificial Intelligence and Digital Libraries respectively. Caroline knows Damian and Eric. Damian is a librarian and Eric is a world known expert in The Semantic Web. Caroline gathers information about digital libraries in appropriate catalog in her private bookshelf. In order to achieve better quality of gathered information and distribute the amount of work required to classify resources, she links catalogs created by her friends: Libraries and The Semantic Web. By applying the same solution, Alice links into her Bibliographic Ontologies Mediations categories Artificial Intelligence and Digital Libraries maintained by her friends. This way, every person spends only a small amount of time, classifying interesting resources, and Alice, receives apart from own classifications, high quality index of resources maintained by her friends. Resources Annotations Apart from cataloging (providing the categorization description) of resources, social collaborating filtering utilizes comments and annotations provided by the users. Each resource provided by the system that implements social collaborative filtering can be annotated by registered users.

The annotations are represented as fora, so each user can extend the annotation provided by others by replying to their annotations. Annotations can be used by other people as a shorthand to quickly explore: (i) the content or meaning of the resource; (ii) the context resources can be discovered; (iii) the general opinion of other users. 2.2

What are the Benefits

The main bottleneck of existing passive collaborative filtering systems is the process of gathering users’ preferences[18]. A reliable system requires a Fig. 2. The example tree structure of very large number of people to express distributed private bookshelves connec- their opinion about a large number of tions topics. This requires from users either filling out a survey or some activity spread over a certain time. Passive collaborative filtering solutions depends on maintaining the network of friendship by the users. Outdated information on list of friends can mislead the person in his quest for an answer. Backward Referral Chaining Maintaining list of friends, posting a question and gathering the answers maybe time consuming. That is why the social 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. Usually, a user is only aware of a part of the social network. To gather the knowledge outside of his direct friendship neighborhood 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 quality of an answer provided to the user dependents on the path to an expert. The referral chaining[9] 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. This approach improves the accuracy when a person is looking for an answer, as it is possible to extract the answer along the tree of categories maintained by different peers (see Fig. 2).

The responsiveness factor is being utilized in the social collaborative filtering to implement security features. Each person (issuer) can apply some ACLs5 to categories created and maintained by himself. The ACL is based on the distance and trust factor between issuer and requester (the person who seeks information). 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. We propose to apply additional semantically reach description based on existing thesauri or classification ontologies, like WordNet[19] or Dewey Decimal Classification[20, 17]. This description can help to understand the meaning of the category both to people and machines. The latter can then utilize this knowledge in e.g. recommending related categories created by other peers. 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[17] takes into account semantically rich descriptions of users’ preferences reflecting their activities. The result set becomes more user oriented than with a generic search. New users registered to the system very often suffer from lack of rich profiling information. This may has a strong influence on the quality of search results. To overcome this problem social collaborative filtering 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.3) as a combination of users’ profiles of his/her friends (see Fig. 3). Alice is a new registered user to the system. She states Bob and Caroline as her friends. Caroline knows Damian and Eric. The extrapolated user’s profile of Alice consists information about her friends’ profiles. It is than assumed that Alice is interested in Artificial Intelligence, Digital Libraries and (with smaller probability) Semantic Web and general librarian topics. The information is being verified and updated by Alice later activities in the system.

2.3

Security and privacy issues

Collaborative filtering implementations suffer in most cases from very weak security features or 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 gathered information. 5

Access Control List

To implement the security and privacy features the concept of digraph of interpersonal connections have been utilized. 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 (see Fig 4).

Fig. 3. The extrapolated user’s profile The Alice knows Caroline and Eric. Eric knows Caroline, that knows Alice. Trust levels of each relationship have been provided. Alice has an access to ”Digital Libraries” and ”Semantic Web” categories. The access to ”Distributed Systems” category has been denied because the required trust level (70%) has not been satisfied. Category ”P2P Systems” may not be access by Alice, as it is Fig. 4. The protecting the information in soonly accessible to people from cial collaborating filtering with trust level direct friendship neighbourhood of Eric. As all the information about the user is provided by himself and he can state the ACL for each piece of information, the privacy of the user is preserved.

3

Evaluation of Social Collaborative Filtering

Social collaborative filtering utilizes 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 a social network creation algorithm, as the social network is given explicitly. 3.1

Definition of the social network model

Though the social collaborative filtering is based on the assumption that knowledge can be disseminated across the topic related subgraph. The following study

will reveal that it is possible to find an expert on specific topic within given range of friendship connections and that the expert will respond to the given question, that is the knowledge gathered by the expert can be accessed by the user. In order to proof the stated assumption we need to create a social network model. We have followed design patterns described in [15, 9] to construct the random graph. Constructing the social network digraph The random graph model G of the social network consists a given number N of individual people P . We assume that each individual person P in the social network has some number of topic TP that this person is interested in. Each topic, the person is interested in, is categorized by Dewey Decimal Classification[20]. This simplifies the computability of the model, as each category has a three-digit number (100 - 999) associated. Categories are structured as a three level tree: (i) top level, general categories, with numbers dividable by 100; (ii) middle level with numbers dividable by 10 and not by 100; (iii) bottom level, precise categories, with numbers that are not dividable 10; Each topic TP has a number ACLPT [i] associated with that defines maximal allowed distance from the owner of the knowledge gathered in this topic to the user that tries to access this information. This number simplifies the access control lists associated with information processed in social collaborative filtering. In the second step each individual P (vertex) is connected to a random number of other persons, by a directed edge representing an acquaintance KP 1,P 2 . Definition of experiment’s parameters Experiments on the model described have been conducted with the given algorithm (3.2). Each experiment can be described by a number of features: – number of peer in the social network (N ∈ {103 , 104 , 105 }); – percentage of experts elected in the network (EP ∈ {3%, 5%, 10%, 25%, 33%, 50%}); – experts election algorithm type (Ealg ∈ {RAN DS(T ) , RAN DEP }) – maximal number of friendship connections created per individual Cmax ; – distribution of the number of friendship connections created per individual (Cdist ∈ {RAN DS(P1 ,P2 ) , RAN Dskewed }); – maximal distance to an expert (Dmax = 9); 3.2

Searching information in graph of social connections - the algorithm

To evaluate the stated assumption on knowledge dissemination across the social network we propose algorithm for finding an expert on the given topic. The algorithm is a follows:

input: social network graph (G), user posting a query (P ), categorization of the query (QT ), maximal distance to an expert (Dmax ). output: expert with the best expertise similarity to the given topic (EA1 ), expert with the best expertise similarity withing given distance range (EA2 ), expert with the best expertise similarity that responded (EA3 ). algorithm: foreach Ei ∈ EXPERTS 1. calculate similarity S(QT , Ei ) between given category of query T and the most similar category of topics known by the expert Ei 2. if S(QT , Ei ) > S(QT , EA2 ) then (a) calculate distance D(P, Ei ) from user posting a query P to the expert found Ei (b) if D(P, Ei ) < Dmax then EA2 = Ei (c) calculate distance Drev (Ei , P ) from the expert found Ei and user posting a query P (d) if Drev (Ei , P ) < ACLEiT [i] and S(QT , Ei ) > S(QT , EA3 ) then EA3 = Ei 3. if S(QT , Ei ) > S(QT , EA1 ) then EA1 = Ei The algorithm returns three experts: the one with the best expertise (EA1 ), the one with the best expertise within given range (EA2 ) and the one with the best expertise withing given range that can reveal the answer (EA3 ). Our aim is to show with uncertain probability that: – user can always find an answer to the stated query, that is, can always find an expert that has high (let’s say 75%) similarity between his interests and domain discource of the query; – at least one of found experts conforming previous condition exist in the given Fig. 5. Distribution of number of peers with range of friendship connecconnections in different experiments tions (let’s say 8 hops) ; – at least one of the experts conforming conditions stated above will be able to provide the answer. The similarity level between two categories is computed by an expression where construction of Dewey Decimal Classification codes is taken into account.

3.3

Evaluation of results

Random functions used in the experiment are: RAN DS(T ) – depends on similarity between topics of an individual, chosen to favor individuals that have high similarity of all categories of interest, used during experts election; RAN DEP – depends on given saturation level of experts in the network, asserts given level of saturation EP ; RAN DS(P1 ,P2 ) – depends on the similarity between peers P1 and P2 ; choose to favor creating connections between two individuals that have high similarity of their interests; RAN Dskewed – random function with distribu1 ; chosen to assert distribution of friendship connections known tion F (x) = x1 /W from real-world experiments[15]; When electing experts in the social network two different approaches has been utilized: (1) individuals with high coherence of own interests have more chances to be elected; (2) experts are elected randomly, to satisfy given saturation level. Constructing the friendship connections in the social network model was based on: (1) similarity level between peers, (2) given distribution of number of peers with different numbers of created connections. It was more probable that two individuals with highly similar interest will be connected. Figure 5 presents both kind of distribution for 1000, 10000 and 100000 peers in the network. The second number on the legend defines either the distribution parameter W (negative values) or maximal number of possible connections to create for each peer (positive values). Description of experiments Two sets of experiments have been conducted. The first was about to reveal the influence of the number of peers in the network on the expert finding process. The purpose of the second one was to inspect the influence of the saturation of experts in the network on the expert finding process. Each time both friendship connections distribution Results of experiments The results of the experiments are presented in Table 1 and Table 2. Table 1 represents how does changing a size of the social network effects the responsiveness of an expert (SQT ,EA3 ) and the length of the path to an expert (D). As it can be seen, the growth of the network results with higher responsiveness and slightly longer path to an expert. The network of bell-curved number of friends distribution has a better responsiveness and shorter path than the non-bell-curved. But the latter distribution is thought to be more realistic that the bell-curved. Table 2 represents how does the saturation of experts in the given social network (percentage of all peers in the network) effects the responsiveness of an expert and the average length path to the responding expert. As we can see, 10-times more experts in the social network, do not improve the responsiveness (S(QT , EA3 ) ) much. The average length of the path to an expert seems to be completely independent of the percentage of experts in the social network.

Table 1. Results of the first set of experiments (similarity levels and distances are average values) Cmax = const Cmax SQT ,EA1 SQT ,EA2 SQT ,EA3 103 100 70.54% 70.54% 63.19% 104 200 84.37% 84.37% 81.82% 105 400 91.51% 91.51% 90.04% EP = 3% Ealg = RAN DS(T ) N

D Cmax 2.9 x1 1 3.4 x1/2 1 3.4 x1/2

Cmax = fn SQT ,EA1 SQT ,EA2 63.64% 63.64% 82.81% 77.14% 90.04% 77.86%

SQT ,EA3 63.64% 77.14% 77.86%

D 5.9 8.3 8.6

Table 2. Results of the second set of experiments (similarity levels and distances are average values) Cmax = 200 S(QT , EA1 ) S(QT , EA2 ) S(QT , EA3 ) 5% 74.08% 74.08% 72.82% 10% 78.58% 78.58% 78.49% 25% 80.74% 80.74% 79.63% 33% 85.48% 85.48% 81.25% 50% 84.10% 84.10% 83.20% N = 10000 EP

D 3 2.9 2.9 3 3

1 Cmax = x1/2 S(QT , EA1 ) S(QT , EA2 ) S(QT , EA3 ) D 77.14% 71.41% 71.41% 8 80.35% 75.07% 75.07% 8.2 80.98% 79.33% 79.33% 7.8 82.90% 81.13% 81.13% 8 83.98% 82.75% 82.75% 8

Conclusions Following experiments by Kauth[9] we have constructed similar social collaborative filtering model. Each time the expert on a given topic was responding, and the average path to an expert was not exceeding 9 hops. The length of the path to an expert is ca. 3 in the social network of bell-curved dis1 distribution. tribution of friends number, which is much less then in case of x1/W Saturation of experts in the social network does not have strong influence on the average similarity level (quality of answer) of query and expert topics.

4

FOAFRealm - the Implementation of Social Collaborative Filtering

The FOAFRealm library for distributed users management with social collaborative filtering is based on the FOAF vocabulary. This provides users flexibility on their profile information, as it can be accessed in the open FOAF format. They can sign-in automatically across the P2P network of FOAFRealm enabled system. The knowledge (annotations and private catalogs) can be shared with other registered users. Security constraints can be applied to each piece of information separately.

4.1

FOAFRealm and digital libraries

A Social Network approach to Collaborative Filtering for Digital Libraries Though most digital libraries do not require readers to register, a reader can benefit from identifying himself. By doing so he is gaining access to protected resources, or is making use of additional features when browsing or searching a digital library’s archive. The on-line communities introduced the idea of connecting users registered within one system[21, 22] with each other. The FOAFRealm[23] library implements the standard J2EE authentication mechanism based on the FOAF (Friend-of-a-Friend)6 metadata, which enables readers registered in the digital library system to point to other readers as friends and also enables one to reuse registration information. Registered readers are able to annotate and evaluate the resources stored in the JeromeDL7 [17] database. JeromeDL FOAF-based user management also supports the creation of personal bookshelf (sometimes called a ”personal digital library” [24, 25]) - a tree-structured collection of bookmarks handled by the digital library system. To identify the categories a user is interested in, information on: (i) previously read books, (ii) resources linked in the personal bookshelf (bookmarks), (iii) annotated resources, (iv) highly evaluated resources is collected. Each resource is described by some categories. Based on the collected categories JeromeDL identifies the categories a reader is interested in (see Fig. 6) Browsing semantics and collaborative catalog - personal library Catalogs in digital libraries help to organize resources according to the implemented classification schemata. One of the first and still popular classification schemata is the Dewey Decimal Classification [20]. To bookmark a resource, the reader has to find either the resource itself or another reader that has already done so.The users of the digital library can browse bookmarks of their friends and link some folders (categories) into their own structure. As a result one can have a catalog containing bookmarks created and maintained by others, which he assumes have higher expertise on the given subject (see fig. 6). Readers can protect certain categories (folders) in their private bookshelves by applying ACLs based on FOAFRealm roles. Extrapolated profile In many cases, especially when the reader has just registered to the JeromeDL system, it is very likely that the profile information is incomplete. To provide a search experience that would suit new users as well, JeromeDL is extrapolating user profiles. Each user defines a list of friends with the FOAF vocabulary. A reader’s profile consists not only his own activities, but 6 7

http://www.foaf-project.org/ JeromeDL - e-Library with Semantics: http://www.jeromedl.org/

to some extent, activities of his friends. With the concept of the extrapolated user profile, even new users have domain of interest information available.

5

Conclusions

Social Collaborative Filtering presented in the article opens new possibilities of exchanging and managing knowledge. Users can share their bookmarks (categories and their content) with their friends. Everyone can organize the knowledge by gathering categories that other people are maintaining. Since categories can be linked it is possible to find more relevant information in categories provided by some Fig. 6. The user’s profile in JeromeDL distant people. Annotations are also a key part of Social Collaborative Filtering. Together with private categories (private bookshelves) they are utilized in the semantically enable searching process. FOAFRealm is a reference implementation of 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. As the social network is represented as a digraph, FOAFRealm utilizes informations about distance between two people and the trust level, to provide the security and privacy features.

References 1. Bernays, E.: Propaganda. (1928) 2. Resnick, P., Iacovou, N., Suchak, M., Bergstorm, P., Riedl, J.: GroupLens: An Open Architecture for Collaborative Filtering of Netnews. In: Proceedings of ACM 1994 Conference on Computer Supported Cooperative Work, Chapel Hill, North Carolina, ACM (1994) 175–186 3. Breese, J.S., Heckerman, D., Kadie, C.: Empirical analysis of predictive algorithms for collaborative filtering. (1995) 43–52 4. Shardanand, U., Maes, P.: Social information filtering: algorithms for automating ”word of mouth”. In: CHI ’95: Proceedings of the SIGCHI conference on Human factors in computing systems, ACM Press/Addison-Wesley Publishing Co. (1995) 210–217 5. Techniques, R.P.: Privacy-preserving collaborative filtering using (2003)

6. Maltz, D., Ehrlich, K.: Pointing the way: active collaborative filtering. In: Proceedings of the Conference on Computer-Human Interaction. (1995) 202–209 7. Simons, J.: Using a semantic user model to filter the ”world wide web” proactively. (1995) 455–456 8. Milgram, S.: The small world problem. Psychology Today 67 (1967) 9. Kautz, H.A., Selman, B., Shah, M.A.: The hidden web. AI Magazine 18 (1997) 27–36 10. Kautz, H., Selman, B., Shah, M.: Referral web: Combining social networks and collaborative filtering. Communications of the ACM 40 (1997) 63–65 11. http://www.w3.org/TR/rdf: Resource description framework (rdf). W3C Recommendation (1999) 12. Pearlman, L., Welch, V., Foster, I., Kesselman, C., Tuecke, S.: A community authorization service for group collaboration (2002) 13. Trevor, J., Hilbert, D.M., Billsus, D., Vaughan, J., Tran, Q.T.: Contextual contact retrieval (2002) 14. Fukui, H.O.: Socialpathfinder: Computer supported exploration of social networks on www (2003) 15. Newman, M., Watts, D., Strogatz, S.: Random graph models of social networks. In: Proc. Natl. Acad. Sci., to appear. (2002) 16. Hoadley, C., Pea, R.: Finding the ties that bind: Tools in support of a knowledgebuilding community (2002) 17. Libraries, J.R.D., the Semantic Web: Sebastian ryszard kruk and stefan decker and lech zieborak. (2005) 18. Shardanand, U., Maes, P.: Social information filtering: Algorithms for automating “word of mouth”. In: Proceedings of ACM CHI’95 Conference on Human Factors in Computing Systems. Volume 1. (1995) 210–217 19. Fellbaum, C.: Wordnet an electronic lexical database (1998) 20. Dewey, M.: A Classification and Subject Index for Cataloguing and Arranging the Books and Pamphlets of a Library - Dewey Decimal Classification. guternberg.net, http://www.gutenberg.net/catalog/world/ readfile?fk files=59063 (2004) 21. O’Murchu, I., Breslin, J., Decker, S.: Community portal survey. DERI Research Report - Semantic Web Portal Project D9, DERI.Galway (2004) 22. O’Murchu, I., Breslin, J.G., Decker, S.: Online social and business networking communities. In: Proceedings of the Workshop on the Application of Semantic Web Technologies to Web Communities, Valencia, Spain (2004) 16th European Conference on Artificial Intelligence 2004 (ECAI 2004). 23. Kruk, S.R.: Foaf-realm - control your friends’ access to the resource. In: FOAF Workshop proceedings, http://www.w3.org/2001/sw/Europe/events/foafgalway/papers/fp/foaf realm/ (2004) 24. Schmidt, J.W., Schrder, G., Niedere, C., Matthes, F.: Linguistic and architectural requirements for personalized digital libraries. International Journal on Digital Libraries 1 (1997) 89–104 25. Sugimoto, M., Katayama, N., Takasu, A.: A system for constructing private digital libraries through information space exploration. International Journal on Digital Libraries 2 (1998) 54 – 66 ISSN: 1432-5012 (Paper) 1432-1300 (Online).