Microdonnées
============

Les microdonnées (*microdata*) sont une partie de la spécification HTML du WHATWG qui est utilisée afin de fournir des métadonnées sur le contenu des pages web. Les moteurs de recherche, les robots (*crawlers*) d'analyse peuvent traiter les microdonnées d'une page web pour améliorer l'expérience de navigation. Les moteurs de recherches peuvent tirer parti des informations pour obtenir une meilleure pertinence. Les microdonnées sont structurées grâce à un vocabulaire permettant de décrire des objets qui sont des groupes de paires de noms/valeurs. Le but des microdonnées est de faciliter l'annotation des éléments HTML et d'être plus simple à utiliser que RDFa ou les microformats.

Les microdonnées sont des groupes de paires nom-valeur. Ces groupes sont appelés des objets (*items*) et chaque paire nom-valeur est une propriété. Les objets et les propriétés s'inscrivent dans des éléments HTML classiques :

* Pour créer un objet, on utilise l'attribut **`itemscope`**
* Pour ajouter une propriété, on utilise l'attribut **`itemprop`** sur l'un des descendants.
Vocabulaires
------------

Google et les autres moteurs de recherches participent au vocabulaire défini par schema.org pour structurer les données. Ce vocabulaire définit un ensemble standard de types et de noms de propriétés. Par exemple `MusicEvent` indique un événement musical dont les propriétés `startDate` et `location` utilisées pour définir les détails du concert. Dans ce cas, l'URL `https://schema.org/MusicEvent` sera l'URL utilisée pour l'attribut `itemtype` et les propriétés `startDate` et `location` seront les propriétés utilisées, définies par `https://schema.org/MusicEvent`.

**Note :** Pour en savoir plus sur les attributs `itemtype`, consultez le site http://schema.org/Thing.

Les vocabulaires de microdonnées fournissent la sémantique ou la signification d'un élément. Les développeurs Web peuvent concevoir un vocabulaire personnalisé ou utiliser des vocabulaires disponibles sur le Web, tels que le vocabulaire largement utilisé schema.org. Une collection de vocabulaires de balisage couramment utilisés est fournie par Schema.org.

Vocabulaires couramment utilisés :

* Œuvres créatives : CreativeWork, Book, Movie, MusicRecording, Recipe, TVSeries
* Objets non textuels incorporés : AudioObject, ImageObject, VideoObject
* Event
* Health and medical types : Notes sur les types de santé et médicaux sous MedicalEntity
* Organization
* Person
* Place, LocalBusiness, Restaurant
* Product, Offer, AggregateOffer
* Review, AggregateRating
* Action
* Thing
* Intangible

Les principaux opérateurs de moteurs de recherche comme Google, Microsoft et Yahoo ! s'appuient sur le vocabulaire schema.org pour améliorer les résultats de recherche. Pour certains usages, un vocabulaire ad-hoc est adéquat. Pour d'autres, un vocabulaire devra être conçu. Dans la mesure du possible, les auteurs sont encouragés à réutiliser les vocabulaires existants, car cela facilite la réutilisation du contenu.

Localisation
------------

Dans certains cas, les moteurs de recherche couvrent un public régional. Certaines extensions sont donc ajoutées aux microdonnées pour fournir du contenu spécifique. Ainsi, Yandex qui est un moteur de recherche très présent en Russie supporte des microformats comme *hCard*, *hRecipe*, *hReview* et *hProduct* et fournit son propre format pour dédfinir les termes et les articles encyclopédiques. Cette extension a été construite afin de résoudre les problèmes de translitération entre les alphabets cyrillique et latin.

Attributs globaux liés aux microdonnées
---------------------------------------

`itemid`

Cet attribut est l'identifiant unique d'un objet.

`itemprop`

Cet attribut est utilisé afin d'ajouter des propriétés à un élément.

`itemref`

Cet attribut permet de faire référence à d'autres éléments HTML décrivant le même objet.

`itemscope`

Cet attribut définit la portée du vocabulaire déclaré par `itemtype` et englobe généralement un objet.

`itemtype`

Cet attribut définit l'URL du vocabulaire qui spécifie le modèle de données utilisé pour décrire les objets.

Exemple
-------

### HTML


```html
<div itemscope itemtype="https://schema.org/SoftwareApplication">
  <span itemprop="name">Angry Birds</span> - NÉCESSITE
  <span itemprop="operatingSystem">ANDROID</span><br />
  <link
 itemprop="applicationCategory"
 href="https://schema.org/GameApplication" />

  <div
 itemprop="aggregateRating"
 itemscope
 itemtype="https://schema.org/AggregateRating">
    ÉVALUATION :
    <span itemprop="ratingValue">4.6</span> (
    <span itemprop="ratingCount">8864</span> notes )
  </div>

  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer">
    Prix : <span itemprop="price">1.00</span>$
    <meta itemprop="priceCurrency" content="USD" />
  </div>
</div>
```

### Données structurées

|  |  |  |
| --- | --- | --- |
| itemscope | itemtype | SoftwareApplication (https://schema.org/SoftwareApplication) |
| itemprop | name | Angry Birds |
| itemprop | operatingSystem | ANDROID |
| itemprop | applicationCategory | GameApplication (https://schema.org/GameApplication) |
| itemscope | itemprop[itemtype] | aggregateRating [AggregateRating] |
| itemprop | ratingValue | 4.6 |
| itemprop | ratingCount | 8864 |
| itemscope | itemprop[itemtype] | offers [Offer] |
| itemprop | price | 1.00 |
| itemprop | priceCurrency | USD |

### Résultat

**Note :** Un outil pratique pour extraire les structures de microdonnées du HTML est l'outil de test des données structurées de Google. Essayez-le sur le HTML présenté ci-dessus.

Compatibilité des navigateurs
-----------------------------

Fonctionnalité ajoutée dans Firefox 16 et retirée dans Firefox 49.

Voir aussi
----------

* Les attributs universels