hixie: Make the implied </p> magic not cross <button> boundaries since doing that breaks a(n invalid) Ubuntu download page. Rename the 'phrasing' category to 'ordinary' since I keep forgetting that 'phrasing' is not an explicit list but is in fact an open-ended list. Merged the 'special' and 'scoping' categories since nothing distinguished them. (whatwg r5158)

hixie: Make the implied </p> magic not cross <button> boundaries since
doing that breaks a(n invalid) Ubuntu download page. Rename the
'phrasing' category to 'ordinary' since I keep forgetting that
'phrasing' is not an explicit list but is in fact an open-ended list.
Merged the 'special' and 'scoping' categories since nothing
distinguished them. (whatwg r5158)

http://dev.w3.org/cvsweb/html5/spec/Overview.html?r1=1.4113&r2=1.4114&f=h
http://html5.org/tools/web-apps-tracker?from=5157&to=5158

===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.4113
retrieving revision 1.4114
diff -u -d -r1.4113 -r1.4114
--- Overview.html 14 Jul 2010 02:02:47 -0000 1.4113
+++ Overview.html 14 Jul 2010 18:14:04 -0000 1.4114
@@ -52991,39 +52991,35 @@
 
   <dl><dt><dfn id="special">Special</dfn></dt>
    <dd><p>The following HTML elements have varying levels of special
-   parsing rules: <code><a href="#the-address-element">address</a></code>, <code><a href="#the-area-element">area</a></code>,
-   <code><a href="#the-article-element">article</a></code>, <code><a href="#the-aside-element">aside</a></code>, <code><a href="#the-base-element">base</a></code>,
-   <code><a href="#basefont">basefont</a></code>, <code><a href="#bgsound">bgsound</a></code>,
+   parsing rules: <code><a href="#the-address-element">address</a></code>, <code><a href="#the-applet-element">applet</a></code>,
+   <code><a href="#the-area-element">area</a></code>, <code><a href="#the-article-element">article</a></code>, <code><a href="#the-aside-element">aside</a></code>,
+   <code><a href="#the-base-element">base</a></code>, <code><a href="#basefont">basefont</a></code>, <code><a href="#bgsound">bgsound</a></code>,
    <code><a href="#the-blockquote-element">blockquote</a></code>, <code><a href="#the-body-element-0">body</a></code>, <code><a href="#the-br-element">br</a></code>,
