7389 mots, temps de lecture 39 minutes.
Créée en 2011, l’ontologie “Schema.org” (ici abrégée Schema, espace de nom « http://schema.org/ », abréviation : « schema ») résulte de travaux menés par les employés de quatre moteurs de recherche généralistes Google, Bing, Yahoo et Yandex. Ce vocabulaire du web sémantique se montre évolutif, documenté sous forme d’un site web dans lequel de nombreux exemples illustrent des cas de figure fréquents. Les différentes versions du vocabulaire Schema, de même que sa documentation sont gérées de manière publique sous GitHub. Disponible sous licence ouverte Creative Commons Attribution-ShareAlike, l’ontologie permet la description d’une grande variété d’entités. De plus, des vocabulaires complémentaires permettent d’étendre la portée de Schema et d’affiner encore les descriptions. Les applications potentielles vont du commerce électronique jusqu’à la description fine des entités manipulées dans diverses disciplines scientifiques, dans les bibliothèques, les archives et les musées, depuis la simple molécule, en passant par un cours, des livres et autres services, des listes d’objets.
Depuis 2012, Google se sert de Schema pour maintenir et enrichir régulièrement son Knowledge Graph. Des informations, essentiellement extraites de Wikipédia, sont mises à jour dans cette base de connaissance privée, publiquement accessible cependant à l’aide de son API, ou bien via Wikidata. Pour les internautes, lors de requêtes dans Google portant sur des thèmes de culture générale, la page des résultats peut ainsi affficher un encart spécial, nommé Knowledge Panel / Panneau de connaissances. Des données factuelles et enrichies d’images et de résumés, deviennent ainsi structurées et affichées en tête des listes de réponses.
Schema intéresse donc grandement les webmestres à la recherche de fréquentation, les développeurs d’applications : commerce électronique, gestionnaires de contenus, etc. Les informations structurées sont rendues visibles sous forme de données enrichies (rich snippet) dans les SERP (Search Engine Research Page) des moteurs. Des éléments comme les horaires d’ouverture d’un établissement, les avis des internautes ou même le formulaire d’un moteur de recherche peuvent être ainsi affichés directement dans la page Google, sans que l’utilisateur n’ait à suivre de lien. En 2015, Google estimait qu’un tiers des sites web, répartis sur plusieurs centaines de millions de serveurs, se servaient de cette fonctionnalité, particulièrement appréciée lorsque Google est interrogé depuis un smartphone.
Au niveau technique, plusieurs possibilités (plusieurs sérialisations) existent pour insérer les informations à présenter de manière enrichie dans les codes source : 1/ RDFa (Resource Description Framework in Attributes), 2/ Microdata, ou bien 3/ JSON-LD (JavaScript Object Notation for Linked Data). Les avantages importants de ce dernier format sont sa lisibilité humaine et sa légèreté. Google a mis en place de nombreux outils dédiés à l’aide aux développeurs et webmestres, à la captation des informations contenues dans ces pages à l’initiative des webmestres. Formulés en JSON-LD, des séries d’exemples traduits en français sont présents sur Google Search Central, un site d’aide à l’optimisation du référencement.
Dans ce billet, les classes de premier niveau sont successivement passés en revue. Quelques exemples originaux sont proposés. Des personnes, organisations, objets de bibliothèques, d’archives et de musées peuvent être ainsi décrits. Une attention particulière est portée à la modélisation des données bibliographiques. Un livre ainsi peut être décrit différemment selon qu’il est considéré par un libraire en ligne, par un catalogueur ou par un philologue. Des outils dédiés à la génération de codes JSON-LD, à leur validation et à leur soumission aux moteurs de recherche sont finalement listés. Un historique conclut le billet.
- Schema : https://schema.org/
- Guha, R. V., Brickley, D., and Macbeth, S. (2016). Schema.org: Evolution of Structured Data on the Web. Commun. ACM, 59(2), pp. 44–51. http://dx.doi.org/10.1145/2844544, PDF
- Danny Sullivan (2020). A reintroduction to our Knowledge Graph and knowledge panels. Blog Google : Lien
- JSON for Linking Data. https://json-ld.org
- Iliadis, A., Acker, A., Stevens, W., & Kavakli, S. B. (2023). One schema to rule them all: How Schema.org models the world of search. Journal of the Association for Information Science and Technology, 1–64. https://doi.org/10.1002/asi.24744

Plan
- Hiérarchie des Classes
- 1.0 Thing, classe racine
- 1.1 Action
- 1.2 BioChemEntity
- 1.3 CreativeWorks
- 1.3.1 Signalement de cours avec Course
- 1.3.2 Livres
- 1.3.3 Article de périodique
- 1.4 Event
- 1.5 Intangible
- 1.5.1 Une liste d’items
- 1.5.2 Rôles joués par des agents
- 1.5.3 Parties d’un ensemble
- 1.6 MedicalEntity
- 1.7 Organization
- 1.8 Person
- 1.9 Place
- 1.10 Product
- 1.11 Taxon
- DataType
- Groupes de discussion et extensions de Schema
- Un outil pour la construction de bases sémantiques
- Historique de Schema
- Pour aller plus loin
1. Hiérarchie des Classes
RDF Schema, l’une des recommandations du W3C prévoit la possibilité de structurer hiérarchiquement les classes, à l’aide de la propriété « rdfs:subClassOf ». La classe la plus générique est généralement nommée Thing lorsque l’ontologie est écrite en anglais. Dix classes de premier niveau se trouvent actuellement localisées sous la racine de Schema. Des classes de second, troisième ou quatrième niveau peuvent être présentes. Les Classes se distinguent typographiquement des propriétés par leur notation « CamelCase » : la première lettre du nom est écrite en majuscule. Les informations sur un livre peuvent être ainsi partagées en spécifiant par exemple que l’objet principal de la page HTML est de la classe « Book » pour les bibliothécaires, ou bien pour les libraires, « Product ».
- Hiérarchie des classes de Schema (full hierarchy) : Lien

1.0 Thing, classe racine
La classe racine Thing est susceptible de qualifier en absence de précision typologique toute entité. Les propriétés associées peuvent donc qualifier tout objet décrit à l’aide de Schema. Les 12 propriétés que Thing admet sont les suivantes :
- additionalType : classe supplémentaire, en ajout de la classe principale définie dans @type
- alternateName : nom alternatif, pour gestion des synonymies
- description : une propriété importante avec name pour le référencement
- disambiguatingDescription,
- identifier,
- image : une autre propriété importante pour le référencement
- mainEntityOfPage,
- name : nom de l’entité, une propriété presque toujours renseignée en un jeu de caractère et en une langue donnée, sans que celle-ci ne soit précisée en général
- potentialAction : une action peut être potentiellement effectuée sur toute chose d’un corpus. La propriété est renseignée à l’aide d’un objet lié de classe Action
- sameAs : URL d’une page web de référence qui indique de manière non ambiguë l’identité de l’item, par exemple l’URL de la page de Wikipédia, de Wikidata ou du site web officiel,
- subjectOf : un livre ou un événement dont le sujet est l’individu décrit,
- url : URL de la page web, par défaut la page courante.
Avec JSON-LD, les descriptions encodées sont contenues dans une balise <script type= »application/ld+json »> du code source de la page HTML. Un exemple d’objet catégorisé Thing est proposé, dont la description est verbalisée en français.
D101 Thing verbalisation : La page web « http://example.com/ontologie/schema-org » contient une description de l’ontologie Schema de classe Thing. C’est aussi le sujet du livre The Complete History of Schema.org. Encodage en JSON-LD :
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Thing",
"name": "L'ontologie Schema.org",
"sameAs": ["https://www.wikidata.org/wiki/Q3475322","https://schema.org/"],
"description": "Schema.org est une ontologie principalement dédiée à l'optimisation du référencement et au transfert d'informations entre sites webs et moteurs de recherche",
"subjectOf": {
"@type": "Book",
"name": "L'histoire complète de Schema.org",
"description": "Un livre fictif",
"url": "http://example.com/livre/histoire-schema-org"
},
"url": "http://example.com/ontologie/schema-org"
}
</script>
En JSON-LD, « @context » spécifie l’ontologie utilisée, « @type » la ou les classe(s) de l’objet décrit. Deux objets liés par la propriété « subjectOf », localisés à deux URL différentes sont nommés et sommairement décrits (Schema aurait pu être décrit plus précisément qu’avec Thing). Les assertions précédentes peuvent être visualisées sous forme de tableau :
Objet principal décrit | Objet lié | Valeur |
@type | Thing | |
name | Schema.org Ontology | |
sameAs | https://www.wikidata.org/wiki/Q3475322 | |
sameAs | https://schema.org | |
description | Schema.org est une ontologie principalement … | |
url | http://example.com/ontologie/schema-org | |
subjectOf | ||
@type | Book | |
name | L’histoire complète de Schema.org | |
description | Un livre fictif | |
url | http://example.com/livre/history-schema-org |

