aboutsummaryrefslogtreecommitdiff
path: root/files/fr/glossary/quality_values/index.html
blob: d5f24bc21e3e93db602ce959b7aa571cf31d2e84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
---
title: Quality values
slug: Glossary/Quality_values
tags:
  - Glossaire
  - Mécanismes web
translation_of: Glossary/Quality_values
original_slug: Glossaire/Quality_values
---
<p><em><strong>Quality values</strong></em> (<em>valeurs de qualité</em>), ou <em>q-values</em> et <em>q-factors</em>, 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 <a href="/fr/docs/HTTP/Headers">en-têtes HTTP</a> et en HTML. L'importance d'une valeur est marquée par le suffixe  <code>';q='</code> immédiatement suivi par une valeur comprise entre <code>0</code> et <code>1</code> 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 <code>1</code>.</p>

<h2 id="Exemples">Exemples</h2>

<p>La syntaxe suivante :</p>

<pre><code>text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</code></pre>

<p>indique l'ordre de priorité :</p>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">Valeur</th>
   <th scope="col">Priorité</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td><code>text/html</code> et <code>application/xhtml+xml</code></td>
   <td><code>1.0</code></td>
  </tr>
  <tr>
   <td><code>application/xml</code></td>
   <td><code>0.9</code></td>
  </tr>
  <tr>
   <td><code>*/*</code></td>
   <td><code>0.8</code></td>
  </tr>
 </tbody>
</table>

<p>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 :</p>

<pre><code>text/html;q=0.8,text/*;q=0.8,*/*;q=0.8</code>
</pre>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">Valeur</th>
   <th scope="col">Priorité</th>
  </tr>
  <tr>
   <td><code>text/html</code></td>
   <td><code>0.8</code> (totalement spécifié)</td>
  </tr>
  <tr>
   <td><code>text/*</code></td>
   <td><code>0.8</code> (partiellement spécifié)</td>
  </tr>
  <tr>
   <td><code>*/*</code></td>
   <td><code>0.8</code> (non spécifié)</td>
  </tr>
 </thead>
</table>

<p>Quelques syntaxes, comme celle de {{HTTPHeader("Accept")}}, autorisent des spécificateurs supplémentaires comme <code>text/html;level=1</code>. Ceux-ci augmentent la spécificité de la valeur. Leur utilisation est extrêmement rare.</p>

<h2 id="Information_propre_aux_navigateurs">Information propre aux navigateurs</h2>

<h3 id="Firefox">Firefox</h3>

<p>À partir de Firefox 18, les valeurs du facteur de qualité sont fixées à 2 décimales. Elles étaient limitées à 1 décimale dans les versions antérieures ({{bug(672448)}}).</p>

<h2 id="Plus_d'informations">Plus d'informations</h2>

<ul>
 <li><a href="/fr/docs/HTTP/Headers">En-têtes HTTP</a> utilisant des <em>q-values</em> dans leur syntaxe : {{HTTPHeader("Accept")}}, {{HTTPHeader("Accept-Charset")}}, {{HTTPHeader("Accept-Language")}}, {{HTTPHeader("Accept-Encoding")}}, {{HTTPHeader("TE")}}.</li>
</ul>