[html5] r1837 - [cgiowt] (2) Make <svg:foreignObject> scoping. (bug 5815) (credit: hs)

whatwg at whatwg.org whatwg at whatwg.org
Mon Jun 30 17:19:03 PDT 2008


Author: ianh
Date: 2008-06-30 17:19:02 -0700 (Mon, 30 Jun 2008)
New Revision: 1837

Modified:
   index
   source
Log:
[cgiowt] (2) Make <svg:foreignObject> scoping. (bug 5815) (credit: hs)

Modified: index
===================================================================
--- index	2008-07-01 00:08:33 UTC (rev 1836)
+++ index	2008-07-01 00:19:02 UTC (rev 1837)
@@ -44070,8 +44070,8 @@
      <code><a href="#caption0">caption</a></code>, <code><a
      href="#html">html</a></code>, <code>marquee</code>, <code><a
      href="#object">object</a></code>, <code><a
-     href="#table">table</a></code>, <code><a href="#td">td</a></code> and
-     <code><a href="#th">th</a></code>.
+     href="#table">table</a></code>, <code><a href="#td">td</a></code>,
+     <code><a href="#th">th</a></code>, and SVG's <code>foreignObject</code>.
 
    <dt><dfn id=formatting>Formatting</dfn>
 
@@ -44101,9 +44101,7 @@
 
   <p>The <a href="#stack">stack of open elements</a> is said to <dfn
    id=have-an title="has an element in scope">have an element in scope</dfn>
-   or <dfn id=have-an0 title="has an element in table scope">have an element
-   in <em>table scope</em></dfn> when the following algorithm terminates in a
-   match state:
+   when the following algorithm terminates in a match state:
 
   <ol>
    <li>
@@ -44115,44 +44113,71 @@
      state.
 
    <li>
-    <p>Otherwise, if <var title="">node</var> is a <code><a
-     href="#table">table</a></code> element, terminate in a failure state.
+    <p>Otherwise, if <var title="">node</var> is one of the following
+     elements, terminate in a failure state:</p>
 
-   <li>
-    <p>Otherwise, if the algorithm is the "has an element in scope" variant
-     (rather than the "has an element in table scope" variant), and <var
-     title="">node</var> is one of the following, terminate in a failure
-     state:</p>
-
     <ul class=brief>
-     <li><code><a href="#applet">applet</a></code>
+     <li><code><a href="#applet">applet</a></code> in the HTML namespace
 
-     <li><code><a href="#caption0">caption</a></code>
+     <li><code><a href="#caption0">caption</a></code> in the HTML namespace
 
-     <li><code><a href="#td">td</a></code>
+     <li><code><a href="#html">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.) -->
 
-     <li><code><a href="#th">th</a></code>
+     <li><code><a href="#table">table</a></code> in the HTML namespace
 
-     <li><code>button</code>
+     <li><code><a href="#td">td</a></code> in the HTML namespace
 
-     <li><code>marquee</code>
+     <li><code><a href="#th">th</a></code> in the HTML namespace
 
-     <li><code><a href="#object">object</a></code>
+     <li><code>button</code> in the HTML namespace
+
+     <li><code>marquee</code> in the HTML namespace
+
+     <li><code><a href="#object">object</a></code> in the HTML namespace
+
+     <li><code title="">foreignObject</code> in the SVG namespace
     </ul>
 
    <li>
-    <p>Otherwise, if <var title="">node</var> is an <code><a
-     href="#html">html</a></code> element, terminate in a failure state.
-     (This can only happen if the <var title="">node</var> is the topmost
-     node of the <a href="#stack">stack of open elements</a>, and prevents
-     the next step from being invoked if there are no more elements in the
-     stack.)
+    <p>Otherwise, set <var title="">node</var> to the previous entry in the
+     <a href="#stack">stack of open elements</a> and return to step 2. (This
+     will never fail, since the loop will always terminate in the previous
+     step if the top of the stack — an <code><a
+     href="#html">html</a></code> element — is reached.)
+  </ol>
 
+  <p>The <a href="#stack">stack of open elements</a> is said to <dfn
+   id=have-an0 title="has an element in table scope">have an element in
+   <em>table scope</em></dfn> when the following algorithm terminates in a
+   match state:
+
+  <ol>
    <li>
+    <p>Initialise <var title="">node</var> to be the <a
+     href="#current5">current node</a> (the bottommost node of the stack).
+
+   <li>
+    <p>If <var title="">node</var> is the target node, terminate in a match
+     state.
+
+   <li>
+    <p>Otherwise, if <var title="">node</var> is one of the following
+     elements, terminate in a failure state:</p>
+
+    <ul class=brief>
+     <li><code><a href="#html">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.) -->
+
+     <li><code><a href="#table">table</a></code> in the HTML namespace
+    </ul>
+
+   <li>
     <p>Otherwise, set <var title="">node</var> to the previous entry in the
      <a href="#stack">stack of open elements</a> and return to step 2. (This
      will never fail, since the loop will always terminate in the previous
-     step if the top of the stack is reached.)
+     step if the top of the stack — an <code><a
+     href="#html">html</a></code> element — is reached.)
   </ol>
 
   <p>Nothing happens if at any time any of the elements in the <a

