@@ -10016,9 +10016,10 @@ o.myself = o;</code></pre>
1001610016
1001710017 <p>The <code>Document</code> object's <dfn data-x="concept-document-origin"
1001810018 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
1002210023 data-x="dom-document-domain">document.domain</code>. A <code>Document</code>'s <span
1002310024 data-x="concept-document-origin">origin</span> can differ from the <span
1002410025 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> {
8344183442 <!-- Note: each item has to define a default value for creating a new policy container. -->
8344283443
8344383444 <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+
8344483449 <li><p>A <dfn export for="policy container" data-x="policy-container-csp-list">CSP list</dfn>,
8344583450 which is a <span data-x="concept-csp-list">CSP list</span>. It is initially empty.</p></li>
8344683451
@@ -83461,6 +83466,9 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
8346183466 <ol>
8346283467 <li><p>Let <var>clone</var> be a new <span>policy container</span>.</p></li>
8346383468
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+
8346483472 <li><p><span data-x="list iterate">For each</span> <var>policy</var> in
8346583473 <var>policyContainer</var>'s <span data-x="policy-container-csp-list">CSP list</span>, <span
8346683474 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> {
8351283520
8351383521 <li><p>Let <var>result</var> be a new <span>policy container</span>.</p></li>
8351483522
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+
8351583527 <li><p>Set <var>result</var>'s <span data-x="policy-container-csp-list">CSP list</span> to the
8351683528 result of <span data-x="parse-response-csp">parsing a response's Content Security Policies</span>
8351783529 given <var>response</var>.</p></li>
@@ -83567,7 +83579,9 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
8356783579 <li><p>If <var>responsePolicyContainer</var> is not null, then return
8356883580 <var>responsePolicyContainer</var>.</p></li>
8356983581
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>
8357183585 </ol>
8357283586
8357383587 <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> {
8502185035 <span data-x="concept-document-window">associated <code>Document</code></span>.</p>
8502285036 </dd>
8502385037
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-
8503085038 <dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
8503185039 <dd>
8503285040 <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> {
8815188159 <dt><span data-x="concept-document-mode">mode</span></dt>
8815288160 <dd>"<code data-x="">quirks</code>"</dd>
8815388161
88154- <dt><span data-x="concept-document-origin">origin</span></dt>
88155- <dd><var>origin</var></dd>
88156-
8815788162 <dt><span data-x="concept-document-bc">browsing context</span></dt>
8815888163 <dd><var>browsingContext</var>
8815988164
@@ -89463,9 +89468,6 @@ location.href = '#foo';</code></pre>
8946389468 <dd>a <span data-x="concept-response">response</span> that ultimately was navigated to
8946489469 (potentially a <span>network error</span>)</dd>
8946589470
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-
8946989471 <dt><dfn data-x="navigation-params-policy-container">policy container</dfn></dt>
8947089472 <dd>a <span>policy container</span> to use for the new <code>Document</code></dd>
8947189473
@@ -89811,6 +89813,9 @@ location.href = '#foo';</code></pre>
8981189813 <var>finalSandboxFlags</var>, <var>documentState</var>'s <span
8981289814 data-x="document-state-initiator-origin">initiator origin</span>, and null.</p></li>
8981389815
89816+ <li><p>Set <var>policyContainer</var>'s <span data-x="policy-container-origin">origin</span>
89817+ to <var>responseOrigin</var>.</p></li>
89818+
8981489819 <li><p>Let <var>coop</var> be a new <span>cross-origin opener policy</span>.</p></li>
8981589820
8981689821 <li>
@@ -89843,11 +89848,8 @@ location.href = '#foo';</code></pre>
8984389848 <dt><span data-x="navigation-params-response">response</span></dt>
8984489849 <dd><var>response</var></dd>
8984589850
89846- <dt><span data-x="navigation-params-origin">origin</span></dt>
89847- <dd><var>responseOrigin</var></dd>
89848-
8984989851 <dt><span data-x="navigation-params-policy-container">policy container</span></dt>
89850- <dd><var>policyContainer</var></dd>
89852+ <dd><var>policyContainer</var>
8985189853
8985289854 <dt><span data-x="navigation-params-sandboxing">final sandboxing flag set</span></dt>
8985389855 <dd><var>finalSandboxFlags</var></dd>
@@ -90215,11 +90217,10 @@ location.href = '#foo';</code></pre>
9021590217 <dt><span data-x="navigation-params-response">response</span></dt>
9021690218 <dd><var>response</var></dd>
9021790219
90218- <dt><span data-x="navigation-params-origin">origin</span></dt>
90219- <dd><var>initiatorOrigin</var></dd>
90220-
9022190220 <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>
9022390224
9022490225 <dt><span data-x="navigation-params-sandboxing">final sandboxing flag set</span></dt>
9022590226 <dd><var>finalSandboxFlags</var></dd>
@@ -91018,7 +91019,8 @@ location.href = '#foo';</code></pre>
9101891019 data-x="navigation-params-response">response</span>, <var>navigable</var>,
9101991020 <var>navigationParams</var>'s <span data-x="navigation-params-policy-container">policy
9102091021 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,
9102291024 then set <var>failure</var> to true.</p></li>
9102391025
9102491026 <li>
@@ -91207,6 +91209,9 @@ location.href = '#foo';</code></pre>
9120791209 <var>navigable</var>'s <span data-x="nav-container-document">container document</span>'s <span
9120891210 data-x="concept-document-policy-container">policy container</span>, and null.</p></li>
9120991211
91212+ <li><p>Set <var>policyContainer</var>'s <span data-x="policy-container-origin">origin</span>
91213+ to <var>responseOrigin</var>.</p></li>
91214+
9121091215 <li>
9121191216 <p>Return a new <span>navigation params</span>, with</p>
9121291217
@@ -91220,9 +91225,6 @@ location.href = '#foo';</code></pre>
9122091225 <dt><span data-x="navigation-params-response">response</span></dt>
9122191226 <dd><var>response</var></dd>
9122291227
91223- <dt><span data-x="navigation-params-origin">origin</span></dt>
91224- <dd><var>responseOrigin</var></dd>
91225-
9122691228 <dt><span data-x="navigation-params-policy-container">policy container</span></dt>
9122791229 <dd><var>policyContainer</var></dd>
9122891230
@@ -91795,6 +91797,9 @@ location.href = '#foo';</code></pre>
9179591797 <var>sourceSnapshotParams</var>'s <span data-x="source-snapshot-params-policy-container">source
9179691798 policy container</span>, null, and <var>responsePolicyContainer</var>.</p></li>
9179791799
91800+ <li><p>Set <var>resultPolicyContainer</var>'s <span
91801+ data-x="policy-container-origin">origin</span> to <var>responseOrigin</var></p></li>.
91802+
9179891803 <li>
9179991804 <p>Return a new <span>navigation params</span>, with</p>
9180091805
@@ -91808,9 +91813,6 @@ location.href = '#foo';</code></pre>
9180891813 <dt><span data-x="navigation-params-response">response</span></dt>
9180991814 <dd><var>response</var></dd>
9181091815
91811- <dt><span data-x="navigation-params-origin">origin</span></dt>
91812- <dd><var>responseOrigin</var></dd>
91813-
9181491816 <dt><span data-x="navigation-params-policy-container">policy container</span></dt>
9181591817 <dd><var>resultPolicyContainer</var></dd>
9181691818
@@ -93158,7 +93160,8 @@ location.href = '#foo';</code></pre>
9315893160 <li>
9315993161 <p>Let <var>permissionsPolicy</var> be the result of <span>creating a permissions policy from a
9316093162 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
9316293165 data-x="navigation-params-response">response</span>. <ref spec="PERMISSIONSPOLICY"></p>
9316393166
9316493167 <div class="note">
@@ -93193,7 +93196,8 @@ location.href = '#foo';</code></pre>
9319393196 <code>about:blank</code></span> is true, and <var>browsingContext</var>'s <span>active
9319493197 document</span>'s <span data-x="concept-document-origin">origin</span> is <span>same
9319593198 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
9319793201 <var>browsingContext</var>'s <span>active window</span>.</p>
9319893202
9319993203 <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>
9322093224
9322193225 <li><p>Let <var>agent</var> be the result of <span
9322293226 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>,
9322493229 <var>browsingContext</var>'s <span data-x="tlbc group">group</span>, and
9322593230 <var>requestsOAC</var>.</p></li>
9322693231
@@ -93242,7 +93247,8 @@ location.href = '#foo';</code></pre>
9324293247 <li><p>Let <var>topLevelCreationURL</var> be <var>creationURL</var>.</p></li>
9324393248
9324493249 <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>
9324693252
9324793253 <li>
9324893254 <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>
9328693292 <dt><span data-x="concept-document-content-type">content type</span></dt>
9328793293 <dd><var>contentType</var></dd>
9328893294
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-
9329293295 <dt><span data-x="concept-document-bc">browsing context</span></dt>
9329393296 <dd><var>browsingContext</var>
9329493297
@@ -93767,9 +93770,6 @@ new PaymentRequest(…); // Allowed to use
9376793770 <dt><span data-x="navigation-params-response">response</span></dt>
9376893771 <dd>a new <span data-x="concept-response">response</span></dd>
9376993772
93770- <dt><span data-x="navigation-params-origin">origin</span></dt>
93771- <dd><var>origin</var></dd>
93772-
9377393773 <dt><span data-x="navigation-params-policy-container">policy container</span></dt>
9377493774 <dd>a new <span>policy container</span></dd>
9377593775
@@ -94940,7 +94940,8 @@ new PaymentRequest(…); // Allowed to use
9494094940 settings object">origin</dfn></dt>
9494194941
9494294942 <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>
9494494945 </dd>
9494594946
9494694947 <dt>A <dfn data-x="concept-settings-object-policy-container" export
@@ -107246,6 +107247,12 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107246107247 <code>SharedWorkerGlobalScope</code> object created in the previous step.</p>
107247107248 </li>
107248107249
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+
107249107256 <li><p><span>Set up a worker environment settings object</span> with <var>realm execution
107250107257 context</var>, <var>outside settings</var>, and <var>unsafeWorkerCreationTime</var>, and let
107251107258 <var>inside settings</var> be the result.</p></li>
@@ -107649,14 +107656,6 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107649107656 data-x="concept-WorkerGlobalScope-url">url</span>.</p>
107650107657 </dd>
107651107658
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-
107660107659 <dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
107661107660 <dd>
107662107661 <p>Return <var>worker global scope</var>'s <span
@@ -107677,6 +107676,18 @@ interface <dfn interface>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope
107677107676 </dl>
107678107677 </li>
107679107678
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+
107680107691 <li><p>Set <var>settings object</var>'s <span data-x="concept-environment-id">id</span> to a new
107681107692 unique opaque string, <span data-x="concept-environment-creation-url">creation URL</span> to
107682107693 <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>
108812108823 object</span> <var>outsideSettings</var>:</p>
108813108824
108814108825 <ol>
108815- <li><p>Let <var>origin</var> be a unique <span data-x="concept-origin-opaque">opaque
108816- origin</span>.</p></li>
108817108826
108818108827 <li><p>Let <var>inheritedAPIBaseURL</var> be <var>outsideSettings</var>'s <span>API base
108819108828 URL</span>.</p></li>
@@ -108861,11 +108870,6 @@ interface <dfn interface>WorkletGlobalScope</dfn> {};</code></pre>
108861108870 available to worklet code make use of the <span>API base URL</span>.</p>
108862108871 </dd>
108863108872
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-
108869108873 <dt>The <span data-x="concept-settings-object-policy-container">policy container</span></dt>
108870108874 <dd>
108871108875 <p>Return <var>inheritedPolicyContainer</var>.</p>
0 commit comments