tl; dr , les trois façons d'annoter sémantiquement du contenu dans des documents HTML5 :
- Les microdonnées et RDFa sont des syntaxes (extension du HTML) pour baliser sémantiquement le contenu, mais elles ne fournissent pas de vocabulaire.
- Les microformats sont une convention (réutilisant ce que HTML fournit) pour baliser sémantiquement le contenu et (uniquement!) Fournit des vocabulaires à cet effet.
Schema.org est une collection de vocabulaires (qui peuvent être utilisés avec différentes syntaxes, y compris les microdonnées et RDFa, mais pas les microformats), donc cette question devrait être: microdonnées vs microformats? Et pourquoi ne pas inviter RDFa à la fête?
RDFa et microdonnées ne sont pas identiques, mais similaires sur le plan de la conception . Les microformats diffèrent cependant fortement des deux.
Si votre seul objectif est d'améliorer l'affichage des résultats de recherche des moteurs de recherche, peu importe la méthode de balisage que vous choisissez (tant qu'elle est prise en charge par le moteur de recherche). Mais le «balisage sémantique», bien sûr, permet bien plus: la construction du Web sémantique . Non sans raison, les microformats se rapportent au terme "Web sémantique en minuscules", tandis que RDFa se rapporte au "Web sémantique en majuscules" (les microdonnées sont une syntaxe plus récente, mais elles s'inscriraient dans la variante en majuscules).
La principale différence: l' extensibilité . RDFa et Microdata utilisent des URI, Microformats utilise des noms de classe spécifiques (pour l' class
attribut HTML ) et des types de lien (pour l' rel
attribut HTML ). Cela signifie:
Avec les microformats, vous ne pouvez annoter certains contenus que si la communauté des microformats a créé et accepté un «vocabulaire» approprié (c'est-à-dire un microformat).
Avec RDFa et microdonnées, vous pouvez créer votre propre vocabulaire s'il n'en existe pas déjà un approprié (et il existe de nombreux vocabulaires ).
Google dit que je ne peux pas utiliser les deux "car cela peut perturber l'analyseur".
Je ne laisserais pas cela m'empêcher de mettre en œuvre plusieurs méthodes de balisage. En outre, Google a en quelque sorte révoqué cette déclaration dans un chat.
Mise à jour: sur la documentation de Google sur les données structurées , il n'est dit nulle part qu'ils ne pouvaient pas gérer différentes syntaxes sur le même document. Et leur outil de test ne signale aucune erreur si plusieurs syntaxes sont utilisées.
Voir également les questions connexes sur Stack Overflow: