Valeurs de qualité (Quality values)
Les valeurs de qualité (Quality values en anglais), ou q-values et q-factors, sont utilisés pour décrire l'ordre de priorité des valeurs séparées par une virgule dans une liste. C'est une syntaxe spéciale autorisée dans quelques en-têtes HTTP et en HTML.
L'importance d'une valeur est marquée par le suffixe ';q=' immédiatement suivi par une valeur comprise entre 0 et 1 inclus, avec jusqu'à trois décimales, la valeur la plus élevée indiquant la priorité la plus haute. Quand le paramètre n'est pas déclaré, la valeur par défaut est 1.
Exemples
La syntaxe suivante :
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
indique l'ordre de priorité :
| Valeur | Priorité |
|---|---|
text/html et application/xhtml+xml |
1.0 |
application/xml |
0.9 |
*/* |
0.8 |
S'il n'y a pas de priorité définie pour les deux premières valeurs, l'ordre dans la liste est sans importance. Néanmoins, avec la même qualité, des valeurs plus spécifiques ont la priorité sur celles qui le sont moins :
text/html;q=0.8,text/*;q=0.8,*/*;q=0.8
| Valeur | Priorité |
|---|---|
text/html |
0.8 (totalement spécifié) |
text/* |
0.8 (partiellement spécifié) |
*/* |
0.8 (non spécifié) |
Quelques syntaxes, comme celle de Accept, autorisent des spécificateurs supplémentaires comme text/html;level=1. Ceux-ci augmentent la spécificité de la valeur. Leur utilisation est extrêmement rare.
Voir aussi
- En-têtes HTTP utilisant des q-values dans leur syntaxe :
Accept,Accept-Encoding,Accept-Language,TE - Définitions des champs d'en-tête (angl.)