Actualités

Quand Bill Gates a récemment dit durant la MIX Conference, "We need microformats," il indiquait que les microformats sont ici pour rester. Les Microformats sont attendus pour avoir une plus grande importance sur le web. Mais au fait, qu'entendons-nous par microformats ?

Les microformats sont un ensemble de formats ouverts de données utilisées pour baliser le contenu XHTML afin de lui fournir un peu de sens sémantique. Les partisans classent souvent les MicroFormats comme une section “minuscule” du web sémantique, afin de le distinguer de l'objectif imposant (et par certains aspects inatteignable) du “Web Sémantique.”

Un exemple peut aider à rendre ce sujet plus concret.

La ligne suivante est un exemple du code XHTML que quelqu'un pourrait utiliser pour lier vers mon wikiblog.

<a href=http://xtof.viabloga.com title="le wikiblog de xtof" rel="friend met">Un ami</a>

Remarquez la section en gras, rel="friend met". Cette valeur d'attribut indique que la balise ancre pointe vers quelqu'un qui est à la fois un ami de l'auteur et quelqu'un que l'auteur a rencontré.

Pour pointer vers vous-même, spécifiez simplement une valeur “me”:

<a href="http://xtof.livejournal.com/" title="Le blog du traducteur" rel="me">Nom auteur</a>

Attacher l'information de relation dans une balise ancre est un exemple du MicroFormat XFN.

Notez la simplicité de ce format. En ajoutant simplement un attribut rel à votre syntaxe HTML, vous êtes déjà prêt à ajouter des microformats à votre code. Ce format est fondé sur un format pré-existant appelé le XHTML Friends Network.

Principes Essentiels des Microformats

L'exemple XFN au-dessus démontre l'un des principes fondateurs du design microformat : construction au-dessus du travail initial. C'est l'un des six principes-clés listés sur le site Web des microformats :

  1. Résoudre un problème spécifique.
  2. Démarrer aussi simple que possible.
  3. Design d'abord conçu pour les humains, ensuite pour les machines.
  4. Réutilisation de briques de constructions provenant de standards largement adoptés.
  5. Modularité / encastrables.
  6. Permettre et encourager un développement décentralisé des services et des contenus.

Résoudre un problème spécifique : Votre penchant naturel peut être de choisir le nouveau marteau des micro-formats et de regarder tous les types de données comme des clous attendant de se faire enfoncer. Vous pourriez imaginer utiliser un microformat pour catégoriser toutes les appellations contrôlées des vins de bordeaux. Mais avant de faire ça, le concepteur de microformats devraient imaginer quel problème il va essayer de résoudre.

Dans l'exemple précédent XFN, votre problème pourrait être “Comment puis-je exprimer ma relation à la personne ou au site que je suis en train de lier ?” Les raisons pour résoudre ce problème sont nombreuses, l'une d'entre elles pouvant être que l'auteur veuille s'assurer que les lecteurs comprennent quels sont les sites qu'il cautionne et quels sont ceux qu'il ne recommande pas.

Démarrer aussi simple que possible. Plutôt que d'attaquer un problème complexe, cherchez un problème plus simple à résoudre et commencez par là. Au fil du temps, et au fur et à mesure que les designers résoudront des problèmes simples, ils pourront construire leurs solutions pour résoudre des problèmes encore plus complexes. Le fait de maintenir les microformats simple aide à encourager l'adopttion parce que les personnes sont souvent intimidées par des formats bien trop complexes.

