@@ -10016,9 +10016,10 @@ o.myself = o;</code></pre>
10016
10016
10017
10017
<p>The <code>Document</code> object's <dfn data-x="concept-document-origin"
10018
10018
data-x-href="https://dom.spec.whatwg.org/#concept-document-origin"
10019
- data-x-for="Document">origin</dfn> is defined in <cite>DOM</cite>. It is initially set when the
10020
- <code>Document</code> object is created, and can change during the lifetime of the
10021
- <code>Document</code> only upon setting <code
10019
+ data-x-for="Document">origin</dfn> is defined in <cite>DOM</cite>. It currently aliases to
10020
+ value of its <span data-x=document-concept-policy-container>policy container</span>'s
10021
+ <span data-x=policy-container-origin>origin</span>. This origin can change during the lifetime
10022
+ of the <code>Document</code> upon setting <code
10022
10023
data-x="dom-document-domain">document.domain</code>. A <code>Document</code>'s <span
10023
10024
data-x="concept-document-origin">origin</span> can differ from the <span
10024
10025
data-x="concept-url-origin">origin</span> of its <span data-x="concept-document-url">URL</span>;
@@ -83441,6 +83442,10 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
83441
83442
<!-- Note: each item has to define a default value for creating a new policy container. -->
83442
83443
83443
83444
<ul>
83445
+ <li><p>An <dfn export for="policy container" data-dfn-for="Policy Container"
83446
+ data-x="policy-container-origin">origin</dfn>, which is an <span>origin</span>. It is initially
83447
+ an opaque origin.</p></li>
83448
+
83444
83449
<li><p>A <dfn export for="policy container" data-x="policy-container-csp-list">CSP list</dfn>,
83445
83450
which is a <span data-x="concept-csp-list">CSP list</span>. It is initially empty.</p></li>
83446
83451
@@ -83461,6 +83466,9 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
83461
83466
<ol>
83462
83467
<li><p>Let <var>clone</var> be a new <span>policy container</span>.</p></li>
83463
83468
83469
+ <li><p>Set <var>clone</var>'s <span data-x="policy-container-origin">origin</span> to
83470
+ <var>policyContainer</var>'s <span data-x="policy-container-origin">origin</span>.</p></li>
83471
+
83464
83472
<li><p><span data-x="list iterate">For each</span> <var>policy</var> in
83465
83473
<var>policyContainer</var>'s <span data-x="policy-container-csp-list">CSP list</span>, <span
83466
83474
data-x="list append">append</span> a copy of <var>policy</var> into <var>clone</var>'s <span
@@ -83512,6 +83520,10 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
83512
83520
83513
83521
<li><p>Let <var>result</var> be a new <span>policy container</span>.</p></li>
83514
83522
83523
+ <li><p>Set <var>result</var>'s <span data-x="policy-container-origin">origin</span> to
83524
+ <var>response</var>'s <span data-x="concept-response-url">URL</span>'s
83525
+ <span data-x="concept-url-origin">origin</span>.</p></li>
83526
+
83515
83527
<li><p>Set <var>result</var>'s <span data-x="policy-container-csp-list">CSP list</span> to the
83516
83528
result of <span data-x="parse-response-csp">parsing a response's Content Security Policies</span>
83517
83529
given <var>response</var>.</p></li>
@@ -83567,7 +83579,9 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
83567
83579
<li><p>If <var>responsePolicyContainer</var> is not null, then return
83568
83580
<var>responsePolicyContainer</var>.</p></li>
83569
83581
83570
- <li><p>Return a new <span>policy container</span>.</p></li>
83582
+ <li><p>Return a new <span>policy container</span> with its
83583
+ <span data-x="policy-container-origin">origin</span> set to <var>responseURL</var>'s
83584
+ <span data-x="concept-url-origin">origin</span>.</p></li>
83571
83585
</ol>
83572
83586
83573
83587
<p>To <dfn data-x="initialize worker policy container">initialize a worker global scope's policy
@@ -85021,12 +85035,6 @@ interface <dfn interface>BarProp</dfn> {
85021
85035
<span data-x="concept-document-window">associated <code>Document</code></span>.</p>
85022
85036
</dd>
85023
85037
85024
- <dt>The <span data-x="concept-settings-object-origin">origin</span></dt>
85025
- <dd>
85026
- <p>Return the <span data-x="concept-document-origin">origin</span> of <var>window</var>'s
85027
- <span data-x="concept-document-window">associated <code>Document</code></span>.</p>
85028
- </dd>
85029
-
85030
85038
<dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
85031
85039
<dd>
85032
85040
<p>Return the <span data-x="concept-document-policy-container">policy container</span> of
@@ -88151,9 +88159,6 @@ interface <dfn interface>BeforeUnloadEvent</dfn> : <span>Event</span> {
88151
88159
<dt><span data-x="concept-document-mode">mode</span></dt>
88152
88160
<dd>"<code data-x="">quirks</code>"</dd>
88153
88161
88154
- <dt><span data-x="concept-document-origin">origin</span></dt>
88155
- <dd><var>origin</var></dd>
88156
-
88157
88162
<dt><span data-x="concept-document-bc">browsing context</span></dt>
88158
88163
<dd><var>browsingContext</var>
88159
88164
@@ -89463,9 +89468,6 @@ location.href = '#foo';</code></pre>
89463
89468
<dd>a <span data-x="concept-response">response</span> that ultimately was navigated to
89464
89469
(potentially a <span>network error</span>)</dd>
89465
89470
89466
- <dt><dfn data-x="navigation-params-origin">origin</dfn></dt>
89467
- <dd>an <span>origin</span> to use for the new <code>Document</code></dd>
89468
-
89469
89471
<dt><dfn data-x="navigation-params-policy-container">policy container</dfn></dt>
89470
89472
<dd>a <span>policy container</span> to use for the new <code>Document</code></dd>
89471
89473
@@ -89811,6 +89813,9 @@ location.href = '#foo';</code></pre>
89811
89813
<var>finalSandboxFlags</var>, <var>documentState</var>'s <span
89812
89814
data-x="document-state-initiator-origin">initiator origin</span>, and null.</p></li>
89813
89815
89816
+ <li><p>Set <var>policyContainer</var>'s <span data-x="policy-container-origin">origin</span>
89817
+ to <var>responseOrigin</var>.</p></li>
89818
+
89814
89819
<li><p>Let <var>coop</var> be a new <span>cross-origin opener policy</span>.</p></li>
89815
89820
89816
89821
<li>
@@ -89843,11 +89848,8 @@ location.href = '#foo';</code></pre>
89843
89848
<dt><span data-x="navigation-params-response">response</span></dt>
89844
89849
<dd><var>response</var></dd>
89845
89850
89846
- <dt><span data-x="navigation-params-origin">origin</span></dt>
89847
- <dd><var>responseOrigin</var></dd>
89848
-
89849
89851
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
89850
- <dd><var>policyContainer</var></dd>
89852
+ <dd><var>policyContainer</var>
89851
89853
89852
89854
<dt><span data-x="navigation-params-sandboxing">final sandboxing flag set</span></dt>
89853
89855
<dd><var>finalSandboxFlags</var></dd>
@@ -90215,11 +90217,10 @@ location.href = '#foo';</code></pre>
90215
90217
<dt><span data-x="navigation-params-response">response</span></dt>
90216
90218
<dd><var>response</var></dd>
90217
90219
90218
- <dt><span data-x="navigation-params-origin">origin</span></dt>
90219
- <dd><var>initiatorOrigin</var></dd>
90220
-
90221
90220
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
90222
- <dd><var>policyContainer</var></dd>
90221
+ <dd>a <span data-x="clone a policy container">clone</span> of <var>policyContainer</var>
90222
+ with its <span data-x="policy-container-origin">origin</span> set to
90223
+ <var>initiatorOrigin</var></dd>
90223
90224
90224
90225
<dt><span data-x="navigation-params-sandboxing">final sandboxing flag set</span></dt>
90225
90226
<dd><var>finalSandboxFlags</var></dd>
@@ -91018,7 +91019,8 @@ location.href = '#foo';</code></pre>
91018
91019
data-x="navigation-params-response">response</span>, <var>navigable</var>,
91019
91020
<var>navigationParams</var>'s <span data-x="navigation-params-policy-container">policy
91020
91021
container</span>'s <span data-x="policy-container-csp-list">CSP list</span>, and
91021
- <var>navigationParams</var>'s <span data-x="navigation-params-origin">origin</span> is false,
91022
+ <var>navigationParams</var>'s <span data-x="navigation-params-policy-container">policy
91023
+ container</span>'s <span data-x="policy-container-origin">origin</span> is false,
91022
91024
then set <var>failure</var> to true.</p></li>
91023
91025
91024
91026
<li>
@@ -91207,6 +91209,9 @@ location.href = '#foo';</code></pre>
91207
91209
<var>navigable</var>'s <span data-x="nav-container-document">container document</span>'s <span
91208
91210
data-x="concept-document-policy-container">policy container</span>, and null.</p></li>
91209
91211
91212
+ <li><p>Set <var>policyContainer</var>'s <span data-x="policy-container-origin">origin</span>
91213
+ to <var>responseOrigin</var>.</p></li>
91214
+
91210
91215
<li>
91211
91216
<p>Return a new <span>navigation params</span>, with</p>
91212
91217
@@ -91220,9 +91225,6 @@ location.href = '#foo';</code></pre>
91220
91225
<dt><span data-x="navigation-params-response">response</span></dt>
91221
91226
<dd><var>response</var></dd>
91222
91227
91223
- <dt><span data-x="navigation-params-origin">origin</span></dt>
91224
- <dd><var>responseOrigin</var></dd>
91225
-
91226
91228
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
91227
91229
<dd><var>policyContainer</var></dd>
91228
91230
@@ -91795,6 +91797,9 @@ location.href = '#foo';</code></pre>
91795
91797
<var>sourceSnapshotParams</var>'s <span data-x="source-snapshot-params-policy-container">source
91796
91798
policy container</span>, null, and <var>responsePolicyContainer</var>.</p></li>
91797
91799
91800
+ <li><p>Set <var>resultPolicyContainer</var>'s <span
91801
+ data-x="policy-container-origin">origin</span> to <var>responseOrigin</var></p></li>.
91802
+
91798
91803
<li>
91799
91804
<p>Return a new <span>navigation params</span>, with</p>
91800
91805
@@ -91808,9 +91813,6 @@ location.href = '#foo';</code></pre>
91808
91813
<dt><span data-x="navigation-params-response">response</span></dt>
91809
91814
<dd><var>response</var></dd>
91810
91815
91811
- <dt><span data-x="navigation-params-origin">origin</span></dt>
91812
- <dd><var>responseOrigin</var></dd>
91813
-
91814
91816
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
91815
91817
<dd><var>resultPolicyContainer</var></dd>
91816
91818
@@ -93158,7 +93160,8 @@ location.href = '#foo';</code></pre>
93158
93160
<li>
93159
93161
<p>Let <var>permissionsPolicy</var> be the result of <span>creating a permissions policy from a
93160
93162
response</span> given <var>browsingContext</var>, <var>navigationParams</var>'s <span
93161
- data-x="navigation-params-origin">origin</span>, and <var>navigationParams</var>'s <span
93163
+ data-x="navigation-params-policy-container">policy container</span>'s <span
93164
+ data-x="policy-container-origin">origin</span>, and <var>navigationParams</var>'s <span
93162
93165
data-x="navigation-params-response">response</span>. <ref spec="PERMISSIONSPOLICY"></p>
93163
93166
93164
93167
<div class="note">
@@ -93193,7 +93196,8 @@ location.href = '#foo';</code></pre>
93193
93196
<code>about:blank</code></span> is true, and <var>browsingContext</var>'s <span>active
93194
93197
document</span>'s <span data-x="concept-document-origin">origin</span> is <span>same
93195
93198
origin-domain</span> with <var>navigationParams</var>'s <span
93196
- data-x="navigation-params-origin">origin</span>, then set <var>window</var> to
93199
+ data-x="navigation-params-policy-container">policy container</span>'s <span
93200
+ data-x="policy-container-origin">origin</span>, then set <var>window</var> to
93197
93201
<var>browsingContext</var>'s <span>active window</span>.</p>
93198
93202
93199
93203
<p class="note">This means that both the <span data-x="is initial about:blank">initial
@@ -93220,7 +93224,8 @@ location.href = '#foo';</code></pre>
93220
93224
93221
93225
<li><p>Let <var>agent</var> be the result of <span
93222
93226
data-x="obtain-similar-origin-window-agent">obtaining a similar-origin window agent</span>
93223
- given <var>navigationParams</var>'s <span data-x="navigation-params-origin">origin</span>,
93227
+ given <var>navigationParams</var>'s <span data-x="navigation-params-policy-container">policy
93228
+ container</span>'s <span data-x="policy-container-origin">origin</span>,
93224
93229
<var>browsingContext</var>'s <span data-x="tlbc group">group</span>, and
93225
93230
<var>requestsOAC</var>.</p></li>
93226
93231
@@ -93242,7 +93247,8 @@ location.href = '#foo';</code></pre>
93242
93247
<li><p>Let <var>topLevelCreationURL</var> be <var>creationURL</var>.</p></li>
93243
93248
93244
93249
<li><p>Let <var>topLevelOrigin</var> be <var>navigationParams</var>'s <span
93245
- data-x="navigation-params-origin">origin</span>.</p></li>
93250
+ data-x="navigation-params-policy-container">policy container</span>'s <span
93251
+ data-x="policy-container-origin">origin</span>.</p></li>
93246
93252
93247
93253
<li>
93248
93254
<p>If <var>navigable</var>'s <span data-x="nav-container">container</span> is not null,
@@ -93286,9 +93292,6 @@ location.href = '#foo';</code></pre>
93286
93292
<dt><span data-x="concept-document-content-type">content type</span></dt>
93287
93293
<dd><var>contentType</var></dd>
93288
93294
93289
- <dt><span data-x="concept-document-origin">origin</span></dt>
93290
- <dd><var>navigationParams</var>'s <span data-x="navigation-params-origin">origin</span></dd>
93291
-
93292
93295
<dt><span data-x="concept-document-bc">browsing context</span></dt>
93293
93296
<dd><var>browsingContext</var>
93294
93297
@@ -93767,9 +93770,6 @@ new PaymentRequest(…); // Allowed to use
93767
93770
<dt><span data-x="navigation-params-response">response</span></dt>
93768
93771
<dd>a new <span data-x="concept-response">response</span></dd>
93769
93772
93770
- <dt><span data-x="navigation-params-origin">origin</span></dt>
93771
- <dd><var>origin</var></dd>
93772
-
93773
93773
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
93774
93774
<dd>a new <span>policy container</span></dd>
93775
93775
@@ -94940,7 +94940,8 @@ new PaymentRequest(…); // Allowed to use
94940
94940
settings object">origin</dfn></dt>
94941
94941
94942
94942
<dd>
94943
- <p>An <span>origin</span> used in security checks.</p>
94943
+ <p>This objects <span data-x="concept-settings-object-policy-container">policy
94944
+ container</span>'s <span data-x="policy-container-origin">origin</span>.</p>
94944
94945
</dd>
94945
94946
94946
94947
<dt>A <dfn data-x="concept-settings-object-policy-container" export
@@ -107246,6 +107247,12 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107246
107247
<code>SharedWorkerGlobalScope</code> object created in the previous step.</p>
107247
107248
</li>
107248
107249
107250
+ <li><p>Set <var>worker global scope</var>'s
107251
+ <span data-x="concept-WorkerGlobalScope-policy-container">policy container</span>'s
107252
+ <span data-x="policy-container-origin">origin</span> to <var>outside settings</var>'s
107253
+ <span data-x="concept-settings-object-policy-container">policy container</span>'s
107254
+ <span data-x="policy-container-origin">origin</span>.</p></li>
107255
+
107249
107256
<li><p><span>Set up a worker environment settings object</span> with <var>realm execution
107250
107257
context</var>, <var>outside settings</var>, and <var>unsafeWorkerCreationTime</var>, and let
107251
107258
<var>inside settings</var> be the result.</p></li>
@@ -107649,14 +107656,6 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107649
107656
data-x="concept-WorkerGlobalScope-url">url</span>.</p>
107650
107657
</dd>
107651
107658
107652
- <dt>The <span data-x="concept-settings-object-origin">origin</span></dt>
107653
- <dd>
107654
- <p>Return a unique <span data-x="concept-origin-opaque">opaque origin</span> if <var>worker
107655
- global scope</var>'s <span data-x="concept-WorkerGlobalScope-url">url</span>'s <span
107656
- data-x="concept-url-scheme">scheme</span> is "<code data-x="">data</code>", and <var>inherited
107657
- origin</var> otherwise.</p>
107658
- </dd>
107659
-
107660
107659
<dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
107661
107660
<dd>
107662
107661
<p>Return <var>worker global scope</var>'s <span
@@ -107677,6 +107676,18 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107677
107676
</dl>
107678
107677
</li>
107679
107678
107679
+ <li><p><span>Assert</span> that <var>settings object</var>'s <span
107680
+ data-x="concept-settings-object-policy-container">policy container</span>'s <span
107681
+ data-x="policy-container-origin">origin</span> is an <span data-x="concept-origin-opaque">opaque
107682
+ origin</span>.</p></li>
107683
+
107684
+ <li><p>If <var>worker global scope</var>'s <span
107685
+ data-x="concept-WorkerGlobalScope-url">url</span>'s <span
107686
+ data-x="concept-url-scheme">scheme</span> is not "<code data-x="">data</code>", then set
107687
+ <var>settings object</var>'s <span data-x="concept-settings-object-policy-container">policy
107688
+ container</span>'s <span data-x="policy-container-origin">origin</span> to <var>inherited
107689
+ origin</var>.</p></li>
107690
+
107680
107691
<li><p>Set <var>settings object</var>'s <span data-x="concept-environment-id">id</span> to a new
107681
107692
unique opaque string, <span data-x="concept-environment-creation-url">creation URL</span> to
107682
107693
<var>worker global scope</var>'s <span>url</span>, <span>top-level creation URL</span> to null,
@@ -108812,8 +108823,6 @@ interface <dfn interface>WorkletGlobalScope</dfn> {};</code></pre>
108812
108823
object</span> <var>outsideSettings</var>:</p>
108813
108824
108814
108825
<ol>
108815
- <li><p>Let <var>origin</var> be a unique <span data-x="concept-origin-opaque">opaque
108816
- origin</span>.</p></li>
108817
108826
108818
108827
<li><p>Let <var>inheritedAPIBaseURL</var> be <var>outsideSettings</var>'s <span>API base
108819
108828
URL</span>.</p></li>
@@ -108861,11 +108870,6 @@ interface <dfn interface>WorkletGlobalScope</dfn> {};</code></pre>
108861
108870
available to worklet code make use of the <span>API base URL</span>.</p>
108862
108871
</dd>
108863
108872
108864
- <dt>The <span data-x="concept-settings-object-origin">origin</span></dt>
108865
- <dd>
108866
- <p>Return <var>origin</var>.</p>
108867
- </dd>
108868
-
108869
108873
<dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
108870
108874
<dd>
108871
108875
<p>Return <var>inheritedPolicyContainer</var>.</p>
0 commit comments