diff --git a/source b/source index a205205ec16..e5889dc7ecc 100644 --- a/source +++ b/source @@ -15557,6 +15557,7 @@ interface HTMLLinkElement : HTMLElement { the processing model, and are supported by the user agent. The possible supported tokens are alternate, + compression-dictionary, dns-prefetch, expect, icon, @@ -26186,6 +26187,7 @@ document.body.appendChild(wbr);

Keywords that are body-ok affect whether link elements are allowed in the body. The body-ok keywords are + compression-dictionary, dns-prefetch, modulepreload, pingback, @@ -26251,6 +26253,17 @@ document.body.appendChild(wbr); Gives the permalink for the nearest ancestor section. + + compression-dictionary + External Resource + not allowed + Yes + Yes + Specifies that the user agent should preemptively fetch and cache the + target resource as it is likely to be useful as a compression dictionary for future + fetches. RFC9842 + + dns-prefetch External Resource @@ -26672,6 +26685,93 @@ document.body.appendChild(wbr); Link Relation. RFC6596

+
Link type "compression-dictionary"
+ +

The compression-dictionary keyword may be used + with link elements. This keyword creates an external + resource link. This keyword is body-ok.

+ +

The compression-dictionary keyword indicates + that preemptively fetching and caching the specified resource + or same-site document is likely to be beneficial, as it is highly likely that the user will + be able to this resource as a compression dictionary for future + fetches. RFC9842

+ +

There is no default type for resources given by the + compression-dictionary keyword.

+ +

The appropriate times to fetch and + process this type of link are:

+ + + +

The fetch and process the linked resource steps for this type of linked resource, + given a link element el, are to create link options from el and + to load a compression dictionary given the result and el.

+ +

The process a link header step for this type of linked resource given a link processing options options are to + load a compression dictionary given options.

+ +

To load a compression dictionary given a link processing options + options and optional link element el:

+ +
    +
  1. If options's crossorigin + is No CORS, set options's + crossorigin to + Anonymous.

  2. + +
  3. Set options's destination to + the empty string.

  4. + +
  5. Let request be the result of creating a + link request given options.

  6. + +
  7. If request is null, then return.

  8. + +
  9. Set request's initiator to + "compression-dictionary".

  10. + +
  11. +

    Let processCompressionDictionaryResponse be the following steps given a response response and null, failure, or a + byte sequence bytesOrNull:

    + +
      +
    1. If response is a network error and el is set, fire an event named error at el.

    2. + +
    3. Otherwise, if el is set, fire an event + named load at el.

    4. +
    +
  12. + +
  13. The user agent should fetch request, with + processResponseConsumeBody set to + processCompressionDictionaryResponse. User agents may delay the fetching of + request to prioritize other requests that are necessary for the current document.

  14. +
+ +
Link type "dns-prefetch"
@@ -147865,6 +147965,9 @@ INSERT INTERFACES HERE
[RFC8297]
An HTTP Status Code for Indicating Hints, K. Oku. IETF.
+
[RFC9842]
+
Compression Dictionary Transport, P. Meenan, Y. Weiss. IETF.
+
[SCREENORIENTATION]
Screen Orientation, M. Cáceres. W3C.