linkeddata

linkeddata

A proposal for Semantic OMB

From what I read on Twitter, it seems there's a bit of confusion regarding SMOB. Indeed, while SMOB provides a framework for Open and Semantic Microblogging, it does not define a new protocol, but simply uses SPARQL/Update over HTTP to exchange information between hubs (posting / removing notices and following / followers). Hence, this is not something that competes against OMB, the OpenMicroBlogging specification.

Actually, OMB is something we planned to look at for a long time, as briefly discussed when Status.net / OMB was presented in the W3C Social Web XG telco. I've finally took the time to analyse the full spec and checked how it compares with the distributed microblogging implementation of SMOB, and more generally with the vision of Semantic Web / Linked Data (SW/LD) microblogging services.

So here is a proposal for "Semantic OMB" (on Status.net wiki) that describes how the current OMB protocol fits with the previous idea. In particular, it aligns the terminology with existing classes / properties from well-known ontologies, and discusses how some current parts of the spec should be updated. It also discuss how OMB operations can be mapped to SPARQL/Update queries, based on the ones that currently happen in SMOB for cross-hubs synchronisation.

As you can see when browsing it, besides the terminology mappings, most of the things are compliant and there are only a few things that shall be discussed, in order to:

  • enable a better "distributed-ness" by keeping profiles owned by their users and not necessarily creating remote accounts;
  • making some mandatory elements being optional, as they are contained in the data that is exchange between services thanks to the Linked Data principles.

Thanks to these small updates, it could provide a protocol enabling SW/LD systems to be designed based on the OMB protocol, while having a sufficient abstraction level to comply with OMB systems using other technologies for data modeling and exchange. I'd be more than happy to see such features in an upcoming OMB release, and hopefully see deeper links between OMB and SW/LD efforts, as both aims to achieve the same goal of openness and interoperability. Comments and feedback are welcome on the related thread on the OMB mailing-list.

SMOB v2.2 - Geolocation and other improvements

Edit 10/02/2010: There was a few bugs in that release, please consider downloading the v2.2.1

One more week, one more release, here's SMOB v2.2. This one fixes a few bugs (apparently the #tag tabs where unavailable on the 2.2 due to a bug I introduced in the .js file) and provides the following new features:

  • geolocation of microblog messages (see example below), which shows one more benefit of the LOD cloud, as coordinates of posts are provided thanks to the GeoNames integration and OPO;
  • ability to delete messages (deletion being then propagated to other hubs using SPARQL/Update) and to automatically purge messages older than X days (mainly to keep the DB lightweight - starred messages are not removed);
  • on-demand creation of FOAF profile, in case one wants to try SMOB but does not have one (or does not want to provide it);
  • parser for hyerlinks in microblog posts; and
  • updated installer, allowing to select if SMOB should be used as a Twitter client (read / write settings).

BTW, as for the previous updates, you have to remove your config file and re-do the install procedure, and it will not remove your existing messages.

smobmap

SMOB v2.1: Using SMOB as a Twitter client

Here's a new release of SMOB, the Semantic MicrOBlogging framework. This release includes various new features, the main one being the integration of Twitter messages in SMOB so that you can use your SMOB hub as a Twitter client, where each Tweet is represented in RDFa using SIOC, FOAF, etc.

In addition, the new release provides:

  • RSS feed for hub owner's messages;
  • Automatic @reply when replying to a Twitter message (including sioc:addressed_to annotation);
  • Updated user-interface for #tags mappings, now done using tabs to avoid too much scrolling;
  • Ability to directly check @reply messages;
  • Starring system using the Review vocabulary.

SMOB v2.1 can be downloaded here. If you used a previous version, you will also need to apply this patch after the update. It may remove some of your following / followers (as there have been some changes in the related RDF data - this should be taken into account by the patch, but who knows ...), in that case you'll add to add them again, sorry for the inconvenience !

Hopefully, a 2.2 release will be out in the next weeks, including geolocation of messages, advanced browsing features and other funky improvements. Feature requests can also be suggested on its dedicated bugtracker.

