Social, mobile, semantic

Monday’s DBpedia mobile presentation at LDOW2008 impressed me a lot. Actually, while I never worked on it, I’m really interested in ways to combine mobile applications, Semantic Web / Linked Data technologies and social networking. Here’s a use case I have in mind for a long time and I’d like to share.

Imagine in can embed a FOAF profile on my mobile phone, or just an URI with owl:sameAs / rdfs:seeAlso links to my main URI / RDF file. When joining a conference, a restaurant or any place where there are some people (and when I’m in a good mood), I allow my phone to deliver my presence and this URI (+ related data) to anyone, while at the same time searching for available URIs and data.

Then, I got a list of URIs, and my phone will suggest me that there’s some people nearby that I must meet regarding some criterias and how our URIs are interlinked. A simple way would be to configure the application with kind of (statement, depth) tuples. For example (foaf:interest, 2) would suggest me all people where one of my foaf:interest is link to one of their foaf:interest with a maximum path of 2. And of course, those paths should be computed using Linked Data and considering the whole SW graph, or GGG, e.g. going through DBpedia, GeoNames of any dataset from the LOD cloud if needed.

But, in some case, paths are not enough, as they can result to unrelevant results (depending on the start URI the path may quickly go towards too generic URIs), or sometimes too much people. For example, at a SW event, I guess it would have suggest me to meet anything since I have dbpedia:Semantic_Web in my profile. A solution could be to have an intelligent context manager in the mobile phone that will check my iCal, find that I’m attending a workshop (or even better, use GPS location, browse upcoming.org or other services to find which event I’m attending), retrieve the workshop homepage in which organizers embedded some RDF data about topics of the workshops (as they eat their own dogfood :), and exclude those URIs (and paths that goes through). To be more accurate, instead of those path tuples, I could also define complex queries, as for example: “People that will present some paper at a conference I’ll attend next month”.
Actually, it’s just a matter of providing all the data, open it, and of course, interlink. But well, “Linked Data is the Semantic Web done as it should be. It is the Web done as it should be“, no ?

New query interfaces for browsing SIOC data

I’ve recently added new queries (and associated interfaces) to my triple-store-based SIOC browser[1], in order to present what SIOC can be used for.

The first one is quite similar to the tagcloud feature (which creates a tagcloud of topics, as Technorati does but using sioc:topic property to get topics / categories): it displays a 3D pie of the ten most popular topics, using the PHP/SWF Charts API.

The second one uses the user aspect of SIOC. It has recently been decided to use both foaf:Person and sioc:User to represent creator of a sioc:Post when exporting data, while using only FOAF for unregistered users (i.e. comments on most weblog engines). This means that every Post (whether is it an original post or a reply) is linked to a foaf:User. Then, we can create mappings and relationships between posts and users, eventually smushing data using foaf:mbox_sha1sum if users use different nicknames but same e-mail in different blogs. So, this second query displays relationships beetween users within a set of decentralized SIOC-ed blogs that have been put in the same store. Two users are connected as soon as one replied to another, providing a way to discover people you’ve got in common (sometimes without knowing it !). The Prefuse API have been used to draw the network.

This FOAF/SIOC feature that links users to post have been recently introduced in exporters (WordPress, DotClear, b2evo) and in the PHP API. So, if you use an old version of one of this exporter, update it! These new versions also provide mappings between SIOC, FOAF and DC, and removed depracates some properties (see latest ontology specs). At the moment, I only store blogs that use the latest exporters in the store, so that all of them will be taken into accout in browsing interfaces, as the SPARQL queries refer to latest specs.

Finally, some of these exporting and browsing features will be presented in an upcoming talk at BlogTalk Reloaded, with the paper “SIOC Browser - Towards a Richer Blog Browsing Experience” co-written with John Breslin and Uldis Bojars. I’ll also be involved in a talk for the paper “Folksonomies, Ontologies and Corporate Blogging”, co-written with Philippe Laublet and Jean-David Sta, introducing an approach - using SIOC - that mix folksonomies and ontologies I dealt with in my PhD work.

So, once again, don’t hesitate to use SIOC exporters on your blog / forums if available (or write one with the API !) and get listed here !

Notes

[1] Implementation details here