diff --git a/index.bs b/index.bs index f4f1b496..02a9b6a6 100644 --- a/index.bs +++ b/index.bs @@ -887,19 +887,18 @@ partial interface HTMLIFrameElement {
-

Initialize document's Feature - Policy

-

Given a {{Document}} object (document), this algorithm - initialises document's Feature Policy

+

Create a + Feature Policy for a browsing context

+

Given a browsing context (browsingContext), and an origin + (origin) this algorithm returns a new Feature Policy.

  1. Let inherited policy be a new ordered map.
  2. Let declared policy be a new ordered map.
  3. For each feature supported,
      -
    1. Let isInherited be the result of running Define an - inherited policy for feature in document on feature and - document. +
    2. Let isInherited be the result of running Define an inherited policy for feature in browsing + context on feature, origin and browsingContext.
    3. Set inherited policy[feature] to isInherited.
    4. @@ -909,58 +908,75 @@ partial interface HTMLIFrameElement { policy inherited policy and declared policy declared policy. +
    5. Return policy.
    6. +
    +
+
+

Initialize document's Feature + Policy

+

Given a {{Document}} object (document), this algorithm + initialises document's Feature Policy

+
    +
  1. Let policy be the result of running Create a Feature Policy for a browsing + context given document's browsing context, and document's + origin.
  2. Set document’s feature policy to policy.
-

Initialize document's Feature - Policy from response

-

Given a [=response=] (response) and a Document - (document), this algorithm populates document's +

Create a Feature + Policy for a browsing context from response

+

Given a browsing context (browsingContext), origin + (origin), and a [=response=] (response), this algorithm returns a new Feature Policy

    -
  1. Initialize document's - Feature Policy
  2. -
  3. Let inherited policy be document's Feature - Policy's inherited policy.
  4. -
  5. Let declared policy be a new ordered map.
  6. +
  7. Let policy be the result of running Create a Feature Policy for a browsing + context given browsingContext, and origin.
  8. Let d be the result of running Process response policy on - response and document's origin.
  9. + response and origin.
  10. For each featureallowlist of d:
      -
    1. If inherited policy[feature] is true, then - set declared policy[feature] to +
    2. If policy's inherited policy[feature] is true, then + set policy's declared policy[feature] to allowlist.
  11. -
  12. Let policy be a new feature policy, with inherited - policy inherited policy and declared policy declared - policy. -
  13. +
  14. Return policy.
  15. +
+
+
+

Initialize document's Feature + Policy from response

+

Given a [=response=] (response) and a Document + (document), this algorithm populates document's + Feature Policy

+
    +
  1. Let policy be the result of running Create a Feature Policy for a browsing + context from response given document's browsing context, document's + origin, and response.
  2. Set document’s feature policy to policy.
-

Define an inherited policy for - feature in document

-

Given a feature (feature) and a Document - (document), this algorithm returns the inherited policy - for that feature.

+

Define an inherited policy for + feature in browsing context

+

Given a feature (feature), an origin (origin), and + a browsing context (browsingContext), this algorithm returns the + inherited policy for that feature.

    -
  1. Let context be document's browsing - context.
  2. -
  3. If context is the [=nested browsing context=] of a +
  4. If browsingContext is the [=nested browsing context=] of a [=browsing context container=] element, return the result of executing Define an inherited policy for feature in container at - origin for feature in context's browsing - context container at document's - origin.
  5. + origin for feature in browsingContext's browsing + context container at origin.
  6. Otherwise, return "Enabled".