De manière sémantiquement identique, une page web aurait pu décrire en tout premier lieu le livre et en second son sujet. La propriété about inverse de subjectOf aurait alors été employée pour lier les deux entités, comme le montre l’assertion :
D102 Book : Le livre The Complete History of Schema.org est décrit. Son sujet principal est l’ontologie Schema.org
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Book",
"name": "The Complete History of Schema.org",
"about": {
"@type": "Thing",
"name": "Schema.org Ontology",
"sameAs": "https://schema.org",
"url": "http://exemple.com/ontology/schema-org"
},
"description": "A fictive book about the history of Schema.org",
"url": "http://example.com/book/history-schema-org"
}
</script>
Structured Data Linter, par exemple, permet de tester la validité du code. Une vue simulée de la présentation sur Google est proposée dans l’encart blanc, sans garantie de résultat cependant.

1.1 Action, 110 classes et 11 propriétés
A la suite de deux années de recherche conduites par deux groupes distincts du W3C, la série de classes Action est introduite en 2014, . Mené par Daniel Brickley lui-même, le groupe du W3C Web Schemas s’est montré principalement actif dans la mise au point de Schema et notamment d’Action, jusqu’en 2014, date à laquelle Schema devient géré sous Github. Markus Lanthaler et Karol Szczepański, leaders du groupe du W3C Hydra W3C Community Group émettent des propositions et une ontologie dans le domaine de la normalisation des API (Application Programming Interface).
Les actions qu’il s’agit de modéliser concernent celles que les internautes peuvent effectuer via leur navigateur sur le web, ou celles que les logiciels peuvent exécuter via une API (Application Programming Interface). Des exemples d’actions sont « réserver une place dans un restaurant », « commander un menu », « réserver une place de train ou d’avion », « rechercher quelque chose à partir du moteur d’un site web », « visionner une vidéo », etc. La classe prend en considération les actions potentielles, en cours ou bien des actions passées.
- WebSchemas/ActivityActions, 2011-2014, archive : Lien
- Announcing Schema.org Actions, schema blog, 2014 : Lien
16 sous-classes de premier niveau (109 sous-classes d’Action au total) sont présentes dans la version 22 : AchieveAction, AssessAction, ConsumeAction, ControlAction, CreateAction, FindAction, InteractAction, MoveAction, OrganizeAction, PlayAction, SearchAction, SeekToAction, SolveMathAction, TradeAction, TransferAction, UpdateAction
11 propriétés spécifiques d’Action au premier niveau : actionStatus, agent, endTime, error, instrument, location, object, participant, result, startTime, target
Un exemple est donné avec BorrowAction (Thing > Action > TransferAction > BorrowAction) :
D1.1 Action : John a emprunté le livre Science and Hypothesis le 17 avril à la bibliothèque des AHP-PReST. Le livre n’est pas rendu.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BorrowAction",
"actionStatus": "ActiveActionStatus",
"startTime": "2023-04-17",
"agent": {
"@type": "Person",
"name": "John"
},
"object": {
"@type": "Book",
"name": "Science and Hypothesis: The Complete Text",
"about": ["Philosophie des sciences", "Physique mathématique"]
},
"lender": {
"@type": "Library",
"name": "Bibliothèque des AHP-PReST, Nancy"
}
}
</script>
La description de l’action d’emprunt nécessite la description de l’acteur principal (l’agent), de l’objet fruit de la transaction et du propriétaire de l’objet. La propriété « actionStatus » est renseigné avec l’une des quatre valeurs du dictionnaire ActionStatusType (ActiveActionStatus, CompletedActionStatus, FailedActionStatus, PotentialActionStatus).
startTime / startDate
Le moteur d’un site web avec potentielAction.
1.2 BioChemEntity, 5 classes et 27 propriétés
La classe est ajoutée en 2021, suite aux propositions du groupe de travail Bioschemas. Ce groupe particulièrement actif en biologie moléculaire dispose d’un site web et de procédures propres. Il émet des guides à destination des développeurs et webmestres mainteneurs de bases de données de biologie. Le respect de Schema peut, d’après le groupe, contribuer à rendre les données plus aisées à trouver, ce qui correspond aux principes FAIR (Findable, Acessible, Interoperable, Researchable).
Les réflexions du groupe qui dispose de son site propre portent sur une variété de classes plus large et notamment sur : ChemicalSubstance, ComputationalTool, ComputationalWorkflow, Course, CourseInstance, DataCatalog, Dataset, FormalParameter, Gene, MolecularEntity, Protein, Sample, Taxon, TaxonName, TrainingMaterial.
BioChemEntity est composée de 4 sous-classes : ChemicalSubstance, Gene, MolecularEntity, Protein
12 propriétés spécifiques de BioChemEntity, 3 de ChemicalSubstance, 4 pour Gene, 9 pour MolecularEntity, 1 pour Protein

