[html5] r3323 - [] (0) Add rules for improving compat with XSLT 1.0. (bug 6776)
whatwg at whatwg.org
whatwg at whatwg.org
Thu Jun 25 23:34:42 PDT 2009
Author: ianh
Date: 2009-06-25 23:34:40 -0700 (Thu, 25 Jun 2009)
New Revision: 3323
Modified:
index
source
Log:
[] (0) Add rules for improving compat with XSLT 1.0. (bug 6776)
Modified: index
===================================================================
--- index 2009-06-26 05:39:40 UTC (rev 3322)
+++ index 2009-06-26 06:34:40 UTC (rev 3323)
@@ -276,14 +276,15 @@
<li><a href=#transparent-content-models><span class=secno>3.4.2 </span>Transparent content models</a></ol></li>
<li><a href=#paragraphs><span class=secno>3.5 </span>Paragraphs</a></li>
<li><a href=#apis-in-html-documents><span class=secno>3.6 </span>APIs in HTML documents</a></li>
- <li><a href=#dynamic-markup-insertion><span class=secno>3.7 </span>Dynamic markup insertion</a>
+ <li><a href=#dom-based-xslt-1.0-processors><span class=secno>3.7 </span>DOM-based XSLT 1.0 processors</a></li>
+ <li><a href=#dynamic-markup-insertion><span class=secno>3.8 </span>Dynamic markup insertion</a>
<ol>
- <li><a href=#controlling-the-input-stream><span class=secno>3.7.1 </span>Controlling the input stream</a></li>
- <li><a href=#document.write()><span class=secno>3.7.2 </span><code title=dom-document-write>document.write()</code></a></li>
- <li><a href=#document.writeln()><span class=secno>3.7.3 </span><code title=dom-document-writeln>document.writeln()</code></a></li>
- <li><a href=#innerhtml><span class=secno>3.7.4 </span><code title=dom-innerHTML>innerHTML</code></a></li>
- <li><a href=#outerhtml><span class=secno>3.7.5 </span><code title=dom-outerHTML>outerHTML</code></a></li>
- <li><a href=#insertadjacenthtml()><span class=secno>3.7.6 </span><code title=dom-insertAdjacentHTML>insertAdjacentHTML()</code></a></ol></ol></li>
+ <li><a href=#controlling-the-input-stream><span class=secno>3.8.1 </span>Controlling the input stream</a></li>
+ <li><a href=#document.write()><span class=secno>3.8.2 </span><code title=dom-document-write>document.write()</code></a></li>
+ <li><a href=#document.writeln()><span class=secno>3.8.3 </span><code title=dom-document-writeln>document.writeln()</code></a></li>
+ <li><a href=#innerhtml><span class=secno>3.8.4 </span><code title=dom-innerHTML>innerHTML</code></a></li>
+ <li><a href=#outerhtml><span class=secno>3.8.5 </span><code title=dom-outerHTML>outerHTML</code></a></li>
+ <li><a href=#insertadjacenthtml()><span class=secno>3.8.6 </span><code title=dom-insertAdjacentHTML>insertAdjacentHTML()</code></a></ol></ol></li>
<li><a href=#semantics><span class=secno>4 </span>The elements of HTML</a>
<ol>
<li><a href=#the-root-element><span class=secno>4.1 </span>The root element</a>
@@ -8523,8 +8524,33 @@
</dd>
- </dl><h3 id=dynamic-markup-insertion><span class=secno>3.7 </span><dfn>Dynamic markup insertion</dfn></h3>
+ </dl><h3 id=dom-based-xslt-1.0-processors><span class=secno>3.7 </span>DOM-based XSLT 1.0 processors</h3>
+ <p>XSLT 1.0 processors outputting to a DOM when the output method is
+ "html" (either explicitly or via the defaulting rule in XSLT 1.0)
+ are affected as follows:</p>
+
+ <p>If the transformation program outputs an element in no namespace,
+ the processor must, prior to constructing the corresponding DOM
+ element node, change the namespace of the element to the <a href=#html-namespace-0>HTML
+ namespace</a>, <a href=#converted-to-ascii-lowercase title="converted to ASCII
+ lowercase">ASCII-lowercase</a> the element's local name, and
+ <a href=#converted-to-ascii-lowercase title="converted to ASCII lowercase">ASCII-lowercase</a>
+ the names of any non-namespaced attributes on the element.</p>
+
+ <p class=note>This requirement is a <a href=#willful-violation>willful violation</a>
+ of the XSLT 1.0 specification, required because this specification
+ changes the namespaces and case-sensitivity rules of HTML in a
+ manner that would otherwise be incompatible with DOM-based XSLT
+ transformations. (Processors that serialize the output are
+ unaffected.) <a href=#refsXSLT10>[XSLT10]</a></p> <!-- note:
+ version matters for this ref -->
+
+
+
+
+ <h3 id=dynamic-markup-insertion><span class=secno>3.8 </span><dfn>Dynamic markup insertion</dfn></h3>
+
<p class=note>APIs for dynamically inserting markup into the
document interact with the parser, and thus their behavior, varies
depending on whether they are used with <a href=#html-documents>HTML documents</a>
@@ -8533,7 +8559,7 @@
- <h4 id=controlling-the-input-stream><span class=secno>3.7.1 </span>Controlling the input stream</h4>
+ <h4 id=controlling-the-input-stream><span class=secno>3.8.1 </span>Controlling the input stream</h4>
<p>The <dfn id=dom-document-open title=dom-document-open><code>open()</code></dfn>
method comes in several variants with different numbers of
@@ -8741,7 +8767,7 @@
- <h4 id=document.write()><span class=secno>3.7.2 </span><code title=dom-document-write><a href=#dom-document-write>document.write()</a></code></h4>
+ <h4 id=document.write()><span class=secno>3.8.2 </span><code title=dom-document-write><a href=#dom-document-write>document.write()</a></code></h4>
<dl class=domintro><dt><var title="">document</var> . <code title=dom-document-write><a href=#dom-document-write>write</a></code>(<var title="">text</var>...)</dt>
@@ -8827,7 +8853,7 @@
</ol></div>
- <h4 id=document.writeln()><span class=secno>3.7.3 </span><code title=dom-document-writeln><a href=#dom-document-writeln>document.writeln()</a></code></h4>
+ <h4 id=document.writeln()><span class=secno>3.8.3 </span><code title=dom-document-writeln><a href=#dom-document-writeln>document.writeln()</a></code></h4>
<dl class=domintro><dt><var title="">document</var> . <code title=dom-document-writeln><a href=#dom-document-writeln>writeln</a></code>(<var title="">text</var>...)</dt>
@@ -8854,7 +8880,7 @@
- <h4 id=innerhtml><span class=secno>3.7.4 </span><code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code></h4>
+ <h4 id=innerhtml><span class=secno>3.8.4 </span><code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code></h4>
<p>The <dfn id=dom-innerhtml title=dom-innerHTML><code>innerHTML</code></dfn> DOM
attribute represents the markup of the node's contents.</p>
@@ -8972,7 +8998,7 @@
- <h4 id=outerhtml><span class=secno>3.7.5 </span><code title=dom-outerHTML><a href=#dom-outerhtml>outerHTML</a></code></h4>
+ <h4 id=outerhtml><span class=secno>3.8.5 </span><code title=dom-outerHTML><a href=#dom-outerhtml>outerHTML</a></code></h4>
<p>The <dfn id=dom-outerhtml title=dom-outerHTML><code>outerHTML</code></dfn> DOM
attribute represents the markup of the element and its contents.</p>
@@ -9079,7 +9105,7 @@
- <h4 id=insertadjacenthtml()><span class=secno>3.7.6 </span><code title=dom-insertAdjacentHTML><a href=#dom-insertadjacenthtml>insertAdjacentHTML()</a></code></h4>
+ <h4 id=insertadjacenthtml()><span class=secno>3.8.6 </span><code title=dom-insertAdjacentHTML><a href=#dom-insertadjacenthtml>insertAdjacentHTML()</a></code></h4>
<dl class=domintro><dt><var title="">element</var> . <code title=dom-insertAdjacentHTML><a href=#dom-insertadjacenthtml>insertAdjacentHTML</a></code>(<var title="">position</var>, <var title="">text</var>)</dt>
Modified: source
===================================================================
--- source 2009-06-26 05:39:40 UTC (rev 3322)
+++ source 2009-06-26 06:34:40 UTC (rev 3323)
@@ -8711,6 +8711,32 @@
</dl>
+
+ <h3>DOM-based XSLT 1.0 processors</h3>
+
+ <p>XSLT 1.0 processors outputting to a DOM when the output method is
+ "html" (either explicitly or via the defaulting rule in XSLT 1.0)
+ are affected as follows:</p>
+
+ <p>If the transformation program outputs an element in no namespace,
+ the processor must, prior to constructing the corresponding DOM
+ element node, change the namespace of the element to the <span>HTML
+ namespace</span>, <span title="converted to ASCII
+ lowercase">ASCII-lowercase</span> the element's local name, and
+ <span title="converted to ASCII lowercase">ASCII-lowercase</span>
+ the names of any non-namespaced attributes on the element.</p>
+
+ <p class="note">This requirement is a <span>willful violation</span>
+ of the XSLT 1.0 specification, required because this specification
+ changes the namespaces and case-sensitivity rules of HTML in a
+ manner that would otherwise be incompatible with DOM-based XSLT
+ transformations. (Processors that serialize the output are
+ unaffected.) <a href="#refsXSLT10">[XSLT10]</a></p> <!-- note:
+ version matters for this ref -->
+
+
+
+
<h3><dfn>Dynamic markup insertion</dfn></h3>
<p class="note">APIs for dynamically inserting markup into the
More information about the Commit-Watchers
mailing list