diff --git a/source b/source index 81f7c1342ea..014921c2262 100644 --- a/source +++ b/source @@ -2696,7 +2696,7 @@ a.setAttribute('href', 'http://example.com/'); // change the content attribute d The URL parser and basic URL parser as well as these parser states: -
Resolving a URL is the process of taking a relative URL and obtaining the - absolute URL that it implies.
- -To resolve a URL to an absolute URL relative to either another - absolute URL or an element, the user agent must use the following steps. Resolving a - URL can result in an error, in which case the URL is not resolvable.
- -Let url be the URL being resolved.
Let encoding be determined as follows:
- -Parsing a URL is the process of taking a URL string and obtaining the URL + record that it implies. While this process is defined in the WHATWG URL standard, the HTML + standard defines a wrapper for convenience.
-This wrapper is only useful when the character encoding for the URL parser has to + match that of the document or environment settings object for legacy reasons. When that is not the + case the URL parser can be used directly.
-Document
, and the URL character encoding is the
- document's character encoding.To parse a URL url, relative to either a + document or environment settings object, the user agent must use the + following steps. Parsing a URL either results in failure or a resulting URL string + and resulting URL record.
+Let encoding be document's character encoding, if document was given, and environment + settings object's API URL character encoding otherwise.
If encoding is a UTF-16 encoding, then change the value of - encoding to UTF-8.
If the algorithm was invoked with an absolute URL to use as the base URL, let - base be that absolute URL.
- -Otherwise, let base be the element's node document's document - base URL.
- -Apply the URL parser to url, with base as the base URL, with encoding as the encoding.
If encoding is a UTF-16 encoding, set encoding to + UTF-8.
If this returns failure, then abort these steps with an error.
Let baseURL be document's base + URL, if document was given, and environment settings object's + API base URL otherwise.
Let parsed URL be the result of the URL parser.
Let urlRecord be the result of applying the URL parser to + url, with baseURL and encoding.
Let serialised URL be the result of apply the URL serialiser to parsed URL.
If urlRecord is failure, then abort these steps with an error.
Return serialised URL as the resulting absolute URL and parsed - URL as the resulting parsed URL.
Let urlString be the result of applying the URL serialiser to urlRecord.
Return urlString as the resulting URL string and + urlRecord as the resulting URL record.
If the absolute URL identified by the hyperlink is being shown to the user, or
- if any data derived from that URL is affecting the display, then the href
attribute should be re-resolved relative to the element and the UI updated appropriately.
If the URL identified by the hyperlink is being shown to the user, or if any
+ data derived from that URL is affecting the display, then the href
attribute should be reparsed relative to the element's node document and the UI updated
+ appropriately.
For example, the CSS :link
/:visited
pseudo-classes might have been affected.
If the hyperlink has a ping
attribute and its absolute URL(s) are being shown to the user, then the ping
attribute's tokens should be re-resolved relative to the element and the UI updated appropriately.
If the hyperlink has a ping
attribute and its
+ URL(s) are being shown to the user, then the ping
attribute's tokens should be reparsed relative to the element's node document and the UI updated
+ appropriately.
If the absolute URL identified by the cite
attribute is
- being shown to the user, or if any data derived from that URL is affecting the display, then the
- URL should be re-resolved relative to the
- element and the UI updated appropriately.
If the URL identified by the cite
attribute is being
+ shown to the user, or if any data derived from that URL is affecting the display,
+ then the URL should be reparsed relative to the
+ element's node document and the UI updated appropriately.
If a reflecting IDL attribute is a DOMString
attribute whose content attribute is
- defined to contain a URL, then on getting, the IDL attribute must resolve the value of the content attribute relative to the element
- and return the resulting absolute URL if that was successful, or the empty string
- otherwise; and on setting, must set the content attribute to the specified literal value. If the
- content attribute is absent, the IDL attribute must return the default value, if the content
- attribute has one, or else the empty string.
If a reflecting IDL attribute is a DOMString
attribute
+ whose content attribute is defined to contain a URL, then on getting, the IDL
+ attribute must parse the value of the content attribute relative
+ to the element's node document and return the resulting URL string if
+ that was successful, or the empty string otherwise; and on setting, must set the content attribute
+ to the specified literal value. If the content attribute is absent, the IDL attribute must return
+ the default value, if the content attribute has one, or else the empty string.
If a reflecting IDL attribute is a Let document be the Resolve the method's first argument, relative to the
- API base URL specified by the entry settings object. If this is not
- successful, throw a Parse url, relative to the entry
+ settings object. If this is not successful, throw a If the origin of url is not the same as the
- origin of document, throw a If urlRecord's origin is not the same
+ as the origin of document, throw a Remove all child nodes of document, without firing any mutation
@@ -8713,7 +8687,7 @@ partial /*sealed*/ interface Document {
Let success be false. Let request be a new request whose
- url is url, url is urlRecord, client is entry settings object, destination is " For the purposes of application cache
- selection, later The The DOMString
attribute whose content attribute is
an enumerated attribute, and the IDL attribute is limited to only known
@@ -8690,13 +8664,13 @@ partial /*sealed*/ interface Document {
XMLDocument
object on which the
method was invoked.SyntaxError
exception and abort these steps. Otherwise, let
- url be the resulting parsed URL.SyntaxError
exception and
+ abort these steps. Otherwise, let urlRecord be the resulting URL
+ record.SecurityError
exception
+ SecurityError
exception
and abort these steps.subresource
",
synchronous flag is set, mode is "
base
elements cannot affect the resolving of relative URLs in manifest
- attributes, as the attributes are processed before those elements are seen.base
elements cannot affect the parsing of URLs in manifest
attributes, as
+ the attributes are processed before those elements are seen.window.applicationCache
IDL
attribute provides scripted access to the offline application cache mechanism.base
element allows authors to specify the document base URL for
- the purposes of resolving relative URLs, and the name of the
- default browsing context for the purposes of following hyperlinks. The
- element does not represent any content beyond this
- information.
There must be no more than one base
element per document.
To set the frozen base URL, resolve the value of
- the element's href
content attribute relative to the
- Document
's fallback base URL; if this is successful, set the
- frozen base URL to the resulting absolute URL, otherwise, set the
- frozen base URL to the fallback base URL.
To set the frozen base URL, parse the value of the
+ element's href
content attribute relative to the element's
+ node document; if this is successful, set the frozen base URL to the
+ resulting URL record, otherwise, set the frozen base URL to the
+ fallback base URL.
The href
IDL attribute, on getting, must return
the result of running the following algorithm:
@@ -11485,14 +11458,18 @@ gave me some of the songs they wrote. I love sharing my music.</p>
Let url be the value of the href
attribute of the base
element.
Resolve url relative to fallback base
- url (thus, the base
's href
attribute
- isn't affected by other base
elements).
Let urlRecord be the result of parsing
+ url with fallback base url, and the Document
's character encoding. (Thus, the base
's
+ href
attribute isn't affected by other base
+ elements).
If the previous step was successful, return the resulting absolute URL and - abort these steps.
If urlRecord is failure, return the empty string.
Otherwise, return the empty string.
Return the serialisation of + urlRecord.
If the href
attribute's value is the empty string,
then abort these steps.
Resolve the URL given by the href
attribute, relative to the element.
If the previous step fails, then abort these steps.
Otherwise, let url be the resulting parsed URL.
Parse the URL given by the href
attribute, relative to the element's node
+ document. If that fails, then abort these steps. Otherwise, let url be the
+ resulting URL record.
Let corsAttributeState be the current state of the element's crossorigin
content attribute.
Strip any U+0009 CHARACTER TABULATION (tab), U+000A LINE FEED (LF), and U+000D CARRIAGE RETURN (CR) characters from url.
Resolve the url value, relative to the
- meta
element. If this fails, abort these steps.
Otherwise, let parsed url be the resulting parsed URL.
Parse url relative to the meta
+ element's node document. If that fails, abort these steps. Otherwise, let
+ urlRecord be the resulting URL record
After the refresh has come due (as defined below), if the user has not canceled the
redirect and if the meta
element's node document's active
sandboxing flag set does not have the sandboxed automatic features browsing
- context flag set, navigate the
- Document
's browsing context to
- parsed url, with replacement enabled, and with the
+ context flag set, navigate
+ the Document
's browsing context to
+ urlRecord, with replacement enabled, and with the
Document
's browsing context as the
source browsing context.
Provide the user with an interface that, when selected, navigates a browsing context to
- parsed url, with the Document
's navigates a browsing context
+ to urlRecord, with the Document
's browsing context as the source browsing
context.
If the cite
attribute is present, it must be a
valid URL potentially surrounded by spaces. To obtain the
- corresponding citation link, the value of the attribute must be resolved relative to the element. User agents may allow users to follow such
- citation links, but they are primarily intended for private use (e.g. by server-side scripts
- collecting statistics about a site's use of quotations), not for readers.
The content of a blockquote
may be abbreviated or may have context added in the
conventional manner for the text's language.
cite
attribute. The
source may be fictional, as when quoting characters in a novel or screenplay.
- If the cite
attribute is present, it must be a valid URL
- potentially surrounded by spaces. To obtain the corresponding citation
- link, the value of the attribute must be resolved relative to
- the element. User agents may allow users to follow such citation links, but they are
- primarily intended for private use (e.g. by server-side scripts collecting statistics about a
- site's use of quotations), not for readers.
If the cite
attribute is present, it must be a valid
+ URL potentially surrounded by spaces. To obtain the corresponding citation
+ link, the value of the attribute must be parsed relative to the
+ element's node document. User agents may allow users to follow such citation
+ links, but they are primarily intended for private use (e.g., by server-side scripts collecting
+ statistics about a site's use of quotations), not for readers.
The q
element must not be used in place of quotation marks that do not represent
quotes; for example, it is inappropriate to use the q
element for marking up
@@ -20404,11 +20379,11 @@ interface HTMLHyperlinkElementUtils {
An element implementing the HTMLHyperlinkElementUtils
mixin has an associated set the url algorithm, which sets this
- element's url to the resulting parsed URL
- of resolving this element's href
content attribute value relative to this element. If
- resolving was aborted with an error, set this element's url to null.
href
content attribute value relative to this element's
+ node document. If parsing was aborted with an
+ error, set this element's url to null.
When elements implementing the HTMLHyperlinkElementUtils
mixin are created, and
whenever those elements have their href
content
@@ -20873,16 +20848,15 @@ interface HTMLHyperlinkElementUtils {
and replace is true, then disown
target's opener.
Resolve the URL given by
- subject's href
attribute, relative to
- subject.
Parse the URL given by subject's
+ href
attribute, relative to subject's
+ node document.
If that is successful, let URL be the resulting absolute - URL.
+If that is successful, let URL be the resulting URL string.
-Otherwise, if resolving the URL failed, the +
Otherwise, if parsing the URL failed, the user agent may report the error to the user in a user-agent-specific manner, may queue a task to navigate the target browsing context to an error page to report the error, or may ignore the error and @@ -20937,16 +20911,16 @@ interface HTMLHyperlinkElementUtils {
Resolve the URL given by +
Parse the URL given by
subject's href
attribute, relative to
- subject.
If resolving the URL fails, the user agent +
If parsing the URL fails, the user agent may report the error to the user in a user-agent-specific manner, may navigate to an error page to report the error, or may ignore the error and do nothing. In either case, the user agent must abort these steps.
-Otherwise, let URL be the resulting absolute URL.
Otherwise, let URL be the resulting URL string.
If there is a hyperlink suffix, append it to URL.
If a hyperlink created by an a
or area
element has a
ping
attribute, and the user follows the hyperlink, and
the value of the element's href
attribute can be resolved, relative to the element, without failure, then the user
- agent must take the ping
attribute's value, split that string on spaces, resolve each resulting token relative to the element, and then run these substeps for
- each resulting absolute URL ping URL,
- ignoring tokens that fail to resolve:
ping
+ attribute's value, split that string on spaces,
+ parse each resulting token relative to the element's node
+ document, and then run these substeps for each resulting URL string ping
+ URL, ignoring tokens that fail to parse:
Let request be a new request whose @@ -21158,8 +21132,8 @@ interface HTMLHyperlinkElementUtils { data-x="">include", and whose use-URL-credentials flag is set.
Let target URL is the resulting absolute URL obtained from resolving the value of the element's Let target URL is the resulting URL string obtained from parsing the value of the element's
href
attribute and then run these substeps:
The resulting absolute URL determined during the The resulting URL string determined during the obtain algorithm.
This is before any redirects get applied.
@@ -22559,10 +22533,10 @@ interface HTMLHyperlinkElementUtils {If the cite
attribute is present, it must be a valid
URL potentially surrounded by spaces that explains the change. To obtain
- the corresponding citation link, the value of the attribute must be resolved relative to the element. User agents may allow users to follow such
- citation links, but they are primarily intended for private use (e.g. by server-side scripts
- collecting statistics about a site's edits), not for readers.
The datetime
attribute may be used to specify
@@ -23890,16 +23864,15 @@ interface HTMLImageElement : HTMLElement {
Resolve selected source, relative to the - element. - If that is not successful, then abort this inner set of steps. - Otherwise, let absolute URL be the resulting absolute URL.
Parse selected source, relative to the + element's node document. If that is not successful, then abort this inner set of + steps. Otherwise, let urlString be the resulting URL string.
Let key be a tuple consisting of absolute URL, the
- img
element's crossorigin
attribute's
- mode, and, if that mode is not No CORS, the
- node document's origin.
Let key be a tuple consisting of urlString, the img
+ element's crossorigin
attribute's mode, and, if that
+ mode is not No CORS, the node
+ document's origin.
Queue a task to restart the animation if restart
animation is set, change current request's current URL to absolute URL, and then fire a
+ data-x="img-req-url">current URL to urlString, and then fire a
simple event named load
at the img
element.
⌛ Resolve selected source, relative - to the element, and let absolute URL be the resulting absolute URL. If - that is not successful, run these substeps:
+⌛ Parse selected source, relative to the + element's node document, and let urlString be the resulting URL + string. If that is not successful, run these substeps:
⌛ If the pending request is not null, - and absolute URL is the same as the pending request's current URL, + and urlString is the same as the pending request's current URL, then abort these steps.
-⌛ If absolute URL is the same as the current request's current URL, +
⌛ If urlString is the same as the current request's current URL, and current request is in the partially available state, then abort the image request for the pending request, queue a task to restart the animation if restart animation is set, @@ -24046,7 +24019,7 @@ interface HTMLImageElement : HTMLElement { abort the image request for the pending request.
⌛ Let image request be a new image request - whose current URL is absolute URL.
+ whose current URL is urlString.⌛ If current request is in the unavailable state or the broken state, @@ -24055,7 +24028,7 @@ interface HTMLImageElement : HTMLElement {
⌛ Let request be the result of creating a potential-CORS request given
- absolute URL and the current state of the element's urlString and the current state of the element's
crossorigin
content attribute.
⌛ Set request's client to the @@ -24917,9 +24890,9 @@ interface HTMLImageElement : HTMLElement { base URL resolution, so changing the base URL doesn't trigger an update if nothing else changed --> -
⌛ Resolve selected source, - relative to the element, and let absolute URL be the resulting absolute URL. - If that is not successful, abort these steps.
⌛ Parse selected source, relative to + the element's node document, and let urlString be the resulting URL + string. If that is not successful, abort these steps.
⌛ Let corsAttributeState be the state of the element's crossorigin
content attribute.
⌛ Let client be the img
element's node
document's Window
object's environment settings object.
⌛ Let key be a tuple consisting of absolute URL, +
⌛ Let key be a tuple consisting of urlString, corsAttributeState, and, if corsAttributeState is not No CORS, origin.
⌛ Let image request be a new image request - whose current URL is absolute URL
⌛ Let the element's pending request be image request.
Let request be the result of creating a potential-CORS request given - absolute URL and corsAttributeState.
Set request's client to
client, type to "audio</a> test instead.)</p>
value is the empty string, let url be the string "
about:blank
".
Otherwise, resolve the value of the src
attribute, relative to the iframe
element.
Otherwise, parse the value of the src
attribute, relative to the iframe
element's
+ node document.
If that is not successful, then let url be the URL
- "about:blank
". Otherwise, let url be the resulting parsed
- URL.
about:blank
". Otherwise, let url be the resulting URL
+ record.
If, when the element is created, the srcdoc
attribute is not set, and the src
attribute is either also not set or set but its value cannot be
- resolved, the browsing context will remain at the initial
+ parsed, the browsing context will remain at the initial
about:blank
page.
If the user navigates away from this page, the @@ -27130,14 +27104,14 @@ href="?audio">audio</a> test instead.)</p>
The user agent must resolve the value of the element's
- src
attribute, relative to the element. If that is
- successful, the user agent should run these steps:
+
The user agent must parse the value of the element's
+ src
attribute, relative to the element's node
+ document. If that is successful, the user agent should run these steps:
Let request be a new request whose
- url is the resulting parsed URL,
+ url is the resulting URL record,
client is the element's node
document's Otherwise, if applying the URL parser algorithm to the URL of
- the specified resource (after any redirects) results in a parsed URL whose
+ the specified resource (after any redirects) results in a URL record whose
path component matches a pattern that a
plugin supports, then the content's
type is the type that that plugin can handle.Window
object's environment settings object,
destination is "plugin supports, then the value
only used after fetching the resource in the steps above -->
Resolve the URL specified by the data
attribute, relative to the element.
Parse the URL specified by the data
attribute, relative to the element's node
+ document.
If that failed, fire a simple event named Let request be a new request whose
- url is the resulting parsed URL,
+ url is the resulting URL record,
client is the element's node
document's If applying the URL parser algorithm to the URL of the
- specified resource (after any redirects) results in a parsed URL whose URL record whose path component matches a pattern that a plugin
supports, then let resource type be the type that that plugin can
handle.error
at the element, then jump to the step below labeled
@@ -27613,7 +27588,7 @@ attribute, set the browsing context name of the element's nes
Window
object's environment settings object,
destination is "browsing context name
Resolve the poster
attribute's value relative to the element. If this fails,
- then there is no poster frame; abort these steps.
Parse the poster
attribute's value relative to the element's node
+ document. If this fails, then there is no poster frame; abort these
+ steps.
Let request be a new request whose
- url is the resulting parsed URL,
+ url is the resulting URL record,
client is the element's node document's
If the element has a Window
object's environment settings object, type is "image
", HTMLAudioElement : HTMLMediaElement {};
src
attribute whose value is not the
empty string and whose value, when the attribute was set, could be successfully resolved relative to the element, then the element's track
- URL is the resulting absolute URL. Otherwise, the element's track
- URL is the empty string.
⌛ Let absolute URL be the resulting absolute URL that - would have resulted from resolving the URL +
⌛ Let urlString be the resulting URL string that
+ would have resulted from parsing the URL
specified by the src
attribute's value relative to the
- media element when the src
attribute was last
- changed.
src
attribute was last changed.
+
- ⌛ If absolute URL was obtained successfully, set the currentSrc
attribute to absolute
- URL.
⌛ If urlString was obtained successfully, set the currentSrc
attribute to urlString.
End the synchronous section, continuing the remaining steps in parallel.
If absolute URL was obtained successfully, run the resource fetch algorithm with absolute - URL. If that algorithm returns without aborting this one, then the load - failed.
If urlString was obtained successfully, run the resource fetch algorithm with + urlString. If that algorithm returns without aborting this one, then the + load failed.
Failed with attribute: Reaching this step indicates that the media resource - failed to load or that the given URL could not be resolved. Queue a task to run the dedicated media source + failed to load or that the given URL could not be parsed. Queue a task to run the dedicated media source failure steps.
Wait for the task queued by the previous step to have @@ -30029,14 +30005,14 @@ interface HTMLMediaElement : HTMLElement { synchronous section, and jump down to the failed with elements step below.
⌛ Let absolute URL be the resulting absolute URL that - would have resulted from resolving the URL +
⌛ Let urlString be the resulting URL string that
+ would have resulted from parsing the URL
specified by candidate's src
- attribute's value relative to the candidate when the src
attribute was last changed.
src
attribute was last changed.
- ⌛ If absolute URL was not obtained successfully, then end the +
⌛ If urlString was not obtained successfully, then end the synchronous section, and jump down to the failed with elements step below.
⌛ Set the currentSrc
attribute to absolute URL.
⌛ Set the currentSrc
attribute to
+ urlString.
End the synchronous section, continuing the remaining steps in parallel.
Run the resource fetch algorithm with - absolute URL. If that algorithm returns without aborting this one, +
Run the resource fetch algorithm + with urlString. If that algorithm returns without aborting this one, then the load failed.
Failed with elements: Queue a task to fire a simple
@@ -33966,8 +33943,8 @@ interface MediaController : EventTarget {
Indicates that the text track was enabled, but when the user agent attempted to obtain it,
- this failed in some way (e.g. URL could not be resolved, network error, unknown text track format). Some or all of the cues are
+ this failed in some way (e.g. URL could not be parsed, network error, unknown text track format). Some or all of the cues are
likely missing and will not be obtained.src
- attribute value, relative to the element, and if that is successful, run these substeps:
src
+ attribute value, relative to the element's node document, and if that is successful,
+ run these substeps:
Let request be a new request whose
- url is the resulting parsed URL,
+ url is the resulting URL record,
client is the element's node document's
Resolve the URL action, relative to the submitter element. If this fails,
- abort these steps. Parse the URL action, relative
+ to the submitter element's node document. If this fails, abort these
+ steps. Let action be the resulting absolute URL. Let action be the resulting URL string. Let parsed action be the resulting parsed URL. Let parsed action be the resulting URL record. Let scheme be the scheme of
parsed action.Window
object's environment settings object, type is "image
",
-
The disabled
attribute is a
boolean attribute that, if present, indicates that the command is not available in
@@ -58059,12 +58038,12 @@ o............A....e
Set the element's from an external file flag.
Resolve src relative to the - element.
Parse src relative to the element's + node document.
If the previous step failed, queue a task to fire a simple
event named error
at the element, and abort these
- steps. Otherwise, let url be the resulting parsed URL.
Switch on the script's type:
@@ -67669,9 +67648,9 @@ Demos:The global identifier of an item is the value of
its element's itemid
attribute, if it has one, resolved relative to the element on which the attribute is specified.
- If the itemid
attribute is missing or if resolving it fails, it
- is said to have no global identifier.
itemid
attribute is
+ missing or if resolving it fails, it is said to have no global identifier.
The The value is the resulting absolute URL that results from resolving the value of the element's The value is the resulting URL string that results from parsing the value of the element's itemid
attribute must not be specified on elements that do
not have both an itemscope
attribute and an
-
src
attribute relative to
- the element at the time the attribute is set, or the empty string if there is no such attribute
- or if resolving it results in an error.src
attribute relative to
+ the node document of the element at the time the attribute is set, or the empty
+ string if there is no such attribute or if parsing it results
+ in an error.
The value is the resulting absolute URL that results from resolving the value of the element's href
attribute relative
- to the element at the time the attribute is set, or the empty string if there is no such
- attribute or if resolving it results in an error.
The value is the resulting URL string that results from parsing the value of the element's href
attribute relative to
+ the node document of the element at the time the attribute is set, or the empty
+ string if there is no such attribute or if parsing it results
+ in an error.
The value is the resulting absolute URL that results from resolving the value of the element's data
attribute relative
- to the element at the time the attribute is set, or the empty string if there is no such
- attribute or if resolving it results in an error.
The value is the resulting URL string that results from parsing the value of the element's data
attribute relative to
+ the node document of the element at the time the attribute is set, or the empty
+ string if there is no such attribute or if parsing it results
+ in an error.
a
element with an href
attributehref
content
- attribute relative to the element.href
content attribute relative to the
+ element's node document.img
element with a src
attributesrc
content attribute
- relative to the element.src
content attribute relative to the
+ element's node document.Otherwise, resolve url relative to the - API base URL specified by entry settings, and let resource be - the resulting absolute URL, if any. If the resolve a URL algorithm - failed, then run one of the following two steps instead:
+Otherwise, parse url relative to entry + settings, and let resource be the resulting URL record, if any. If + the parse a URL algorithm failed, then run one of the following two steps + instead:
SecurityError
exception and abort these steps.SecurityError
exception
and abort these steps. (This prevents sandboxed content from spoofing other pages on the same
origin.)The href
attribute's setter must run these steps:
Let newURL be the resulting parsed URL of resolving the given value relative to the entry settings object's - API base URL.
If that aborted with an error, throw a TypeError
exception.
Parse the given value relative to the entry
+ settings object. If that failed, throw a TypeError
exception.
Location
-object-setter navigate to newURL.
Location
-object-setter navigate to the resulting URL
+ record.
The origin
attribute's getter must return
@@ -79626,18 +79606,11 @@ State: <OUTPUT NAME=I>1</OUTPUT> <INPUT VALUE="Increment" TYPE=BUTTON O
Resolve url, relative to the - API base URL specified by the entry settings object and let - parsedURL be the resulting parsed URL.
- -If this is not successful, throw a SyntaxError
exception and abort these
- steps.
Parse url relative to the entry
+ settings object. If that failed, throw a SyntaxError
exception.
Location
-object navigate to parsedURL.
Location
-object navigate to the resulting URL
+ record.
Parse url relative to the entry
+ settings object. If that failed, throw a SyntaxError
exception.
Resolve url, relative to the - API base URL specified by the entry settings object and let - parsedURL be the resulting parsed URL.
- -If this is not successful, throw a SyntaxError
exception and abort these
- steps.
Location
-object navigate to parsedURL with the
- replacement flag set.
Location
-object navigate to the resulting URL
+ record with the replacement flag set.
GET
`, and the
- parsed URL of the new resource has a URL record of the new resource has a fragment component that is not null (even if it is empty),
then navigate to that fragment identifier and abort these
steps.
@@ -80037,25 +80002,23 @@ State: <OUTPUT NAME=I>1</OUTPUT> <INPUT VALUE="Increment" TYPE=BUTTON O
the script was the void value, and jump to the step labeled process results
below.
- Apply the URL parser to the URL being navigated.
Let parsed URL be the result of the URL - parser.
Let urlRecord be the result of running the URL parser on the + URL being navigated.
Let script source be the empty string.
Append parsed URL's scheme - data component to script source.
Append the first string of urlRecord's path component to script source.
If parsed URL's query - component is not null, then first append a U+003F QUESTION MARK character (?) to script source, and then append parsed URL's query component to script - source.
If urlRecord's query component is + not null, then first append a U+003F QUESTION MARK character (?) to script source, + and then append urlRecord's query + component to script source.
If parsed URL's fragment component is not null, then first append a - U+0023 NUMBER SIGN character (#) to script source, and then append parsed URL's fragment component to - script source.
If urlRecord's fragment + component is not null, then first append a U+0023 NUMBER SIGN character (#) to script + source, and then append urlRecord's fragment component to script source.
Replace script source with the result of applying the percent decode algorithm to script source.
html
element with an attribute manifest
whose value is not the empty string, then, as soon as the element is inserted into the document, the user agent must resolve the value of that attribute relative to that element, and if
- that is successful, must apply the URL serialiser
- algorithm to the resulting parsed URL with the exclude fragment flag set to
- obtain manifest URL, and then run the application
- cache selection algorithm with manifest URL as the manifest URL, passing in the
- newly-created Document
. Otherwise, if the attribute is absent, its value is the empty
- string, or resolving its value fails, then as soon as the root element is inserted into the document, the user agent must run the parse the value of that attribute relative to that element's
+ node document, and if that is successful, must apply the URL serialiser algorithm to the resulting URL
+ record with the exclude fragment flag set to obtain manifest URL, and
+ then run the application cache selection algorithm
+ with manifest URL as the manifest URL, passing in the newly-created
+ Document
. Otherwise, if the attribute is absent, its value is the empty string, or
+ parsing its value fails, then as soon as the root element is inserted into the document, the user agent must run the application cache selection algorithm with no manifest, and
passing in the Document
.
@@ -81007,7 +80971,7 @@ State: <OUTPUT NAME=I>1</OUTPUT> <INPUT VALUE="Increment" TYPE=BUTTON O
Apply the URL parser algorithm to the URL, and let fragid be the fragment component of the - resulting parsed URL.
If fragid is the empty string, then the indicated part of the @@ -82191,7 +82155,7 @@ NETWORK: data-x="">http://example.com/app1/manifest contains a namespace with a match for that URL.
- @@ -82492,7 +82456,7 @@ NETWORK: after this step will both be slashes, the URL path separator character.)Apply the URL parser steps to the base URL, so that the - components from its parsed URL can be used by the subsequent steps of this + components from its URL record can be used by the subsequent steps of this algorithm.
Let explicit URLs be an initially empty list of Resolve the first item in tokens, - relative to base URL, with the URL character encoding set to UTF-8; - ignore the rest.
+Let urlRecord be the result of parsing the + first item in tokens with base URL; ignore the rest.
-If this fails, then jump back to the step labeled start of line.
+If urlRecord is failure, then jump back to the step labeled start of + line.
-If the resulting parsed URL has a different scheme component than base URL (the - manifest's URL), then jump back to the step labeled start of line.
+If urlRecord has a different scheme + component than base URL (the manifest's URL), then jump back to the step labeled + start of line.
Let new URL be the result of applying the URL serialiser algorithm to the resulting parsed - URL, with the exclude fragment flag set.
+ data-x="concept-url-serialiser">URL serialiserAdd new URL to the explicit URLs.
@@ -82636,18 +82600,22 @@ NETWORK:Let part one be the first token in tokens, and let part two be the second token in tokens.
-Resolve part one and part two, relative to base URL, with the URL character - encoding set to UTF-8.
+Let urlRecordOne be the result of parsing + part one with base URL.
-If either fails, then jump back to the step labeled start of line.
+Let urlRecordTwo be the result of parsing + part two with base URL.
- -If the resulting parsed URL corresponding to either part one or - part two does not have the same origin as the manifest's URL, - then jump back to the step labeled start of line.
+If either urlRecordOne or urlRecordTwo is failure, then jump back to the + step labeled start of line.
+ +If the origin of either urlRecordOne or + urlRecordTwo is not same origin with the manifest's URL origin, then jump back to the step labeled start of + line.
Let part one path be the path component - of the resulting parsed URL for part one.
+ of urlRecordOne.If manifest path is not a prefix match for part one path, then jump back to the step labeled start of line.
Let part one be the result of applying the URL serialiser algorithm to the first resulting - parsed URL, with the exclude fragment flag set.
+ data-x="concept-url-serialiser">URL serialiser algorithm to urlRecordOne, + with the exclude fragment flag set.Let part two be the result of applying the URL serialiser algorithm to the second resulting - parsed URL, with the exclude fragment flag set.
+ data-x="concept-url-serialiser">URL serialiser algorithm to urlRecordTwo, + with the exclude fragment flag set.If part one is already in the fallback URLs mapping as a fallback namespace, then jump back to @@ -82681,18 +82649,19 @@ NETWORK: set online safelist wildcard flag to open and jump back to the step labeled start of line.
-Otherwise, resolve the first item in tokens, relative to base URL, with the URL character - encoding set to UTF-8; ignore the rest.
+Otherwise, let urlRecord be the result of parsing the first item in tokens with base URL.
-If this fails, then jump back to the step labeled start of line.
+If urlRecord is failure, then jump back to the step labeled start of + line.
-If the resulting parsed URL has a different scheme component than base URL (the - manifest's URL), then jump back to the step labeled start of line.
+If urlRecord has a different scheme + component than base URL (the manifest's URL), then jump back to the step labeled + start of line.
Let new URL be the result of applying the URL serialiser algorithm to the resulting parsed - URL, with the exclude fragment flag set.
+ data-x="concept-url-serialiser">URL serialiser algorithm to urlRecord, with + the exclude fragment flag set.Add new URL to the online safelist namespaces.
@@ -83026,11 +82995,11 @@ NETWORK:Otherwise, associate the Document
for this entry with cache; store the resource for this entry in cache, if it
isn't already there, and categorise its entry as a master entry. If applying the URL parser
- algorithm to the resource's URL results in a parsed URL that has a
+ algorithm to the resource's URL results in a URL record that has a
non-null fragment component, the URL
used for the entry in cache must instead be the absolute URL
obtained from applying the URL serialiser
- algorithm to the parsed URL with the exclude fragment flag set
+ algorithm to the URL record with the exclude fragment flag set
(application caches never include fragment identifiers).
If the resource is not to be fetched using the GET method, or if applying the URL parser algorithm to both its URL and the application cache's - manifest's URL results in two parsed URLs with different scheme components, - then fetch the resource normally and abort these steps.
If the resource's URL is a master entry,
the manifest, NavigatorOnLine {
An absolute URL used by APIs called by scripts that use this environment
- settings object to resolve relative URLs. A URL used by APIs called by scripts that use this environment settings
+ object to parse URLs. The entry settings object is used to obtain, amongst other things, the API
- base URL to resolve relative
- URLs used in scripts running in that unit of related
- similar-origin browsing contexts. The incumbent settings object is used in some security checks.
The assign()
method uses the entry settings
- object to resolve the URL, so we end up loading a/c.html
, but it
- uses the incumbent settings object to establish the source browsing
- context, from which the referrer is established, so the ` to parse the URL, so we end up loading
a/c.html
, but it uses the incumbent settings object to establish
+ the source browsing context, from which the referrer is established, so the `Referer
` header sent with the request for a/c.html
specifies the inner file's URL (the one ending with b/b.html
).
%s
".
- User agents must throw a SyntaxError
exception if resolving the url argument relative to the API base
- URL specified by the entry settings object is not successful.
User agents must throw a SyntaxError
exception if parsing the url argument relative to the entry settings
+ object is not successful.
The resulting absolute URL would by definition not be a valid
+ The resulting URL string would by definition not be a valid
URL as it would include the string " User agents must throw a User agents must throw a This is forcibly the case if the The resulting absolute URL is the proto-URL. It identifies the
+ The resulting URL string is the proto-URL. It identifies the
handler for the purposes of the methods described below. When the user agent uses this handler, it must replace the first occurrence of the exact
literal string " If the string does not contain the substring " Resolve the string relative to the API base
- URL specified by the entry settings object. If this fails, then throw a Parse the string relative to the entry settings
+ object. If this fails, then throw a If the resulting parsed URL's origin is not the same
- origin as the origin specified by the entry settings object,
- throw a If the resulting URL record's origin
+ is not the same origin as the origin specified by the entry
+ settings object, throw a Return the resulting absolute URL as the result of preprocessing the
+ Return the resulting URL string as the result of preprocessing the
argument.%s
" which is not a valid
component in a URL.SecurityError
exception if the resulting parsed
- URL has an origin that differs from the origin specified by the
- entry settings object.SecurityError
exception if the resulting URL
+ record has an origin that differs from the
+ origin specified by the entry settings object.%s
placeholder is in the
scheme, host, or port parts of the URL.%s
" in the url argument with an
escaped version of the absolute URL of the content in question (as defined below),
- then resolve the resulting URL, relative to the API
- base URL specified by the entry settings object at the time the parse
registerContentHandler()
or registerProtocolHandler()
methods were
invoked, and then navigate an appropriate browsing
@@ -88665,17 +88633,14 @@ interface NavigatorContentUtils {
%s
", abort these
steps. There's no matching handler.SyntaxError
exception, aborting the
- method.SyntaxError
exception.SecurityError
exception, aborting the method.SecurityError
exception.
interface External { - void AddSearchProvider(DOMString engineURL); - unsigned long IsSearchProviderInstalled(DOMString engineURL); + void AddSearchProvider(DOMString url); + unsigned long IsSearchProviderInstalled(DOMString url); };
For historical reasons, members on this interface are capitalized.
@@ -89341,7 +89306,8 @@ interface MimeType {The AddSearchProvider()
method,
+
The AddSearchProvider(url)
method,
when invoked, must run the following steps:
Resolve the value of the method's first argument - relative to the API base URL specified by the entry settings - object.
Parse url relative to the entry + settings object. If this fails, abort these steps.
If this fails, abort these steps.
Process the resulting absolute URL as the URL to an OpenSearch +
Process the resulting URL string as the URL to an OpenSearch description document.
The IsSearchProviderInstalled()
+
The IsSearchProviderInstalled(url)
method, when invoked, must run the following steps:
Let host1 be the host component of the origin specified by the entry settings object.
Resolve the scriptURL argument - relative to the API base URL specified by the entry settings - object.
If this fails, return 0 and abort these steps.
Parse url relative to the entry + settings object. If this fails, return 0 and abort these steps.
Let host2 be the host component - of the resulting parsed URL.
Resolve the URL specified in the first - argument, relative to the API base URL specified by the entry settings - object.
Parse the URL specified in the first + argument, relative to the entry settings object.
If the previous step failed, then throw a SyntaxError
exception and abort
these steps.
Let request be the result of creating a potential-CORS request given the - resulting parsed URL, corsAttributeState, and with the same-origin + resulting URL record, corsAttributeState, and with the same-origin fallback flag set.
Set request's client to @@ -90228,7 +90188,7 @@ dictionary EventSourceInit {
The url
attribute must return the
- absolute URL that resulted from resolving the
+ absolute URL that resulted from parsing the
value that was passed to the constructor.
The url
attribute must return the
- resulting absolute URL of resolving the
+ resulting URL string of parsing the
URL that was passed to the constructor, with the URL character encoding set to UTF-8.
- (It doesn't matter what it is resolved relative to, since we already know it is an
- absolute URL.)
The readyState
attribute represents
the state of the connection. It can have the following values:
Resolve the url string, with the URL character +
Parse the url string, with the URL character encoding set to UTF-8.
Since we already know the url string is an absolute URL, - resolving it will never return an error, and it doesn't + parsing it will never return an error, and it doesn't matter what it is resolved relative to.
If the resulting parsed URL does not have a If the resulting URL record does not have a scheme component whose value is either "ws
" or "wss
", then fail this algorithm.
If the resulting parsed URL has a non-null If the resulting URL record has a non-null fragment component, then fail this algorithm.
If the scheme component of the resulting
- parsed URL is "ws
", set secure to false;
+ URL record is "ws
", set secure to false;
otherwise, the scheme component is "wss
", set secure to true.
Let host be the value of the resulting parsed URL's Let host be the value of the resulting URL record's host component.
If the resulting parsed URL has a port +
If the resulting URL record has a port component that is not the empty string, then let port be that component's value; otherwise, there is no explicit port.
If there is no explicit port, then: if secure is false, let port be 80, otherwise let port be 443.
Let resource name be the value of the resulting parsed URL's Let resource name be the value of the resulting URL record's path component (which might be empty).
If resource name is the empty string, set it to a single character U+002F SOLIDUS (/).
If the resulting parsed URL has a non-null If the resulting URL record has a non-null query component, then append a single U+003F QUESTION MARK
character (?) to resource name, followed by the value of the query component.
cite
attributes on q
, blockquote
,
ins
, and del
elements.
@@ -109733,12 +109694,13 @@ if (s = prompt('What is your name?')) {
If the value of the src
attribute is the empty string,
let url be the string "about:blank
".
Otherwise, resolve the value of the src
attribute, relative to the frame
element.
Otherwise, parse the value of the src
attribute, relative to the frame
+ element's node document.
If that is not successful, then let url be the URL
- "about:blank
". Otherwise, let url be the resulting parsed
- URL.
about:blank
". Otherwise, let url be the resulting URL
+ record.