Quels exemples de JSON-LD copier pour décrire une marque, un article et un glossaire ?
Quatre exemples couvrent l’essentiel pour une marque : une organisation et ses pages de référence, un article relié à son auteur et à ses dates, un fil d’Ariane et un glossaire. Chacun est commenté champ par champ, avec la source qui le décrit. Google écrit que le balisage n’est pas requis pour ses fonctions d’IA : ces modèles décrivent une page, ils ne la font pas citer.
Comment décrire une organisation en JSON-LD ?
En une fiche courte, exacte et identique à ce qui est affiché sur le site. Google n’impose aucune propriété pour une organisation et conseille d’en fournir autant qu’il est pertinent. Le modèle suivant décrit une marque fictive, dont toutes les adresses sont inventées.
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Marque Alpha",
"alternateName": "Alpha",
"url": "https://marque-alpha.example/",
"description": "Logiciel de facturation pour les indépendants.",
"address": {
"@type": "PostalAddress",
"streetAddress": "Rue de l’Exemple",
"addressLocality": "Ville-Exemple",
"addressCountry": "FR"
},
"sameAs": [
"https://www.wikidata.org/wiki/Q0000000",
"https://marque-alpha.example/a-propos/"
],
"contactPoint": {
"@type": "ContactPoint",
"contactType": "customer service",
"email": "contact@marque-alpha.example"
}
}
- Le contexte désigne le vocabulaire schema.org, et le type décide des propriétés qui s’appliquent. Les trois autres modèles de la page ouvrent de la même façon.
- Le nom est celui du site et des autres profils ; Google décrit aussi, parmi les propriétés recommandées, un autre nom courant, l’adresse, le point de contact et la description.
- L’adresse du site est celle de la page d’accueil, sous une seule forme canonique.
- Le champ sameAs liste des pages de référence qui identifient l’organisation sans ambiguïté, d’après schema.org. Seuls des profils réels, avec leur adresse exacte, y ont leur place ; l’identifiant Wikidata ci-dessus est inventé.
- Le point de contact ne se renseigne que s’il existe, et son courriel doit être celui affiché sur le site.
Comment relier un article à son auteur et à ses dates ?
En le balisant comme un article, avec un titre, deux dates et un auteur identifiable. Google accepte les types Article, NewsArticle et BlogPosting, et recommande l’auteur, les dates de publication et de modification, le titre et une image. Le modèle suivant reprend ces champs pour un article fictif.
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Comment lire un relevé de facturation",
"image": "https://marque-alpha.example/images/releve.png",
"datePublished": "2026-03-12T09:00:00+01:00",
"dateModified": "2026-05-02T14:30:00+02:00",
"author": {
"@type": "Person",
"name": "Camille Exemple",
"url": "https://marque-alpha.example/equipe/camille-exemple/"
},
"publisher": {
"@type": "Organization",
"name": "Marque Alpha",
"url": "https://marque-alpha.example/"
}
}
- Le type BlogPosting est l’un des trois que Google reconnaît pour un article.
- Le titre est celui affiché sur la page, sans variante réservée aux machines.
- Les deux dates suivent le format ISO 8601, d’après Google. Elles doivent correspondre aux dates visibles sur la page, d’après Google.
- L’auteur est une personne ou une organisation ; Google recommande une adresse ou des pages de référence pour l’identifier. Pour schema.org, une personne peut même être fictive, ce que le nom de l’exemple est.
- L’éditeur reprend l’organisation du premier modèle, pour que les deux fiches désignent la même entité.
Comment baliser un fil d’Ariane ?
En listant les pages de la chaîne qui mène à la page courante, chacune avec sa position, son nom et son adresse. schema.org définit un fil d’Ariane comme une chaîne de pages liées, qui se termine en général par la page courante. Le modèle suivant décrit une page d’aide fictive, à trois niveaux.
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Accueil",
"item": "https://marque-alpha.example/"
},
{
"@type": "ListItem",
"position": 2,
"name": "Aide",
"item": "https://marque-alpha.example/aide/"
},
{
"@type": "ListItem",
"position": 3,
"name": "Premiers pas",
"item": "https://marque-alpha.example/aide/premiers-pas/"
}
]
}
- Les éléments de la liste sont des objets de type ListItem, comme le prévoit schema.org.
- Les positions sont des entiers qui commencent à un, d’après schema.org : le vocabulaire ne leur donne pas d’autre sens.
- Chaque élément porte un nom et l’entité qu’il représente dans la liste, que schema.org décrit comme une entrée de la liste.
- Le dernier élément est la page courante. Les noms doivent être ceux du fil d’Ariane visible sur la page.
Les exigences d’un moteur de recherche pour ce balisage figurent sur une page que nous n’avons pas ouverte : elles ne sont pas documentées ici, et ce modèle ne vaut que pour le vocabulaire de schema.org.
Comment décrire un glossaire en JSON-LD ?
En déclarant un ensemble de termes et, pour chacun, son nom et sa définition. D’après schema.org, un DefinedTermSet est un ensemble de termes définis, dont chacun est un objet à part. Le modèle suivant balise un glossaire fictif de deux termes, avec les définitions affichées sur la page.
{
"@context": "https://schema.org",
"@type": "DefinedTermSet",
"name": "Glossaire de Marque Alpha",
"url": "https://marque-alpha.example/glossaire/",
"hasDefinedTerm": [
{
"@type": "DefinedTerm",
"name": "Facture récurrente",
"description": "Facture émise automatiquement à intervalle régulier.",
"inDefinedTermSet": "https://marque-alpha.example/glossaire/"
},
{
"@type": "DefinedTerm",
"name": "Relance",
"description": "Message qui rappelle à un client une facture impayée.",
"inDefinedTermSet": "https://marque-alpha.example/glossaire/"
}
]
}
- L’ensemble porte un nom et une adresse ; la propriété qui lui rattache ses termes est hasDefinedTerm, d’après schema.org.
- Chaque terme est un objet de type DefinedTerm, avec son nom et sa description, d’après schema.org.
- La propriété inDefinedTermSet indique l’ensemble auquel le terme appartient. Ici, l’adresse de la page du glossaire joue ce rôle.
- Les descriptions reprennent mot pour mot les définitions affichées : Google demande de ne pas baliser un contenu que les lecteurs ne voient pas.
Où placer le code, et comment le vérifier ?
Dans une balise script de type application/ld+json sur la page décrite, puis dans un outil de test avant la mise en ligne. Google recommande le JSON-LD, accepte aussi Microdata et RDFa, et propose son test des résultats enrichis. La liste suivante résume les contrôles.
- Chaque bloc décrit la page où il se trouve, et chaque champ a son équivalent visible sur cette page (Google).
- Les dates du balisage sont celles qui s’affichent sur la page (Google).
- Les adresses de sameAs sont celles de profils réels et à jour (schema.org).
- Le JSON est valide : une virgule en trop ou un guillemet droit mal fermé suffit à invalider le bloc entier.
- Le code est passé dans l’outil de test de Google avant la publication.
- Convention d’Abysia : aucun avis, aucune note ni aucune offre dans ses propres balisages, faute de donnée publique à y mettre.
Ces modèles décrivent des pages, ils ne font pas citer une marque : le guide de Google écrit que les données structurées ne sont pas requises pour ses fonctions d’IA, et aucune source consultée ne montre qu’un autre service s’en serve pour choisir ses réponses.
Questions fréquentes
Un balisage valide assure-t-il un affichage particulier ?
Non. Google n’assure pas qu’un balisage valide produise un affichage particulier, et il avertit qu’un balisage trompeur peut conduire à une action manuelle. Le balisage décrit la page, rien de plus. (source)
Faut-il choisir Article, NewsArticle ou BlogPosting ?
Les trois types sont acceptés par Google pour un article. Le choix porte sur la nature du contenu : BlogPosting pour un billet de blog, NewsArticle pour une actualité, Article pour le reste. (source)
L’auteur d’un article doit-il être une personne ?
Non : Google accepte une personne ou une organisation, et recommande de renseigner une adresse ou des pages de référence pour l’identifier. L’essentiel est que l’auteur annoncé soit celui qui est affiché sur la page. (source)
Peut-on baliser un contenu qui n’est pas affiché ?
Non. Google demande de ne pas baliser un contenu que les lecteurs de la page ne voient pas. Tout champ du balisage doit avoir son équivalent visible sur la page. (source)
Ce qui a changé
- : Publication.
Sources
- Optimizing your website for generative AI features on Google Search (Google Search Central), vérifiée le 23 octobre 2026
- Intro to how structured data markup works (Google Search Central), vérifiée le 23 octobre 2026
- Organization schema markup (Google Search Central), vérifiée le 23 octobre 2026
- Learn about Article schema markup (Google Search Central), vérifiée le 23 octobre 2026
- Influence your byline dates in Google Search (Google Search Central), vérifiée le 23 octobre 2026
- General structured data guidelines (Google Search Central), vérifiée le 23 octobre 2026
- sameAs (schema.org) (schema.org), vérifiée le 23 octobre 2026
- DefinedTerm (schema.org) (schema.org), vérifiée le 23 octobre 2026
- DefinedTermSet (schema.org) (schema.org), vérifiée le 23 octobre 2026
- Person (schema.org) (schema.org), vérifiée le 23 octobre 2026
- BreadcrumbList (schema.org) (schema.org), vérifiée le 24 octobre 2026
- ListItem (schema.org) (schema.org), vérifiée le 24 octobre 2026
À lire aussi
- Rubrique : Agir (toutes les ressources)
- Quelles données structurées sont utiles aux IA, et pourquoi ?
- Comment rendre sa marque identifiable : entités, Wikidata et mentions tierces ?
- À quoi ressemble un llms.txt, et comment écrire le sien ?
- Quels points vérifier, dans quel ordre, pour auditer la visibilité d’un site dans les IA ?
- Glossaire : DefinedTermSet, Données structurées, JSON-LD, sameAs