<h4 id=dynamic-changes-to-base-urls><span class=secno>2.6.5 </span>Dynamic changes to base URLs</h4>
<p>When an <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attribute
changes, the attribute's element, and all descendant elements, are
<h4 id=interfaces-for-url-manipulation><span class=secno>2.6.5 </span>Interfaces for URL manipulation</h4>
<h4 id=interfaces-for-url-manipulation><span class=secno>2.6.6 </span>Interfaces for URL manipulation</h4>
<p>An interface that has a complement of <dfn id=url-decomposition-idl-attributes>URL decomposition IDL
attributes</dfn> has seven attributes with the following
owner</a>.</li>
<li>They both have a <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
attribute, their code title="attr-fe-name">name attributes
attribute, their <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes
are not empty, and the value of <var title="">a</var>'s <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute is a <a href=#compatibility-caseless>compatibility
caseless</a> match for the value of <var title="">b</var>'s
characters (:), generate the following triple:</p>
<dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
<dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>, with any characters in <var title="">token</var> that are not valid in the <ifragment> production of the IRI syntax being %-escaped <a href=#refsRFC3987>[RFC3987]</a>
<dt>predicate <dd> the <a href=#fragment-escaped>fragment-escaped</a> concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>
<dt>object <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">href</code> attribute relative to the element
</dl><p>For each token <var title="">token</var> in <var title="">list of tokens</var> that is an <a href=#absolute-url>absolute
URL</a>, generate the following triple:</p>
triple:</p>
<dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
<dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and the value of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute, <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>, with any characters in the value that are not valid in the <ifragment> production of the IRI syntax being %-escaped <a href=#refsRFC3987>[RFC3987]</a>
<dt>predicate <dd> the <a href=#fragment-escaped>fragment-escaped</a> concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and the value of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute, <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>
<dt>object <dd> the value of the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, as a plain literal, with the language information set from the <a href=#language>language</a> of the element, if it is not unknown
</dl><p>For each <code><a href=#the-meta-element>meta</a></code> element in the <code><a href=#document>Document</a></code>
that has a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute and
character (%), a U+0032 DIGIT TWO character (2), and a U+0030
DIGIT ZERO character (0) to <var title="">type</var>.</li>
<li><p>Append the value of <var title="">fallback name</var> to
<var title="">type</var>, with any characters in <var title="">fallback name</var> that are not valid in the
<ifragment> production of the IRI syntax being
<li><p>Append the <a href=#fragment-escaped>fragment-escaped</a> value of <var title="">fallback name</var> to <var title="">type</var>.</li>
</ol></li>
SIGN character (%), a U+0032 DIGIT TWO character (2), and a
U+0030 DIGIT ZERO character (0) to <var title="">s</var>.</li>
<li><p>Append the value of <var title="">name</var> to <var title="">s</var>, with any characters in <var title="">name</var> that are not valid in the
<ifragment> production of the IRI syntax being
<h4 id=dynamic-changes-to-base-urls><span class=secno>2.6.5 </span>Dynamic changes to base URLs</h4>
<p>When an <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attribute
changes, the attribute's element, and all descendant elements, are
<h4 id=interfaces-for-url-manipulation><span class=secno>2.6.5 </span>Interfaces for URL manipulation</h4>
<h4 id=interfaces-for-url-manipulation><span class=secno>2.6.6 </span>Interfaces for URL manipulation</h4>
<p>An interface that has a complement of <dfn id=url-decomposition-idl-attributes>URL decomposition IDL
attributes</dfn> has seven attributes with the following
owner</a>.</li>
<li>They both have a <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
attribute, their code title="attr-fe-name">name attributes
attribute, their <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes
are not empty, and the value of <var title="">a</var>'s <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute is a <a href=#compatibility-caseless>compatibility
caseless</a> match for the value of <var title="">b</var>'s
characters (:), generate the following triple:</p>
<dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
<dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>, with any characters in <var title="">token</var> that are not valid in the <ifragment> production of the IRI syntax being %-escaped <a href=#refsRFC3987>[RFC3987]</a>
<dt>predicate <dd> the <a href=#fragment-escaped>fragment-escaped</a> concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>
<dt>object <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">href</code> attribute relative to the element
</dl><p>For each token <var title="">token</var> in <var title="">list of tokens</var> that is an <a href=#absolute-url>absolute
URL</a>, generate the following triple:</p>
triple:</p>
<dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
<dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and the value of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute, <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>, with any characters in the value that are not valid in the <ifragment> production of the IRI syntax being %-escaped <a href=#refsRFC3987>[RFC3987]</a>
<dt>predicate <dd> the <a href=#fragment-escaped>fragment-escaped</a> concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and the value of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute, <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>
<dt>object <dd> the value of the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, as a plain literal, with the language information set from the <a href=#language>language</a> of the element, if it is not unknown
</dl><p>For each <code><a href=#the-meta-element>meta</a></code> element in the <code><a href=#document>Document</a></code>
that has a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute and
character (%), a U+0032 DIGIT TWO character (2), and a U+0030
DIGIT ZERO character (0) to <var title="">type</var>.</li>
<li><p>Append the value of <var title="">fallback name</var> to
<var title="">type</var>, with any characters in <var title="">fallback name</var> that are not valid in the
<ifragment> production of the IRI syntax being
<li><p>Append the <a href=#fragment-escaped>fragment-escaped</a> value of <var title="">fallback name</var> to <var title="">type</var>.</li>
</ol></li>
SIGN character (%), a U+0032 DIGIT TWO character (2), and a
U+0030 DIGIT ZERO character (0) to <var title="">s</var>.</li>
<li><p>Append the value of <var title="">name</var> to <var title="">s</var>, with any characters in <var title="">name</var> that are not valid in the
<ifragment> production of the IRI syntax being