dbrec - Intelligent music recommendations for and from the Web of Data

In addition to the Social Semantic Web, you probably know that one of my main research interest concerns Linked Data, not only in publishing but also in consuming it. And well, I also enjoy music and the possibilities that LOD offers in that context, as we've wrote with Yves mid-2008.

So, I recently worked deeper on the use of Linked Data for music recommendations and I'm happy to announce dbrec, a service providing recommendations for the 39,000+ artists available in the DBpedia dataset (i.e. identified as instances of dbpedia-owl:MusicalArtist or dbpedia-owl:Band). The recommendations are computed using an algorithm for Linked Data Semantic Distance and take into account the various links that connect two resources, either directly (e.g. artists having played together) or indirectly (e.g. being on the same label or having covered the same song). Moreover, dbrec, explains the recommendations to the user, by keeping in mind the various links that have been used to compute the recommendations. For instance, the following screenshot shows why Big Brother and the Holding Company is suggested for a search on Janis Joplin.

dbrec is fully based on Semantic Web and Linked Data technologies and, in addition, exposes all the recommendations publicly (under a Creative Commons license) in RDFa using the dedicated LDSD ontology. For more details, you can check the homepage of the service, and start exploring the recommendations. Hey ! Ho ! Let's Go !

SMOB v2.0

About 2 years ago, we designed SMOB, a Semantic Microblogging client and server application, in order to demonstrate how Semantic Web and vocabularies like FOAF and SIOC could be used to provide a more open microblogging experience.

While we did not improve is much since then, there have been a lot of work on it these last months (about 250 SVN commits since end of October, when we decided to revive it) and I'm happy to announce that SMOB v2.0 is now officilay out, after some internal beta-testing during the last weeks.

Overall, it has been a complete code rewriting and architecture redesign since the previous release. While the initial version relied on clients and servers to respectively publish and aggregate data, this new version is based on the concept of distributed and independent hubs that communicate each other to exchange data, being microblog posts as well as followers / following lists.

As you can guess, SMOB is entirely based on Semantic Web and Linked Data technologies. Then, each hub locally stores its data as native RDF (using ARC2, also providing a SPARQL endpoint per hub) and the communication between hubs is provided via SPARQL/Update over HTTP. In addition, each hub provides RDFa information about itself and the microblog posts it contains, using SIOC, FOAF and OPO as well as interlinking with the Linking Open Data cloud using MOAT and CommonTag. Regarding that later aspect, the UI has also been improved and the system now suggest URIs from DBpedia and Sindice (new wrappers can easily be added) as soon as you use any #tag when writing your posts, and the mappings between tags and URIs are remembered for further usage in other posts. Finally, new content is posted to Sindice to enable discovering and querying microblog posts across the (Semantic) Web.

For those who want to get a preview before installing their own hub, here are two screenshots of the interface, the first one about publishing data, where you can see #tag mappings, as well as broadcasting to Twitter.

And in that second one, you can see a list of posts, with links to RDF data, hashtags mapped to URIs, etc.

You can also have a look at my SMOB hub here.

SMOB v2.0 is available through its download page and is licensed under the terms of the GNU GPL as its previous release. In addition, we are happy to provide commercial support for it, such as development of new features or custom integration of SMOB for enterprise microblogging purposes. For any enquiry about these commercial services, simply send an e-mail to at alexandre.passant[AT]deri.org, indicating [SMOB Support] in the subject line.

Oh, and finally, SMOB graduated and now got its own domain at http://smob.me. Enjoy Semantic Microblogging !

Using Semantics to Improve Corporate Online Communities

I gave a talk on "Using Semantics to Improve Corporate Online Communities" yesterday at the COIN@MALLOW workshop. The talk was mainly based on the work done during my Ph.D. thesis, demonstrating how to manage and combine various layers of semantics on the top of Enterprise 2.0 ecosystems and let users create and take advantage of the related semantic annotations. Here are the slides of the talk.

WebSci09 presentation on interlinking social data

