Les gravatars[1], ce sont ces petites images que vous pouvez voir sur certains blogs pour identifier visuellement les personnes qui commentent des billets.
Ce service est proposé par Gravatar.com, qui a tendance à tomber facilement en rade ces derniers temps, notamment puisque chaque affichage d’une image correspond à une requête sur le serveur.
D’ou la question “Pourquoi ne pas décentraliser ce service et proposer à chacun d’héberger son avatar ?”
A supposer que tout les posseurs d’avatars puissent héberger leur image (site personnel, imageshack …), il faut ensuite trouver un moyen d’associer à chacun l’URL de la dite image.
Et c’est la que FOAF intervient ! En effet, une solution peut être d’utiliser son profil FOAF pour spécifier l’emplacement de son avatar. Pour faire simple, FOAF est un vocabulaire RDF axé sur les individus et les relations qu’ils entretiennent entre eux. On peut ainsi y décrire son nom, ses centres d’intêret … le tout dans un formalisme bien défini, dans l’esprit du Web Sémantique. Certaines applications comme foaf-a-matic permettent de créer simplement un premier profil.
Donc, pour en revenir à notre avatar, l’idée est de définir un vocabulaire gravatar, avec une propriété gravatar:gravatarImage, sous classe de foaf:depiction ou de foaf:img – avec une préférence pour la première, qui permet de bénéficier de la propriété inverse foaf:depicts – , afin d’écrire ce genre de choses (la partie descriptive associée au vocabulaire DublinCore étant optionnelle):
<gravatar:gravatarImage> <Image rdf:about="http://my.website/gravatar.png"> <dc:title>Alex gravatar</dc:title> <dc:description>Alex gravatar for weblogs comments</dc:description> <dc:format>image/png</dc:format> </Image> </gravatar:gravatarImage>
On pourrait par la même occasion s’identifier sur les blogs non plus par le classique {Nom, E-mail, URL}, mais simplement en indiquant l’URL de son profil.
Nouveau “problème”, puisqu’il n’y a pas de contraintes de cardinalité sur les propriétés d’un profil FOAF (ces contraintes sont proposées seulement au niveau OWL), quel nom, e-mail et URL choisir lorsqu’un utilisateur en a indiqué plusieurs ? On pourrait imaginer prendre le premier, mais ça n’est pas forcément celui que l’utilisateur souhaite afficher lorsqu’il bloggue (spam …).
En conséquence, plutot qu’un vocabulaire gravatar, pourquoi pas un vocabulaire blogging, permettant d’écrire quelque chose comme ça ?
<blogging:name>Alex</blogging:name> <blogging:email>alex@NOSPAM.passant.org</blogging:email> <blogging:homepage rdf:resource="http://apassant.net" /> <blogging:gravatarImage> <Image rdf:about="http://my.website/gravatar.png"> <dc:title>Alex gravatar</dc:title> <dc:description>Alex gravatar for weblogs comments</dc:description> <dc:format>image/png</dc:format> </Image> </blogging:gravatarImage>
Les weblogs s’occupant ensuite de parser le fichier lors de la soumission d’un commentaire pour afficher les infos indiquées par le propriétaire du profil.
Notes
[1] globally recognised Avatar