Use Semantic Web to Model Social Computing

Introdouction

We introduce the idea of formally descibing a social computing service or an agent using rules grounded in Semantic Web technologies. Services and agents based on the Semantic Web are guaranteed to be data-oriented and distributed.

This paper is essentially a conceptual one. Although we provide an implementation, it's still very far from being complete. We encourage the reader to glance through Section 3, especially the rules (those with =>), to get a feeling of what the paper is about.

In Section 2 we describe some useful properties of the Semantic Web, in particular the Resource Description Framework (RDF)][1], and show why it is a good way of representing social knowledge. In Section 3 we give a social computing mechanism using a formal Semantic Web language, namely Notation 3 (N3)[2]. In Section 4, we describe an implementation of an agent which can make deductions based on the rules defined according to the some social interactions or situations. In Section 5, we compare our work with the related work in this area, and finally conclude the paper in a discussion of our results and our future work in section 6

Introduction to the Semantic Web(2 pages)

In this chapter, we give a brief introduction to the essential concepts of the Semantic Web.

Semantic Web is a web of machine processable data, preferably RDF, linked together, and the fundamental assumption of Semantic Web could be stated as follow:

Every important thing has global machine name in the form of a URI. This URI can be dereferenced to get a file and then some RDF triples can be extracted from the file, and a nonempty subset of these triples are about the thing, namely, the subject or the object is the thing, and these triples constitute useful information.

The URI of a thing could be thought of as a magical name with which you can get information about the thing, while other exsisting names or ids such as human name and SSN does not incorporate a canonical method to retrieve information. The URI of a person, also called a Web ID[?], could be dereferenced to get basic information such as name, gender, or email. The concepts of 'name', 'gender', or 'email' also have URIs and they form a vocabulary known as FOAF. See [?], [?], [?] for how to get a Web ID for yourself. The files from which RDF triples are extracted could be pure RDF documents, such as RDF/XML or RDF/N3, or documents with embedded RDF such as RDFa or XML with GRDDL. This assumption is also known as the Linked Data principles [?].

In terms of what does it mean to be useful information, there are two opposing views. The following is explanned with URIs of people, the Web IDs.

privacy and trust oriented view

In this view, the Web ID of a person is owned or controlled by the person. The person has the right to determine what information is useful and what is available on the Web. The Web ID of this kind is analogous to the homepage of a person.

maximum information oriented view

In this view, the Web ID of a person is owned the public. Web ID of this kind is analogous to human terms. For example, while Tim Berners-Lee as a person is owned by himself, the term 'Tim Berners-Lee' is owned by the public, that is, people are almost free to use this term to decribe Tim Berners-Lee in their articles and blogs. In the same way, in this view, the Web ID of Tim Berners-Lee is owned by public. The difference between the Web ID and the human name of a person is that, in the case of Web ID, all the information about the person can be gathered by intelligent agents with the SPARQL Update protocol[?] to be the source from which the Web ID is dereferenced. The resulting information is mostly likely to be inconsistent and lacking of accountability, but with this view, lots of social computing, such as justice enforcement could be made possible. For example, the information that somebody is a liar could be computed and updated, and following consequences can be deducted. See chapter ? for further information. Web ID could be thought of as wikipedia entry augmented with a lot more imformation in this way.

comparisions

extensible and universal

independent of human language

Modeling Social Computing with N3 Rules(3 pages)

We decribe the method of modeling social computing with machine readable rules in this section. Several examples are given. (N3 tutorial comes here?)

First of all, we give an example of social computing which is implemented widely.

birthday greeting

In social networking sites such as Facebook and MySpace, the user is notified of her friend's birthday so that the user could write a greeting on the friends wall. This computation, done by a person with either the help from the computer agent (in this case, Facebook), could be vaguely modeled with N3 rules as follows,

{?personA knows ?personB.
 ?personB birthday ?day.
 now day ?day.} =>

{[ a BirthdayGreetingEvent;
   first_participant ?personA;
   second_participant ?personB].}

This reads as "If personA knows personB and personB's birthday is today, then there should be a birthday greeting event for which personA is the first participant (doer) and personB is the second participant (accepter).

Notice that the terms 'knows' and 'birthday' are already defined in the FOAF vocabulary [ref]

making friends of the same interst

{?personA interest ?thing.
 ?personB interest ?thing.} =>

{[ a MakingFriendsEvent;
   participant ?personA, ?personB].}.

dorm system

{?personA wants_to_borrow ?thing.
 ?personB can_lend ?thing.} =>

{[ a BorrowingEvent;
   first_participant ?personA;
   second_participant ?personB].}

love confession

{?personA in_love_with ?personB.
 ?personB in_love_with ?personA.} =>

{[ a ConfessionEvent;
   participant ?personA, ?personB].}.

wish list and trading

In this final example, we model general economy phenomenon with the following rule,

{?personA wants ?thing.
 ?personB can_provide ?thing.} =>

{[ a TradingNegotationEvent;
   participant ?personA, ?personB;
   good ?thing].}.

This rule basically says if personB can provide the thing personA wants, then they should negotiate to see whether this trading is feasible and what personA should pay personB back.

In short words, we imagine that in the future people tell about the things they desire on the web, while provider provides the information of the goods. The computer could do various useful caclulations based on these information, if it is truly machine readable.

It is worth mentioning that Amazon has already implemented a system of wishlist. The user is able to put her wishlist on her website in hope that someone can give her a gift from the wishlist on her birthday [ref]. This is one of the benefits of making wishlists transparent. Others include, for example, the fact that the wishlists of many people in Africa contain only 'food' would make people have a deeper understanding of poverty.

...

Inplementing a Decentralized Social Computing Service(1 page)

Advantages of the Semantic Web(1 page)

raw data and formal rules

detecting duplicate services

...

Other Stuff