Here are the slides of the presentation I gave last week in Athens at the WebSci09 conference.
The short paper is also available on-line, as well as the complete conference proceedings, papers and posters.

It was a really interesting event and a good opportunity to see what's happening regarding the Web and how people study and use it, outside the Semantic Web and more generally the Computer Science side of the Web.
To that extent, the poster session was particularly interesting, as well as the various talks on law / trust / privacy on the Web.

Where are all the Semantic Web presentations ?

A follow-up to my previous LODr introduction post, and as you might guess with the title, one more way to show the value of RDF-based applications in general. Or more precisely, open-RDF-based and LOD-compliant:

  • By open-RDF-based, I mean using RDF but also publishing it, eitheir through a SPARQL endpoint, Semantic sitemaps or RDFa. What I want to focus on here is that using RDF 'inside-only' doesn't make your service be part of the Semantic / Linked Data Web, while it can indeed be considered as Semantic-Web based - I hope that's clear enough. If you don't expose anything, you can have the better RDF infrastructure that you want, you will still be a Web-of-Documents application. (Some related thoughs here);
  • Regarding LOD-compliance, I refer to reusing or interlinking existing resources in order to benefit from it within your application. The value of your service can then reside not only on the data you provide, but on the way you interact with - and reuse - other datasources. Moreover, this can also concern corporate environments.

What I want to stress in that post is how such applications can become components of a general infrastructure (the Semantic Web itself) that will provide new services to end-users. Especially, regarding LODr, it lets users interlink popular Web 2.0 content to Semantic Web resources and such interaction can then be used for data discovery. For instance, the following query will retrieve all Slideshare presentations related to the Semantic Web, i.e. linked to a resource that is itself linked to the SW category in DBpedia. This query involves various vocabularies, as SIOC (to retrieve the item), FOAF (its author), the Tag Ontology (its tags), MOAT (tags meanings) and a DBpedia URI as an entry point to find related topics.

SELECT DISTINCT ?item ?author ?date ?tag ?meaning
WHERE {
  ?item a sioc:Item ;
  dct:created ?date ;
  sioc:has_space <http://slideshare.net> ;
  foaf:maker ?author .
  [] a tags:RestrictedTagging ;
    tags:taggedResource ?item ;
    tags:taggedWithTag [
      tags:name ?tag .
    ] ;
    moat:tagMeaning ?meaning .
  ?meaning ?p <http://dbpedia.org/resource/Category:Semantic_Web> .
}
ORDER BY DESC(?date)
LIMIT 5

You can browse the answer here, formatted in HTML.

Of course, the URIs that you can use in LODr and with MOAT in general are not restricted to DBpedia ones. You can use URIs defining some of your friends, conferences you attended, etc. Consequently, those URIs can be used in queries patterns, as well as other interlinked URIs. For instance, the following one will retrieve all pictures from Flickr linked to an event that happened in Tenerife, and in that case it will use the ESWC2008 URI, going through some Geonames data:

SELECT DISTINCT ?item ?author ?date ?tag ?meaning
WHERE {
  ?item a sioc:Item ;
  dct:created ?date ;
  sioc:has_space <http://flickr.com> ;
  foaf:maker ?author .
  [] a tags:RestrictedTagging ;
    tags:taggedResource ?item ;
    tags:taggedWithTag [
      tags:name ?tag .
    ] ;
    moat:tagMeaning ?meaning .
  ?meaning foaf:based_near <http://sws.geonames.org/2522437/> .
}
ORDER BY DESC(?date)
LIMIT 5

Answer

Finally, while all those queries involve the lodr.info endpoint, each LODr intance comes with its own triplestore (and related endpoint), so that one can add some more RDF in it for advanced mash-ups. And as it also provides RDFa and semantic sitemap support, semantic web crawlers and indexes as SWSE or Sindice can also consume it and then deliver it when you look for a particular URI.

Say hello to lodr.info

In one of my recent post, I mentionned LODr, a semantic-tagging application based on MOAT. While I started it a few months ago, it's finally online now. I put the code in svn last friday and twitted about it, but did not make any official announcement yet, so here it is. I certainly should have released before, but as the source code involves lots of classes, I wanted to be sure of the architecture.