Modified: source
===================================================================
--- source	2008-07-01 00:08:33 UTC (rev 1836)
+++ source	2008-07-01 00:19:02 UTC (rev 1837)
@@ -41610,8 +41610,8 @@
    an element in scope">scopes</span> for various parts of the
    parsing: <code>applet</code>, <code>button</code>,
    <code>caption</code>, <code>html</code>, <code>marquee</code>,
-   <code>object</code>, <code>table</code>, <code>td</code> and
-   <code>th</code>.</p></dd>
+   <code>object</code>, <code>table</code>, <code>td</code>,
+   <code>th</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
@@ -41634,48 +41634,68 @@
   <code>command</code></p>
 
   <p>The <span>stack of open elements</span> is said to <dfn
-  title="has an element in scope">have an element in scope</dfn> or
-  <dfn title="has an element in table scope">have an element in
-  <em>table scope</em></dfn> when the following algorithm terminates
-  in a match state:</p>
+  title="has an element in scope">have an element in scope</dfn> when
+  the following algorithm terminates in a match state:</p>
 
   <ol>
 
    <li><p>Initialise <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> is the target node, terminate in a match
-   state.</p></li>
+   <li><p>If <var title="">node</var> is the target node, terminate in
+   a match state.</p></li>
 
-   <li><p>Otherwise, if <var title="">node</var> is a <code>table</code>
-   element, terminate in a failure state.</p></li>
+   <li><p>Otherwise, if <var title="">node</var> is one of the
+   following elements, terminate in a failure state:</p>
+    <ul class="brief">
+     <li><code>applet</code> in the HTML namespace</li>
+     <li><code>caption</code> in the HTML namespace</li>
+     <li><code>html</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.) -->
+     <li><code>table</code> in the HTML namespace</li>
+     <li><code>td</code> in the HTML namespace</li>
+     <li><code>th</code> in the HTML namespace</li>
+     <li><code>button</code> in the HTML namespace</li>
+     <li><code>marquee</code> in the HTML namespace</li>
+     <li><code>object</code> in the HTML namespace</li>
+     <li><code title="">foreignObject</code> in the SVG namespace</li>
+    </ul>
+   </li>
 
-   <li><p>Otherwise, if the algorithm is the "has an element in scope"
-   variant (rather than the "has an element in table scope" variant),
-   and <var title="">node</var> is one of the following, terminate in a failure
-   state:</p>
+   <li><p>Otherwise, set <var title="">node</var> to the previous
+   entry in the <span>stack of open elements</span> and return to step
+   2. (This will never fail, since the loop will always terminate in
+   the previous step if the top of the stack — an
+   <code>html</code> element — is reached.)</p></li>
+
+  </ol>
+
+  <p>The <span>stack of open elements</span> is said to <dfn
+  title="has an element in table scope">have an element in <em>table
+  scope</em></dfn> when the following algorithm terminates in a match
+  state:</p>
+
+  <ol>
+
+   <li><p>Initialise <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> is the target node, terminate in
+   a match state.</p></li>
+
+   <li><p>Otherwise, if <var title="">node</var> is one of the
+   following elements, terminate in a failure state:</p>
     <ul class="brief">
-     <li><code>applet</code></li>
-     <li><code>caption</code></li>
-     <li><code>td</code></li>
-     <li><code>th</code></li>
-     <li><code>button</code></li>
-     <li><code>marquee</code></li>
-     <li><code>object</code></li>
+     <li><code>html</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.) -->
+     <li><code>table</code> in the HTML namespace</li>
     </ul>
    </li>
 
-   <li><p>Otherwise, if <var title="">node</var> is an <code>html</code>
-   element, terminate in a failure state. (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.)</p></li>
+   <li><p>Otherwise, set <var title="">node</var> to the previous
+   entry in the <span>stack of open elements</span> and return to step
+   2. (This will never fail, since the loop will always terminate in
+   the previous step if the top of the stack — an
+   <code>html</code> element — is reached.)</p></li>
 
-   <li><p>Otherwise, set <var title="">node</var> to the previous entry in the
-   <span>stack of open elements</span> and return to step 2. (This
-   will never fail, since the loop will always terminate in the
-   previous step if the top of the stack is reached.)</p></li>
-
   </ol>
 
   <p>Nothing happens if at any time any of the elements in the




More information about the Commit-Watchers mailing list