diff --git a/storage.bs b/storage.bs index 9996a34..f92d6e9 100644 --- a/storage.bs +++ b/storage.bs @@ -207,10 +207,9 @@ anticipated that some APIs will be applicable to both storage types going
A storage key is a tuple consisting of an -origin (an origin). [[!HTML]] - -
This is expected to change; see -Client-Side Storage Partitioning. +origin (an origin), a +top-level site (a site), and a +cross-site ancestry (a boolean). [[!HTML]]
To obtain a storage key, given an environment @@ -239,7 +238,18 @@ anticipated that some APIs will be applicable to both storage types going environment settings object; otherwise environment's creation URL's origin. -
Return a tuple consisting of origin. +
Let topLevelOrigin be environment's + top-level origin. + +
If topLevelOrigin is null, then set it to origin. + +
Let topLevelSite be the result of obtaining a site given + topLevelOrigin. + +
Let crossSiteAncestry be environment's + cross-site ancestry. + +
Return (origin, topLevelSite, crossSiteAncestry).
If A's origin is not same origin with B's origin, then return false. +
If A's top-level site is not + same site with B's top-level site, + then return false. + +
If A's cross-site ancestry is not + B's cross-site ancestry, then return false. +
Return true.