So, what is it about ?

LODr aims to apply to MOAT principles (in a few words, link your tags to concepts URIs - people URI, Musicbrainz artists, DBpedia resources ... - , share those relationships in a community and then tag content with those URIs) to existing Web 2.0 content. So you can "re-tag" your existing Flickr pics, slideshare presentations, etc, using those principles and make your social data enter the LOD cloud. I think focusing on the existing word is important here, as LODr lets you keep your Web 2.0 habits by using your favourite tools, but provides a separate service to semantically-enrich it. I don't want to go into too much details here, but in brief, some interesting points regarding the applications are:

  • While tags / URIs relationships are shared within the LODr community in a central RDF-base (following the MOAT architecture principles), LODr is a personal application, so that you just need to install the software on your webserver to enjoy it. Moreover, as it's local, you can re-use your data immediately for any mash-up;
  • LODr is completely RDF-based. It might be a bit geeky, but as some were recently wondering where are all the RDF-based applications, here's one. And of course RDF-based means using standard vocabularies, such as SIOC, FOAF, DC, the Tag Ontology and of course MOAT. The RDF-backend is powered by ARC2, so you can enjoy a SPARQL endpoint for your data. Last but not least, each item page features RDFa, using the previous vocabularies, even if you decide not to use MOAT for a particular item (so that any Web 2.0 item you aggregate is RDFa-ized);
  • Aggregated data will provide you a complete tagcloud for your social activity (which might be SCOT-ed in the next updates), as seen here. Each tag link redirects to a list of items provided using Exhibit, and you can restrict by source (i.e. the service it's from) or creation date. And if a tag have been assigned a URI, you'll get a link to browse the related items using a similar interface;
  • When browsing all items tagged with a particular URI, you'll get suggested some related URIs. Related because of co-occurence as usually in tag-based applications, but also because they're directly interlinked, or because they share a common property. To avoid information overload, only the URIs you used to re-tag some of your items will be shown;
  • The application can be easily extended. LODr uses wrappers to retrieve your data, and each wrapper is only a few lines of code (e.g. 24 lines for the Flickr one). At the moment, wrappers use RSS to retrieve data and the feeds are automatically discovered from the user FOAF profile - dataportability rocks ! Yet, the architecture allows to use authenticated wrappers (to use services API) but also SIOC exports for those tools;
  • As the MOAT process is more time-consuming that simple tagging (since you must define tag/URI relationships, at least at the first time as you can do automated tagging after) the URIs can be displayed as labels when you need to choose which one is relevant for your tag (using the inference capabilities described here as not all resources have a direct rdfs:label property ) . When you need a new URI, the application relies on the Sindice search widget, as done in the Drupal MOAT module. And the system then checks if the new URI is valid, but I'll blog about that particular point later;
  • Finally, in addition of the previous features, LODr can be used to discover all the community content. This feature is not provided by the local application, but by LODr.info, that aggregates your RDF data when you re-tag it to provide search capabilities. Then, you can directly list all items linked to a particular URI. Want to find content related to the Forbidden City ? Or to SPARQL ? And to be even more enjoyable, I added a Ubiquity command so that from any Wikipedia page (more services will be supported soon), you can get the list of all related items (through DBpedia in order to find the concept URI from a document page). While it provides a really-straightforward way to discover related Web 2.0 content when browsing the Web, I also hope it can convice people of the complete process.

So, you can simply download the code from the website and install it. For those who just want to have a look, you can check my LODr instance (while you won't be able to edit it, you can check the display interfaces). As there might be some bugs and I'm still adding features, please consider using the SVN version instead of the tgz. And then, enjoy the power of Linked Data for your Web 2.0 content ;-)

BBC, LOD and the Music Ontology

Relaying this great news from Yves' blog (especially for planetrdf.com / planete.websemantique.org readers) 

Just a couple of minutes ago on the Music Ontology mailing listNicholas Humfrey from the BBC announced the availability of linked data on <

Syndicate content