@@ -10034,9 +10034,10 @@ o.myself = o;</code></pre>
10034
10034
10035
10035
<p>The <code>Document</code> object's <dfn data-x="concept-document-origin"
10036
10036
data-x-href="https://dom.spec.whatwg.org/#concept-document-origin"
10037
- data-x-for="Document">origin</dfn> is defined in <cite>DOM</cite>. It is initially set when the
10038
- <code>Document</code> object is created, and can change during the lifetime of the
10039
- <code>Document</code> only upon setting <code
10037
+ data-x-for="Document">origin</dfn> is defined in <cite>DOM</cite>. It currently aliases the
10038
+ value of its <span data-x="concept-document-policy-container">policy container</span>'s
10039
+ <span data-x=policy-container-origin>origin</span>. This origin can change during the lifetime
10040
+ of the <code>Document</code> upon setting <code
10040
10041
data-x="dom-document-domain">document.domain</code>. A <code>Document</code>'s <span
10041
10042
data-x="concept-document-origin">origin</span> can differ from the <span
10042
10043
data-x="concept-url-origin">origin</span> of its <span data-x="concept-document-url">URL</span>;
@@ -83457,6 +83458,10 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
83457
83458
<!-- Note: each item has to define a default value for creating a new policy container. -->
83458
83459
83459
83460
<ul>
83461
+ <li><p>An <dfn export for="policy container" data-x="policy-container-origin">origin</dfn>,
83462
+ which is an <span>origin</span>. It is initially an <span
83463
+ data-x="concept-origin-opaque">opaque origin</span>.</p></li>
83464
+
83460
83465
<li><p>A <dfn export for="policy container" data-x="policy-container-csp-list">CSP list</dfn>,
83461
83466
which is a <span data-x="concept-csp-list">CSP list</span>. It is initially empty.</p></li>
83462
83467
@@ -83477,6 +83482,9 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
83477
83482
<ol>
83478
83483
<li><p>Let <var>clone</var> be a new <span>policy container</span>.</p></li>
83479
83484
83485
+ <li><p>Set <var>clone</var>'s <span data-x="policy-container-origin">origin</span> to
83486
+ <var>policyContainer</var>'s <span data-x="policy-container-origin">origin</span>.</p></li>
83487
+
83480
83488
<li><p><span data-x="list iterate">For each</span> <var>policy</var> in
83481
83489
<var>policyContainer</var>'s <span data-x="policy-container-csp-list">CSP list</span>, <span
83482
83490
data-x="list append">append</span> a copy of <var>policy</var> into <var>clone</var>'s <span
@@ -83528,6 +83536,10 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
83528
83536
83529
83537
<li><p>Let <var>result</var> be a new <span>policy container</span>.</p></li>
83530
83538
83539
+ <li><p>Set <var>result</var>'s <span data-x="policy-container-origin">origin</span> to
83540
+ <var>response</var>'s <span data-x="concept-response-url">URL</span>'s
83541
+ <span data-x="concept-url-origin">origin</span>.</p></li>
83542
+
83531
83543
<li><p>Set <var>result</var>'s <span data-x="policy-container-csp-list">CSP list</span> to the
83532
83544
result of <span data-x="parse-response-csp">parsing a response's Content Security Policies</span>
83533
83545
given <var>response</var>.</p></li>
@@ -83583,7 +83595,9 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
83583
83595
<li><p>If <var>responsePolicyContainer</var> is not null, then return
83584
83596
<var>responsePolicyContainer</var>.</p></li>
83585
83597
83586
- <li><p>Return a new <span>policy container</span>.</p></li>
83598
+ <li><p>Return a new <span>policy container</span> whose <span
83599
+ data-x="policy-container-origin">origin</span> is <var>responseURL</var>'s
83600
+ <span data-x="concept-url-origin">origin</span>.</p></li>
83587
83601
</ol>
83588
83602
83589
83603
<p>To <dfn data-x="initialize worker policy container">initialize a worker global scope's policy
@@ -85037,12 +85051,6 @@ interface <dfn interface>BarProp</dfn> {
85037
85051
<span data-x="concept-document-window">associated <code>Document</code></span>.</p>
85038
85052
</dd>
85039
85053
85040
- <dt>The <span data-x="concept-settings-object-origin">origin</span></dt>
85041
- <dd>
85042
- <p>Return the <span data-x="concept-document-origin">origin</span> of <var>window</var>'s
85043
- <span data-x="concept-document-window">associated <code>Document</code></span>.</p>
85044
- </dd>
85045
-
85046
85054
<dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
85047
85055
<dd>
85048
85056
<p>Return the <span data-x="concept-document-policy-container">policy container</span> of
@@ -88167,9 +88175,6 @@ interface <dfn interface>BeforeUnloadEvent</dfn> : <span>Event</span> {
88167
88175
<dt><span data-x="concept-document-mode">mode</span></dt>
88168
88176
<dd>"<code data-x="">quirks</code>"</dd>
88169
88177
88170
- <dt><span data-x="concept-document-origin">origin</span></dt>
88171
- <dd><var>origin</var></dd>
88172
-
88173
88178
<dt><span data-x="concept-document-bc">browsing context</span></dt>
88174
88179
<dd><var>browsingContext</var>
88175
88180
@@ -89479,9 +89484,6 @@ location.href = '#foo';</code></pre>
89479
89484
<dd>a <span data-x="concept-response">response</span> that ultimately was navigated to
89480
89485
(potentially a <span>network error</span>)</dd>
89481
89486
89482
- <dt><dfn data-x="navigation-params-origin">origin</dfn></dt>
89483
- <dd>an <span>origin</span> to use for the new <code>Document</code></dd>
89484
-
89485
89487
<dt><dfn data-x="navigation-params-policy-container">policy container</dfn></dt>
89486
89488
<dd>a <span>policy container</span> to use for the new <code>Document</code></dd>
89487
89489
@@ -89827,6 +89829,9 @@ location.href = '#foo';</code></pre>
89827
89829
<var>finalSandboxFlags</var>, <var>documentState</var>'s <span
89828
89830
data-x="document-state-initiator-origin">initiator origin</span>, and null.</p></li>
89829
89831
89832
+ <li><p>Set <var>policyContainer</var>'s <span data-x="policy-container-origin">origin</span>
89833
+ to <var>responseOrigin</var>.</p></li>
89834
+
89830
89835
<li><p>Let <var>coop</var> be a new <span>cross-origin opener policy</span>.</p></li>
89831
89836
89832
89837
<li>
@@ -89859,9 +89864,6 @@ location.href = '#foo';</code></pre>
89859
89864
<dt><span data-x="navigation-params-response">response</span></dt>
89860
89865
<dd><var>response</var></dd>
89861
89866
89862
- <dt><span data-x="navigation-params-origin">origin</span></dt>
89863
- <dd><var>responseOrigin</var></dd>
89864
-
89865
89867
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
89866
89868
<dd><var>policyContainer</var></dd>
89867
89869
@@ -90231,11 +90233,10 @@ location.href = '#foo';</code></pre>
90231
90233
<dt><span data-x="navigation-params-response">response</span></dt>
90232
90234
<dd><var>response</var></dd>
90233
90235
90234
- <dt><span data-x="navigation-params-origin">origin</span></dt>
90235
- <dd><var>newDocumentOrigin</var></dd>
90236
-
90237
90236
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
90238
- <dd><var>policyContainer</var></dd>
90237
+ <dd>a <span data-x="clone a policy container">clone</span> of <var>policyContainer</var>
90238
+ with its <span data-x="policy-container-origin">origin</span> set to
90239
+ <var>newDocumentOrigin</var></dd>
90239
90240
90240
90241
<dt><span data-x="navigation-params-sandboxing">final sandboxing flag set</span></dt>
90241
90242
<dd><var>finalSandboxFlags</var></dd>
@@ -91034,7 +91035,8 @@ location.href = '#foo';</code></pre>
91034
91035
data-x="navigation-params-response">response</span>, <var>navigable</var>,
91035
91036
<var>navigationParams</var>'s <span data-x="navigation-params-policy-container">policy
91036
91037
container</span>'s <span data-x="policy-container-csp-list">CSP list</span>, and
91037
- <var>navigationParams</var>'s <span data-x="navigation-params-origin">origin</span> is false,
91038
+ <var>navigationParams</var>'s <span data-x="navigation-params-policy-container">policy
91039
+ container</span>'s <span data-x="policy-container-origin">origin</span> is false,
91038
91040
then set <var>failure</var> to true.</p></li>
91039
91041
91040
91042
<li>
@@ -91223,6 +91225,9 @@ location.href = '#foo';</code></pre>
91223
91225
<var>navigable</var>'s <span data-x="nav-container-document">container document</span>'s <span
91224
91226
data-x="concept-document-policy-container">policy container</span>, and null.</p></li>
91225
91227
91228
+ <li><p>Set <var>policyContainer</var>'s <span data-x="policy-container-origin">origin</span>
91229
+ to <var>responseOrigin</var>.</p></li>
91230
+
91226
91231
<li>
91227
91232
<p>Return a new <span>navigation params</span>, with</p>
91228
91233
@@ -91236,9 +91241,6 @@ location.href = '#foo';</code></pre>
91236
91241
<dt><span data-x="navigation-params-response">response</span></dt>
91237
91242
<dd><var>response</var></dd>
91238
91243
91239
- <dt><span data-x="navigation-params-origin">origin</span></dt>
91240
- <dd><var>responseOrigin</var></dd>
91241
-
91242
91244
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
91243
91245
<dd><var>policyContainer</var></dd>
91244
91246
@@ -91811,6 +91813,9 @@ location.href = '#foo';</code></pre>
91811
91813
<var>sourceSnapshotParams</var>'s <span data-x="source-snapshot-params-policy-container">source
91812
91814
policy container</span>, null, and <var>responsePolicyContainer</var>.</p></li>
91813
91815
91816
+ <li><p>Set <var>resultPolicyContainer</var>'s <span
91817
+ data-x="policy-container-origin">origin</span> to <var>responseOrigin</var></p></li>.
91818
+
91814
91819
<li>
91815
91820
<p>Return a new <span>navigation params</span>, with</p>
91816
91821
@@ -91824,9 +91829,6 @@ location.href = '#foo';</code></pre>
91824
91829
<dt><span data-x="navigation-params-response">response</span></dt>
91825
91830
<dd><var>response</var></dd>
91826
91831
91827
- <dt><span data-x="navigation-params-origin">origin</span></dt>
91828
- <dd><var>responseOrigin</var></dd>
91829
-
91830
91832
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
91831
91833
<dd><var>resultPolicyContainer</var></dd>
91832
91834
@@ -93174,7 +93176,8 @@ location.href = '#foo';</code></pre>
93174
93176
<li>
93175
93177
<p>Let <var>permissionsPolicy</var> be the result of <span>creating a permissions policy from a
93176
93178
response</span> given <var>browsingContext</var>, <var>navigationParams</var>'s <span
93177
- data-x="navigation-params-origin">origin</span>, and <var>navigationParams</var>'s <span
93179
+ data-x="navigation-params-policy-container">policy container</span>'s <span
93180
+ data-x="policy-container-origin">origin</span>, and <var>navigationParams</var>'s <span
93178
93181
data-x="navigation-params-response">response</span>. <ref spec="PERMISSIONSPOLICY"></p>
93179
93182
93180
93183
<div class="note">
@@ -93209,7 +93212,8 @@ location.href = '#foo';</code></pre>
93209
93212
<code>about:blank</code></span> is true, and <var>browsingContext</var>'s <span>active
93210
93213
document</span>'s <span data-x="concept-document-origin">origin</span> is <span>same
93211
93214
origin-domain</span> with <var>navigationParams</var>'s <span
93212
- data-x="navigation-params-origin">origin</span>, then set <var>window</var> to
93215
+ data-x="navigation-params-policy-container">policy container</span>'s <span
93216
+ data-x="policy-container-origin">origin</span>, then set <var>window</var> to
93213
93217
<var>browsingContext</var>'s <span>active window</span>.</p>
93214
93218
93215
93219
<p class="note">This means that both the <span data-x="is initial about:blank">initial
@@ -93236,7 +93240,8 @@ location.href = '#foo';</code></pre>
93236
93240
93237
93241
<li><p>Let <var>agent</var> be the result of <span
93238
93242
data-x="obtain-similar-origin-window-agent">obtaining a similar-origin window agent</span>
93239
- given <var>navigationParams</var>'s <span data-x="navigation-params-origin">origin</span>,
93243
+ given <var>navigationParams</var>'s <span data-x="navigation-params-policy-container">policy
93244
+ container</span>'s <span data-x="policy-container-origin">origin</span>,
93240
93245
<var>browsingContext</var>'s <span data-x="tlbc group">group</span>, and
93241
93246
<var>requestsOAC</var>.</p></li>
93242
93247
@@ -93258,7 +93263,8 @@ location.href = '#foo';</code></pre>
93258
93263
<li><p>Let <var>topLevelCreationURL</var> be <var>creationURL</var>.</p></li>
93259
93264
93260
93265
<li><p>Let <var>topLevelOrigin</var> be <var>navigationParams</var>'s <span
93261
- data-x="navigation-params-origin">origin</span>.</p></li>
93266
+ data-x="navigation-params-policy-container">policy container</span>'s <span
93267
+ data-x="policy-container-origin">origin</span>.</p></li>
93262
93268
93263
93269
<li>
93264
93270
<p>If <var>navigable</var>'s <span data-x="nav-container">container</span> is not null,
@@ -93302,9 +93308,6 @@ location.href = '#foo';</code></pre>
93302
93308
<dt><span data-x="concept-document-content-type">content type</span></dt>
93303
93309
<dd><var>contentType</var></dd>
93304
93310
93305
- <dt><span data-x="concept-document-origin">origin</span></dt>
93306
- <dd><var>navigationParams</var>'s <span data-x="navigation-params-origin">origin</span></dd>
93307
-
93308
93311
<dt><span data-x="concept-document-bc">browsing context</span></dt>
93309
93312
<dd><var>browsingContext</var>
93310
93313
@@ -93783,9 +93786,6 @@ new PaymentRequest(…); // Allowed to use
93783
93786
<dt><span data-x="navigation-params-response">response</span></dt>
93784
93787
<dd>a new <span data-x="concept-response">response</span></dd>
93785
93788
93786
- <dt><span data-x="navigation-params-origin">origin</span></dt>
93787
- <dd><var>origin</var></dd>
93788
-
93789
93789
<dt><span data-x="navigation-params-policy-container">policy container</span></dt>
93790
93790
<dd>a new <span>policy container</span></dd>
93791
93791
@@ -94956,7 +94956,8 @@ new PaymentRequest(…); // Allowed to use
94956
94956
settings object">origin</dfn></dt>
94957
94957
94958
94958
<dd>
94959
- <p>An <span>origin</span> used in security checks.</p>
94959
+ <p>This objects <span data-x="concept-settings-object-policy-container">policy
94960
+ container</span>'s <span data-x="policy-container-origin">origin</span>.</p>
94960
94961
</dd>
94961
94962
94962
94963
<dt>A <dfn data-x="concept-settings-object-policy-container" export
@@ -107329,6 +107330,12 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107329
107330
<code>SharedWorkerGlobalScope</code> object created in the previous step.</p>
107330
107331
</li>
107331
107332
107333
+ <li><p>Set <var>worker global scope</var>'s
107334
+ <span data-x="concept-WorkerGlobalScope-policy-container">policy container</span>'s
107335
+ <span data-x="policy-container-origin">origin</span> to <var>outside settings</var>'s
107336
+ <span data-x="concept-settings-object-policy-container">policy container</span>'s
107337
+ <span data-x="policy-container-origin">origin</span>.</p></li>
107338
+
107332
107339
<li><p><span>Set up a worker environment settings object</span> with <var>realm execution
107333
107340
context</var>, <var>outside settings</var>, and <var>unsafeWorkerCreationTime</var>, and let
107334
107341
<var>inside settings</var> be the result.</p></li>
@@ -107732,14 +107739,6 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107732
107739
data-x="concept-WorkerGlobalScope-url">url</span>.</p>
107733
107740
</dd>
107734
107741
107735
- <dt>The <span data-x="concept-settings-object-origin">origin</span></dt>
107736
- <dd>
107737
- <p>Return a unique <span data-x="concept-origin-opaque">opaque origin</span> if <var>worker
107738
- global scope</var>'s <span data-x="concept-WorkerGlobalScope-url">url</span>'s <span
107739
- data-x="concept-url-scheme">scheme</span> is "<code data-x="">data</code>", and <var>inherited
107740
- origin</var> otherwise.</p>
107741
- </dd>
107742
-
107743
107742
<dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
107744
107743
<dd>
107745
107744
<p>Return <var>worker global scope</var>'s <span
@@ -107760,6 +107759,18 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107760
107759
</dl>
107761
107760
</li>
107762
107761
107762
+ <li><p><span>Assert</span> that <var>settings object</var>'s <span
107763
+ data-x="concept-settings-object-policy-container">policy container</span>'s <span
107764
+ data-x="policy-container-origin">origin</span> is an <span data-x="concept-origin-opaque">opaque
107765
+ origin</span>.</p></li>
107766
+
107767
+ <li><p>If <var>worker global scope</var>'s <span
107768
+ data-x="concept-WorkerGlobalScope-url">url</span>'s <span
107769
+ data-x="concept-url-scheme">scheme</span> is not "<code data-x="">data</code>", then set
107770
+ <var>settings object</var>'s <span data-x="concept-settings-object-policy-container">policy
107771
+ container</span>'s <span data-x="policy-container-origin">origin</span> to <var>inherited
107772
+ origin</var>.</p></li>
107773
+
107763
107774
<li><p>Set <var>settings object</var>'s <span data-x="concept-environment-id">id</span> to a new
107764
107775
unique opaque string, <span data-x="concept-environment-creation-url">creation URL</span> to
107765
107776
<var>worker global scope</var>'s <span>url</span>, <span>top-level creation URL</span> to null,
@@ -108895,8 +108906,6 @@ interface <dfn interface>WorkletGlobalScope</dfn> {};</code></pre>
108895
108906
object</span> <var>outsideSettings</var>:</p>
108896
108907
108897
108908
<ol>
108898
- <li><p>Let <var>origin</var> be a unique <span data-x="concept-origin-opaque">opaque
108899
- origin</span>.</p></li>
108900
108909
108901
108910
<li><p>Let <var>inheritedAPIBaseURL</var> be <var>outsideSettings</var>'s <span>API base
108902
108911
URL</span>.</p></li>
@@ -108944,11 +108953,6 @@ interface <dfn interface>WorkletGlobalScope</dfn> {};</code></pre>
108944
108953
available to worklet code make use of the <span>API base URL</span>.</p>
108945
108954
</dd>
108946
108955
108947
- <dt>The <span data-x="concept-settings-object-origin">origin</span></dt>
108948
- <dd>
108949
- <p>Return <var>origin</var>.</p>
108950
- </dd>
108951
-
108952
108956
<dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
108953
108957
<dd>
108954
108958
<p>Return <var>inheritedPolicyContainer</var>.</p>
0 commit comments