D1.2 BioChemEntity : La protéine (Thing > BioChemEntity > Protein) ABL1 (Tyrosine-protein kinase ABL1 humaine) est identifiée et décrite. Son dysfonctionnement est associé à la leucémie myéloïde chronique (Thing > MedicalEntity > MedicalCondition), maladie identifiée dans la base UNIPROT par « http://purl.uniprot.org/diseases/03735 » et dont le code médical (Thing > MedicalEntity > MedicalIntangible > MedicalCode) a pour valeur 608232 dans le système OMIM.
D’après Bioschemas « profile describing a Protein in Life Sciences » : Lien
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Protein",
"@id": "http://example.com/entity/A12345"
"name": "ABL1",
"alternateName": ["ABL", "JTK7"]
"description": "Function: Non-receptor tyrosine-protein kinase."
"associatedDisease": {
"@type": "MedicalCondition",
"name": "Leukemia, chronic myeloid (CML)",
"code": {
"@type": "MedicalCode",
"codeValue": "608232",
"codingSystem": "OMIM"
},
"id": "http://purl.uniprot.org/diseases/03735"
}
}
</script>
Trois objets sont successivement décrits et liés, dans un objectif de précision : 1/ la protéine, 2/ la pathologie associée au dysfonctionnement, 3/ le code de la pathologie dans la base OMIM. Bien que syntaxiquement correcte, il est peu probable que Google restitue ce genre de contenu de manière riche, dans les pages de ses résultats de recherche.
1.3 CreativeWorks, 161 classes et 96 propriétés
On trouve dans cette classe, qui pourrait être traduite par Œuvre originale ou bien Ouvrage Original, la plupart des objets référencés dans les écoles et universités, les bibliothèques grand public et universitaires, les archives et musées, de même que les librairies, disquaires, cinémas, vidéo, chaînes de télévision, jeux, réseaux sociaux, etc. Plusieurs exemples sont proposés.
65 sous-classes de deuxième niveau (160 au total) viennent préciser la nature des œuvres originales possibles à référencer : 3DModel, ArchiveComponent, Article, Atlas, Blog, Book, Chapter, Claim, Clip, Collection, ComicStory, Comment, Conversation, Course, CreativeWorkSeason, CreativeWorkSeries, DataCatalog, Dataset, DefinedTermSet, Diet, DigitalDocument, Drawing, EducationalOccupationalCredential, Episode, ExercisePlan, Game, Guide, HowTo, HowToDirection, HowToSection, HowToStep, HowToTip, Legislation, Manuscript, Map, MediaObject, Menu, MenuSection, Message, Movie, MusicComposition, MusicPlaylist, MusicRecording, Painting, Photograph, Play, Poster, PublicationIssue, PublicationVolume, Question, Quotation, Review, Sculpture, SheetMusic, ShortStory, SoftwareApplication, SoftwareSourceCode, TVSeason, TVSeries, Thesis, VisualArtwork, WebContent, WebPage, WebPageElement, WebSite
Les objets de la classe des œuvres sont décrits à l’aide de 96 propriétés ici listées : about, abstract, accessMode, accessModeSufficient, accessibilityAPI, accessibilityControl, accessibilityFeature, accessibilityHazard, accessibilitySummary, accountablePerson, aggregateRating, alternativeHeadline, associatedMedia, audience, audio, author, award, character, citation, comment, commentCount, conditionsOfAccess, contentLocation, contentRating, contentReferenceTime, contributor, copyrightHolder, copyrightYear, correction, creativeWorkStatus, creator, dateCreated, dateModified, datePublished, discussionUrl, editor, educationalAlignment, educationalUse, encoding, encodingFormat, exampleOfWork, expires, funder, genre, hasPart, headline, inLanguage, interactionStatistic, interactivityType, isAccessibleForFree, isBasedOn, isFamilyFriendly, isPartOf, keywords, learningResourceType, license, locationCreated, mainEntity, maintainer, material, materialExtent, mentions, offers, position, producer, provider, publication, publisher, publisherImprint, publishingPrinciples, recordedAt, releasedEvent, review, schemaVersion, sdDatePublished, sdLicense, sdPublisher, sourceOrganization, spatial, spatialCoverage, sponsor, temporal, temporalCoverage, text, thumbnailUrl, timeRequired, translationOfWork, translator, typicalAgeRange, version, video, workExample, workFeatured, workPerformed, workTranslation
1.3.1 Signalement d’un cours avec Course
Les classes et propriétés résultent pour la plupart des travaux du groupe LRMI, adossé au DCMI (Dublin Core Metadata Initiative), spécialisé au niveau international dans la description des ressources pédagogiques.
Les classes discutées et maintenant adoptées par Schema sont notamment Course (courseCode, coursePrerequisites, hasCourseInstance), CourseInstance (courseMode, instructor), LearningResource, Syllabus, EducationalOccupationalCredential. Des exemples hors de Schema se trouvent ici :
- Google Search Central. Google fournit des conseils en français. Des cours décrits par liste d’au moins 3 instances sont souahités. Les propriétés « name » et « description » sont obligatoires, « provider » est recommandé : Lien
- Bioschemas, Specification describing a course. version 1.0 : Lien, exemple sur GitHub : Lien
- LRMI Examples, sur GitHub : Lien
D1.3.1 Course : Une formation de niveau master en Épistémologie, Histoire des sciences et techniques est dispensée à l’Université de Strasbourg. Le premier cours est prévu le 3 septembre 2023.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Course",
"name": "Master Épistémologie, histoire des sciences et techniques",
"audience": "Etudiants titulaires d'une licence ou d'une équivalence",
"courseCode": "ME208",
"hasCourseInstance": {
"@type": "CourseInstance",
"name": "Présentation du Master"
"courseMode": ["onsite"],
"startDate": "2023-09-03"
}
"description": "Ce master interdisciplinaire a pour objectif de former des étudiants et des professionnels à la compréhension des enjeux philosophiques, socio-politiques, éthiques et culturels liés à la place des sciences dans notre société.",
"educationalCredentialAwarded": "MASTER",
"sameAs": "https://www.unistra.fr/etudes/decouvrir-nos-formations/par-type-de-diplomes/master/master/cursus/ME208",
"provider": {
"@type": "Organization",
"name": "Université de Strasbourg",
"sameAs": "https://www.unistra.fr/"
},
"url": "http://exemple.com/course/master/epistemologie-strasbourg"
}
</script>
Pour Structured Data Linter, la description serait mise en valeur ainsi dans la SERP de Google :

