@@ -2802,7 +2802,6 @@ a.setAttribute('href', 'http://example.com/'); // change the content attribute d
2802
2802
<ul class="brief">
2803
2803
<li><dfn data-noexport=""><code>about:blank</code></dfn>
2804
2804
<li><dfn data-x-href="https://fetch.spec.whatwg.org/#concept-https-state-value">HTTPS state value</dfn>
2805
- <li><dfn data-x-href="https://fetch.spec.whatwg.org/#concept-referrer-policy">referrer policy</dfn>
2806
2805
<li><dfn data-noexport="" data-x-href="https://fetch.spec.whatwg.org/#http-cors-protocol">CORS protocol</dfn>
2807
2806
<li><dfn data-noexport="" data-x="default-user-agent-value" data-x-href="https://fetch.spec.whatwg.org/#default-user-agent-value">default `<code>User-Agent</code>` value</dfn>
2808
2807
<li><dfn data-noexport="" data-x-href="https://fetch.spec.whatwg.org/#concept-header-extract-mime-type">extract a MIME type</dfn>
@@ -2863,16 +2862,8 @@ a.setAttribute('href', 'http://example.com/'); // change the content attribute d
2863
2862
<p>The following terms are defined in <cite>Referrer Policy</cite>: <ref spec=REFERRERPOLICY></p>
2864
2863
2865
2864
<ul class="brief">
2865
+ <li><dfn data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy">referrer policy</dfn></li>
2866
2866
<li>The <dfn data-x="referrer-policy-token" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#policy-token"><code>policy-token</code></dfn> production</li>
2867
- <li>The
2868
- <dfn data-x="referrerpolicy-no-referrer" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-no-referrer">"<code>no-referrer</code>"</dfn>,
2869
- <dfn data-x="referrerpolicy-no-referrer-when-downgrade" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-no-referrer-when-downgrade">"<code>no-referrer-when-downgrade</code>"</dfn>,
2870
- <dfn data-x="referrerpolicy-same-origin" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-same-origin">"<code>same-origin</code>"</dfn>,
2871
- <dfn data-x="referrerpolicy-origin" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-origin">"<code>origin</code>"</dfn>,
2872
- <dfn data-x="referrerpolicy-strict-origin" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-strict-origin">"<code>strict-origin</code>"</dfn>,
2873
- <dfn data-x="referrerpolicy-origin-when-cross-origin" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-origin-when-cross-origin">"<code>origin-when-cross-origin</code>"</dfn>,
2874
- <dfn data-x="referrerpolicy-strict-origin-when-cross-origin" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-strict-origin-when-cross-origin">"<code>strict-origin-when-cross-origin</code>"</dfn>, and
2875
- <dfn data-x="referrerpolicy-unsafe-url" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-unsafe-url">"<code>unsafe-url</code>"</dfn> policies</li>
2876
2867
<li>The `<dfn data-x="http-referrer-policy" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-header-dfn"><code>Referrer-Policy</code></dfn>` HTTP header</li>
2877
2868
<li>The <dfn data-x="parse-referrer-policy-header" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#parse-referrer-policy-from-header">parse a referrer policy from a `<code>Referrer-Policy</code>` header</dfn> algorithm</li>
2878
2869
<li>The <dfn data-x="concept-determine-referrer-policy" data-x-href="https://w3c.github.io/webappsec-referrer-policy/#determine-policy-for-token">determine the referrer policy</dfn> algorithm</li>
@@ -7244,80 +7235,17 @@ a.setAttribute('href', 'http://example.com/'); // change the content attribute d
7244
7235
<h4>Referrer policy attributes</h4>
7245
7236
7246
7237
<p>A <dfn data-export="">referrer policy attribute</dfn> is an <span>enumerated attribute</span>.
7247
- The following table lists the keywords and states for the attribute — the keywords in the
7248
- left column map to the states in the cell in the second column on the same row as the keyword.
7249
- These states are all <span data-x="referrer policy">referrer policies</span>, and their impact on
7250
- the processing model of various <span data-x="concept-fetch">fetches</span> is defined in more
7251
- detail in the WHATWG Fetch standard and in <cite>Referrer Policy</cite>. <ref spec=FETCH> <ref
7252
- spec=REFERRERPOLICY></p>
7238
+ Each <span>referrer policy</span>, including the empty string, is a keyword for this attribute,
7239
+ mapping to a state of the same name.</p>
7253
7240
7254
- <table>
7255
- <thead>
7256
- <tr>
7257
- <th> Keyword
7258
- <th> State
7259
- <th> Brief description
7260
- <tbody>
7261
- <tr>
7262
- <td><dfn><code data-x="attr-referrerpolicy-no-referrer-keyword">no-referrer</code></dfn>
7263
- <td><span data-x="referrerpolicy-no-referrer">"<code>no-referrer</code>"</span>
7264
- <td><span data-x="concept-request">Requests</span> for the element will have no <span
7265
- data-x="concept-request-referrer">referrer</span> sent at all.
7266
- <tr>
7267
- <td><dfn><code data-x="attr-referrerpolicy-no-referrer-when-downgrade-keyword">no-referrer-when-downgrade</code></dfn>
7268
- <td><span data-x="referrerpolicy-no-referrer-when-downgrade">"<code>no-referrer-when-downgrade</code>"</span>
7269
- <td><span data-x="concept-request">Requests</span> for the element will send a full URL as
7270
- their <span data-x="concept-request-referrer">referrer</span> to destinations that are
7271
- <span data-x="a priori authenticated URL"><i>a priori</i> authenticated URLs</span>; otherwise,
7272
- no <span data-x="concept-request-referrer">referrer</span> will be sent.
7273
- <tr>
7274
- <td><dfn><code data-x="attr-referrerpolicy-same-origin-keyword">same-origin</code></dfn>
7275
- <td><span data-x="referrerpolicy-same-origin">"<code>same-origin</code>"</span>
7276
- <td><span data-x="concept-request">Requests</span> for the element will send a full URL as
7277
- their <span data-x="concept-request-referrer">referrer</span> to the same <span>origin</span>,
7278
- but no <span data-x="concept-request-referrer">referrer</span> will be sent for cross-origin
7279
- requests.
7280
- <tr>
7281
- <td><dfn><code data-x="attr-referrerpolicy-origin-keyword">origin</code></dfn>
7282
- <td><span data-x="referrerpolicy-origin">"<code>origin</code>"</span>
7283
- <td><span data-x="concept-request">Requests</span> for the element will only send an
7284
- <span>origin</span> as their <span data-x="concept-request-referrer">referrer</span>.
7285
- <tr>
7286
- <td><dfn><code data-x="attr-referrerpolicy-strict-origin-keyword">strict-origin</code></dfn>
7287
- <td><span data-x="referrerpolicy-strict-origin">"<code>strict-origin</code>"</span>
7288
- <td><span data-x="concept-request">Requests</span> for the element will only send an
7289
- <span>origin</span> as their <span data-x="concept-request-referrer">referrer</span>
7290
- to destinations that are <span data-x="a priori authenticated URL"><i>a priori</i>
7291
- authenticated URLs</span>; otherwise, no
7292
- <span data-x="concept-request-referrer">referrer</span> will be sent.
7293
- <tr>
7294
- <td><dfn><code data-x="attr-referrerpolicy-origin-when-cross-origin-keyword">origin-when-cross-origin</code></dfn>
7295
- <td><span data-x="referrerpolicy-origin-when-cross-origin">"<code>origin-when-cross-origin</code>"</span>
7296
- <td><span data-x="concept-request">Requests</span> for the element will send a full URL as
7297
- their <span data-x="concept-request-referrer">referrer</span> to the same <span>origin</span>,
7298
- but will only send an <span>origin</span> as their <span
7299
- data-x="concept-request-referrer">referrer</span> for cross-origin requests.
7300
- <tr>
7301
- <td><dfn><code data-x="attr-referrerpolicy-strict-origin-when-cross-origin-keyword">strict-origin-when-cross-origin</code></dfn>
7302
- <td><span data-x="referrerpolicy-strict-origin-when-cross-origin">"<code>strict-origin-when-cross-origin</code>"</span>
7303
- <td><span data-x="concept-request">Requests</span> for the element will send a full URL as
7304
- their <span data-x="concept-request-referrer">referrer</span> to the same <span>origin</span>,
7305
- only send an <span>origin</span> as
7306
- their <span data-x="concept-request-referrer">referrer</span> for cross-origin requests to
7307
- destinations that are <span data-x="a priori authenticated URL"><i>a priori</i> authenticated
7308
- URLs</span>; otherwise, no <span data-x="concept-request-referrer">referrer</span> will be
7309
- sent.
7310
- <tr>
7311
- <td><dfn><code data-x="attr-referrerpolicy-unsafe-url-keyword">unsafe-url</code></dfn>
7312
- <td><span data-x="referrerpolicy-unsafe-url">"<code>unsafe-url</code>"</span>
7313
- <td><span data-x="concept-request">Requests</span> for the element will send a full URL as
7314
- their <span data-x="concept-request-referrer">referrer</span> in all cases.
7315
- </table>
7316
-
7317
- <p>An additional state is given by the empty string (which is also a valid <span>referrer
7318
- policy</span>). The attribute's <i data-x="invalid value default">invalid value default</i> and <i
7241
+ <p>The attribute's <i data-x="invalid value default">invalid value default</i> and <i
7319
7242
data-x="missing value default">missing value default</i> are both the empty string state.</p>
7320
7243
7244
+ <p>The impact of these states on the processing model of various <span
7245
+ data-x="concept-fetch">fetches</span> is defined in more detail throughout this specification, in
7246
+ the WHATWG Fetch standard, and in <cite>Referrer Policy</cite>. <ref spec=FETCH> <ref
7247
+ spec=REFERRERPOLICY></p>
7248
+
7321
7249
<div class="note">
7322
7250
<p>Several signals can contribute to which processing model is used for a given <span
7323
7251
data-x="concept-fetch">fetch</span>; a <span>referrer policy attribute</span> is only one of
@@ -13372,19 +13300,8 @@ interface <dfn>HTMLMetaElement</dfn> : <span>HTMLElement</span> {
13372
13300
<dt><dfn><code data-x="meta-referrer">referrer</code></dfn></dt>
13373
13301
13374
13302
<dd>
13375
- <p>The value must match the <code data-x="referrer-policy-token">policy-token</code> production,
13376
- defining a default <span>referrer policy</span> for the <code>Document</code>. <ref
13377
- spec="REFERRERPOLICY"></p>
13378
-
13379
- <p>In particular, <span w-nodev>although they impact the processing model,</span> the legacy
13380
- values <code data-x="">never</code>, <code data-x="">default</code>, and <code
13381
- data-x="">always</code> must not be used by authors; instead, use <code
13382
- data-x="">no-referrer</code>, <code data-x="">no-referrer-when-downgrade</code>, and <code
13383
- data-x="">unsafe-url</code>, respectively.</p>
13384
-
13385
- <p class="note">The valid values for the <code data-x="attr-meta-content">content</code>
13386
- attribute in this state match the keywords for <span data-x="referrer policy attribute">referrer
13387
- policy attributes</span>.</p>
13303
+ <p>The value must be a <span>referrer policy</span>, which defines the default <span>referrer
13304
+ policy</span> for the <code>Document</code>. <ref spec="REFERRERPOLICY"></p>
13388
13305
13389
13306
<div w-nodev>
13390
13307
@@ -13401,9 +13318,9 @@ interface <dfn>HTMLMetaElement</dfn> : <span>HTMLElement</span> {
13401
13318
meet the following criteria, in <span>tree order</span>:</p>
13402
13319
13403
13320
<ul class="brief">
13404
- <li>The element is <span>in a document tree</span>. </li>
13321
+ <li>The element is <span>in a document tree</span></li>
13405
13322
<li>The element has a <code data-x="attr-meta-name">name</code> attribute, whose value is
13406
- <code data-x="meta-referrer">referrer</code>. </li>
13323
+ <code data-x="meta-referrer">referrer</code></li>
13407
13324
<li>The element has a <code data-x="attr-meta-content">content</code> attribute</li>
13408
13325
<li>The element is a child of <span>the <code>head</code> element</span> of the document</li>
13409
13326
</ul>
@@ -13422,9 +13339,18 @@ interface <dfn>HTMLMetaElement</dfn> : <span>HTMLElement</span> {
13422
13339
<p>If <var>value</var> is not the empty string, then:</p>
13423
13340
13424
13341
<ol>
13425
- <li><p>Let <var>policy</var> be the result of <span
13426
- data-x="concept-determine-referrer-policy">determining the policy</span> for
13427
- <var>value</var>.</p></li>
13342
+ <li>
13343
+ <p>Let <var>policy</var> be the result of <span
13344
+ data-x="concept-determine-referrer-policy">determining the policy</span> for
13345
+ <var>value</var>.</p>
13346
+
13347
+ <p class="note">This step allows the legacy values <code data-x="">never</code>, <code
13348
+ data-x="">default</code>, and <code data-x="">always</code> to take the place of the
13349
+ standard referrer policies <code data-x="">no-referrer</code>, <code
13350
+ data-x="">no-referrer-when-downgrade</code>, and <code data-x="">unsafe-url</code>,
13351
+ respectively. Per the above conformance requirement, these legacy values must never be
13352
+ used by authors, even though this step causes them to impact the processing model.</p>
13353
+ </li>
13428
13354
13429
13355
<li><p>If <var>policy</var> is not the empty string, then set <var>element</var>'s
13430
13356
<span>node document</span>'s <span data-x="concept-document-referrer-policy">referrer
@@ -13472,9 +13398,9 @@ interface <dfn>HTMLMetaElement</dfn> : <span>HTMLElement</span> {
13472
13398
meet the following criteria, in <span>tree order</span>:</p>
13473
13399
13474
13400
<ul class="brief">
13475
- <li>The element is <span>in a document tree</span>. </li>
13401
+ <li>The element is <span>in a document tree</span></li>
13476
13402
<li>The element has a <code data-x="attr-meta-name">name</code> attribute, whose value is
13477
- <code data-x="meta-theme-color">theme-color</code>. </li>
13403
+ <code data-x="meta-theme-color">theme-color</code></li>
13478
13404
<li>The element has a <code data-x="attr-meta-content">content</code> attribute</li>
13479
13405
</ul>
13480
13406
</li>
@@ -117051,14 +116977,7 @@ interface <dfn>External</dfn> {
117051
116977
<code data-x="attr-img-referrerpolicy">img</code>;
117052
116978
<code data-x="attr-link-referrerpolicy">link</code>
117053
116979
<td> Determines the <span>referrer policy</span> for <span data-x="concept-fetch">fetches</span> initiated by the element
117054
- <td> "<code data-x="attr-referrerpolicy-no-referrer-keyword">no-referrer</code>";
117055
- "<code data-x="attr-referrerpolicy-no-referrer-when-downgrade-keyword">no-referrer-when-downgrade</code>";
117056
- "<code data-x="attr-referrerpolicy-same-origin-keyword">same-origin</code>";
117057
- "<code data-x="attr-referrerpolicy-origin-keyword">origin</code>";
117058
- "<code data-x="attr-referrerpolicy-strict-origin-keyword">strict-origin</code>";
117059
- "<code data-x="attr-referrerpolicy-origin-when-cross-origin-keyword">origin-when-cross-origin</code>";
117060
- "<code data-x="attr-referrerpolicy-strict-origin-when-cross-origin-keyword">strict-origin-when-cross-origin</code>";
117061
- "<code data-x="attr-referrerpolicy-unsafe-url-keyword">unsafe-url</code>"
116980
+ <td> <span>Referrer policy</span>
117062
116981
<tr>
117063
116982
<th> <code data-x="">rel</code>
117064
116983
<td> <code data-x="attr-hyperlink-rel">a</code>;
0 commit comments