[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