Les données structurées sont très vivement encouragées depuis 2014 par Google pour améliorer la description des pages internet. Que sont-elles exactement ? Pourquoi est-il intéressant pour les utilisateurs d’afficher du contenu enrichi ? Quels sont les différents formats existants et recommandés ?
Que sont les données structurées ?
Les données structurées font référence à des données possédant un haut niveau d’organisation. Comme dans une base de données relationnelle, les informations sont organisées de manière cohérente, reliées entre elles par une structure hiérarchisée et pertinente. En se basant sur cette structure clairement établie, les moteurs de recherche ont bien plus de facilité à comprendre les informations délivrées dans une page indexée. Par conséquence, l’affichage de ces informations dans les résultats de recherche peut être réalisé de manière bien plus attrayante pour l’utilsateur.
Voir des exemples dans l’article précédent : Rich snippet : attirer plus de visiteurs sur vos pages
Le balisage de données structurées correspond donc au « codage », aux normes servant à organiser les données. Son but est de décrire précisément les objets et leurs propriétés.
Prenons l’exemple d’un site proposant des informations sur des clubs de sports. Vous pouvez utiliser le balisage pour décrire les propriétés de chaque établissement, telle que la description de ses prestations, l’URL d’une photo d’une activité proposée ou d’un matériel, l’emplacement géographique et la note globale émise par les internautes ayant fréquenté cette salle.
L’intérêt d’améliorer les données présentes sur vos pages et donc fournies à Google et cie est donc assez évident. Il s’agit là d’améliorer grandement l’attractivité des résultats de recherche proposés par les différents moteurs de recherche, en ajoutant des informations à haute valeur ajoutée qui distingue le SERP concernant votre page web de celles de vos concurrents.
Le vocabulaire de schema.org
Pour baliser les données structurées, le standard qui s’est imposé est le vocabulaire de schema.org. Celui-ci a pour but d’améliorer internet grâce à la création d’un vocabulaire commun pour décrire les données sur le Web.
Ainsi, en utilisant ce balisage sur les pages HTML, les données sont facilement interprétables par les robots d’indexation des moteurs de recherche. De la même façon, un e-mail au format HTML incorporant ce balisage verra ses données aisément interprétées par les messageries.
Formats de balisage des données structurées
Il existe différents formats de balisages de données structurées : RDFa, Microdata et JSON-LD. Ils utilisent le vocabulaire standard schema.org.
Il est évidement plus que souhaitable de choisir un des formats et de ne pas en utiliser plusieurs sur la même page ou sur le même e-mail.
Voici par exemple le code HTML lambda décrivant un événement :
<div> Venez tous au concert de Machin Truc le 37 nivôse 2023 au Palais des Sports de Norköpping-sur-Mer ! </div>
Le format JSON-LD
JSON-LD (pour JavaScript Object Notation for Linked Data) est le format recommandé par Google.
Les données sont définies à l’aide d’un objet JavaScript dans votre page HTML. Voici le code exemple ci-dessus réécrit avec le balisage JSON-LD :
<script type="application/ld+json"> { "@context" : "http://schema.org", "@type" : "Event", "name" : "Machin Truc", "startDate" : "2023-04-36", "location" : { "@type" : "Place", "name" : "Palais des Sports" }, "address": { "@type": "PostalAddress", "addressLocality": "Norköpping-sur-Mer" } } </script>
Étant du JavaScript, la notation est distincte du corps du HTML lui-même, la balise de script étant à placer en en-tête de la page. L’avantage est que le balisage n’est pas entrelacé avec le texte visible par l’utilisateur, ainsi il est plus facile d’exprimer les éléments de données. De plus, le moteur de recherche est à même de lire des données JSON-LD injectées dynamiquement dans le contenu de la page, que ce soit par du JavaScript ou par un widget WordPress par exemple.
Vous trouverez plus d’informations sur le site JSON-LD.
Microdonnées (Microdata)
Les données sont définies à l’aide de balises et d’attributs HTML, entrelacées avec le code HTML.
Voici ce que donne le code HTML exemple agrémenté du balisage au format microdonnées :
<div itemscope itemtype="http://schema.org/Event"> Venez tous au concert de <span itemprop="name">Machin Truc</span> le <span itemprop="startDate" content="2023-04-37>37 nivôse 2023</span> au <span itemprop="location" itemscope itemtype="http://schema.org/Place"> <span itemprop="name">Palais des Sports</span> </span> de <span itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"> <span itemprop="addressLocality">Norköpping-sur-Mer</span> </span> ! </div>
Spécification HTML de communauté ouverte utilisée pour imbriquer des données structurées dans un contenu HTML. Comme RDFa, il utilise des attributs de balises HTML pour nommer les propriétés que vous souhaitez exposer en tant que données structurées. Tous les types de données
Vous trouverez plus d’informations sur les microdatas via l’article À propos des microdonnées.
RDFa
Recommandation du W3C, RDFa (pour « Resource Description Framework dans des Attributs ») utilise des attributs de balises HTML pour nommer les propriétés que l’on souhaite afficher comme données structurées : attributs class, id, rel, rev et href. De plus, elle ajoute ses propres attributs about, property, content, datatype et resource.
Le code exemple précédent devient :
<div vocab="http://schema.org/" typeof="Event"> Venez tous au concert de <span property="name">Machin Truc</span> le <div property="startDate" content="2023-04-36">37 nivôse 2023</div> au <div property="location" typeof="Place"><span property="name">Palais des Sports</span> de <div property="address" typeof="PostalAddress"> <span property="addressLocality">Norköpping-sur-Mer</span> </div> </div> </div>
Vous trouverez plus d’informations en anglais à l’adresse http://rdfa.info/