[html5] r5162 - [giow] (2) Change the 'end tag' processing to not imply its own end tag, since t [...]
whatwg at whatwg.org
whatwg at whatwg.org
Wed Jul 14 12:14:39 PDT 2010
Author: ianh
Date: 2010-07-14 12:14:38 -0700 (Wed, 14 Jul 2010)
New Revision: 5162
Modified:
complete.html
index
source
Log:
[giow] (2) Change the 'end tag' processing to not imply its own end tag, since that makes no sense. (Only affects parsing of rp and rt elements.) Also clean up the way categories are references to avoid too many negatives, and put option and optgroup in the 'special' category (should have no effect in practice). And make a loop use a label rather than jumping to a numbered step.
Fixing http://www.w3.org/Bugs/Public/show_bug.cgi?id=10080
Modified: complete.html
===================================================================
--- complete.html 2010-07-14 19:04:44 UTC (rev 5161)
+++ complete.html 2010-07-14 19:14:38 UTC (rev 5162)
@@ -78208,14 +78208,14 @@
<code><a href=#the-marquee-element>marquee</a></code>, <code><a href=#menus>menu</a></code>, <code><a href=#meta>meta</a></code>,
<code><a href=#the-nav-element>nav</a></code>, <code><a href=#noembed>noembed</a></code>, <code><a href=#noframes>noframes</a></code>,
<code><a href=#the-noscript-element>noscript</a></code>, <code><a href=#the-object-element>object</a></code>, <code><a href=#the-ol-element>ol</a></code>,
- <code><a href=#the-p-element>p</a></code>, <code><a href=#the-param-element>param</a></code>, <code><a href=#plaintext>plaintext</a></code>,
- <code><a href=#the-pre-element>pre</a></code>, <code><a href=#script>script</a></code>, <code><a href=#the-section-element>section</a></code>,
- <code><a href=#the-select-element>select</a></code>, <code><a href=#the-style-element>style</a></code>, <code><a href=#the-table-element>table</a></code>,
- <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-td-element>td</a></code>, <code><a href=#the-textarea-element>textarea</a></code>,
- <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-th-element>th</a></code>, <code><a href=#the-thead-element>thead</a></code>,
- <code><a href=#the-title-element-0>title</a></code>, <code><a href=#the-tr-element>tr</a></code>, <code><a href=#the-ul-element>ul</a></code>,
- <code><a href=#the-wbr-element>wbr</a></code>, <code><a href=#xmp>xmp</a></code>, and SVG's
- <code>foreignObject</code>.</dd>
+ <code><a href=#the-optgroup-element>optgroup</a></code>, <code><a href=#the-option-element>option</a></code>, <code><a href=#the-p-element>p</a></code>,
+ <code><a href=#the-param-element>param</a></code>, <code><a href=#plaintext>plaintext</a></code>, <code><a href=#the-pre-element>pre</a></code>,
+ <code><a href=#script>script</a></code>, <code><a href=#the-section-element>section</a></code>, <code><a href=#the-select-element>select</a></code>,
+ <code><a href=#the-style-element>style</a></code>, <code><a href=#the-table-element>table</a></code>, <code><a href=#the-tbody-element>tbody</a></code>,
+ <code><a href=#the-td-element>td</a></code>, <code><a href=#the-textarea-element>textarea</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>,
+ <code><a href=#the-th-element>th</a></code>, <code><a href=#the-thead-element>thead</a></code>, <code><a href=#the-title-element-0>title</a></code>,
+ <code><a href=#the-tr-element>tr</a></code>, <code><a href=#the-ul-element>ul</a></code>, <code><a href=#the-wbr-element>wbr</a></code>,
+ <code><a href=#xmp>xmp</a></code>, and SVG's <code>foreignObject</code>.</dd>
<dt><dfn id=formatting>Formatting</dfn></dt>
<dd><p>The following HTML elements are those that end up in the
@@ -81761,12 +81761,10 @@
<code><a href=#the-li-element>li</a></code> element, then act as if an end tag with the tag
name "li" had been seen, then jump to the last step.</li>
- <li><p>If <var title="">node</var> is not in the
- <a href=#formatting>formatting</a> category, and is not in the
- <a href=#ordinary>ordinary</a> category, and is not an
- <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>, or <code><a href=#the-p-element>p</a></code>
- element, then jump to the last step.</li> <!-- an element
- <foo> is in this list if the following markup:
+ <li><p>If <var title="">node</var> is in the <a href=#special>special</a>
+ category, but is not an <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>,
+ or <code><a href=#the-p-element>p</a></code> element, then jump to the last step.</li>
+ <!-- an element <foo> is in this list if the following markup:
<!DOCTYPE html><body><ol><li><foo><li>
@@ -81810,12 +81808,10 @@
tag with the same tag name as <var title="">node</var> had been
seen, then jump to the last step.</li>
- <li><p>If <var title="">node</var> is not in the
- <a href=#formatting>formatting</a> category, and is not in the
- <a href=#ordinary>ordinary</a> category, and is not an
- <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>, or <code><a href=#the-p-element>p</a></code>
- element, then jump to the last step.</li> <!-- an element
- <foo> is in this list if the following markup:
+ <li><p>If <var title="">node</var> is in the <a href=#special>special</a>
+ category, but is not an <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>,
+ or <code><a href=#the-p-element>p</a></code> element, then jump to the last step.</li>
+ <!-- an element <foo> is in this list if the following markup:
<!DOCTYPE html><body><dl><dt><foo><dt>
@@ -82152,12 +82148,11 @@
</li>
- <li><p>Let the <var title="">furthest block</var> be the
- topmost node in the <a href=#stack-of-open-elements>stack of open elements</a> that
- is lower in the stack than the <var title="">formatting
- element</var>, and is not an element in the
- <a href=#ordinary>ordinary</a> or <a href=#formatting>formatting</a>
- categories. There might not be one.</li>
+ <li><p>Let the <var title="">furthest block</var> be the topmost
+ node in the <a href=#stack-of-open-elements>stack of open elements</a> that is lower in
+ the stack than the <var title="">formatting element</var>, and is
+ an element in the <a href=#special>special</a> category. There might not
+ be one.</li>
<li><p>If there is no <var title="">furthest block</var>,
then the UA must skip the subsequent steps and instead just
@@ -82694,10 +82689,11 @@
<ol><li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current
node</a> (the bottommost node of the stack).</li>
- <li><p>If <var title="">node</var> has the same tag name as
- the token, then:</p>
+ <li><p><i>Loop</i>: If <var title="">node</var> has the same tag
+ name as the token, then:</p>
- <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</li>
+ <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>, except
+ for elements with the same tag name as the token.</li>
<li><p>If the tag name of the end tag token does not match
the tag name of the <a href=#current-node>current node</a>, this is a
@@ -82708,15 +82704,14 @@
</ol></li>
- <li><p>Otherwise, if <var title="">node</var> is in neither the
- <a href=#formatting>formatting</a> category nor the <a href=#ordinary>ordinary</a>
- category, then this is a <a href=#parse-error>parse error</a>; ignore the
- token, and abort these steps.</li>
+ <li><p>Otherwise, if <var title="">node</var> is in the
+ <a href=#special>special</a> category, then this is a <a href=#parse-error>parse
+ error</a>; ignore the token, and abort these steps.</li>
<li><p>Set <var title="">node</var> to the previous entry in the
<a href=#stack-of-open-elements>stack of open elements</a>.</li>
- <li><p>Return to step 2.</li>
+ <li><p>Return to the step labeld <i>loop</i>.</li>
</ol></dd>
Modified: index
===================================================================
--- index 2010-07-14 19:04:44 UTC (rev 5161)
+++ index 2010-07-14 19:14:38 UTC (rev 5162)
@@ -71449,14 +71449,14 @@
<code><a href=#the-marquee-element>marquee</a></code>, <code><a href=#menus>menu</a></code>, <code><a href=#meta>meta</a></code>,
<code><a href=#the-nav-element>nav</a></code>, <code><a href=#noembed>noembed</a></code>, <code><a href=#noframes>noframes</a></code>,
<code><a href=#the-noscript-element>noscript</a></code>, <code><a href=#the-object-element>object</a></code>, <code><a href=#the-ol-element>ol</a></code>,
- <code><a href=#the-p-element>p</a></code>, <code><a href=#the-param-element>param</a></code>, <code><a href=#plaintext>plaintext</a></code>,
- <code><a href=#the-pre-element>pre</a></code>, <code><a href=#script>script</a></code>, <code><a href=#the-section-element>section</a></code>,
- <code><a href=#the-select-element>select</a></code>, <code><a href=#the-style-element>style</a></code>, <code><a href=#the-table-element>table</a></code>,
- <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-td-element>td</a></code>, <code><a href=#the-textarea-element>textarea</a></code>,
- <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-th-element>th</a></code>, <code><a href=#the-thead-element>thead</a></code>,
- <code><a href=#the-title-element-0>title</a></code>, <code><a href=#the-tr-element>tr</a></code>, <code><a href=#the-ul-element>ul</a></code>,
- <code><a href=#the-wbr-element>wbr</a></code>, <code><a href=#xmp>xmp</a></code>, and SVG's
- <code>foreignObject</code>.</dd>
+ <code><a href=#the-optgroup-element>optgroup</a></code>, <code><a href=#the-option-element>option</a></code>, <code><a href=#the-p-element>p</a></code>,
+ <code><a href=#the-param-element>param</a></code>, <code><a href=#plaintext>plaintext</a></code>, <code><a href=#the-pre-element>pre</a></code>,
+ <code><a href=#script>script</a></code>, <code><a href=#the-section-element>section</a></code>, <code><a href=#the-select-element>select</a></code>,
+ <code><a href=#the-style-element>style</a></code>, <code><a href=#the-table-element>table</a></code>, <code><a href=#the-tbody-element>tbody</a></code>,
+ <code><a href=#the-td-element>td</a></code>, <code><a href=#the-textarea-element>textarea</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>,
+ <code><a href=#the-th-element>th</a></code>, <code><a href=#the-thead-element>thead</a></code>, <code><a href=#the-title-element-0>title</a></code>,
+ <code><a href=#the-tr-element>tr</a></code>, <code><a href=#the-ul-element>ul</a></code>, <code><a href=#the-wbr-element>wbr</a></code>,
+ <code><a href=#xmp>xmp</a></code>, and SVG's <code>foreignObject</code>.</dd>
<dt><dfn id=formatting>Formatting</dfn></dt>
<dd><p>The following HTML elements are those that end up in the
@@ -75002,12 +75002,10 @@
<code><a href=#the-li-element>li</a></code> element, then act as if an end tag with the tag
name "li" had been seen, then jump to the last step.</li>
- <li><p>If <var title="">node</var> is not in the
- <a href=#formatting>formatting</a> category, and is not in the
- <a href=#ordinary>ordinary</a> category, and is not an
- <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>, or <code><a href=#the-p-element>p</a></code>
- element, then jump to the last step.</li> <!-- an element
- <foo> is in this list if the following markup:
+ <li><p>If <var title="">node</var> is in the <a href=#special>special</a>
+ category, but is not an <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>,
+ or <code><a href=#the-p-element>p</a></code> element, then jump to the last step.</li>
+ <!-- an element <foo> is in this list if the following markup:
<!DOCTYPE html><body><ol><li><foo><li>
@@ -75051,12 +75049,10 @@
tag with the same tag name as <var title="">node</var> had been
seen, then jump to the last step.</li>
- <li><p>If <var title="">node</var> is not in the
- <a href=#formatting>formatting</a> category, and is not in the
- <a href=#ordinary>ordinary</a> category, and is not an
- <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>, or <code><a href=#the-p-element>p</a></code>
- element, then jump to the last step.</li> <!-- an element
- <foo> is in this list if the following markup:
+ <li><p>If <var title="">node</var> is in the <a href=#special>special</a>
+ category, but is not an <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>,
+ or <code><a href=#the-p-element>p</a></code> element, then jump to the last step.</li>
+ <!-- an element <foo> is in this list if the following markup:
<!DOCTYPE html><body><dl><dt><foo><dt>
@@ -75393,12 +75389,11 @@
</li>
- <li><p>Let the <var title="">furthest block</var> be the
- topmost node in the <a href=#stack-of-open-elements>stack of open elements</a> that
- is lower in the stack than the <var title="">formatting
- element</var>, and is not an element in the
- <a href=#ordinary>ordinary</a> or <a href=#formatting>formatting</a>
- categories. There might not be one.</li>
+ <li><p>Let the <var title="">furthest block</var> be the topmost
+ node in the <a href=#stack-of-open-elements>stack of open elements</a> that is lower in
+ the stack than the <var title="">formatting element</var>, and is
+ an element in the <a href=#special>special</a> category. There might not
+ be one.</li>
<li><p>If there is no <var title="">furthest block</var>,
then the UA must skip the subsequent steps and instead just
@@ -75935,10 +75930,11 @@
<ol><li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current
node</a> (the bottommost node of the stack).</li>
- <li><p>If <var title="">node</var> has the same tag name as
- the token, then:</p>
+ <li><p><i>Loop</i>: If <var title="">node</var> has the same tag
+ name as the token, then:</p>
- <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</li>
+ <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>, except
+ for elements with the same tag name as the token.</li>
<li><p>If the tag name of the end tag token does not match
the tag name of the <a href=#current-node>current node</a>, this is a
@@ -75949,15 +75945,14 @@
</ol></li>
- <li><p>Otherwise, if <var title="">node</var> is in neither the
- <a href=#formatting>formatting</a> category nor the <a href=#ordinary>ordinary</a>
- category, then this is a <a href=#parse-error>parse error</a>; ignore the
- token, and abort these steps.</li>
+ <li><p>Otherwise, if <var title="">node</var> is in the
+ <a href=#special>special</a> category, then this is a <a href=#parse-error>parse
+ error</a>; ignore the token, and abort these steps.</li>
<li><p>Set <var title="">node</var> to the previous entry in the
<a href=#stack-of-open-elements>stack of open elements</a>.</li>
- <li><p>Return to step 2.</li>
+ <li><p>Return to the step labeld <i>loop</i>.</li>
</ol></dd>
Modified: source
===================================================================
--- source 2010-07-14 19:04:44 UTC (rev 5161)
+++ source 2010-07-14 19:14:38 UTC (rev 5162)
@@ -89308,14 +89308,14 @@
<code>marquee</code>, <code>menu</code>, <code>meta</code>,
<code>nav</code>, <code>noembed</code>, <code>noframes</code>,
<code>noscript</code>, <code>object</code>, <code>ol</code>,
- <code>p</code>, <code>param</code>, <code>plaintext</code>,
- <code>pre</code>, <code>script</code>, <code>section</code>,
- <code>select</code>, <code>style</code>, <code>table</code>,
- <code>tbody</code>, <code>td</code>, <code>textarea</code>,
- <code>tfoot</code>, <code>th</code>, <code>thead</code>,
- <code>title</code>, <code>tr</code>, <code>ul</code>,
- <code>wbr</code>, <code>xmp</code>, and SVG's
- <code>foreignObject</code>.</p></dd>
+ <code>optgroup</code>, <code>option</code>, <code>p</code>,
+ <code>param</code>, <code>plaintext</code>, <code>pre</code>,
+ <code>script</code>, <code>section</code>, <code>select</code>,
+ <code>style</code>, <code>table</code>, <code>tbody</code>,
+ <code>td</code>, <code>textarea</code>, <code>tfoot</code>,
+ <code>th</code>, <code>thead</code>, <code>title</code>,
+ <code>tr</code>, <code>ul</code>, <code>wbr</code>,
+ <code>xmp</code>, and SVG's <code>foreignObject</code>.</p></dd>
<dt><dfn>Formatting</dfn></dt>
<dd><p>The following HTML elements are those that end up in the
@@ -93363,12 +93363,10 @@
<code>li</code> element, then act as if an end tag with the tag
name "li" had been seen, then jump to the last step.</p></li>
- <li><p>If <var title="">node</var> is not in the
- <span>formatting</span> category, and is not in the
- <span>ordinary</span> category, and is not an
- <code>address</code>, <code>div</code>, or <code>p</code>
- element, then jump to the last step.</p></li> <!-- an element
- <foo> is in this list if the following markup:
+ <li><p>If <var title="">node</var> is in the <span>special</span>
+ category, but is not an <code>address</code>, <code>div</code>,
+ or <code>p</code> element, then jump to the last step.</p></li>
+ <!-- an element <foo> is in this list if the following markup:
<!DOCTYPE html><body><ol><li><foo><li>
@@ -93416,12 +93414,10 @@
tag with the same tag name as <var title="">node</var> had been
seen, then jump to the last step.</p></li>
- <li><p>If <var title="">node</var> is not in the
- <span>formatting</span> category, and is not in the
- <span>ordinary</span> category, and is not an
- <code>address</code>, <code>div</code>, or <code>p</code>
- element, then jump to the last step.</p></li> <!-- an element
- <foo> is in this list if the following markup:
+ <li><p>If <var title="">node</var> is in the <span>special</span>
+ category, but is not an <code>address</code>, <code>div</code>,
+ or <code>p</code> element, then jump to the last step.</p></li>
+ <!-- an element <foo> is in this list if the following markup:
<!DOCTYPE html><body><dl><dt><foo><dt>
@@ -93797,12 +93793,11 @@
</li>
- <li><p>Let the <var title="">furthest block</var> be the
- topmost node in the <span>stack of open elements</span> that
- is lower in the stack than the <var title="">formatting
- element</var>, and is not an element in the
- <span>ordinary</span> or <span>formatting</span>
- categories. There might not be one.</p></li>
+ <li><p>Let the <var title="">furthest block</var> be the topmost
+ node in the <span>stack of open elements</span> that is lower in
+ the stack than the <var title="">formatting element</var>, and is
+ an element in the <span>special</span> category. There might not
+ be one.</p></li>
<li><p>If there is no <var title="">furthest block</var>,
then the UA must skip the subsequent steps and instead just
@@ -94369,12 +94364,13 @@
<li><p>Initialize <var title="">node</var> to be the <span>current
node</span> (the bottommost node of the stack).</p></li>
- <li><p>If <var title="">node</var> has the same tag name as
- the token, then:</p>
+ <li><p><i>Loop</i>: If <var title="">node</var> has the same tag
+ name as the token, then:</p>
<ol>
- <li><p><span>Generate implied end tags</span>.</p></li>
+ <li><p><span>Generate implied end tags</span>, except
+ for elements with the same tag name as the token.</p></li>
<li><p>If the tag name of the end tag token does not match
the tag name of the <span>current node</span>, this is a
@@ -94388,15 +94384,14 @@
</li>
- <li><p>Otherwise, if <var title="">node</var> is in neither the
- <span>formatting</span> category nor the <span>ordinary</span>
- category, then this is a <span>parse error</span>; ignore the
- token, and abort these steps.</p></li>
+ <li><p>Otherwise, if <var title="">node</var> is in the
+ <span>special</span> category, then this is a <span>parse
+ error</span>; ignore the token, and abort these steps.</p></li>
<li><p>Set <var title="">node</var> to the previous entry in the
<span>stack of open elements</span>.</p></li>
- <li><p>Return to step 2.</p></li>
+ <li><p>Return to the step labeld <i>loop</i>.</p></li>
</ol>
More information about the Commit-Watchers
mailing list