@@ -4487,8 +4487,7 @@ dom-Range-extractContents, dom-Range-cloneContents -->
44874487 <ol>
44884488 <li><p> Let <var> copyAttribute</var> be a <a>clone</a> of <var> attribute</var> .
44894489
4490- <li><p> <a lt="append an attribute">Append</a> <var> copyAttribute</var> to <var> copy</var> ,
4491- with false.
4490+ <li><p> <a lt="append an attribute">Append</a> <var> copyAttribute</var> to <var> copy</var> .
44924491 </ol>
44934492 </li>
44944493 </ol>
@@ -6406,33 +6405,17 @@ given a <var>document</var>, <var>localName</var>, <var>namespace</var>, and opt
64066405<ol>
64076406 <li><p> Let <var> oldValue</var> be <var> attribute</var> 's <a for=Attr>value</a> .</p></li>
64086407
6409- <li><p> <a>Verify and set attribute value</a> <var> value</var> for <var> attribute</var> , with
6410- <var> attribute</var> 's <a for=Attr>element</a> .
6408+ <li><p> Set <var> attribute</var> 's <a for=Attr>value</a> to <var> value</var> .
64116409
6412- <li><p> If <var> attribute</var> 's <a for=Attr>element</a>
6413- <a lt="has an attribute">has an attribute</a> , then <a>handle attribute changes</a> for
6414- <var> attribute</var> with <var> attribute</var> 's <a for=Attr>element</a> , <var> oldValue</var> , and
6415- <var> value</var> .
6416-
6417- <li><p> Otherwise, throw an "{{InvalidStateError!!exception}} " {{DOMException}} .
6410+ <li><p> <a>Handle attribute changes</a> for <var> attribute</var> with <var> attribute</var> 's
6411+ <a for=Attr>element</a> , <var> oldValue</var> , and <var> value</var> .
64186412</ol>
64196413
64206414<p> To <dfn export id=concept-element-attributes-append lt="append an attribute">append</dfn> an
6421- <a>attribute</a> <var> attribute</var> to an <a for=/>element</a> <var> element</var> , with an
6422- optional boolean <var> validate </var> (default true) :
6415+ <a>attribute</a> <var> attribute</var> to an <a for=/>element</a> <var> element</var> , run these
6416+ steps :
64236417
64246418<ol>
6425- <li>
6426- <p> If <var> validate</var> is true:
6427-
6428- <ol>
6429- <li><p> <a>Verify and set attribute value</a>
6430- <var> attribute</var> 's <a for="Attr">value</a> for <var> attribute</var> , with <var> element</var> .
6431-
6432- <li><p> If <var> element</var> <a lt="has an attribute">has</a> an <a>attribute</a>
6433- <var> attribute</var> , then throw an "{{InvalidStateError!!exception}} " {{DOMException}} .
6434- </ol>
6435-
64366419 <li><p> <a for=list>Append</a> <var> attribute</var> to <var> element</var> 's
64376420 <a for=Element>attribute list</a> .
64386421
@@ -6461,9 +6444,6 @@ optional boolean <var>validate</var> (default true):
64616444<a>attribute</a> <var> oldAttr</var> with an <a>attribute</a> <var> newAttr</var> , run these steps:
64626445
64636446<ol>
6464- <li><p> <a>Verify and set attribute value</a> <var> newAttr</var> 's <a for="Attr">value</a> for
6465- <var> newAttr</var> , with <var> oldAttr</var> 's <a for=Attr>element</a> .
6466-
64676447 <li><p> <a for=list>Replace</a> <var> oldAttr</var> by <var> newAttr</var> in <var> oldAttr</var> 's
64686448 <a for=Attr>element</a> 's <a for=Element>attribute list</a> .
64696449
@@ -6477,16 +6457,14 @@ optional boolean <var>validate</var> (default true):
64776457 <a for=Attr>value</a> .
64786458</ol>
64796459
6480- <p> To <dfn>verify and set attribute value</dfn>
6460+ <p> To <dfn>verify attribute value</dfn>
64816461{{TrustedType}} or string <var> value</var> for an <a>attribute</a> <var> attribute</var> , given an
64826462<a for=/>Element</a> <var> element</var> :
64836463
64846464<ol>
6485- <li><p> Let <var> verifiedValue </var> be the result of calling
6465+ <li><p> Return the result of calling
64866466 <a abstract-op>get Trusted Types-compliant attribute value</a> for <var> attribute</var> , with
64876467 <var> element</var> , <var> value</var> . [[!TRUSTED-TYPES]]
6488-
6489- <li><p> Set <var> attribute</var> 's <a for=Attr>value</a> to <var> verifiedValue</var> .
64906468</ol>
64916469
64926470<hr>
@@ -6551,6 +6529,11 @@ string <var>namespace</var> (default null):</p>
65516529
65526530 <li><p> If <var> oldAttr</var> is <var> attr</var> , return <var> attr</var> .
65536531
6532+ <li><p> Let <var> verifiedValue</var> be the result of calling <a>verify attribute value</a>
6533+ <var> attr</var> 's <a for=Attr>value</a> for <var> attr</var> , with <var> element</var> .
6534+
6535+ <li><p> Set <var> attr</var> 's <a for=Attr>value</a> to <var> verifiedValue</var> .
6536+
65546537 <li><p> If <var> oldAttr</var> is non-null, then <a lt="replace an attribute">replace</a>
65556538 <var> oldAttr</var> with <var> attr</var> .
65566539
@@ -6571,14 +6554,30 @@ or string <var>namespace</var> (default null):
65716554 <a lt="get an attribute by namespace and local name">getting an attribute</a> given
65726555 <var> namespace</var> , <var> localName</var> , and <var> element</var> .
65736556
6574- <li> If <var> attribute</var> is null, create an <a>attribute</a> whose <a for=Attr>namespace</a> is
6575- <var> namespace</var> , <a for=Attr>namespace prefix</a> is <var> prefix</var> ,
6576- <a for=Attr>local name</a> is <var> localName</var> , <a for=Attr>value</a> is <var> value</var> , and
6577- <a for=Node>node document</a> is <var> element</var> 's <a for=Node>node document</a> , then
6578- <a lt="append an attribute">append</a> this <a>attribute</a> to <var> element</var> , and then
6579- return.
6557+ <li><p> Let <var> attributeExists</var> be false if <var> attribute</var> is null, and true otherwise.
6558+
6559+ <li><p> If <var> attributeExists</var> is false, set <var> attribute</var> to an <a>attribute</a>
6560+ whose <a for=Attr>namespace</a> is <var> namespace</var> , <a for=Attr>namespace prefix</a> is
6561+ <var> prefix</var> , <a for=Attr>local name</a> is <var> localName</var> , <a for=Attr>value</a> is
6562+ <var> value</var> , and <a for=Node>node document</a> is <var> element</var> 's <a for=Node>node
6563+ document</a> .
65806564
6581- <li><p> <a lt="change an attribute">Change</a> <var> attribute</var> to <var> value</var> .
6565+ <li><p> Let <var> verifiedValue</var> be the result of calling <a>verify attribute value</a>
6566+ <var> value</var> for <var> attribute</var> , with <var> element</var> .
6567+
6568+ <li><p> Set <var> attributeExists</var> to true if <var> element</var> <a lt="has an attribute">has
6569+ an attribute</a> <var> attribute</var> ; otherwise false.
6570+
6571+ <li><p> If <var> attributeExists</var> is true, <a lt="change an attribute">change</a>
6572+ <var> attribute</var> to <var> verifiedValue</var> .
6573+
6574+ <li><p> Otherwise:
6575+ <ol>
6576+ <li><p> Set <var> attribute</var> 's <a for=Attr>value</a> to <var> verifiedValue</var> .
6577+
6578+ <li><p> <a lt="append an attribute">Append</a> this <a>attribute</a> to
6579+ <var> element</var> .
6580+ </ol>
65826581</ol>
65836582</div>
65846583
@@ -6839,12 +6838,25 @@ method steps are:
68396838 and null otherwise.
68406839 <!-- This is step 2 of "get an attribute by name", modified as appropriate -->
68416840
6842- <li><p> If <var> attribute</var> is null, create an <a>attribute</a> whose
6843- <a for=Attr>local name</a> is <var> qualifiedName</var> , <a for=Attr>value</a> is
6844- <var> value</var> , and <a for=Node>node document</a> is <a>this</a> 's <a for=Node>node document</a> ,
6845- then <a lt="append an attribute">append</a> this <a>attribute</a> to <a>this</a> , and then return.
6841+ <li><p> Let <var> attributeExists</var> be false if <var> attribute</var> is null, and true otherwise.
6842+
6843+ <li><p> If <var> attributeExists</var> is false, set <var> attribute</var> to an <a>attribute</a>
6844+ whose <a for=Attr>local name</a> is <var> qualifiedName</var> , <a for=Attr>value</a> is
6845+ <var> value</var> , and <a for=Node>node document</a> is <a>this</a> 's <a for=Node>node
6846+ document</a> .
6847+
6848+ <li><p> Let <var> verifiedValue</var> be the result of calling <a>verify attribute value</a>
6849+ <var> value</var> for <var> attribute</var> , with <a>this</a> .
68466850
6847- <li><p> <a lt="change an attribute">Change</a> <var> attribute</var> to <var> value</var> .
6851+ <li><p> Set <var> attribute</var> 's <a for=Attr>value</a> to <var> verifiedValue</var> .
6852+
6853+ <li><p> Set <var> attributeExists</var> to true if <a>this</a> <a lt="has an attribute">has an
6854+ attribute</a> <var> attribute</var> ; otherwise false.
6855+
6856+ <li><p> If <var> attributeExists</var> is true, <a lt="change an attribute">change</a>
6857+ <var> attribute</var> to <var> value</var> .
6858+
6859+ <li><p> Otherwise <a lt="append an attribute">append</a> this <a>attribute</a> to <a>this</a> .
68486860</ol>
68496861
68506862<p> The
@@ -7414,7 +7426,13 @@ string <var>value</var>, run these steps:
74147426 <li><p> If <var> attribute</var> 's <a for=Attr>element</a> is null, then set <var>attribute</var>' s
74157427 <a for=Attr>value</a> to <var> value</var> .
74167428
7417- <li><p> Otherwise, <a lt="change an attribute">change</a> <var> attribute</var> to <var> value</var> .
7429+ <li><p> Otherwise:
7430+ <ol>
7431+ <li><p> Let <var> verifiedValue</var> be the result of calling <a>verify attribute value</a>
7432+ <var> value</var> for <var> attribute</var> , with <a>this</a> .
7433+
7434+ <li><p> <a lt="change an attribute">Change</a> <var> attribute</var> to <var> verifiedValue</var> .
7435+ </ol>
74187436</ol>
74197437
74207438<p> The {{Attr/value}} setter steps are to <a>set an existing attribute value</a> with <a>this</a>
0 commit comments