Les petites cases

FOAF et Web services

Il y a quelques temps déjà, j'ai consacré un billet à FOAF (Friend of a friend), un vocabulaire RDF permettant la description d'une personne et de son réseau social. J'avais alors expliqué les différents usages qui pouvaient être faits de ce fichier. Aujourd'hui, je vous propose un nouvel usage d'un fichier FOAF qui rassemble à la fois les concepts du Web 2.01 et les technologies du Web sémantique.

L'idée est simple : il s'agit de constituer à partir des informations présentes dans un fichier FOAF un tableau de bord des services dits Web 2.0 auxquels l'utilisateur est abonné. Dans le fichier FOAF, je récupère, grâce à une requête en SPARQL, le langage de requête pour RDF dont j'ai déjà parlé, différentes informations :

  1. les indications géographiques (longitude et latitude) rassemblées dans la propriété foaf:basedNear pour pouvoir afficher la photo du lieu avec Google Maps ;

  2. si la personne utilise Flick'r, je récupère les informations sur son compte rassemblées dans la propriété foaf:holdsaccount pour pouvoir afficher les dix dernières photos ajoutés ;

  3. même méthode pour del.icio.us pour afficher les dix derniers items affichés ;

  4. même méthode pour bloglines pour afficher les fils publics auxquels on est abonné ;

  5. l'ISBN du livre en cours indiqué avec la propriété menow:reading pour pouvoir afficher les différentes informations sur cet ouvrage avec le Web services d'Amazon.

J'aurais bien aimé remplacé la dernière information par la récupération des livres rassemblées dans un compte Library Thing, mais ce dernier ne propose pas pour l'instant de Web services et d'API pour récupérer les données. Effectivement, pour pouvoir récupérer toutes ces informations, j'utilise les Web services et les API mis à disposition par les différents sites et que j'utilise avec les mêmes méthodes expliquées dans un précédent billet et je construit alors un mashup.

Quelques lignes de programmation en PHP plus tard et l'utilisation de l'API RDF pour PHP, RAP, on obtient ce tableau de bord des services web 2.0 avec FOAF. Si vous avez un fichier FOAF et que vous mettez les bonnes indications dans votre fichier FOAF, vous pouvez tester ce service, en remplaçant l'URL de mon fichier FOAF par le vôtre dans la barre d'adresse. Vous pouvez bien entendu vous appuyer sur mon fichier FOAF pour construire ou compléter en conséquence le vôtre.

Ce tableau de bord se limite à Flick'r, bloglines et del.icio.us. Mais, il est assez simple sur le même modèle d'ajouter d'autres services. Si des personnes sont intéressées par le code source, je le ferai passer avec plaisir.

Quelques notes en passant

1 Je précise que ce n'est pas parce que j'utilise ce terme que je l'approuve pour autant... ;-)

RDF Sparql Web services Geekeries —