-   <code><a href="#the-button-element">button</a></code>, <code><a href="#center">center</a></code>, <code><a href="#the-col-element">col</a></code>,
-   <code><a href="#the-colgroup-element">colgroup</a></code>, <code><a href="#the-command">command</a></code>, <!--v2DDATAGRID
-   <code>datagrid</code>-->, <code><a href="#the-dd-element">dd</a></code>, <code><a href="#the-details-element">details</a></code>,
-   <code><a href="#dir">dir</a></code>, <code><a href="#the-div-element">div</a></code>, <code><a href="#the-dl-element">dl</a></code>,
-   <code><a href="#the-dt-element">dt</a></code>, <code><a href="#the-embed-element">embed</a></code>, <code><a href="#the-fieldset-element">fieldset</a></code>,
-   <code><a href="#the-figure-element">figure</a></code>, <code><a href="#the-footer-element">footer</a></code>, <code><a href="#the-form-element">form</a></code>,
-   <code><a href="#frame">frame</a></code>, <code><a href="#frameset">frameset</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h1</a></code>,
-   <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h2</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h3</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h4</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h5</a></code>,
-   <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h6</a></code>, <code><a href="#the-head-element-0">head</a></code>, <code><a href="#the-header-element">header</a></code>,
-   <code><a href="#the-hgroup-element">hgroup</a></code>, <code><a href="#the-hr-element">hr</a></code>, <code><a href="#the-iframe-element">iframe</a></code>, <!--
+   <code><a href="#the-button-element">button</a></code>, <code><a href="#the-button-element">button</a></code>, <code><a href="#the-caption-element">caption</a></code>,
+   <code><a href="#center">center</a></code>, <code><a href="#the-col-element">col</a></code>, <code><a href="#the-colgroup-element">colgroup</a></code>,
+   <code><a href="#the-command">command</a></code>, <!--v2DDATAGRID <code>datagrid</code>,-->
+   <code><a href="#the-dd-element">dd</a></code>, <code><a href="#the-details-element">details</a></code>, <code><a href="#dir">dir</a></code>,
+   <code><a href="#the-div-element">div</a></code>, <code><a href="#the-dl-element">dl</a></code>, <code><a href="#the-dt-element">dt</a></code>,
+   <code><a href="#the-embed-element">embed</a></code>, <code><a href="#the-fieldset-element">fieldset</a></code>, <code><a href="#the-figure-element">figure</a></code>,
+   <code><a href="#the-footer-element">footer</a></code>, <code><a href="#the-form-element">form</a></code>, <code><a href="#frame">frame</a></code>,
+   <code><a href="#frameset">frameset</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h1</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h2</a></code>,
+   <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h3</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h4</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h5</a></code>, <code><a href="#the-h1-h2-h3-h4-h5-and-h6-elements">h6</a></code>,
+   <code><a href="#the-head-element-0">head</a></code>, <code><a href="#the-header-element">header</a></code>, <code><a href="#the-hgroup-element">hgroup</a></code>,
+   <code><a href="#the-hr-element">hr</a></code>, <code><a href="#the-html-element-0">html</a></code>, <code><a href="#the-iframe-element">iframe</a></code>, <!--
    <code>image</code>, (commented out because this isn't an element
    that can end up on the stack, so it doesn't matter) -->
    <code><a href="#the-img-element">img</a></code>, <code><a href="#the-input-element">input</a></code>, <code><a href="#isindex-0">isindex</a></code>,
    <code><a href="#the-li-element">li</a></code>, <code><a href="#the-link-element">link</a></code>, <code><a href="#listing">listing</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-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-tbody-element">tbody</a></code>, <code><a href="#the-textarea-element">textarea</a></code>, <code><a href="#the-tfoot-element">tfoot</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>, and <code><a href="#xmp">xmp</a></code>.</dd>
-
-   <dt><dfn id="scoping">Scoping</dfn></dt>
-   <dd><p>The following HTML elements introduce new <a href="#has-an-element-in-scope" title="has
-   an element in scope">scopes</a> for various parts of the
-   parsing: <code><a href="#the-applet-element">applet</a></code>, <code><a href="#the-caption-element">caption</a></code>,
-   <code><a href="#the-html-element-0">html</a></code>, <code><a href="#the-marquee-element">marquee</a></code>, <code><a href="#the-object-element">object</a></code>,
-   <code><a href="#the-table-element">table</a></code>, <code><a href="#the-td-element">td</a></code>, <code><a href="#the-th-element">th</a></code>, and SVG's
+   <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>
 
    <dt><dfn id="formatting">Formatting</dfn></dt>
@@ -53035,7 +53031,7 @@
    <code><a href="#strike">strike</a></code>, <code><a href="#the-strong-element">strong</a></code>, <code><a href="#tt">tt</a></code>, and
    <code><a href="#u">u</a></code>.</dd>
 
-   <dt><dfn id="phrasing">Phrasing</dfn></dt>
+   <dt><dfn id="ordinary">Ordinary</dfn></dt>
    <dd><p>All other elements found while parsing an HTML
    document.</dd>
 
@@ -53081,8 +53077,15 @@
    in scope</a></i> algorithm.</li>
    <li><code><a href="#the-ol-element">ol</a></code> in the HTML namespace</li>
    <li><code><a href="#the-ul-element">ul</a></code> in the HTML namespace</li>
-  </ul><p>The <a href="#stack-of-open-elements">stack of open elements</a> is said to <dfn id="has-an-element-in-table-scope" title="has an element in table scope">have an element in <em>table
-  scope</em></dfn> when it <a href="#has-an-element-in-the-specific-scope">has an element in the specific
+  </ul><p>The <a href="#stack-of-open-elements">stack of open elements</a> is said to <dfn id="has-an-element-in-button-scope" title="has an element in button scope">have an element in button
+  scope</dfn> when it <a href="#has-an-element-in-the-specific-scope">has an element in the specific
+  scope</a> consisting of the following element types:</p>
+
+  <ul class="brief"><li>All the element types listed above for the <i><a href="#has-an-element-in-scope">has an element
+   in scope</a></i> algorithm.</li>
+   <li><code><a href="#the-button-element">button</a></code> in the HTML namespace</li>
+  </ul><p>The <a href="#stack-of-open-elements">stack of open elements</a> is said to <dfn id="has-an-element-in-table-scope" title="has an element in table scope">have an element in table
+  scope</dfn> when it <a href="#has-an-element-in-the-specific-scope">has an element in the specific
   scope</a> consisting of the following element types:</p>
 
   <ul class="brief"><li><code><a href="#the-html-element-0">html</a></code> in the HTML namespace</li> <!-- (This can only happen if the <var title="">node</var> is the topmost node of the <span>stack of open elements</span>, and prevents the next step from being invoked if there are no more elements in the stack.) -->
@@ -56461,10 +56464,10 @@
     DOM nonsense, and thus should actually afford better compatibility
     when implemented by the other browsers. -->
 
-    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-    an element in scope">has a <code>p</code> element in
-    scope</a>, then act as if an end tag with the tag name
-    "p" had been seen.</p>
+    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has an
+    element in button scope">has a <code>p</code> element in button
+    scope</a>, then act as if an end tag with the tag name "p" had
+    been seen.</p>
 
     <p><a href="#insert-an-html-element">Insert an HTML element</a> for the token.</p>
 
@@ -56475,8 +56478,8 @@
    "h5", "h6"</dt>
    <dd>
 
-    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-    an element in scope">has a <code>p</code> element in
+    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has
+    an element in button scope">has a <code>p</code> element in button
     scope</a>, then act as if an end tag with the tag name
     "p" had been seen.</p>
 
@@ -56494,8 +56497,8 @@
    <dt>A start tag whose tag name is one of: "pre", "listing"</dt>
    <dd>
 
-    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-    an element in scope">has a <code>p</code> element in
+    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has
+    an element in button scope">has a <code>p</code> element in button
     scope</a>, then act as if an end tag with the tag name
     "p" had been seen.</p>
 
@@ -56523,8 +56526,8 @@
 
     <p>Otherwise:</p>
 
-    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-    an element in scope">has a <code>p</code> element in
+    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has
+    an element in button scope">has a <code>p</code> element in button
     scope</a>, then act as if an end tag with the tag name
     "p" had been seen.</p>
 
@@ -56551,7 +56554,7 @@
 
      <li><p>If <var title="">node</var> is not in the
      <a href="#formatting">formatting</a> category, and is not in the
-     <a href="#phrasing">phrasing</a> category, and is not an
+     <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:
@@ -56570,8 +56573,8 @@
 
       <p>This is the last step.</p>
 
-      <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-      an element in scope">has a <code>p</code> element in
+      <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has
+      an element in button scope">has a <code>p</code> element in button
       scope</a>, then act as if an end tag with the tag name
       "p" had been seen.</p>
 
@@ -56600,7 +56603,7 @@
 
      <li><p>If <var title="">node</var> is not in the
      <a href="#formatting">formatting</a> category, and is not in the
-     <a href="#phrasing">phrasing</a> category, and is not an
+     <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:
@@ -56619,8 +56622,8 @@
 
       <p>This is the last step.</p>
 
-      <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-      an element in scope">has a <code>p</code> element in
+      <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has
+      an element in button scope">has a <code>p</code> element in button
       scope</a>, then act as if an end tag with the tag name
       "p" had been seen.</p>
 
@@ -56635,8 +56638,8 @@
    <dt>A start tag whose tag name is "plaintext"</dt>
    <dd>
 
-    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-    an element in scope">has a <code>p</code> element in
+    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has
+    an element in button scope">has a <code>p</code> element in button
     scope</a>, then act as if an end tag with the tag name
     "p" had been seen.</p>
 
@@ -56732,10 +56735,10 @@
    <dt>An end tag whose tag name is "p"</dt>
    <dd>
 
-    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> does not <a href="#has-an-element-in-scope" title="has an element in scope">have an element in scope</a>
-    with the same tag name as that of the token, then this is a
-    <a href="#parse-error">parse error</a>; act as if a start tag with the tag name
-    "p" had been seen, then reprocess the current token.</p>
+    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> does not <a href="#has-an-element-in-button-scope" title="has an element in button scope">have an element in sbutton
+    cope</a> with the same tag name as that of the token, then this
+    is a <a href="#parse-error">parse error</a>; act as if a start tag with the tag
+    name "p" had been seen, then reprocess the current token.</p>
 
     <p>Otherwise, run these steps:</p>
 
@@ -56944,7 +56947,7 @@
      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="#phrasing">phrasing</a> or <a href="#formatting">formatting</a>
+     <a href="#ordinary">ordinary</a> or <a href="#formatting">formatting</a>
      categories. There might not be one.</li>
 
      <li><p>If there is no <var title="">furthest block</var>,
@@ -57100,12 +57103,12 @@
 
     <p>If the <code><a href="#document">Document</a></code> is <em>not</em> set to
     <a href="#quirks-mode">quirks mode</a>, and the <a href="#stack-of-open-elements">stack of open
-    elements</a> <a href="#has-an-element-in-scope" title="has an element in scope">has a
-    <code>p</code> element in scope</a>, then act as if an end tag
-    with the tag name "p" had been seen.</p> <!-- i hate myself (this
-    quirk was basically caused by acid2; if i'd realised we could
-    change the specs when i wrote acid2, we could have avoided having
-    any parsing-mode quirks) -Hixie -->
+    elements</a> <a href="#has-an-element-in-button-scope" title="has an element in button scope">has a
+    <code>p</code> element in button scope</a>, then act as if an
+    end tag with the tag name "p" had been seen.</p> <!-- i hate
+    myself (this quirk was basically caused by acid2; if i'd realised
+    we could change the specs when i wrote acid2, we could have
+    avoided having any parsing-mode quirks) -Hixie -->
 
     <p><a href="#insert-an-html-element">Insert an HTML element</a> for the token.</p>
 
@@ -57149,8 +57152,8 @@
    <dt>A start tag whose tag name is "hr"</dt>
    <dd>
 
-    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-    an element in scope">has a <code>p</code> element in
+    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has
+    an element in button scope">has a <code>p</code> element in button
     scope</a>, then act as if an end tag with the tag name
     "p" had been seen.</p>
 
@@ -57263,8 +57266,8 @@
    <dt>A start tag whose tag name is "xmp"</dt>
    <dd>
 
-    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-scope" title="has
-    an element in scope">has a <code>p</code> element in
+    <p>If the <a href="#stack-of-open-elements">stack of open elements</a> <a href="#has-an-element-in-button-scope" title="has
+    an element in button scope">has a <code>p</code> element in button
     scope</a>, then act as if an end tag with the tag name
     "p" had been seen.</p>
 
@@ -57469,7 +57472,7 @@
 
     <p><a href="#insert-an-html-element">Insert an HTML element</a> for the token.</p>
 
-    <p class="note">This element will be a <a href="#phrasing">phrasing</a>
+    <p class="note">This element will be a <a href="#ordinary">ordinary</a>
     element.</p>
 
    </dd>
@@ -57497,7 +57500,7 @@
       </ol></li>
 
      <li><p>Otherwise, if <var title="">node</var> is in neither the
-     <a href="#formatting">formatting</a> category nor the <a href="#phrasing">phrasing</a>
+     <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>

Received on Wednesday, 14 July 2010 18:14:51 UTC