Design d'abord conçu pour les humains, ensuite pour les machines : Concevoir pour les humaines exige tout d'abord que les micro-formats doivent être plus que simplement compris par une machine (parsables ?). Ils doivent être aussi présentables. Les microformats réduisent la redondance provoquée en ayant une page (tel qu'une page Web de blog ou bliki) avec le contenu à lire pour des humains et un fichier distinct (comme un fil RSS) conçu spécifiquement pour les machines.

Approfondissons ce dernier point. Le RSS a été conçu pour être "parsable", aussi il peut être facilement lu par des machines. Les utilisateurs s'abonnent à un fil RSS en utilisant un agrégateur RSS, qui ensuite le parse et met en page l'information dans le fil d'une manière qui soit affichable. Les fils RSS ne sont pas conçus pour être directement lus par un navigateur Web (bien que quelques auteurs Web sachent fournir une feuille de style XSLT et un fichier CSS qui transforme un fil RSS en un format lisible par les humains).

A l'opposé, les microformats sont incorporés dans le contenu lui-même, ainsi un fil séparé n'est pas nécessaire. Les microformats sont aussi destinées à être faciles à écrire. Ceci contribue à promouvoir son adoption par les producteurs de contenus de la même manière que le HTML a vu une adoption largement répandue.

Réutilisation de briques de constructions provenant de standards largement adoptés : Les designers de Microformat font tous les efforts pour réutiliser les briques de construction des standards largement adoptés. En regardant les modèles existants d'usages et les formats existants, les créateurs de microformats évitent de réinventer la roue et et s'appuient sur le travail des autres. Cette technique de regarder le travail existant est souvent appelé "paving the cowpaths". (NDT : daller les chemins de vaches)

Daller les chemins des vaches s'illustre en regardant l'histoire de la création du contenu web. Au fil du temps, il y a eu un mouvement général dans la communauté web qui s'est éloigné de l'incorporation de l'information de style dans la syntaxe HTML. Au fur et à mesure que le design Web CSS grandissait régulièrement, les auteurs de HML ont essayé de garder la présentation distincte du contenu. Naturellement, beaucoup d'auteurs ont commencé par utiliser les attributs class pour ajouter une information sémantique aux éléments à l'opposé de l'information de style.

Les créateurs de microformats ont observé ce comportement et ont tenté de codifier et catégoriser ce comportement existant dans un dictionnaire de formats XHMTL. Tous les formats ne sont pas tirés des modèles existants dans le HTML. Le format hCard, par exemple, est une représentation "one to one" de la représentation du standard vCard (RFC2426).

Plutôt que d'essayer de créer un tout nouveau format pour décrire les contacts, les créateurs de hCard ont choisi de se concentrer sur le mappage d'un format existant et largement utilisé dans le XHTML.

Modularité : En général, le terme modularité renvoie à la propriété d'un système dans lequel les parties individuelles peuvent être visualisées, séparées et modifiées indépendamment du système complet. Dans un système modulaire, ces parties individuelles s'adaptent proprement les unes avec les autres.

Les microformats sont conçus avec ce principe. En garantissant que les microformats ne contiennent pas de dépendances non nécessaires sur les ressources externes (telle que l'URL de la page d'hébergement ou tout autre contenu dans la page), les producteurs de contenus peuvent facilement incorporer les microformats dans n'importe quel contenu.

Cette approche modulaire facilite aussi le fait de composer ensemble des microformats pour créer d'autres microformats. Cette capacité d'incorporer un microformat dans un autre est une technique puissante pour construire de nouveaux microformats.

Permettre et encourager un développement décentralisé, des services de contenu : En basant les microformats sur des conventions simples, à l'opposé de schémas stricts, les microformats peuvent être développés de manière décentralisée. Il n'y a pas d'entrepôt unique ou une autorité accrédité pour les microformats.

Ceci permet à des éditeurs de créer des microformats qui peuvent servir des besoins de niches. Par exemple, les collectionneurs d'étiquettes de vins pourraient tout à fait construire un microformat à propos des étiquettes de vins.

Pourquoi les Microformats ?

Avoir une compréhension de ce que sont les microformats ne fournit pas nécessairement une compréhension du pourquoi des microformats. Pourquoi les éditeurs de contenus et les développeurs se soucient des microformats ?

Les microformats représentent la prochaine étape de la publication web. Ils fournissent un moyen pour les éditeurs de contenus de publier une information riche sans s'appuyer sur des services centralisés. Ceci donne aux éditeurs plus de contrôle sur leur information, plutôt que d'avoir de telles données isolées dans des silos isolés.

Par exemple, plutôt que de faire confiance à quelque service de calendrier décentralisé, une personne pourrait en théorie, afficher une série de hEvents (événements) sur son propre blog ou wiki ; ces données pourraient être importées dans le logiciel de son amie acceptant les microformats. Au fur et à mesure qu'apparaîtront les microformats, plus il y aura de services construits sur différents microformats.

Je pensais que le XML était supposé faire tout ça ?

Vous pourriez vous demander pourquoi vous ne choisiriez pas XML pour représenter les données au lieu des microformats. Ceci est véritablement le sujet du débat en cours. Néanmoins, les microformats ont plusieurs avantages-clés sur l'incorporation du XML dans les pages web.

Le premier avantage est que les microformats ont déjà une tâche très spécifique quand ils sont créés et bâtis sur un travail initial. Ceci aide à éviter les spécifications extrêmement nombreuses et compliquées qui sont associées avec les langages XML.

Un autre avantage est la réduction de la redondance dans les sources de données, comme cela a été évoqué dans la section traitant de la conception prioritaire pour des humains. Il n'y a pas de besoin d'un format unique de données pour les humains et d'un autre pour les machines.

Une autre forme de redondance que les microformats évitent à quelque chose à voir avec le fait que dans XML et les autres formats, les éléments peuvent avoir un nom. Pour illustrer ce point, prenons un exemple extrêmement simple. L'exemple suivant est celui d'un format vCard qui n'est ni XML ni un microformat.

BEGIN:VCARD
VERSION:3.0
N:Dupont;Pierre
FN:Pierre Dupont
URL:http://dupont.com/
ORG:VelocIT
END:VCARD

Notez que les données du nom sont répétées deux fois. Une fois pour l'élément N et une fois de plus pour l'élément FN.

Les exemples de hCard donnés dans le wiki des microformats démontrent la manière dont les microformats peuvent éliminier la redondance.

<div class="vcard">
<a class="url" href="http://dupont.com/">
        <span class="fn n">
        <span class="given-name">Pierre</span> 
        <span class="family-name">Dupont</span>
        </span>
</a>
<div class="org"><span class="organization-name">VelocIT</span></div>
</div>

Cette traduction microformat du format vCard n'a besoin seulement que de spécifier le nom une fois, en appliquant plusieurs “element names” au span qui contient le nom.

Les “Elements” dans les microformats sont spécifiés dans les attributs comme un ensemble d'espaces séparés par des “element names”. De ce fait, un simple morceau de donnée dans la syntaxe peut être partagé avec plusieurs éléments, réduisant la redondance.

Inconvénients des Microformats

Comme le fait remarquer Mark Pilgrim dans son billet de blog, Syndication is not Publication, chaque format a ses forces et ses faiblesses. Une faiblesse potentielle du microformat est peut-être une conséquence de réduire la redondance via le principe du design conçu d'abord pour des humains et ensuite pour les machines. Syndiquer les microformats exige plus de bande passante que le fil RSS équivalent. Ce pourrait être un arbitrage sérieux.

A cette heure, le mouvement Microformat est en train de traiter un peu du problème de la poule et de l'oeuf du fait d'un manque d'outils et de logiciels construits autour. Sans outils pour simplifier la création de microformats pour les éditeurs de contenus et pour rendre les microformats plus utilisables et visibles pour les consommateurs de contenus, il est difficile de voir l'objectif de l'effort.

Ceci est en train de changer rapidement au fur et à mesure que les microformats gagnent en popularité. De plus en plus de développeurs sont en train de construire des outils pour les producteurs et consommateurs de contenus.

Quelques Exemples

Avant que vous ne démarriez avec les microformats, cela peut vous aider de regarder différentes démonstrations et outils qui consomment des microformats et de mettre en valeur leur utilité.

Live Bookmarks : Une démonstration récente et excitante de ce qui peut être fait avec les microformats est la présentation du Live Clipboard donnée par le CTO de Microsoft Ray Ozzie. Live Clipboard est un contrôleur DHTML qui fournit la fonctionnalité copier/coller pour le contenu sur le web en utilisant le format de données XML. A noter dans la démonstration d'Ozzie la combinaison de Live Clipboard et des microformats hCard et hCalendar.

Scripts Greasemonkey : Greasemonkey est une extension Firefox qui vous laisse ajouter des morceaux de DHTML à n'importe quelle page web pour changer son aspect ou son comportement. Le site Commununity Engine présente plusieurs scripts Greasemonkey qui concernent spécifiquement les microformats. Le script xfolk-colorize cherche les sections dans une page web formatée qui utilise le microformat xFolk et change la couleur d'arrière-plan en rouge. Les scripts Greasemonkey souligent clairement à l'utilisateur les contenus microformatés. Cela requiert que l'utilisateur installe un plugin de façon à ce qu'il puisse voir les indicateurs visuels de contenus microformatés.

Markup Based Javascript Effect Libraries : Une autre approche pour les producteurs de contenus d'utiliser les librairies d'effets de syntaxe fondées sur JavaScript. Ce sont des fichiers javascript (fonctionnant souvent en tandem avec un fichier CSS) qui ajoutent différents effets aux pages HTML en se fondant sur la syntaxe. Parce que ces scripts sont référencés dans le contenu, le lecteur n'a pas besoin d'installer quelque plugin.

Un exemple de cette approche est le script Hightlighter XFN, écrit par l'auteur de cet article. Ce script attache une méthode à l'événement onload de la page qui ajoute dynamiquement des classes CSS aux liens formatés avec le microformat XFN (comme dans l'exemple présenté plus tôt). Combiné avec une feuille de style, le script ajoute une icône à côté de chaque lien XFN et un outil de "mouseover" qui affiche une liste des relations déclarées.

tags :

Annexe Vidéo : Bill Gates : We need MicroFormats

[Accueil > lien permanent vers cette page - (icône très utilisée dans le monde des carnets web : pour hyperlier cette page avec windows,  placez votre pointeur sur cette icône puis clic-droit et copier le raccourci où vous voulez)]

Seul le lien original fait office de référence - paru initalement 11 mai 2006

Auteur : Phil Haack (un handle, une identité en ligne... !)

Cette traduction en cours s'inscrit dans un "fair-use" pour un auto-apprentissage personnel des microformats et développement de contenus en français sur ce sujet encore bien méconnu chez les Gaulois ?

Attention, contrairement à la licence affichée dans le microformat de ce billet, tout le contenu original du billet est copyrighté et une demande d'autorisation de l'auteur est en cours en attendant de retrouver un vrai nom. Ainsi, merci momentanément de ne pas trop pointer ce billet !

Pour en savoir plus sur les microformats, vous pouvez aider à construire un amorçage de page sur CraoWiki:MicroFormats.