HTML Standard Tracker

Diff (omit for latest revision)
Filter

Short URL: http://html5.org/r/2904

File a bug

SVNBugCommentTime (UTC)
2904SVG in text/html: Second try, based on more recent feedback.2009-03-25 00:34
Index: source
===================================================================
--- source	(revision 2903)
+++ source	(revision 2904)
@@ -7210,7 +7210,8 @@
     <span title="the head element"><code>head</code> element</span>,
     the new value is ignored.</p>
     <p>In SVG documents, the <code>SVGDocument</code> interface's
-    <code title="">title</code> attribute takes precedence.</p>
+    <code title="dom-svg-title">title</code> attribute takes
+    precedence.</p>
    </dd>
 
   </dl>
@@ -11381,9 +11382,10 @@
    <dt>The style sheet title (<code title="dom-stylesheet-title">title</code> DOM attribute)</dt>
 
    <dd><p>The title must be the same as the value of the element's
-   <code title="">title</code> content attribute. If the attribute is
-   absent, then the style sheet does not have a title. The title is
-   used for defining <dfn>alternative style sheet sets</dfn>.</p></dd>
+   <code title="dom-title">title</code> content attribute. If the
+   attribute is absent, then the style sheet does not have a
+   title. The title is used for defining <dfn>alternative style sheet
+   sets</dfn>.</p></dd>
 
   </dl>
 
@@ -27642,11 +27644,17 @@
   </div>
 
   <p>When the SVG <code>foreignObject</code> element contains elements
-  from the HTML namespace, such elements must all be <span>flow
-  content</span> and must not be interleaved with non-HTML
+  from the <span>HTML namespace</span>, such elements must all be
+  <span>flow content</span> and must not be interleaved with non-HTML
   elements. <a href="#refsSVG">[SVG]</a></p>
 
+  <p>The content model for <code title="">title</code> elements in the
+  <span>SVG namespace</span> inside <span>HTML documents</span> is
+  <span>phrasing content</span>. (This further constrains the
+  requirements given in the SVG specification.)</p>
 
+
+
   <h4><dfn>Dimension attributes</dfn></h4>
 
   <p><strong class="impl">Author requirements:</strong> The <dfn
@@ -62325,9 +62333,7 @@
    <dt>Foreign elements</dt>
 
    <dd>Elements from the <span>MathML namespace</span>
-<!--XXXSVG
    and the <span>SVG namespace</span>.</dd>
--->
 
    <dt>Normal elements</dt>
 
@@ -63835,12 +63841,11 @@
    steps.</li>
 
    <li>If <var title="">node</var> is an element from the <span>MathML
-   namespace</span><!--XXXSVG or the <span>SVG namespace</span>-->,
-   then switch the <span>insertion mode</span> to "<span
-   title="insertion mode: in foreign content">in foreign
-   content</span>", let the <span>secondary insertion mode</span> be
-   "<span title="insertion mode: in body">in body</span>", and abort
-   these steps.</li>
+   namespace</span> or the <span>SVG namespace</span>, then switch the
+   <span>insertion mode</span> to "<span title="insertion mode: in
+   foreign content">in foreign content</span>", let the
+   <span>secondary insertion mode</span> be "<span title="insertion
+   mode: in body">in body</span>", and abort these steps.</li>
 
    <li>If <var title="">node</var> is a <code>head</code> element,
    then switch the <span>insertion mode</span> to "<span
@@ -63969,7 +63974,7 @@
    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>,
-   <code>th</code><!--XXXSVG, and SVG's <code>foreignObject</code>-->.</p></dd>
+   <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
@@ -64010,7 +64015,7 @@
      <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>
-<!--XXXSVG     <li><code title="">foreignObject</code> in the SVG namespace</li>-->
+     <li><code title="">foreignObject</code> in the SVG namespace</li>
     </ul>
    </li>
 
@@ -65819,7 +65824,6 @@
   named <code title="">definitionurl</code>, change its name to <code
   title="">definitionURL</code> (note the case difference).</p>
 
-<!--XXXSVG
   <p>When the steps below require the user agent to <dfn>adjust SVG
   attributes</dfn> for a token, then, for each attribute on the token
   whose attribute name is one of the ones in the first column of the
@@ -65894,7 +65898,6 @@
     <tr> <td> <code title="">ychannelselector</code> <td> <code title="">yChannelSelector</code>
     <tr> <td> <code title="">zoomandpan</code> <td> <code title="">zoomAndPan</code>
   </table>
--->
 
   <p>When the steps below require the user agent to <dfn>adjust
   foreign attributes</dfn> for a token, then, if any of the attributes
@@ -67855,7 +67858,7 @@
     foreign content">in foreign content</span>".</p>
 
    </dd>
-<!--XXXSVG
+
    <dt>A start tag whose tag name is "svg"</dt>
    <dd>
 
@@ -67883,7 +67886,6 @@
     foreign content">in foreign content</span>".</p>
 
    </dd>
--->
 
    <dt>A start <!--or end--> tag whose tag name is one of: "caption",
    "col", "colgroup", "frame", "head", "tbody", "td", "tfoot", "th",
@@ -68030,11 +68032,10 @@
     one. If the parser's <span>script nesting level</span> is zero,
     then set the <span>parser pause flag</span> to false.</p>
 
