En vue d'explorer les possibilités de RDFa, j'ai mis au point une petite application. Dans la barre à droite sur ce billet, j'ai ajouté une boîte dite Knowledge box. Son principe est simple. En cliquant sur un terme, le résumé de sa définition dans Wikipedia et un lien vers la page de la Wikipedia francophone s'affichent.
En soi, l'idée n'est pas révolutionnaire et j'aurais pu le faire sans déployer toute l'artillerie des technologies du Web sémantique, mais ce qui me paraît intéressant dans cette expérience, c'est de montrer les atouts de disposer d'une syntaxe normalisée pour repérer des entités, RDFa, qui peut être exploitée de différentes façons, comme je le montrais dans mon précédent billet sur le sujet, de disposer d'une base de données structurées dans une syntaxe normalisée avec des URI identifiant chaque concept, Dbpedia en RDF et d'un langage de requêtes normalisé, Sparql. Bref, j'aurais pu faire cette expérience avec une base de données MySQL et quelques scripts PHP, mais dans ce cas, il aurait fallu que je maintienne les définitions et ma solution n'aurait pu être implémentée que sur mon site. Evidemment, nous sommes encore loin du rêve de Tim Berners-Lee d'agents intelligents capables de rapatrier et d'agréger les données pour répondre à une question précise, mais imaginez les possibilités d'une telle application dans une bibliothèque numérique qui afficherait les données des notices d'autorités, mis à disposition de tous en RDF ou dans une édition critique en ligne qui afficherait les notices biographiques provenant de l'agrégation de toutes les bases de données prosopographiques qui traînent dans les labos d'histoire en France... Je suis sûr que vous trouverez plein d'autres idées.
Maintenant, concrètement, un script PHP parse le contenu du billet via Xpath et récupère toutes les chaînes de caractère des noeuds dont l'attribut rel contient la propriété OWL "owl:sameAs". L'URI indiqué permet de construire la requête en Sparql pour interroger l'entrepôt de données RDF de DBpedia. Le résultat est affichée sur cette page grâce à AJAX et le tour est joué. Bon, c'est codé avec les pieds, mais si certains d'entre vous sont intéressés, ce sera avec plaisir de donner le script. Je vais continuer à l'améliorer (si certains veulent m'aider, ce sera ausi avec plaisir ;-) ), pour diversifier les données RDF interrogées, les différentes propriétés affichées (une image, les coordonnées géographiques...) et si, en tant que lecteur, ça vous intéresse, n'hésitez pas à me le préciser, je généraliserai cette knowledge box à tous les billets.
Mise à jour (28/05/07) : J'avais oublié d'activer cette box pour les personnes non connectées au site, c'est maintenant chose faite. Merci Christian.
Commentaires
@Pascal et Ben
Merci !!
@G.
Je te l'envoie par mail, mais je te préviens c'est vraiment pas propre comme code ;-)
@Karima
A-priori, je ne suis pas intéressé pour en faire un plugin Wordpress (j'utilise pas wordpress ;-) ), mais je peux t'envoyer le code si tu veux en faire un.
@Anonyme
Merci pour le lien, il faudra que je regarde ces use cases en détail.
@Manic5
Je suis assez d'accord sur le danger de limiter à une source d'information. Pour autant, dans mon exemple, il existe une différence de taille avec Alexandria, dans le cas d'Alexandria, tu installes le script et tu ne peux pas choisir quel mot est affecté, ni même la provenance des informations. Ce n'est pas le cas ici, puisque tu choisis les mots que tu veux tagguer en RDFa et surtout tu choisis l'entrepôt RDF que tu veux pour linker une chaîne de caractères. Le pouvoir est bien du côté du producteur de l'info.
@Alex
Merci ! J'ai vu pour Operator, ce sera d'ailleurs un des liens de mon prochain billet et, effectivement, j'attends cela avec impatience pour implémenter mon idée. Comme tu dis, il restera à simplifier la publication et là c'est moins évident... Mais, je te sens chaud sur le sujet ;-)
@Christian
Tu dois faire peur à mon site, je ne vois pas d'autres explications ;-)
Le code de la knowledge box est disponible dans le billet http://lespetitescases.net/code-knowledge-box
Bonjour,
Je trouve ce module intéressant.
Je serais intéressé par le code source de votre application, afin de développer une appli web 3.0 sur mon site internet, est-ce que vous pouvez me l'envoyer par mail svp ?
Bonjour,
Je suis jeune dans la profession (intégrateur) et commence à m'intéresser de près à RDFa. J'ai du mal à voir toutes l'étendu des possibilités en fait.
Quels seraient les différentes utilisations de RDFa dans un site classique et quelles autres dans une boutique ?
Merci en tous cas, car ce sont vos articles que j'ai trouvé en 1er (+ biologeek) et qui m'ont initié.
Très bonne journée
Raphael