[20] [DFN[[CODE(HTML)@en[<meta name=referrer>]]]]
は、[[文書]]の全体に適用される[[参照元ポリシー]]を指定するものです。

* 仕様書

[REFS[
- [1] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#meta-referrer>
]REFS]

* 構文

[5] [CODE(HTMLa)@en[content][<meta content>]] [[属性値]]は、
[[参照元ポリシー]]のいずれかでなければ[MUST[なりません]] [SRC[>>1]]。
[[ASCII大文字・小文字不区別]]です。[[空文字列]]とすることはできません。

[6] 古い値 [CODE[never][Referrer Policy]], [CODE[default][Referrer Policy]],
[CODE[always][Referrer Policy]] は、使っては[MUST[なりません]] [SRC[>>1]]。

[23] 解釈時に前後の[[空白][HTMLの空白]]は除去されますが、
[[著者]]が[[空白][HTMLの空白]]を含めることは認められていません。

* 処理

[7] [VAR[要素]]の[[文書への挿入]]、[[文書からの削除]]、
[CODE(HTMLa)@en[name][<meta name>]] [[属性]]や [CODE(HTMLa)@en[content][<meta content>]]
[[属性]]の変化では、次のようにしなければ[MUST[なりません]] [SRC[>>1]]。

[FIG(steps)[
= [8] 
[FIG(list)[
- [VAR[要素]]の[F[節点文書]]の[[文書中]]にある
- [CODE(HTMLe)@en[meta]] [[要素]]である
- [CODE(HTMLa)@en[name][<meta name>]] [[属性値]]が [CODE(HTML)@en[referrer][<meta name=referrer>]]
- [CODE(HTMLa)@en[content][<meta content>]] [[属性]]がある
- [CODE(HTMLa)@en[content][<meta content>]] [[属性値]]が[[空文字列]]でない
- [F[親][parentNode]]が[VAR[要素]]の[F[節点文書]]の[F[[[文書[CODE(HTMLe)@en[head]]要素]]]]である
]FIG]
... な[[要素]][VAR[要素]]について、[[木順]]に、
== [9] [VAR[値]]を、[VAR[要素]]の [CODE(HTMLa)@en[content][<meta content>]]
[[属性値]]に設定します。
== [10] [VAR[方針]]を、[VAR[値]]を[[ASCII小文字に変換]]した結果に設定します。
== [12] [VAR[方針]]が古い値なら、[VAR[方針]]に対応する[[参照元ポリシー]]に設定します。
== [14] [VAR[要素]]の[F[節点文書]]の[F[参照元ポリシー]]を、
[VAR[方針]]に設定します。
]FIG]

[17] 複数ある場合、認識できる最初の[[要素]]の値が採用されます。
これは [CODE(HTTP)@en[Referrer-Policy:]] [[ヘッダー]]の解釈方法とは異なります。

[18] [[空文字列]]の指定は認められておらず、無視されます。これは
[CODE(HTMLa)@en[referrerpolicy]] [[属性]]とは異なります。

[19] [CODE(HTTP)@en[Referrer-Policy:]] と [CODE(HTMLa)@en[referrerpolicy]]
とは違って、古い値  [CODE[never][Referrer Policy]], [CODE[default][Referrer Policy]],
[CODE[always][Referrer Policy]],
[CODE[origin-when-crossorigin]] も認識されます。

* 関連

[21] [[HTTPヘッダー]]の [CODE(HTTP)@en[Referrer-Policy:]] の指定もある場合、
[CODE(HTMLe)@en[meta]] [[要素]]の指定が優先されます。

[22] [CODE(HTMLa)@en[referrerpolicy]] [[属性]]や [CODE(HTMLa)@en[rel=noreferrer]]
の指定もある場合、そちらが優先されます。

* 歴史

[2] [CODE(HTTP)@en[Referer:]] および [[Referrer Policy]] も参照。


[3] [CITE@en[Integrate with the Referrer Policy spec, part 1 of n]]
( ([[domenic]]著, [TIME[2016-05-05 23:01:42 +09:00]]))
<https://github.com/whatwg/html/commit/6a7318072f340ad45229df171245d70d8621c2fe>

[4] [CITE@en[Integrate with HTML, part 2 of n (#49)]]
( ([[domenic]]著, [TIME[2016-05-21 02:48:12 +09:00]]))
<https://github.com/w3c/webappsec-referrer-policy/commit/df68c16003b7f89bbaafe44d8756720889f9d64a>

[24] [CITE@en[Change meta-referrer candidate to child of head element of document (#…]]
( ([[rebstar6]]著, [TIME[2016-05-26 06:39:41 +09:00]]))
<https://github.com/whatwg/html/commit/00dcb3cf4002c67099bfee22ddad743f04d4541f>

[FIG(quote)[
[FIGCAPTION[
[16] [CITE@ja[ブリブザー、恋愛育成ゲーム『すくみず!』をリリース…野水伊織さん、新田恵海さん、福原香織さん、沢城みゆきさん、中島愛さんが出演 │ ハッカドール]]
( ([TIME[2016-06-03 00:35:37 +09:00]]))
<https://web.hackadoll.com/n/7Eov>
]FIGCAPTION]

> 
>     <meta name="referrer" content="origin-when-crossorigin">

]FIG]


[25] [CITE@en[Do not repeat the referrer policies]]
([[domenic]]著, [TIME[2016-08-26 06:33:48 +09:00]])
<https://github.com/whatwg/html/commit/4c228d3fd9e61dee2c45ee0cd7722e1671f6ca9f>

[26] [CITE@en[Update and correct <meta name="referrer"> parsing]]
([[domenic]]著, [TIME[2016-08-27 14:43:39 +09:00]])
<https://github.com/whatwg/html/commit/7cdc83d7a045f255967cd54504c1e35e2f87c7df>

[11] [CITE@en[Honor srcdoc document referrer policies when set]]
([[estark37]]著, [TIME[2016-11-24 05:58:33 +09:00]])
<https://github.com/whatwg/html/commit/3147414111d134ecd844d9796aa6fc7c1979c98b>

[13] [CITE@en[Clarify ASCII-case-insensitive matching for <meta>'s name]]
([[TimvdLippe]]著, [TIME[2018-03-16 12:54:45 +09:00]])
<https://github.com/whatwg/html/commit/faa4c20f8f7b1f526e13cc2fc36c58bea99fb217>