-    <p>Let the <span>insertion point</span> have the value of the
-    <var title="">old insertion point</var>. (In other words,
-    restore the <span>insertion point</span> to the value it had
-    before the previous paragraph. This value might be the
-    "undefined" value.)</p>
+    <p>Let the <span>insertion point</span> have the value of the <var
+    title="">old insertion point</var>. (In other words, restore the
+    <span>insertion point</span> to its previous value. This value
+    might be the "undefined" value.)</p>
 
     <p id="scriptTagParserResumes">At this stage, if there is a
     <span>pending external script</span>, then:</p>
@@ -68969,19 +68970,50 @@
     <p><span>Parse error</span>. Ignore the token.</p>
    </dd>
 
-   <!--XXXSVG need to define processing for </script> to match HTML5's </script> processing -->
+   <dt>An end tag whose tag name is "script", if the <span>current node</span> is a <code title="">script</code> element in the <span>SVG namespace</span>.</dt>
+   <dd>
 
+    <p>Pop the <span>current node</span> off the <span>stack of open
+    elements</span>.</p>
+
+    <p>Let the <var title="">old insertion point</var> have the
+    same value as the current <span>insertion point</span>. Let
+    the <span>insertion point</span> be just before the <span>next
+    input character</span>.</p>
+
+    <p>Increment the parser's <span>script nesting level</span> by
+    one. Set the <span>parser pause flag</span> to true.</p>
+
+    <p><a
+    href="http://www.w3.org/TR/SVGMobile12/script.html#ScriptContentProcessing">Process
+    the <code title="">script</code> element</a> according to the SVG
+    rules. <a href="#refsSVG">[SVG]</a></p>
+
+    <p class="note">Even if this causes <span
+    title="dom-document-write">new characters to be inserted into the
+    tokeniser</span>, the parser will not be executed reentrantly,
+    since the <span>parser pause flag</span> is true.</p>
+
+    <p>Decrement the parser's <span>script nesting level</span> by
+    one. If the parser's <span>script nesting level</span> is zero,
+    then set the <span>parser pause flag</span> to false.</p>
+
+    <p>Let the <span>insertion point</span> have the value of the <var
+    title="">old insertion point</var>. (In other words, restore the
+    <span>insertion point</span> to its previous value. This value
+    might be the "undefined" value.)</p>
+
+   </dd>
+
    <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <span>current node</span> is an <code title="">mi</code> element in the <span>MathML namespace</span>.</dt>
    <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <span>current node</span> is an <code title="">mo</code> element in the <span>MathML namespace</span>.</dt>
    <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <span>current node</span> is an <code title="">mn</code> element in the <span>MathML namespace</span>.</dt>
    <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <span>current node</span> is an <code title="">ms</code> element in the <span>MathML namespace</span>.</dt>
    <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <span>current node</span> is an <code title="">mtext</code> element in the <span>MathML namespace</span>.</dt>
-<!--XXXSVG
    <dt>A start tag whose tag name is "svg", if the <span>current node</span> is an <code title="">annotation-xml</code> element in the <span>MathML namespace</span>.</dt>
    <dt>A start tag, if the <span>current node</span> is a <code title="">foreignObject</code> element in the <span>SVG namespace</span>.</dt>
    <dt>A start tag, if the <span>current node</span> is a <code title="">desc</code> element in the <span>SVG namespace</span>.</dt>
    <dt>A start tag, if the <span>current node</span> is a <code title="">title</code> element in the <span>SVG namespace</span>.</dt>
--->
    <dt>A start tag, if the <span>current node</span> is an element in the <span>HTML namespace</span>.</dt>
    <dt>An end tag</dt>
    <dd>
@@ -69040,7 +69072,6 @@
     attributes</span> for the token. (This fixes the case of MathML
     attributes that are not all lowercase.)</p>
 
-<!--XXXSVG
     <p>If the <span>current node</span> is an element in the <span>SVG
     namespace</span>, and the token's tag name is one of the ones in
     the first column of the following table, change the tag name to
@@ -69087,7 +69118,7 @@
       <tr> <td> <code title="">glyphref</code> <td> <code title="">glyphRef</code>
       <tr> <td> <code title="">lineargradient</code> <td> <code title="">linearGradient</code>
       <tr> <td> <code title="">radialgradient</code> <td> <code title="">radialGradient</code>
-      <!- -<tr> <td> <code title="">solidcolor</code> <td> <code title="">solidColor</code> (SVG 1.2)- ->
+      <!--<tr> <td> <code title="">solidcolor</code> <td> <code title="">solidColor</code> (SVG 1.2)-->
       <tr> <td> <code title="">textpath</code> <td> <code title="">textPath</code>
     </table>
 
@@ -69095,7 +69126,7 @@
     namespace</span>, <span>adjust SVG attributes</span> for the
     token.  (This fixes the case of SVG attributes that are not all
     lowercase.)</p>
--->
+
     <p><span>Adjust foreign attributes</span> for the token.  (This
     fixes the use of namespaced attributes, in particular XLink in
     SVG.)</p>
@@ -72975,13 +73006,7 @@
 
   <!-- <p>XXX example here</p> -->
 
-<!--XXXSVG (remove next section)-->
-  <h3>Declarative 2D vector graphics and animation</h3>
-  <p>Embedding vector graphics into XHTML documents is the domain of
-  SVG.</p>
 
-  <!-- <p>XXX example here</p> -->
-
   <h3>Declarative 3D scenes</h3>
 
   <p>Embedding 3D imagery into XHTML documents is the domain of X3D,

|