[3] [DFN[[CODE(HTTP)@en[[[Variant-Vary:]]]]]] [[ヘッダー]]は、
[[変種]]データの決定に用いられた[[要求]]の[[ヘッダー]]を表します。

* 仕様書

[REFS[
- [1] '''[CITE@en[RFC 2295 - Transparent Content Negotiation in HTTP]] ([TIME[2014-08-31 19:36:42 +09:00]] 版) <http://tools.ietf.org/html/rfc2295#section-8.6>'''
- [10] [CITE@en[RFC 2295 - Transparent Content Negotiation in HTTP]] ([TIME[2014-08-31 19:36:42 +09:00]] 版) <http://tools.ietf.org/html/rfc2295#section-10.2>
]REFS]

* 意味

[4] [CODE(HTTP)@en[[[Variant-Vary:]]]] [[ヘッダー]]は、
[[選択応答]]において[[変種]]のデータ ([[payload body]] やいくつかの[[ヘッダー]])
に適用される「vary」情報を表します [SRC[>>1]]。

;; [5] それに対して [CODE(HTTP)@en[[[Vary:]]]] [[ヘッダー]]は[[応答]]全体としての
「vary」を表しています。

* 構文

[6] [CODE(HTTP)@en[[[Variant-Vary:]]]] [[ヘッダー]]の値は、
[CODE(HTTP)[[[*]]]] または1つ以上の[[ヘッダー名]]の[[リスト]] ([CODE(HTTP)[#]]) です [SRC[>>1]]。

[FIG(railroad)[
= |
== [CODE(HTTP)[[[*]]]]
== ?
=== [[ヘッダー名]]
=== *
==== [[OWS]]
==== [CODE(HTTP)[[[,]]]]
==== [[OWS]]
==== [[ヘッダー名]]
]FIG]

;; [7] その意味は明記されていませんが、 [CODE(HTTP)@en[[[Vary:]]]] と同じと思われます。

* 文脈

[11] [[選択応答]]では、[[最善の異体]]の [CODE(HTTP)@en[[[Vary:]]]]
[[ヘッダー]]を [CODE(HTTP)@en[[[Variant-Vary:]]]] [[ヘッダー]]として含めなければ[['''なりません''']] [SRC[>>10]]。

* 歴史

[FIG(quote)[
[FIGCAPTION[
[2] RFC 2295 (HTTP 透過内容折衝) 8.6 Variant-Vary
]FIGCAPTION]

> The Variant-Vary response header can be used in a choice response to
record any vary information which applies to the variant data (the
entity body combined with some of the entity headers) contained in
the response, rather than to the response as a whole.

[CODE(HTTP)[Variant-Vary]] 応答頭は、[[選択応答]]において、
(応答全体ではなく) 応答に含まれる変種データ
([[実体本体]]と幾つかの実体頭の組合せ) に適用される変化情報を記録するのに使うことが出来ます。

>
- Variant-Vary  = "Variant-Vary" ":" ( "*" | 1#field-name )

> Use of the Variant-Vary header is discussed in section 10.2.
]FIG]

** RFC 4229

[9] [[RFC 4229]] は [[RFC 2295]] を出典に [[IANA登録簿]]に状態「[[実験的]]」
で登録しています [SRC[>>8]]。

[REFS[
- [8] [CITE@en[RFC 4229 - HTTP Header Field Registrations]] ([TIME[2014-11-02 18:53:20 +09:00]] 版) <http://tools.ietf.org/html/rfc4229#section-2.1.111>
]REFS]