1.3.2 Les livres avec Book
De manière générale, 7 propriétés se montrent spécifiques de la classe Book et viennent s’ajouter aux 96 propriétés de CreativeWork : abridged
, bookEdition
, bookFormat
(à renseigner avec une des valeurs du dictionnaire BookFormatType), illustrator
, isbn
, numberOfPages
. Un description au niveau chapitre Chapter peut être faite. Google se démarque quelque peu de Schema en distinguant deux cas de figure : le signalement d’un livre en tant qu’Oeuvre au sens FRBR et d’une édition, (Expression au sens FRBR).
Le blog Google Search Central adressé aux développeurs, recommande pour décrire les livres une méthode simplifiée de FRBR (Functional Requirements for Bibliographic Records). Un livre peut être décrit au niveau édition en suivant les recommandations de Book
(Edition
) ou bien en tant qu’oeuvre en suivant les recommandations de Book
(Work
). La même classe Book est utilisée, mais les propriétés obligatoires diffèrent.
- 6 exemples dans Schema
- Livre simple : https://schema.org/Book#eg-0175
- Traduction d’une œuvre originale : https://schema.org/Book#eg-0220
- Données structurées des actions de livre, Google Search Central : Lien
Propriétés obligatoires de Book (Edition) :
- @context
@id
: Identifiant global unique du livre, au format d’URL. Il doit être propre à votre organisation. Cet identifiant doit être stable et immuable dans le temps. Le format d’URL est recommandé, mais pas obligatoire. Il ne doit pas nécessairement s’agir d’un lien fonctionnel. Le domaine utilisé pour la valeur@id
doit appartenir à votre organisation.@type
, ici BookbookFormat
,inLanguage
,isbn
,potentialAction
.
Propriétés facultatives utilisées
sameAs
: URL d’une page de référence qui identifie l’ouvrage (page Wikipédia, Wikidata, VIAF ou Bibliothèque du Congrès américain, par exemple).- url : URL de votre site Web sur laquelle l’édition est présentée ou décrite.
D1.3.2.1 Book (Edition) : Le livre en anglais « Science and Hypothesis: The Complete Text » résulte des travaux de traduction, d’annotation et de rédaction de Mélanie Frappier, Andrea Smith et David Stump. Le livre est une traduction de « La Science et l’Hypothèse« , par Henri Poincaré. Bloomsbury publie le texte en 2017. Le livre est vendu aux Etats-Unis au prix de 144$. L’URL du livre chez l’éditeur aux USA est : https://www.bloomsbury.com/us/science-and-hypothesis-9781350026773/. Le livre est identifié sur Worldcat par https://www.worldcat.org/fr/title/1027759418.
des erreurs dans ce code :
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@id": "https://example.com/us/science-and-hypothesis-9781350026773/",
"@type": "Book",
"name": "Science and Hypothesis : The Complete Text",
"about": ["Philosophy of Science", "Mathematical physics"],
"author": {
"@type": "Person",
"@id": "https://www.wikidata.org/wiki/Q81082",
"givenName": "Henri",
"familyName": "Poincaré"
},
"bookFormat": "https://schema.org/Paperback",
"dateCreated": "1902",
"datePublished": "2017-11-16",
"description": "Science and Hypothesis is a classic text in history and philosophy of science. Widely popular since its original publication in 1902, this first new translation of the work in over a century features unpublished material missing from earlier editions.",
"inLanguage": "en",
"isbn": "9781350026773",
"potentialAction": {
"@type": "ReadAction",
"expectsAcceptanceOf": {
"@type": "Offer",
"category": "purchase",
"price": "144",
"priceCurrency": "USD",
"eligibleRegion": {
"@type": "Country",
"name": "US"
}
}
},
"publisher": {
"@type": "Organization",
"@id": "https://viaf.org/viaf/127945522/",
"name": "Bloomsbury Publishing"
},
"sameAs": ["https://www.worldcat.org/fr/title/1027759418", "https://www.bloomsbury.com/us/science-and-hypothesis-9781350026773/"]
"translator": [
{ "@type": "Person",
"@id": "https://www.idref.fr/195764951",
"givenName": "Mélanie",
"familyName": "Frappier"
},
{ "@type": "Person",
"givenName": "Andrea",
"familyName": "Smith"
},
{ "@type": "Person",
"@id": "https://www.idref.fr/083002413",
"givenName": "David",
"familyName": "Stump"
}
],
"exampleOfWork": "La Science et l'Hypothèse",
"translationOfWork": "La Science et l'Hypothèse",
"url": "https://example.com/us/science-and-hypothesis-9781350026773/"
}
</script>
Les propriétés facultatives « exampleOfWork » et « translationOfWork » prennent la même valeur, ici présentée de manière non structurée.
Propriétés obligatoires de Book(Work) : @context
, @id
, @type
, author
, name
, url
, workExample
.
L’oeuvre originale Science et l’Hypothèse peut être décrite en tant que telle, associée aux différents formats disponibles (livre imprimé, livre numérique, microforme) en diverses langues et éditions. Une recherche doitt préalablement être menée sur WorldCat ou au Sudoc. Elle peut être complétée par une recherche des bases diffusant les textes en accès libre :
- Recherche des formats et éditions dérivées de l’oeuvre originale:
- 1ère édition en français, 284 p. ; 19 cm, E. Flammarion, Paris, [1902]
- WorldCat, identifiant : https://www.worldcat.org/fr/title/5894515648
- VIAF : https://viaf.org/viaf/517164721383202340003/
- BnF : https://catalogue.bnf.fr/ark:/12148/cb31127699b
- Gallica : https://gallica.bnf.fr/ark:/12148/btv1b86263141
- Wissenschaft und Hypothese, 1ère édition en allemand, préfacier Ferdinand von Lindemann, B.G. Teubner, Leipzig, 1904
- WorldCat : https://www.worldcat.org/fr/title/876749
- WorldCat, formats et éditions : https://www.worldcat.org/fr/formats-editions/876749
- Internet Archive : https://archive.org/details/wissenschaftundh00poin/page/n3/mode/2up
- Наука и гипотеза / Nauka i gipoteza, 1ère édition en russe de 1904, préfacier Nikolaï Oumov, viii, 268 pages : portrait ; 20 cm, Moscou, T-vo tip. A.I. Mamontova, Moskva, 1904
- Worldcat : https://www.worldcat.org/fr/title/52642102
- Science and Hypothesis, édition en anglais de 1905, traducteur anonyme W.J.G., préfacier Joseph Larmor, THE WALTER SCOTT PUBLISHING CO.
- WorldCat : https://www.worldcat.org/fr/title/1313767026
- Internet Archive : https://archive.org/details/scienceandhypoth00poinuoft/mode/2up
- Wikisource : https://en.wikisource.org/wiki/Science_and_Hypothesis
- édition en français de 1906, 284 p. ; 19 cm
- édition en français de 1906 circa?, édition définitive in quarto, 1 vol. (IV-304 p.-1 f. de pl.)
- Nauka i hypoteza, édition en polonais, traduction H. Horwitz, préface Ludwik Silberstein, Nakł. J. Mortkowicza, Warszawa, 1908
- Worldcat : https://www.worldcat.org/fr/title/58523821
- Wikisource : https://pl.wikisource.org/wiki/Nauka_i_Hypoteza
- édition en français de 1908, 292 p. ; 19 cm
- BnF : https://catalogue.bnf.fr/ark:/12148/cb351959401
- Internet Archive : https://archive.org/details/b21641031_0/page/n5/mode/2up
- édition en français de 1909, 292 p. ; 19 cm
- Worldcat : https://www.worldcat.org/fr/title/491627061
- Vetenskapen och hypoteserna, édition en suédois, Albert Bonniers Förlag, Stockholm 1911
- édition E. Gallimard en français de 1917, transcrite dans Wikisource
- 科学と仮說 / Kagaku to kasetsu, édition en japonais, Iwanami Shoten, Tōkyō, 1959
- Bilim ve hipotez, édition en turc, traduction Fethi Yücel, Milli Eğitim Basımevi, İstanbul, 1964
- Worldcat : https://www.worldcat.org/fr/title/73443012
- …
- Science and Hypothesis : the complete text. Edition en anglais de 2017. David Stump, Mélanie Frappier, Andrea Smith
- Worldcat : https://www.worldcat.org/fr/title/1328130318
Datée de 1902, l’oeuvre originale de Poincaré, de même que les multiples éditions en allemand, russe, anglais, polonais, suédois, japonais, turc peuvent être décrites simultanément comme liées entre elles par la propriété « workExample ». Une sorte de graphe rassemble ainsi l’oeuvre originale, les Expression et Manifestations. On se limite dans l’exemple suivant à décrire l’Oeuvre et les premières éditions en allemand, russe et anglais publiées de 1902 à 1905.
D1.3.2.1 Book (Work) :
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Book",
"@id" : "https://www.wikidata.org/wiki/Q3212744",
"name": "La Science et l'Hypothèse",
"url" : "https://example.com/work/la_science_et_l_hypothese",
"author": {
"@type": "Person",
"givenName": "Henri",
"familyName": "Poincaré",
"birthDate": "1854-04-29",
"deathDate": "1912-07-17"
},
"dateCreated": "1902",
"sameAs" : "https://www.wikidata.org/wiki/Q3212744",
"workExample": [
{
"@type": "Book",
"@id": "https://www.worldcat.org/fr/title/5894515648",
"name": "La Science et l'Hypothèse",
"inLanguage": "fr",
"datePublished": "1902",
"bookEdition": "1ère édition en français",
"bookFormat": ["https://schema.org/Hardcover", "https://schema.org/EBook"],
"publisher": {
"@type": "Organization",
"@id": "https://viaf.org/viaf/166443064/",
"location": "Paris",
"name": "E. Flammarion"
},
"sameAs": "https://gallica.bnf.fr/ark:/12148/btv1b86263141",
"numberOfPages": "284"
},
{
"@type": "Book",
"@id": "https://www.worldcat.org/fr/title/876749",
"name": "Wissenschaft und Hypothese",
"inLanguage": "ge",
"datePublished": "1904",
"bookEdition": "1ère édition en allemand",
"bookFormat": ["https://schema.org/Hardcover", "https://schema.org/EBook"],
"publisher": {
"@type": "Organization",
"@id": "https://viaf.org/viaf/124391810/",
"location": "Leibniz",
"name": "B. G. Teubner"
},
"sameAs": "https://archive.org/details/wissenschaftundh00poin",
"numberOfPages": "342"
},
{
"@type": "Book",
"@id": "https://www.worldcat.org/fr/title/52642102",
"name": "Наука и гипотеза",
"inLanguage": "ru",
"datePublished": "1904",
"bookEdition": "1ère édition en russe",
"bookFormat": "https://schema.org/Hardcover",
"publisher": {
"@type": "Organization",
"@id": "",
"location": "",
"name": ""
}
},
{
"@type": "Book",
"name": "Science and Hypothesis",
"inLanguage": "en",
"datePublished": "1905",
"bookEdition": "1ère édition en anglais",
"bookFormat": ["https://schema.org/Hardcover", "https://schema.org/EBook"],
"publisher": {
"@type": "Organization",
"@id": "https://viaf.org/viaf/127105541/",
"location": ["London", "Newcastle upon Tyne"],
"name": "Walter Scott Publishing Co."
},
"sameAs": "https://archive.org/details/scienceandhypoth00poinuoft/",
"translator": "W. J. G.",
"numberOfPages": "244"
}
]
}
</script>
1.3.3 Périodique, article de périodique
L’exemple 3 de « ScholarlyArticle » décrit un article universitaire réel Understanding FRBR as a Conceptual Model: FRBR and the Bibliographic Universe écrit par Carlyle, Allyson en 2006 (Library Resources & Technical Services, Vol 50, No 4 (2006)) : https://journals.ala.org/index.php/lrts/article/view/5444.
Adapter : Un article de Philosophia Scientiae
Iliadis, A., Acker, A., Stevens, W., & Kavakli, S. B. (2023). One schema to rule them all: How Schema.org models the world of search. Journal of the Association for Information Science and Technology, 1–64. https://doi.org/10.1002/asi.24744
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@id": "#issue4",
"@type": "PublicationIssue",
"datePublished": "2006-10",
"issueNumber": "4"
},
{
"@id": "#volume50",
"@type": "PublicationVolume",
"volumeNumber": "50"
},
{
"@id": "#periodical",
"@type": "Periodical",
"name": "Library Resources and Technical Services"
},
{
"@id": "#article",
"@type": "ScholarlyArticle",
"author": "Carlyle, Allyson.",
"isPartOf": [
{
"@id": "#periodical"
},
{
"@id": "#volume50"
},
{
"@id": "#issue4"
}
],
"name": "Understanding FRBR as a Conceptual Model: FRBR and the Bibliographic Universe",
"pageEnd": "273",
"pageStart": "264"
}
]
}
</script>
La propriété »@graph » permet de caractériser la page du web à l’aide d’un tableau de 4 entités. La première entrée du tableau caractérise le numéro 4 de la revue (avec « @type »: « PublicationIssue ») dont la date de publication est octobre 2006, la seconde caractérise le volume (« @type »: « PublicationVolume »), suivi du périodique (« @type »: « Periodical ») et enfin de l’article (« @type »: « ScholarlyArticle ») dont les pages de début et de fin sont précisées.
Il est possible de transcrire la sémantique d’une page web donnant accès à l’enregistrement vidéo d’un cours à l’aide de JSON-LD. Un graphe de métadonnées (de connaissances factuelles) est en quelque sorte dessiné avec des renseignements de premier et second niveau. Documentation : Lien
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebPage", "name": "Lecture 12: Graphs, networks, incidence matrices", "description": "These video lectures of Professor Gilbert Strang teaching 18.06 were recorded in Fall 1999 and do not correspond precisely to the current edition of the textbook.", "publisher": { "@type": "CollegeOrUniversity", "name": "MIT OpenCourseWare" }, "license": "http://creativecommons.org/licenses/by-nc-sa/3.0/us/deed.en_US" } </script>
La classe MediaObject admet les sous-classes suivantes : 3DModel, AmpStory (Accelerated Mobile Pages), AudioObject, DataDownload, ImageObject, LegislationObject, MusicVideoObject, TextObject, VideoObject.
Une seule oeuvre originale peut être associée à plusieurs objets médias. Par exemple, une page sur une chanson isolée (MusicRecording) peu contenir un clip vidéo (MusicVideoObject), ainsi que deux flux audio (AudioObject), l’un en faible et l’autre en haute résolution.
L’initiative Bioschemas se montre également active dans ce domaine. Le groupe Scholarly Publications définit également les profils au format brouillon en 2023 : 1/ ScholarlyArticle DRAFT Profile, 2/ Journal DRAFT Profile, 3/ PublicationIssue DRAFT Profile, 4/ PublicationVolume DRAFT Profile, 5/ SemanticTextAnnotation DRAFT Profile.
D’autres groupes actifs sont Laboratory Protocols à l’origine de LabProtocol DRAFT Profile, le groupe Tools avec ComputationalTool Profile
D’autres profils distingués sont pour cette entité les suivants : 2/ Course Profile, 3/ DataCatalog Profile, 4/ Dataset Profile, 5/ TrainingMaterial Profile.
Autres
- Une composante d’archives
- Collection : https://schema.org/ArchiveComponent#eg-0255
- Pièce d’archive : https://schema.org/ArchiveComponent#eg-0256
- Un manuscrit : https://schema.org/Manuscript
- Une thèse : https://schema.org/Thesis#eg-0219
- Une carte : https://schema.org/Map#eg-0384
- Une peinture : https://schema.org/Painting#eg-0340
- Une sculpture : https://schema.org/Sculpture
- Un blog : https://schema.org/Blog
1.4 Event, 32 propriétés, 22 sous-classes
On entend par Event essentiellement des choses qui relèvent des performances artistiques, culturelles et sportives. Les évènements professionnels et sociaux sont possiblement couverts.
Les événements sont caractérisés par 20 classes de deuxième niveau (22 en incluant les sous-classes) : BusinessEvent, ChildrensEvent, ComedyEvent, CourseInstance, DanceEvent, DeliveryEvent, EducationEvent, EventSeries, ExhibitionEvent, Festival, FoodEvent, LiteraryEvent, MusicEvent, PublicationEvent, SaleEvent, ScreeningEvent, SocialEvent, SportsEvent, TheaterEvent, VisualArtsEvent
32 propriétés spécifiques d’Event : about, actor, aggregateRating, attendee, audience, composer, contributor, director, doorTime, duration, endDate, eventSchedule, eventStatus, funder, inLanguage, isAccessibleForFree, location, maximumAttendeeCapacity, offers, organizer, performer, previousStartDate, recordedIn, remainingAttendeeCapacity, review, sponsor, startDate, subEvent, superEvent, translator, typicalAgeRange, workFeatured, workPerformed.
On remarque au passage qu’un événement est caractérisé par sa durée avec startDate, endDate et duration, sa répétition pour les événements récurrents avec previousStartDate et son lieu avec location.
Exemples :
- Une exposition de musée : https://schema.org/ExhibitionEvent#eg-0349
- Événément littéraire : https://schema.org/LiteraryEvent#eg-0303
- Un cours dont les dates de début et de fin sont signalées : https://schema.org/CourseInstance#eg-0332
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Course",
"description": "In this course you will get an introduction to the main tools and ideas in the data scientist's toolbox...",
"hasCourseInstance": {
"@type": "CourseInstance",
"courseMode": ["MOOC","online"],
"endDate": "2019-03-21",
"startDate": "2019-02-15"
}
}
</script>
Exemple plus complexe de signalement d’un double évènement musical. B.B. King joue le 12 au « Lupo’s Heartbreak Hotel » et le 13 avril 2014 au « Lynn Auditorium ». Les billets sont en vente sur deux sites différents pour chacune de ces dates. Event et Place sont liés via la propriété location. La déclaration de deux objets ou d’une liste d’objet de même niveau de description se fait en JSON-LD par ouverture d’un crochet et séparation des objets listés par une virgule. Documentation : Lien
<script type= »application/ld+json »>
{
« @context »: « https://schema.org/ »,
« @type »: « Course »,
« description »: « In this course you will get an introduction to the main tools and ideas in the data scientist’s toolbox… »,
« hasCourseInstance »: {
« @type »: « CourseInstance »,
« courseMode »: [« MOOC », »online »],
« endDate »: « 2019-03-21 »,
« startDate »: « 2019-02-15 »
}
}
</script>
Bioschemas définit les profils : 1/ Course (CreativeWorks) 2/ CourseInstance Profile (Event)
1.5 Intangible, 385 sous-classes
Une classe fourre-tout indique des quantités, des valeurs posées ou observées, des rôles et services, des valeurs de dictionnaires, des informations factuelles. Intangible ne définit aucune propriété spécifique de classe. Celles-ci dépendent toutes des sous-classes qui montrent une grande diversité et servent fréquemment d’outils dédié à la description éventuellement simultanée de plusieurs choses.
56 sous-classes de deuxième niveau (385 classes en tout filles d’Intangible) : ActionAccessSpecification, AlignmentObject, Audience, BedDetails, Brand, BroadcastChannel, BroadcastFrequencySpecification, Class, ComputerLanguage, DataFeedItem, DefinedTerm, Demand, DigitalDocumentPermission, EducationalOccupationalProgram, EntryPoint, Enumeration, FloorPlan, GameServer, GeospatialGeometry, Grant, HealthInsurancePlan, HealthPlanCostSharingSpecification, HealthPlanFormulary, HealthPlanNetwork, Invoice, ItemList, JobPosting, Language, ListItem, MediaSubscription, MenuItem, MerchantReturnPolicy, Observation, Occupation, Offer, Order, OrderItem, ParcelDelivery, Permit, ProgramMembership, Property, PropertyValueSpecification, Quantity, Rating, Reservation, Role, Schedule, Seat, Series, Service, ServiceChannel, SpeakableSpecification, StatisticalPopulation, StructuredValue, Ticket, Trip
Quelques applications de ces classes sont listées.
1.5.1 Une liste d’items avec ItemList
Une page web signale fréquemment des listes d’éléments (ici des groupes de musique et chanteurs) qu’il est possible de signaler de manière structurée. La classe ItemList indique une liste. La propriété itemListElement renseigne les différents items en leur attribuant la classe ListItem. Un ordre de liste peut être spécifié.
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "ItemList", "url": "http://en.wikipedia.org/wiki/Billboard_200", "name": "Top music artists", "description": "The artists with the most cumulative weeks at number one according to Billboard 200", "itemListElement": [ { "@type": "ListItem", "position": 1, "item": { "@type": "MusicGroup", "name": "Beatles" } }, { "@type": "ListItem", "position": 2, "item": { "@type": "MusicGroup", "name": "Elvis Presley" } }, { "@type": "ListItem", "position": 3, "item": { "@type": "MusicGroup", "name": "Michael Jackson" } }, { "@type": "ListItem", "position": 4, "item": { "@type": "MusicGroup", "name": "Garth Brooks" } } ] } </script>
1.5.2 Les rôles joués avec Role
La classe Role se décline en une hiérarchie susceptible de structurer les informations concernant les rôles joués par une personne au sein d’une organisation quelconque, d’une équipe de sport ou d’un spectacle. On a la hiérarchie suivante, les propriétés spécifiques des classes sont entre parenthèses :
- Role (
roleName
,startDate
,endDate
) – général- LinkRole (
inLanguage
,linkRelationship
) – pour les liens hypertextuels - OrganizationRole (
numberedPosition
) – général- EmployeeRole (
baseSalary
,salaryCurrency
) – pour décrire les offres d’emploi ou l’organigramme d’une société par exemple
- EmployeeRole (
- PerformanceRole (
characterName
) – Théâtre, film, série télé, etc
- LinkRole (
La classe « Role » ou une des sous-classes peut venir en valeur de propriétés comme « hasOccupation », « memberOf », « alumniOf » lorsqu’une personne est décrite, en valeur de « member » pour les organisations, en valeur de « author » ou « contributor » pour décrire les ouvrages créatifs comme les périodiques, les articles, les sites web, les codes informatiques. Richard Wallis, consultant spécialiste des bibliothèques et archives propose d’encoder la propriété « roleName » à l’aide du dictionnaire « Relators » de la Bibliothèque du Congrès, ou d’un autre dictionnaire éventuellement. Ici les codes « wpr » (auteur de préface) et « » (éditeur scientifique) sont ajoutés.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@id": "https://example.com/us/science-and-hypothesis-9781350026773/",
"@type": "Book",
"name": "Science and Hypothesis : The Complete Text",
"about": ["Philosophy of Science", "Mathematical physics"],
"author": {
"@type": "Person",
"@id": "https://www.wikidata.org/wiki/Q81082",
"givenName": "Henri",
"familyName": "Poincaré"
},
"bookFormat": "https://schema.org/Paperback",
"contributor": {
"@type": ["Person", "Role"],
"name": "David Stump",
"roleName": ["Writer of preface", "Scientific advisor"]
},
"dateCreated": "1902",
"datePublished": "2017-11-16",
"description": "Mon bouquin",
"sameAs": ""
}
</script>
- The role of Role in Schema.org, Richard Wallis, 2015 : Lien
- Relators à la Bibliothèque du Congrès : Lien
1.5.3 Parties d’un ensemble
Reprises à l’identique de Dublin Core, les relations hasPart / isPartof s’avèrent nécessaire dans de multiples cas, pour décrire par exemple les objets des bibliothèques et archives.
1.5.4 Dictionnaires de valeur avec Enumérations
1.5.5 Programme de formation récompensé par un diplôme ou un certificat professionnel
EducationalOccupationalProgram
https://www.w3.org/community/eocred-schema/
1.5.6 Taux de satisfaction
1.6 MedicalEntity, 7 propriétés et 71 sous-classes
17 sous-classes de deuxième niveau (71 au total) : AnatomicalStructure, AnatomicalSystem, LifestyleModification, MedicalCause, MedicalCondition, MedicalContraindication, MedicalDevice, MedicalGuideline, MedicalIndication, MedicalIntangible, MedicalProcedure, MedicalRiskEstimator, MedicalRiskFactor, MedicalStudy, MedicalTest, Substance, SuperficialAnatomy
7 propriétés spécifiques de MedicalEntity : code, guideline, legalStatus, medicineSystem, recognizingAuthority, relevantSpecialty, study
On note chez Bioschemas la présence de
1.7 Organization, 53 propriétés, 182 sous-classes
15 sous-classes de deuxième niveau (182 au total) : Airline, Consortium, Corporation, EducationalOrganization, FundingScheme, GovernmentOrganization, LibrarySystem, LocalBusiness, MedicalOrganization, NGO, NewsMediaOrganization, PerformingGroup, Project, SportsOrganization, WorkersUnion
53 propriétés spécifiques d’Organization : actionableFeedbackPolicy, address, aggregateRating, alumni, areaServed, award, brand, contactPoint, correctionsPolicy, department, dissolutionDate, diversityPolicy, diversityStaffingReport, duns, email, employee, ethicsPolicy, event, faxNumber, founder, foundingDate, foundingLocation, funder, globalLocationNumber, hasCredential, hasMerchantReturnPolicy, hasOfferCatalog, hasPOS, interactionStatistic, isicV4, knowsAbout, knowsLanguage, legalName, leiCode, location, logo, makesOffer, member, memberOf, naics, numberOfEmployees, ownershipFundingInfo, owns OwnershipInfo, parentOrganization, publishingPrinciples, review, seeks, slogan, sponsor, subOrganization, taxID, telephone, unnamedSourcesPolicy, vatID
EducationalOrganization se décline en : CollegeOrUniversity, ElementarySchool, HighSchool, MiddleSchool, Preschool, School
Des exemples de plusieurs sortes d’organisations en relation avec les thèmes de cet article sont cherchés. Les exemples de la bibliothèque et du projet de recherche se montrent particulièrement développés :
- Une bibliothèque (sous-classe de LocalBusiness) : https://schema.org/Library#eg-0378
- Des archives (sous-classe de LocalBusiness) : https://schema.org/ArchiveOrganization#eg-0254
- Un musée (sous-classe de CivicStructure) : https://schema.org/Museum#eg-0434
- Une université (sous-classe de EducationalOrganization) : https://schema.org/CollegeOrUniversity#eg-0277
- Un organisme de recherche (sous-classe de Organization) : https://schema.org/ResearchOrganization, pas d’exemple
- Un projet de recherche (sous-classe de Project) : https://schema.org/ResearchProject#eg-0479
Description détaillée de l’adresse d’un organisme éducatif dont le nom est « Palo Alto High School » (Californie). Les noms de deux anciens sont mentionnés (John Doe, Sarah Glames) (Jean Toto, Sarah Charmeuse) : Lien
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "EducationalOrganization", "address": { "@type": "PostalAddress", "addressLocality": "Palo Alto", "addressRegion": "CA", "postalCode": "94301", "streetAddress": "50 Embarcadero Rd" }, "alumni": [ { "@type": "Person", "name": "John Doe" }, { "@type": "Person", "name": "Sarah Glames" } ], "name": "Palo Alto High School" } </script>
1.8 Person, 55 propriétés et 1 sous-classes
Une seule sous-classe : Patient
55 propriétés spécifiques de Person : additionalName, address, affiliation, alumniOf, award, birthDate, birthPlace, brand, callSign, children, colleague, contactPoint, deathDate, deathPlace, description, disambiguatingDescription, duns, email, familyName, faxNumber, follows, funder, gender, givenName, globalLocationNumber, hasCredential, hasOccupation, hasOfferCatalog, hasPOS, height, homeLocation, honorificPrefix, honorificSuffix, identifier, image, interactionStatistic, isicV4, jobTitle, knows, knowsAbout, knowsLanguage, mainEntityOfPage, makesOffer, memberOf, naics, name, nationality, netWorth, owns, parent, performerIn, potentialAction, publishingPrinciples, relatedTo, sameAs, seeks, sibling, sponsor, spouse, subjectOf, taxID, telephone, url, vatID, weight, workLocation, worksFor
L’exemple proposé est descriptif de l’activité d’examinateur de brevets de 1901 à 1906 d’Albert Einstein.
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Person",
"name": "Albert Einstein",
"hasOccupation": [
{
"@type": "Role",
"hasOccupation": {
"@type": "Occupation",
"name": "Patent examiner",
"occupationalCategory": "23-2099.00"
},
"startDate": "1901",
"endDate": "1906"
},
{
"@type": "Occupation",
"name": "Professor of Physics",
"educationRequirements": "PhD in Physics"
}
]
}
</script>
Delia Derbyshire identifiée dans Wikipedia à l’aide de sameAs, ancienne élève (alumniOf) de Cambridge. On remarque la possibilité de détailler une description sur un niveau de détail aussi élevé que souhaité. Trois niveaux de classes (@type) se trouvent ici imbriqués : Lien
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Person", "name": "Delia Derbyshire", "sameAs": "http://en.wikipedia.org/wiki/Delia_Derbyshire", "alumniOf": { "@type": "OrganizationRole", "alumniOf": { "@type": "CollegeOrUniversity", "name": "University of Cambridge", "sameAs": "http://en.wikipedia.org/wiki/University_of_Cambridge" }, "startDate": "1959" } } </script>
1.9 Place, 36 propriétés, 74 sous-classes
9 sous-classes de deuxième niveau (74 au total) : Accommodation, AdministrativeArea, CivicStructure, Landform, LandmarksOrHistoricalBuildings, LocalBusiness, Residence, TouristAttraction, TouristDestination
36 propriétés spécifiques de Place : additionalProperty, address, aggregateRating, amenityFeature, branchCode, containedInPlace, containsPlace, event, faxNumber, geo, geoContains, geoCoveredBy, geoCovers, geoCrosses, geoDisjoint, geoEquals, geoIntersects, geoOverlaps, geoTouches, geoWithin, globalLocationNumber, hasMap, isAccessibleForFree, isicV4, latitude, logo, longitude, maximumAttendeeCapacuty, openingHoursSpecification, photo, publicAccess, review, slogan, smokingAllowed, specialOpeningHoursSpecification, telephone
Des objets du type Event appellent classiquement en propriété location renseigné à l’aide des propriétés d’un objet de la classe Place. LocalBusiness est défini à la fois comme sous-classe d’Organization et de Place. Signalement de la gare de Munich :
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "TrainStation",
"name": "Munich Central Station",
"openingHours": "Mo-Su",
"telephone": "+491806996633",
"address": {
"@type": "PostalAddress",
"addressCountry": "Germany",
"addressLocality": "Munich",
"addressRegion": "Bavaria",
"postalCode": "80805",
"streetAddress": "Schlüterstraße 2"
},
"latitude": 48.140283,
"longitude": 11.560076,
"url": "https://www.bahnhof.de/bahnhof-de/bahnhof/Muenchen_Hbf-1023144"
}
</script>
1.10 Product, 36 propriétés, 8 sous-classes
4 sous-classes de deuxième niveau (8 au total) : IndividualProduct, ProductModel, SomeProducts, Vehicle
36 propriétés spécifiques de Product : additionalProperty, aggregateRating, audience, award, brand, category, color, depth, gtin, gtin12, gtin13, gtin14, gtin8, hasMerchantReturnPolicy, height, isAccessoryOrSparePartFor, isConsumableFor, isRelatedTo, isSimilarTo, itemCondition, logo, manufacturer, material, model, mpn, nsn, offers, productID, productionDate, purchaseDate, releaseDate, review, sku, slogan, weight, width
1.11 Taxon, 4 propriétés, pas de sous-classe
Classe ajoutée en 2021 et dédiée à la description des espèces biologiques. Réalisation en interaction avec Bioschemas.
Spécifications : https://bioschemas.org/types/Taxon/1.0-RELEASE#nav-description. Bioschemas s’appuie lui-même en partie pour Taxon sur les propriétés d’autres ontologies, comme par exemple Darwin Core émise par le TDWG (Biodiversity Information Standards).
Divers « profils » sont définis dans Bioschemas,
DataType
DataType précise les types de valeurs attendus en renseignement d’une propriété.
Boolean > (False | True), Date, DateTime, Number > (Float | Integer), Text > URL , Time
Il est attendu par exemple de la valeur d’addressLocality de la classe Place que celle-ci soit du type Text. Globalement, 705 propriétés appellent en contenu une valeur du type Text. A noter qu’une URL est considérée comme une sorte de texte.
2. Groupes de discussion et extensions de Schema
Les discussions organisées par le W3C sont en partie publiquement accessibles. Certains organismes proposent des extensions de schema. Des classes manquantes peuvent être intégrées à l’aide de la propriété « additionalType ».
- Schema.org Community Group, W3C, Page d’accueil : Lien
- Liste de diffusion publique de « schemas.org », W3C : public-schemaorg@w3.org Mail Archives : Lien
- Versions du site archivées sur GitHub : Lien
2.1 GoodRelations
GoodRelations traite des relations individuelles entre un vendeur, un acheteur et des produits ou services offerts. L’ontologie préexistante à Schema et intégrée en 2012 reste accessible de manière indépendante. En 2015, l’ontologie devient largement adoptée par de nombreux sites de commerce électronique en raison de sa prise en compte par les principaux moteurs de recherche. Les extensions des principaux gestionnaires dédiés au commerce électronique encodent les caractéristiques des produits selon les spécifications partagées entre GoodRelations et Schema.
- Adding GoodRelations to Standard Shop Software, GoodRelations : Lien
2.2 The Product Types Ontology (pto)
Pto peut être utilisée pour typer les objets pour lesquels une entrée de la version anglaise de Wikipédia existe. Il suffit pour cela de couper la partie correspondante dans l’URL de Wikipedia en anglais et de l’accoler au nom de domaine de l’ontologie suivi de « id ».
Ainsi, si l’identifiant pto de « crayon de couleur » est recherché, il est possible de taper dans un moteur de recherche « crayon couleur wiki », d’aller sur la page « https://fr.wikipedia.org/wiki/Crayon_de_couleur », puis de là sur « https://en.wikipedia.org/wiki/Colored_pencil », et de se rendre enfin sur l’identifiant pto « http://www.productontology.org/doc/Colored_pencil« . Ce vocabulaire référence ainsi environ 300 000 types de produits ou services qui étendent la classe Produit de Schema.
D2.2 Product Types Ontology : Une boîte de 24 crayons de couleurs est décrite.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@id": "#product",
"@type": "IndividualProduct",
"additionalType": "http://www.productontology.org/doc/Colored_pencil",
"description": "Boîte de 24 crayons de couleur pour artistes de la marque Faber-Castell Polychromos",
"name": "Crayons de couleur"
}
</script>
2.3 Bioschemas
L’initiative soutenue par l’Union européenne (programme Horizon 2020 ) est considérée comme favorisant les principes FAIR (Findable, accessible, Interoperable, Reusable) et l’ouverture des données. Bioschemas aims to improve the Findability on the Web of life sciences resources such as datasets, software, and training materials. It does this by encouraging people in the life sciences to use Schema.org markup in their websites so that they are indexable by search engines and other services, UE : Lien
- Bioschemas.org
- Bioschemas for lifesciences Community Group, W3C, Page d’accueil : Lien
- Liste de diffusion publique de Bioschemas, W3C : public-bioschemas@w3.org Mail Archives : Lien
3. Un outil pour la construction de bases sémantiques
Schema sert à la structuration du Knowledge Graph de Google. D’après Daniel Sullivan, spécialiste de la recherche chez Google, cinq cent milliards de faits, relatifs à cinq milliards d’entités, se trouvaient référencés en 2020 dans cette base. Il est possible d’en explorer aisément les contenus à l’aide de sites web indépendants de Google, qui se servent de l’API mise à disposition pour proposer des moteurs dédiés à l’exploration de la base de connaissance.
Diffusée sous licence ouverte, l’ontologie Schema peut aussi être retenue pour structurer une base quelconque. Il peut s’agir par exemple de proposer un socle commun à des bases de données dont les champs descriptifs seraient hétérogènes. C’est le choix fait par exemple par les initiatives de grande ampleur SOSO (Science On Schema.Org), GeoCODES ou Bioschemas. Les efforts à fournir se montrent alors d’autant plus importants que les descriptions souhaitées sont fines.
Certaines bases de connaissances se servent aussi ponctuellement d’une ou deux propriétés particulières de Schema pour compléter les possibilités descriptives de corpus décrits principalement à l’aide d’ontologies autres, comme par exemple, Dublin Core, SKOS, etc.
- Contenus du Knowledge Graph, à l’aide de EasySchema : Lien
- Knowledge Graph Explorer, Kalicube Pro : Lien
4. Optimisation du référencement chez Google
Historiquement, Schema doit beaucoup à Daniel Brickley, actif au sein du W3C, actuellement employé chez Google. En 2011, des personnalités comme Ramanathan Guha et Steve Macbeth (Microsoft) ont contribué fortement à la mise au point initiale des ontologies. Ex-employé du W3C, Brickley se montre également co-auteur de recommandations comme RDF Schema (v1.0 1999 – v1.2 2023), créateur d’autres ontologies comme FOAF (2000), Geo WGS84 (2003). Diplômé de l’Université de Bristol en 1994, ce britannique travaille de 2002 à 2004 au projet SWAD-Europe, dont les travaux aboutissent à la mise au point de SKOS (Simple Knowledge Organization System), une ontologie spécialisée dans la mise au point de dictionnaires et thésaurus. Ramanathan Guha est quant à lui diplômé d’un doctorat en intelligence artificielle soutenu à Stanford, passé sous la direction de McCarthy et Feigenbaum en 1991. Il se montre aussi à l’origine de la mise au point progressive de RDF (Resource Description Framework) en 1997, de RSS en 1999, actif au W3C essentiellement dans les années 2000.
Le vocabulaire Schema doit son évolution à l’activité de plusieurs groupes de travail nommés « Community Group ». Ces sortes de communautés formées sur la base du volontariat échangent essentiellement sur des listes de diffusion, établies et maintenues par le W3C. Les membres discutent de la pertinence de l’ajout de nouvelles classes et propriétés, susceptibles d’être intégrées à plus ou moins long terme à Schema de manière officielle. Quinze groupes existent actuellement, répartis en autant de domaines d’intérêt, dirigés chacun par une ou deux responsables officiels. Tout le monde peut créer un groupe, gérer des wikis et sites web, soumettre des propositions d’évolution. Un groupe de discussion principal existe, nommé Schema.org Community Group. Un groupe de direction restreint préside à des orientations relatives à Schema, décide par exemple de la date des montées en version.
Les groupes Bib Extend et Architypes ont fait évoluer de manière importante Schema, en 2014 essentiellement, pour rendre possible la description des objets des bibliothèques et des archives. Dirigés par Richard Wallis (co-auteur de BIBFRAME, une ontologie dérivée de FRBR en passe d’être adoptée par la Bibliothèque du Congrès), ces deux groupes ont vu la plupart de leurs suggestions intégrées. De son côté, adossé au DCMI (Dublin Core Metadata Initiative), le groupe LRMI (Learning Resource Metadata Innovation) de Phil Baker a travaillé au signalement des ressources éducatives. Le groupe de Marc Twagirumukiza Healthcare Schema s’est montré actif essentiellement de 2013 à 2015, en vue d’intégrer la description de pages en relation avec les concepts de médecine.
Des initiatives se déploient aussi hors des facilités fournies par le W3C. On note dans le domaine des données géospatiales et satellitaires le groupe SOSO (Science On Schema.Org), de même que GeoCODES. Mené par Leyla Jael Castro et Nick Juty. Bioschemas émet des recommandations pour l’usage de Schema en biologie moléculaire, taxonomie et disciplines connexes. Sous l’influence de ces groupes de travail et de plusieurs autres, la version 14 datée de 2022 définissait 797 classes, 1 453 propriétés, 14 types de données, 86 dictionnaires contrôlés. La version de 2024 est la 28.1 et environ 8 versions sortent actuellement tous les ans.
5. Pour aller plus loin
5.1 Autres tutoriels
- Présentation du balisage de données structurées dans la recherche Google, Search Central, Tutoriel Google : Lien
- Add structured data to your web pages, Atelier de programmation Google : Lien
- Données sémantiques, structurées et associées, le choix JSON-LD, Jojaba, AlsaCréations, 2019 : Lien
- Comment mettre en place un balisage Schema parfait pour votre entreprise, Jason Barnard, 2017 : Lien
- Structured data with Schema.org: the ultimate guide, Yoast, Edwin Toonen, 2021 : Lien
- Thomas Coëffé (2021). Google : 2 recherches sur 3 se terminent sans clic. BDM : Lien
5.2 Outils de génération de codes
La plupart des gestionnaires de contenus proposent l’usage de modules dédiés à la génération de code Schema au format JSON-LD. Cependant, même techniquement valides, ces codes ne sont pas synonymes d’affichage de données enrichies dans la SERP.
- Outil d’aide au balisage, Gogle : Lien
- JSON-LD Schema Generator For SEO, Hall Analysis : Lien
- 60+ Structured Data Tools – Create, Test, Plugins & More : Lien
- Extensions JSON-LD et schema pour WordPress : Lien
- Drupal, le module « Schema.org Metatag » étend « Metatag » pour certaines des classes de schema : Lien
5.3 Outils pour la validation des codes et le référencement
- Outil de validation de JSON-LD : https://json-ld.org/playground/
- Outil de validation de Schema : https://validator.schema.org/
- Structured Data Linter, des exemples et un validateur : http://linter.structured-data.org/
- Outil de test des résultats enrichis, pour éventuelle prise en compte par Google : https://search.google.com/test/rich-results
- Google Search Console : Lien
- Bing Webmaster Tools : Lien
Conclusion
Alors que les informations relatives à une école, une université, une institution ou un laboratoire gagnent plutôt à être renseignées directement dans Wikipédia et Wikidata, des informations d’actualité peuvent être signalées à l’aide de Schema, sous forme de donnée structurée. De nombreux outils sont mis à disposition pour faciliter l’élaboration des codes et en contrôler la qualité. L’affichage final dans les pages de recherche n’est pas connu à l’avance.
Disponible sous licence CC-SA, le vocabulaire Schema se montre conçu pour présenter de manière enrichie les pages de sites web de toutes catégories. Du côté de Google, ces données peuvent également servir à renseigner le Knowledge Graph, une base de connaissance factuelle dont les usages sont multiples. L’ontologie se montre bien structurée et cohérente, relativement souple d’usage. Plusieurs communautés soutiennent le projet et œuvrent à son évolution.
Des acteurs de la gestion des connaissances peuvent également contribuer à l’enrichissement de Schema, comme le proposent par exemple plusieurs groupes de travail dans les domaines des sciences de l’information, de la biologie et de la géolocalisation. Certaines propriétés peuvent servir encore à combler les lacunes et étendre les capacités descriptives d’autres ontologies. La fourniture de nombreux exemples et de recommandations facilite l’implémentation.
- Consignes générales relatives aux données structurées, Search Central : Lien
3 Replies to “Schema.org, une ontologie au service de l’optimisation du SEO, et plus encore”