Preparing LC publication
authortravil
Tue, 03 Dec 2013 18:23:21 -0800
changeset 25 f6bb7dd2219d
parent 24 42973d9748d9
child 26 b7368fab6d73
Preparing LC publication
LCWD-DOM-Parsing-20131205.html
respecConfig-LCWD.js
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/LCWD-DOM-Parsing-20131205.html	Tue Dec 03 18:23:21 2013 -0800
@@ -0,0 +1,1766 @@
+<!DOCTYPE html>
+<html lang="en" dir="ltr" typeof="bibo:Document w3p:LastCall" about="" property="dcterms:language" content="en">
+<head>
+    <meta charset="UTF-8">
+    <title>DOM Parsing and Serialization</title>
+    <style>
+        /* Make these stand-out more... */
+        .externalDFN {
+            font-style: italic;
+            background-color: #fff9d6;
+        }
+        /* Switch statement */
+        dl.switch dt::before {
+            content: "↪ ";
+            margin-left: 1em;
+        }
+        /* Better spacing around various lists (implied paragraph children) */
+        ol > li, section:not(#toc) ul > li, section dl > dt {
+            margin: 1em 0;
+        }
+        /* domintro styling */
+        dl.domintro {
+            background-color: rgb(221, 255, 221);
+            padding: 1em 0.5em 1em 2em;
+            clear: both;
+        }
+        dl.domintro dt {
+            color: black;
+        }
+        dl.domintro > dd {
+            color: green;
+        }
+        dl.domintro::before {
+            float: right;
+            background-color: white;
+            display: block;
+            border: 2px solid black;
+            color: green;
+            margin-top: -20px;
+            padding: 2px;
+            content: "This box is non-normative. Implementation requirements are given below this box.";
+        }
+        /* Fancy table stuff */
+        table {
+            border-collapse: collapse;
+        }
+        thead tr {
+            border-bottom: 2px solid black;
+        }
+        tbody tr:not(:last-child) {
+            border-bottom: 1px solid black;
+        }
+        td {
+            border-left: 1px solid black;
+            padding: 4px;
+        }
+        /* Extra IDL :-) */
+        .extraidl {
+            line-height: 120%;
+            padding: 1em;
+            border-top: 1px solid #90b8de;
+            border-bottom: 1px solid #90b8de;
+        }
+        .extraidl:before {
+            width: 150px;
+            color: #fff;
+            padding: 3px;
+            font-weight: bold;
+            font-family: initial;
+            margin: -1em 0 1em -1em;
+            display: block;
+            content: "WebIDL";
+            background-color: rgb(144, 184, 222);
+        }
+    </style>
+    
+    
+<style>/*****************************************************************
+ * ReSpec 3 CSS
+ * Robin Berjon - http://berjon.com/
+ *****************************************************************/
+
+/* --- INLINES --- */
+em.rfc2119 { 
+    text-transform:     lowercase;
+    font-variant:       small-caps;
+    font-style:         normal;
+    color:              #900;
+}
+
+h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym,
+h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr {
+    border: none;
+}
+
+dfn {
+    font-weight:    bold;
+}
+
+a.internalDFN {
+    color:  inherit;
+    border-bottom:  1px solid #99c;
+    text-decoration:    none;
+}
+
+a.externalDFN {
+    color:  inherit;
+    border-bottom:  1px dotted #ccc;
+    text-decoration:    none;
+}
+
+a.bibref {
+    text-decoration:    none;
+}
+
+cite .bibref {
+    font-style: normal;
+}
+
+code {
+    color:  #ff4500;
+}
+
+/* --- TOC --- */
+.toc a, .tof a {
+    text-decoration:    none;
+}
+
+a .secno, a .figno {
+    color:  #000;
+}
+
+ul.tof, ol.tof {
+    list-style: none outside none;
+}
+
+.caption {
+    margin-top: 0.5em;
+    font-style:   italic;
+}
+
+/* --- TABLE --- */
+table.simple {
+    border-spacing: 0;
+    border-collapse:    collapse;
+    border-bottom:  3px solid #005a9c;
+}
+
+.simple th {
+    background: #005a9c;
+    color:  #fff;
+    padding:    3px 5px;
+    text-align: left;
+}
+
+.simple th[scope="row"] {
+    background: inherit;
+    color:  inherit;
+    border-top: 1px solid #ddd;
+}
+
+.simple td {
+    padding:    3px 10px;
+    border-top: 1px solid #ddd;
+}
+
+.simple tr:nth-child(even) {
+    background: #f0f6ff;
+}
+
+/* --- DL --- */
+.section dd > p:first-child {
+    margin-top: 0;
+}
+
+.section dd > p:last-child {
+    margin-bottom: 0;
+}
+
+.section dd {
+    margin-bottom:  1em;
+}
+
+.section dl.attrs dd, .section dl.eldef dd {
+    margin-bottom:  0;
+}
+</style><style>/* --- ISSUES/NOTES --- */
+div.issue-title, div.note-title {
+    padding-right:  1em;
+    min-width: 7.5em;
+    color: #b9ab2d;
+}
+div.issue-title { color: #e05252; }
+div.note-title { color: #2b2; }
+div.issue-title span, div.note-title span {
+    text-transform: uppercase;
+}
+div.note, div.issue {
+    margin-top: 1em;
+    margin-bottom: 1em;
+}
+.note > p:first-child, .issue > p:first-child { margin-top: 0 }
+.issue, .note {
+    padding: .5em;
+    border-left-width: .5em;
+    border-left-style: solid;
+}
+div.issue, div.note {
+    padding: 1em 1.2em 0.5em;
+    margin: 1em 0;
+    position: relative;
+    clear: both;
+}
+span.note, span.issue { padding: .1em .5em .15em; }
+
+.issue {
+    border-color: #e05252;
+    background: #fbe9e9;
+}
+.note {
+    border-color: #52e052;
+    background: #e9fbe9;
+}
+
+
+</style><style>/* --- WEB IDL --- */
+pre.idl {
+    border-top: 1px solid #90b8de;
+    border-bottom: 1px solid #90b8de;
+    padding:    1em;
+    line-height:    120%;
+}
+
+pre.idl::before {
+    content:    "WebIDL";
+    display:    block;
+    width:      150px;
+    background: #90b8de;
+    color:  #fff;
+    font-family:    initial;
+    padding:    3px;
+    font-weight:    bold;
+    margin: -1em 0 1em -1em;
+}
+
+.idlType {
+    color:  #ff4500;
+    font-weight:    bold;
+    text-decoration:    none;
+}
+
+/*.idlModule*/
+/*.idlModuleID*/
+/*.idlInterface*/
+.idlInterfaceID, .idlDictionaryID, .idlCallbackID, .idlEnumID {
+    font-weight:    bold;
+    color:  #005a9c;
+}
+a.idlEnumItem {
+    color:  #000;
+    border-bottom:  1px dotted #ccc;
+    text-decoration: none;
+}
+
+.idlSuperclass {
+    font-style: italic;
+    color:  #005a9c;
+}
+
+/*.idlAttribute*/
+.idlAttrType, .idlFieldType, .idlMemberType {
+    color:  #005a9c;
+}
+.idlAttrName, .idlFieldName, .idlMemberName {
+    color:  #ff4500;
+}
+.idlAttrName a, .idlFieldName a, .idlMemberName a {
+    color:  #ff4500;
+    border-bottom:  1px dotted #ff4500;
+    text-decoration: none;
+}
+
+/*.idlMethod*/
+.idlMethType, .idlCallbackType {
+    color:  #005a9c;
+}
+.idlMethName {
+    color:  #ff4500;
+}
+.idlMethName a {
+    color:  #ff4500;
+    border-bottom:  1px dotted #ff4500;
+    text-decoration: none;
+}
+
+/*.idlCtor*/
+.idlCtorName {
+    color:  #ff4500;
+}
+.idlCtorName a {
+    color:  #ff4500;
+    border-bottom:  1px dotted #ff4500;
+    text-decoration: none;
+}
+
+/*.idlParam*/
+.idlParamType {
+    color:  #005a9c;
+}
+.idlParamName, .idlDefaultValue {
+    font-style: italic;
+}
+
+.extAttr {
+    color:  #666;
+}
+
+/*.idlSectionComment*/
+.idlSectionComment {
+    color: gray;
+}
+
+/*.idlConst*/
+.idlConstType {
+    color:  #005a9c;
+}
+.idlConstName {
+    color:  #ff4500;
+}
+.idlConstName a {
+    color:  #ff4500;
+    border-bottom:  1px dotted #ff4500;
+    text-decoration: none;
+}
+
+/*.idlException*/
+.idlExceptionID {
+    font-weight:    bold;
+    color:  #c00;
+}
+
+.idlTypedefID, .idlTypedefType {
+    color:  #005a9c;
+}
+
+.idlRaises, .idlRaises a.idlType, .idlRaises a.idlType code, .excName a, .excName a code {
+    color:  #c00;
+    font-weight:    normal;
+}
+
+.excName a {
+    font-family:    monospace;
+}
+
+.idlRaises a.idlType, .excName a.idlType {
+    border-bottom:  1px dotted #c00;
+}
+
+.excGetSetTrue, .excGetSetFalse, .prmNullTrue, .prmNullFalse, .prmOptTrue, .prmOptFalse {
+    width:  45px;
+    text-align: center;
+}
+.excGetSetTrue, .prmNullTrue, .prmOptTrue { color:  #0c0; }
+.excGetSetFalse, .prmNullFalse, .prmOptFalse { color:  #c00; }
+
+.idlImplements a {
+    font-weight:    bold;
+}
+
+dl.attributes, dl.methods, dl.constants, dl.constructors, dl.fields, dl.dictionary-members {
+    margin-left:    2em;
+}
+
+.attributes dt, .methods dt, .constants dt, .constructors dt, .fields dt, .dictionary-members dt {
+    font-weight:    normal;
+}
+
+.attributes dt code, .methods dt code, .constants dt code, .constructors dt code, .fields dt code, .dictionary-members dt code {
+    font-weight:    bold;
+    color:  #000;
+    font-family:    monospace;
+}
+
+.attributes dt code, .fields dt code, .dictionary-members dt code {
+    background:  #ffffd2;
+}
+
+.attributes dt .idlAttrType code, .fields dt .idlFieldType code, .dictionary-members dt .idlMemberType code {
+    color:  #005a9c;
+    background:  transparent;
+    font-family:    inherit;
+    font-weight:    normal;
+    font-style: italic;
+}
+
+.methods dt code {
+    background:  #d9e6f8;
+}
+
+.constants dt code {
+    background:  #ddffd2;
+}
+
+.constructors dt code {
+    background:  #cfc;
+}
+
+.attributes dd, .methods dd, .constants dd, .constructors dd, .fields dd, .dictionary-members dd {
+    margin-bottom:  1em;
+}
+
+table.parameters, table.exceptions {
+    border-spacing: 0;
+    border-collapse:    collapse;
+    margin: 0.5em 0;
+    width:  100%;
+}
+table.parameters { border-bottom:  1px solid #90b8de; }
+table.exceptions { border-bottom:  1px solid #deb890; }
+
+.parameters th, .exceptions th {
+    color:  #fff;
+    padding:    3px 5px;
+    text-align: left;
+    font-family:    initial;
+    font-weight:    normal;
+    text-shadow:    #666 1px 1px 0;
+}
+.parameters th { background: #90b8de; }
+.exceptions th { background: #deb890; }
+
+.parameters td, .exceptions td {
+    padding:    3px 10px;
+    border-top: 1px solid #ddd;
+    vertical-align: top;
+}
+
+.parameters tr:first-child td, .exceptions tr:first-child td {
+    border-top: none;
+}
+
+.parameters td.prmName, .exceptions td.excName, .exceptions td.excCodeName {
+    width:  100px;
+}
+
+.parameters td.prmType {
+    width:  120px;
+}
+
+table.exceptions table {
+    border-spacing: 0;
+    border-collapse:    collapse;
+    width:  100%;
+}
+</style><link href="https://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet"><!--[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]--></head>
+<body id="respecDocument" role="document" class="h-entry"><div id="respecHeader" role="contentinfo" class="head">
+  <p>
+    
+      <a href="http://www.w3.org/"><img src="https://www.w3.org/Icons/w3c_home" alt="W3C" height="48" width="72"></a>
+    
+  </p>
+  <h1 class="title p-name" id="title" property="dcterms:title">DOM Parsing and Serialization</h1>
+  
+    <h2 property="bibo:subtitle" id="subtitle">DOMParser, XMLSerializer, innerHTML, and similar APIs</h2>
+  
+  <h2 id="w3c-last-call-working-draft-03-december-2013" property="dcterms:issued" datatype="xsd:dateTime" content="2013-12-04T02:16:56.000Z"><abbr title="World Wide Web Consortium">W3C</abbr> Last Call Working Draft <time class="dt-published" datetime="2013-12-03">03 December 2013</time></h2>
+  <dl>
+    
+      <dt>This version:</dt>
+      <dd><a class="u-url" href="http://www.w3.org/TR/2013/WD-DOM-Parsing-20131203/">http://www.w3.org/TR/2013/WD-DOM-Parsing-20131203/</a></dd>
+      <dt>Latest published version:</dt>
+      <dd><a href="http://www.w3.org/TR/DOM-Parsing/">http://www.w3.org/TR/DOM-Parsing/</a></dd>
+    
+    
+      <dt>Latest editor's draft:</dt>
+      <dd><a href="http://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html">http://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html</a></dd>
+    
+    
+      <dt>Test suite:</dt>
+      <dd><a href="https://github.com/whatwg/domparsing/tree/master/tests">https://github.com/whatwg/domparsing/tree/master/tests</a></dd>
+    
+    
+    
+    
+      <dt>Previous version:</dt>
+      <dd><a rel="dcterms:replaces" href="http://www.w3.org/TR/2012/2012-09-20-DOM-Parsing-20120920/">http://www.w3.org/TR/2012/2012-09-20-DOM-Parsing-20120920/</a></dd>
+    
+    
+    <dt>Editor:</dt>
+    <dd class="p-author h-card vcard" rel="bibo:editor" inlist=""><span typeof="foaf:Person"><span property="foaf:name" class="p-name fn">Travis Leithead</span>, <a rel="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://www.microsoft.com">Microsoft</a>, <span class="ed_mailto"><a class="u-email email" rel="foaf:mbox" href="mailto:travis.leithead@microsoft.com">travis.leithead@microsoft.com</a></span></span>
+</dd>
+
+    
+    
+      
+        
+          <dt>WHATWG Living Standard:</dt>
+          
+             
+                
+                  <dd>
+                    <a href="http://domparsing.spec.whatwg.org/">
+                      http://domparsing.spec.whatwg.org/
+                    </a>
+                  </dd>
+                
+             
+          
+        
+      
+    
+  </dl>
+  
+  
+  
+  
+    
+      <p class="copyright">
+        <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> ©
+        2013
+        
+        <a href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a><sup>®</sup>
+        (<a href="http://www.csail.mit.edu/"><abbr title="Massachusetts Institute of Technology">MIT</abbr></a>,
+        <a href="http://www.ercim.eu/"><abbr title="European Research Consortium for Informatics and Mathematics">ERCIM</abbr></a>,
+        <a href="http://www.keio.ac.jp/">Keio</a>, <a href="http://ev.buaa.edu.cn/">Beihang</a>), 
+        
+        All Rights Reserved.
+        
+        <abbr title="World Wide Web Consortium">W3C</abbr> <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+        <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and
+        
+          <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a>
+        
+        rules apply.
+      </p>
+    
+  
+  <hr>
+</div>
+
+    <section rel="bibo:Chapter" resource="#ref" typeof="bibo:Chapter" datatype="" property="dcterms:abstract" class="introductory" id="abstract"><h2 id="h2_abstract" role="heading" aria-level="1">Abstract</h2>
+       <p>This specification defines various APIs for programmatic access to 
+          HTML and generic XML parsers by web applications for use in parsing 
+          and serializing DOM nodes.</p>
+    </section><section rel="bibo:Chapter" resource="#ref" typeof="bibo:Chapter" id="sotd" class="introductory"><h2 id="h2_sotd" role="heading" aria-level="1">Status of This Document</h2>
+  
+    
+      
+        <p>
+          <em>This section describes the status of this document at the time of its publication.
+          Other documents may supersede this document. A list of current <abbr title="World Wide Web Consortium">W3C</abbr> publications and the
+          latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/"><abbr title="World Wide Web Consortium">W3C</abbr> technical reports index</a> at
+          http://www.w3.org/TR/.</em>
+        </p>
+        
+        <p>This specification is based on the original work of the <a href="http://domparsing.spec.whatwg.org/">
+            DOM Parsing and Serialization Living Standard</a>, though it has diverged in terms of 
+            supported features, normative requirements, and algorithm specificity. As appropriate, 
+            relevant fixes from the living standard are incorporated into this document. 
+    </p>
+        <p>
+          This document was published by the <a href="http://www.w3.org/2008/webapps/">Web Applications Working Group</a> as a Last Call Working Draft.
+          
+            This document is intended to become a <abbr title="World Wide Web Consortium">W3C</abbr> Recommendation.
+          
+          
+            If you wish to make comments regarding this document, please send them to 
+            <a href="mailto:www-dom@w3.org?subject=DOM-Parsing">www-dom@w3.org</a> 
+            (<a href="mailto:www-dom-request@w3.org?subject=subscribe">subscribe</a>,
+            <a href="http://lists.w3.org/Archives/Public/www-dom/">archives</a>)
+              with <code>DOM-Parsing</code> at the start of your email's subject.
+          
+          The Last Call period ends 01 January 2014.
+          
+          
+            All comments are welcome.
+          
+        </p>
+        
+        
+          <p>
+            Publication as a Last Call Working Draft does not imply endorsement by the <abbr title="World Wide Web Consortium">W3C</abbr>
+            Membership. This is a draft document and may be updated, replaced or obsoleted by other
+            documents at any time. It is inappropriate to cite this document as other than work in
+            progress.
+          </p>
+        
+        
+          <p>
+            This is a Last Call Working Draft and thus the Working Group has determined that this
+            document has satisfied the relevant technical requirements and is sufficiently stable to
+            advance through the Technical Recommendation process.
+          </p>
+        
+        <p>
+          
+            This document was produced by a group operating under the 
+            <a id="sotd_patent" about="" rel="w3p:patentRules" href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <abbr title="World Wide Web Consortium">W3C</abbr> Patent
+            Policy</a>.
+          
+          
+          
+            
+              <abbr title="World Wide Web Consortium">W3C</abbr> maintains a <a href="http://www.w3.org/2004/01/pp-impl/42538/status" rel="disclosure">public list of any patent
+              disclosures</a> 
+            
+            made in connection with the deliverables of the group; that page also includes
+            instructions for disclosing a patent. An individual who has actual knowledge of a patent
+            which the individual believes contains
+            <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential
+            Claim(s)</a> must disclose the information in accordance with
+            <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section
+            6 of the <abbr title="World Wide Web Consortium">W3C</abbr> Patent Policy</a>.
+          
+          
+        </p>
+        
+      
+    
+  
+</section><section id="toc"><h2 id="h2_toc" role="heading" aria-level="1" class="introductory">Table of Contents</h2><ul id="respecContents" role="directory" class="toc"><li class="tocline"><a class="tocxref" href="#conformance"><span class="secno">1. </span>Conformance</a><ul class="toc"><li class="tocline"><a class="tocxref" href="#dependencies"><span class="secno">1.1 </span>Dependencies</a></li><li class="tocline"><a class="tocxref" href="#extensibility"><span class="secno">1.2 </span>Extensibility</a></li></ul></li><li class="tocline"><a class="tocxref" href="#terminology"><span class="secno">2. </span>Terminology</a></li><li class="tocline"><a class="tocxref" href="#parsing-and-serializing-nodes"><span class="secno">3. </span>Parsing and serializing <span title="node" data-spec="DOM4" class="formerLink">Node</span>s</a><ul class="toc"><li class="tocline"><a class="tocxref" href="#parsing"><span class="secno">3.1 </span>Parsing</a></li><li class="tocline"><a class="tocxref" href="#serializing"><span class="secno">3.2 </span>Serializing</a></li></ul></li><li class="tocline"><a class="tocxref" href="#the-domparser-interface"><span class="secno">4. </span>The <code>DOMParser</code> interface</a><ul class="toc"><li class="tocline"><a class="tocxref" href="#methods"><span class="secno">4.1 </span>Methods</a></li></ul></li><li class="tocline"><a class="tocxref" href="#the-xmlserializer-interface"><span class="secno">5. </span>The <code>XMLSerializer</code> interface</a><ul class="toc"><li class="tocline"><a class="tocxref" href="#methods-1"><span class="secno">5.1 </span>Methods</a></li></ul></li><li class="tocline"><a class="tocxref" href="#extensions-to-the-element-interface"><span class="secno">6. </span>Extensions to the <code><span title="element" data-spec="DOM4" class="formerLink">Element</span></code> interface</a><ul class="toc"><li class="tocline"><a class="tocxref" href="#attributes"><span class="secno">6.1 </span>Attributes</a></li><li class="tocline"><a class="tocxref" href="#methods-2"><span class="secno">6.2 </span>Methods</a></li></ul></li><li class="tocline"><a class="tocxref" href="#extensions-to-the-range-interface"><span class="secno">7. </span>Extensions to the <code><span data-spec="DOM4" title="range" class="formerLink">Range</span></code> interface</a><ul class="toc"><li class="tocline"><a class="tocxref" href="#methods-3"><span class="secno">7.1 </span>Methods</a></li></ul></li><li class="tocline"><a class="tocxref" href="#acknowledgements"><span class="secno">A. </span>Acknowledgements</a></li><li class="tocline"><a class="tocxref" href="#references"><span class="secno">B. </span>References</a><ul class="toc"><li class="tocline"><a class="tocxref" href="#normative-references"><span class="secno">B.1 </span>Normative references</a></li><li class="tocline"><a class="tocxref" href="#informative-references"><span class="secno">B.2 </span>Informative references</a></li></ul></li></ul></section>
+
+    
+
+
+    <section rel="bibo:Chapter" resource="#ref" typeof="bibo:Chapter" id="issues" class="introductory">
+        <h1 id="h1_issues" role="heading" aria-level="1">Issues</h1>
+        
+        <div class="issue"><div id="h_issue_1" role="heading" aria-level="2" class="issue-title"><span>Issue 1</span></div><p class="">Open issues that appear throughout the remainder of this 
+        document will be highlighted like this.</p></div>
+        
+        <!-- I don't believe this is a point of contention anymore...
+        <p class="issue">This specification currently requires using the XML 
+        Parser for some APIs, when in an XML document. It is unclear whether 
+        consensus can be found for this approach.</p>
+        -->
+    </section>
+
+    <section rel="bibo:Chapter" resource="#ref" typeof="bibo:Chapter" id="conformance"><!--OddPage--><h2 id="h2_conformance" role="heading" aria-level="1"><span class="secno">1. </span>Conformance</h2>
+<p>
+  As well as sections marked as non-normative, all authoring guidelines, diagrams, examples,
+  and notes in this specification are non-normative. Everything else in this specification is
+  normative.
+</p>
+<p>
+  The key words <em title="MUST" class="rfc2119">MUST</em>, <em title="MUST NOT" class="rfc2119">MUST NOT</em>, <em title="REQUIRED" class="rfc2119">REQUIRED</em>, <em title="SHOULD" class="rfc2119">SHOULD</em>, <em title="SHOULD NOT" class="rfc2119">SHOULD NOT</em>, <em title="RECOMMENDED" class="rfc2119">RECOMMENDED</em>, <em title="MAY" class="rfc2119">MAY</em>,
+  and <em title="OPTIONAL" class="rfc2119">OPTIONAL</em> in this specification are to be interpreted as described in [<cite><a href="#bib-RFC2119" class="bibref">RFC2119</a></cite>].
+</p>
+
+        <p>Requirements phrased in the imperative as part of algorithms
+        (such as "strip any leading space characters" or "return false and
+        terminate these steps") are to be interpreted with the meaning of the
+        key word ("must", "should", "may", etc) used in introducing the
+        algorithm.</p>
+
+        <p>Conformance requirements phrased as algorithms or specific steps
+        may be implemented in any manner, so long as the end result is
+        equivalent. (In particular, the algorithms defined in this
+        specification are intended to be easy to follow, and not intended to
+        be performant.)</p>
+
+        <p id="hardwareLimitations">User agents may impose
+        implementation-specific limits on otherwise unconstrained inputs,
+        e.g. to prevent denial of service attacks, to guard against running
+        out of memory, or to work around platform-specific limitations.</p>
+
+        <p>When a method or an attribute is said to call another method or 
+        attribute, the user agent must invoke its internal API for that 
+        attribute or method so that e.g. the author can't change the behavior 
+        by overriding attributes or methods with custom properties or functions 
+        in ECMAScript.</p>
+
+        <p>Unless otherwise stated, string comparisons are done in a <a data-spec="DOM4" class="externalDFN" title="case-sensitive">
+        case-sensitive</a> manner.</p>
+
+        <p>If an algorithm calls into another algorithm, any exception that is 
+        thrown by the latter (unless it is explicitly caught), must cause the 
+        former to terminate, and the exception to be propagated up to 
+        <em>its</em> caller.</p>
+    
+        <section id="dependencies">
+            <h3 id="h3_dependencies" role="heading" aria-level="2"><span class="secno">1.1 </span>Dependencies</h3>
+
+            <p>The IDL fragments in this specification must be interpreted as
+            required for conforming IDL fragments, as described in the Web IDL
+            specification. [<cite><a href="#bib-WEBIDL" class="bibref">WEBIDL</a></cite>]</p>
+
+            <p>Some of the terms used in this specification are defined in
+            [<cite><a href="#bib-DOM4" class="bibref">DOM4</a></cite>], [<cite><a href="#bib-HTML5" class="bibref">HTML5</a></cite>], and [<cite><a href="#bib-XML10" class="bibref">XML10</a></cite>].
+        </p></section>
+
+        <section id="extensibility">
+            <h3 id="h3_extensibility" role="heading" aria-level="2"><span class="secno">1.2 </span>Extensibility</h3>
+
+            <p>Vendor-specific proprietary extensions to this specification are
+            strongly discouraged. Authors must not use such extensions, as
+            doing so reduces interoperability and fragments the user base,
+            allowing only users of specific user agents to access the content in
+            question.</p>
+
+            <p>If vendor-specific extensions are needed, the members should be
+            prefixed by vendor-specific strings to prevent clashes with future
+            versions of this specification. Extensions must be defined so that
+            the use of extensions neither contradicts nor causes the
+            non-conformance of functionality defined in the specification.</p>
+
+            <p>When vendor-neutral extensions to this specification are needed,
+            either this specification can be updated accordingly, or an
+            extension specification can be written that overrides the
+            requirements in this specification. When someone applying this
+            specification to their activities decides that they will recognise
+            the requirements of such an extension specification, it becomes an
+            <dfn id="dfn-other-applicable-specifications" title="other applicable specifications">applicable
+            specification</dfn> for the purposes of conformance requirements in
+            this specification.</p>
+            <!-- http://www.w3.org/mid/17E341CD-E790-422C-9F9A-69347EE01CEB@iki.fi -->
+        </section>
+    </section>
+
+    <section id="terminology">
+        <!--OddPage--><h2 id="h2_terminology" role="heading" aria-level="1"><span class="secno">2. </span>Terminology</h2>
+
+        <p>The term <dfn id="dfn-context-object">context object</dfn> means the object on which the method or
+        attribute being discussed was called.
+    </p></section>
+
+
+    <section id="parsing-and-serializing-nodes">
+        <!--OddPage--><h2 id="h2_parsing-and-serializing-nodes" role="heading" aria-level="1"><span class="secno">3. </span>Parsing and serializing <a title="node" data-spec="DOM4" class="externalDFN">Node</a>s</h2>
+
+        <section id="parsing">
+            <h3 id="h3_parsing" role="heading" aria-level="2"><span class="secno">3.1 </span>Parsing</h3>
+
+            <p>The following steps form the
+            <dfn id="dfn-concept-parse-fragment" title="concept-parse-fragment">fragment parsing algorithm</dfn>, whose
+            arguments are a <var>markup</var> string and a
+            <var>context element</var>.
+
+            </p><ol>
+              <li>
+                <p>If the <var>context element</var>'s
+                <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+                is an <a title="html-document" data-spec="DOM4" class="externalDFN">HTML document</a>: let
+                <var>algorithm</var> be the
+                <a title="html-fragment-parsing-algorithm" data-spec="HTML5" class="externalDFN">HTML 
+                fragment parsing algorithm</a>.</p>
+
+                <p>If the <var>context element</var>'s
+                <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+                is an <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>: let
+                <var>algorithm</var> be the
+                <a title="xml-fragment-parsing-algorithm" data-spec="HTML5" class="externalDFN">XML 
+                fragment parsing algorithm</a>.</p>
+              </li>
+
+              <li>Invoke <var>algorithm</var> with <var>markup</var> as
+              the <var>input</var>, and <var>context element</var> as the
+              <var><a data-spec="HTML5" title="concept-frag-parse-context" class="externalDFN">context</a></var>
+              element.</li>
+
+              <li>Let <var>new children</var> be the nodes returned.</li>
+
+              <li>Let <var>fragment</var> be a new
+              <code><a title="documentfragment" data-spec="DOM4" class="externalDFN">DocumentFragment</a></code> whose
+              <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+              is <var>context element</var>'s
+              <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>.
+
+              </li><li><a data-spec="DOM4" title="concept-node-append" class="externalDFN">Append</a>
+              each <a data-spec="DOM4" title="concept-node" class="externalDFN">node</a> in
+              <var>new children</var> to <var>fragment</var> (in order).
+
+              <div class="note"><div id="h_note_1" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">This ensures the
+              <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+              for the new <a data-spec="DOM4" title="concept-node" class="externalDFN">nodes</a> is correct.
+
+              </p></div></li><li>Return <var>fragment</var>.
+            </li></ol>
+    </section>
+
+    <section id="serializing">
+        <h3 id="h3_serializing" role="heading" aria-level="2"><span class="secno">3.2 </span>Serializing</h3>
+        <p>To <dfn id="dfn-concept-serialize" title="concept-serialize">serialize</dfn> a
+        <a title="node" data-spec="DOM4" class="externalDFN">Node</a> <var>node</var>, the user agent
+        must run the following steps:
+
+        </p><ol>
+            <li>Let <var>document</var> be <var>node</var>'s
+                <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>.
+            </li><li>If <var>document</var> is an
+                <a title="html-document" data-spec="DOM4" class="externalDFN">HTML document</a>, 
+                return an <a class="internalDFN" href="#dfn-concept-serialize-html" title="concept-serialize-html">HTML serialization</a> of <var>node</var>.
+            </li><li>Otherwise, <var>document</var> is an
+                <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>.
+            </li><li>Let <var>context namespace</var> be <code>null</code>.
+            </li><li>Let <var>prefix list</var> be an empty list. The <var>prefix list</var> will 
+                contain strings that represent a history of namespace prefixes [<cite><a href="#bib-XML-NAMES" class="bibref">XML-NAMES</a></cite>]
+                that have been serialized by the <a class="internalDFN" href="#dfn-concept-serialize-xml" title="concept-serialize-xml">XML serialization</a>
+                algorithm for a subtree.
+            </li><li>Return an <a class="internalDFN" href="#dfn-concept-serialize-xml" title="concept-serialize-xml">XML serialization</a> of <var>node</var>
+                providing to the algorithm <var>context namespace</var> as the <var>namespace</var>
+                and <var>prefix list</var> as <var>prefixes</var>.
+        </li></ol>
+
+        <p>To produce an <dfn id="dfn-concept-serialize-html" title="concept-serialize-html">HTML serialization</dfn> of a
+        <a title="node" data-spec="DOM4" class="externalDFN">Node</a> <var>node</var>, the user agent
+        must run the
+        <a data-spec="HTML5" title="html-fragment-serialization-algorithm" class="externalDFN">HTML 
+        fragment serialization algorithm</a> [<cite><a href="#bib-HTML5" class="bibref">HTML5</a></cite>] on <var>node</var> and return the string produced.
+          
+        </p><p>To produce an <dfn id="dfn-concept-serialize-xml" title="concept-serialize-xml">XML serialization</dfn> of a
+            <a title="node" data-spec="DOM4" class="externalDFN">Node</a> <var>node</var> given a
+            context namespace <var>namespace</var> and prefix list <var>prefixes</var>, the user 
+            agent must run the appropriate steps, depending on <var>node</var>'s interface:</p>
+        
+        <div class="note"><div id="h_note_2" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">The following steps for serializing a <var>node</var> belonging to an
+            <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a> are 
+            designed to produce a serialization that is compatible with the
+            <a title="html-parser" data-spec="HTML5" class="externalDFN">HTML parser</a>. For example,
+            elements in the XHTML namespace that contain no child nodes are serialized with
+            an explicit begin and end tag rather than using the XML self-closing syntax. Exceptions 
+            to this rule occur when an XHTML element's equivalent HTML element is a 
+            <a title="void-elements" data-spec="HTML5" class="externalDFN">void element</a> that 
+            would be auto-closed by the 
+            <a title="html-parser" data-spec="HTML5" class="externalDFN">HTML parser</a>.
+            
+        </p></div><dl class="switch">
+            <dt><code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code>
+            </dt><dd>
+                <p>Run the following algorithm:
+                </p><ol>
+                    <!-- "namespace" was passed via the caller -->
+                    <li>Let <var>markup</var> be an empty string.
+                    </li><li>Let <var>list</var> be a copy of the <var>prefixes</var> array.
+                    </li><li>Let <var>prefix</var> be the value of <var>node</var>'s 
+                        <code><a title="dom-Element-prefix" data-spec="DOM4" class="externalDFN">prefix</a></code>
+                        attribute.
+                    </li><li>Let <var>ns</var> be the value of <var>node</var>'s 
+                        <code><a title="dom-Element-namespaceURI" data-spec="DOM4" class="externalDFN">namespaceURI</a></code>
+                        attribute.
+                    </li><li>Let a <var>skip end tag</var> flag have the value <code>false</code>.
+                    </li><li>Append "<code>&lt;</code>" (U+003C LESS-THAN SIGN) to <var>markup</var>.
+                    </li><li>If <var>prefix</var> is not <code>null</code> then append the following to
+                        <var>markup</var>:
+                        <ol>
+                            <li>The value of <var>prefix</var>;
+                            </li><li>"<code>:</code>" (U+003A COLON).
+                        </li></ol>
+                    </li><li>Append the value of <var>node</var>'s
+                        <code><a title="dom-Element-localName" data-spec="DOM4" class="externalDFN">localName</a></code>
+                        attribute to <var>markup</var>.
+                    <!-- Tried ":" in names, but this doesn't trick the serializer--it just produces 
+                        a serialization that is not round-trippable
+                        <p class="issue">escaping / throwing -->
+                    </li><li>If <var>namespace</var> is not equal to <var>ns</var> (the <var>node</var>'s
+                        own namespace is different from its parent), and <var>prefix</var> is not 
+                        <code>null</code>, then run these sub-steps:
+                        <div class="note"><div id="h_note_3" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">These steps determine whether a namespace prefix is 
+                            serialized for this node.
+                        </p></div><ol>
+                            <li>If <var>list</var> contains the value of <var>prefix</var>, then
+                                abort these sub-steps. This namespace prefix
+                                was already serialized.
+                            </li><li>Add the value of <var>prefix</var> to <var>list</var>.
+                            </li><li>If <var>node</var> has an attribute whose 
+                                <a title="concept-attribute-name" data-spec="DOM4" class="externalDFN">name</a>
+                                attribute value is equal to the concatenation of the string 
+                                "<code>xmlns:</code>" with the value of <var>prefix</var>, abort 
+                                these sub-steps. The <var>prefix</var> namespace definition will be 
+                                serialized later as part of the <a class="internalDFN" href="#dfn-concept-serialize-xml-attributes" title="concept-serialize-xml-attributes">XML 
+                                serialization of <var>node</var>'s attributes</a>.
+                            </li><li>Append the following to <var>markup</var>, in order:
+                            <ol>
+                                <li>"<code> </code>" (U+0020 SPACE);
+                                </li><li>The string "<code>xmlns:</code>";
+                                </li><li>The value of <var>prefix</var>;
+                                </li><li>"<code>="</code>" (U+003D EQUALS SIGN, U+0022 QUOTATION MARK);
+                                </li><li>The value of <var>ns</var>;
+                                </li><li>"<code>"</code>" (U+0022 QUOTATION MARK);
+                            </li></ol>
+                        </li></ol>
+                    </li><li>If <var>namespace</var> is not equal to <var>ns</var>, and <var>prefix</var>
+                        is <code>null</code>, then run these sub-steps:
+                        <div class="note"><div id="h_note_4" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">These steps determine whether a default namespace is 
+                            serialized for this node.
+                        </p></div><ol>
+                            <li>If <var>node</var> has an attribute whose 
+                                <a title="concept-attribute-name" data-spec="DOM4" class="externalDFN">name</a>
+                                attribute value is equal to "<code>xmlns</code>", abort 
+                                these sub-steps. The default namespace will be 
+                                serialized later as part of the <a class="internalDFN" href="#dfn-concept-serialize-xml-attributes" title="concept-serialize-xml-attributes">XML 
+                                serialization of <var>node</var>'s attributes</a>.
+                            </li><li>Append the following to <var>markup</var>, in order:
+                            <ol>
+                                <li>"<code> </code>" (U+0020 SPACE);
+                                </li><li>The string "<code>xmlns</code>";
+                                </li><li>"<code>="</code>" (U+003D EQUALS SIGN, U+0022 QUOTATION MARK);
+                                </li><li>The value of <var>ns</var>;
+                                </li><li>"<code>"</code>" (U+0022 QUOTATION MARK);
+                            </li></ol>
+                        </li></ol>
+                    </li><li>Append to <var>markup</var> the result of the 
+                        <a class="internalDFN" href="#dfn-concept-serialize-xml-attributes" title="concept-serialize-xml-attributes">XML 
+                        serialization of <var>node</var>'s attributes</a>, passing <var>list</var>
+                        as the <var>prefixes</var>.
+                    </li><li>If the value of <var>ns</var> is the string "<code>http://www.w3.org/1999/xhtml</code>",
+                        and the <var>node</var>'s list of 
+                        <a title="concept-tree-child" data-spec="DOM4" class="externalDFN">children</a>
+                        is empty, and the <var>node</var>'s
+                        <code><a title="dom-Element-tagName" data-spec="DOM4" class="externalDFN">tagName</a></code>
+                        matches any one of the following 
+                        <a title="void-elements" data-spec="HTML5" class="externalDFN">void elements</a>:
+                        "<code>area</code>",
+                        "<code>base</code>",
+                        "<code>br</code>",
+                        "<code>col</code>",
+                        "<code>embed</code>",
+                        "<code>hr</code>",
+                        "<code>img</code>",
+                        "<code>input</code>",
+                        "<code>keygen</code>",
+                        "<code>link</code>",
+                        "<code>menuitem</code>",
+                        "<code>meta</code>",
+                        "<code>param</code>",
+                        "<code>source</code>",
+                        "<code>track</code>",
+                        "<code>wbr</code>";
+                        then append the following to <var>markup</var>, in order:
+                        <ol>
+                            <li>"<code> </code>" (U+0020 SPACE);
+                            </li><li>"<code>/</code>" (U+002F SOLIDUS);
+                        </li></ol>
+                        and set the <var>skip end tag</var> flag to <code>true</code>.
+                    </li><li>If the value of <var>ns</var> is not the string "<code>http://www.w3.org/1999/xhtml</code>",
+                        and the <var>node</var>'s list of 
+                        <a title="concept-tree-child" data-spec="DOM4" class="externalDFN">children</a>
+                        is empty, then append "<code>/</code>" (U+002F SOLIDUS) to <var>markup</var>
+                        and set the <var>skip end tag</var> flag to <code>true</code>.
+                    </li><li>Append "<code>&gt;</code>" (U+003E GREATER-THAN SIGN) to <var>markup</var>.
+                    </li><li>If the value of <var>skip end tag</var> is <code>true</code>, then return 
+                        the value of <var>markup</var> and skip the remaining steps. The 
+                        <var>node</var> is a leaf-node.
+                    </li><li>Append to <var>markup</var> the result of performing an 
+                        <a class="internalDFN" href="#dfn-concept-serialize-xml" title="concept-serialize-xml">XML serialization</a> of each of 
+                        <var>node</var>'s
+                        <a title="concept-tree-child" data-spec="DOM4" class="externalDFN">children</a>,
+                        in order, providing the value of <var>ns</var> for the <var>namespace</var>
+                        and <var>list</var> for the <var>prefixes</var>.
+                    </li><li>Append "<code>&lt;/</code>" (U+003C LESS-THAN SIGN, U+002F SOLIDUS) to 
+                        <var>markup</var>.
+                    </li><li>If the value of <var>prefix</var> is not <code>null</code>, then append the 
+                        following to <var>markup</var>, in order:
+                        <ol>
+                            <li>The value of <var>prefix</var>;
+                            </li><li>"<code>:</code>" (U+003A COLON).
+                        </li></ol>
+                    </li><li>Append the value of <var>node</var>'s
+                        <code><a title="dom-Element-localName" data-spec="DOM4" class="externalDFN">localName</a></code>
+                        attribute to <var>markup</var>.
+                    </li><li>Append "<code>&gt;</code>" (U+003E GREATER-THAN SIGN) to <var>markup</var>.
+                    </li><li>Return the value of <var>markup</var>.
+                </li></ol>
+
+            </dd><dt><code><a title="document" data-spec="DOM4" class="externalDFN">Document</a></code>
+            </dt><dd>
+                <p>Return the result of concatenating the following, in order:
+                </p><ol>
+                    <li>The string produced by running the steps to 
+                        <a class="internalDFN" href="#dfn-concept-serialize-doctype" title="concept-serialize-doctype">produce a DocumentType serialization</a>
+                        of <var>node</var>'s 
+                        <a title="dom-Document-doctype" data-spec="HTML5" class="externalDFN">doctype</a>
+                        attribute;
+                    </li><li>The string produced by an <a class="internalDFN" href="#dfn-concept-serialize-xml" title="concept-serialize-xml">XML serialization</a>
+                        of <var>node</var>'s 
+                        <a title="dom-Document-documentElement" data-spec="HTML5" class="externalDFN">documentElement</a>
+                        attribute, providing <code>null</code> as the <var>namespace</var> and an 
+                        empty list as <var>prefixes</var>. 
+                </li></ol>
+
+            </dd><dt><code><a title="comment" data-spec="DOM4" class="externalDFN">Comment</a></code>
+            </dt><dd><ol>
+                <li>Let <var>markup</var> be the concatenation of "<code>&lt;!--</code>", <var>node</var>'s
+                <code><a title="dom-characterdata-data" data-spec="DOM4" class="externalDFN">data</a></code>, and
+                "<code>--&gt;</code>".
+
+                </li><li>If <var>markup</var> matches the
+                <code><a data-spec="XML10" title="comment" class="externalDFN">Comment</a></code> production, return
+                <var>markup</var>. Otherwise, throw a
+                <code><a title="domexception" data-spec="DOM4" class="externalDFN">DOMException</a></code>
+                with name <code>InvalidStateError</code>.
+              </li></ol>
+            </dd><dt><code><a title="cdata" data-spec="DOML2" class="externalDFN">CDATASection</a></code>
+            </dt><dd><ol>
+                <li>Let <var>markup</var> be the concatenation of "<code>&lt;![CDATA[</code>", 
+                <var>node</var>'s
+                <code><a title="dom-characterdata-data" data-spec="DOM4" class="externalDFN">data</a></code>, 
+                and "<code>]]&gt;</code>".
+
+                <!-- This does not actually appear to be the case in implementations today.
+                <p>If <var>data</var> doesn't match the
+                  <code><a title="NT-CData" data-spec="XML10" class="externalDFN">CDSect</a></code> production, throw a
+                  <code><a title=domexception data-spec="DOM4" class="externalDFN">DOMException</a></code>
+                  with name <code>InvalidStateError</code> and terminate the entire algorithm.
+                -->
+                
+                </li><li>Return <var>markup</var>.
+              </li></ol>
+
+              <div class="note"><div id="h_note_5" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">CDATASection objects may be created by the historical 
+            <code>document.createCDATASection</code> API, or as a result of parsing an
+            <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>.
+
+            </p></div></dd><dt><code><a title="text" data-spec="DOM4" class="externalDFN">Text</a></code>
+            </dt><dd><ol>
+                <li>Let <var>markup</var> be <var>node</var>'s
+                <code><a title="dom-characterdata-data" data-spec="DOM4" class="externalDFN">data</a></code>.
+
+                </li><li>Replace any occurrences of "<code>&amp;</code>" in <var>markup</var> by
+                "<code>&amp;amp;</code>".
+                
+                </li><li>Replace any occurrences of "<code>&lt;</code>" in <var>markup</var> by
+                "<code>&amp;lt;</code>".
+                
+                </li><li>Replace any occurrences of "<code>&gt;</code>" in <var>markup</var> by
+                "<code>&amp;gt;</code>".
+                
+                </li><li>Return <var>data</var>.
+              </li></ol>
+            </dd><dt><code><a title="documentfragment" data-spec="DOM4" class="externalDFN">DocumentFragment</a></code>
+            </dt><dd><ol>
+                <li>Let <var>markup</var> the empty string.
+
+                </li><li>For each
+                <a title="concept-tree-child" data-spec="DOM4" class="externalDFN">child</a> of
+                <var>node</var>, in order,
+                <a class="internalDFN" href="#dfn-concept-serialize-xml" title="concept-serialize-xml">produce an XML serialization</a>
+                of the child and concatenate the result to <var>markup</var>.
+
+                </li><li>Return <var>markup</var>.
+              </li></ol>
+            </dd><dt><code><a title="documenttype" data-spec="DOM4" class="externalDFN">DocumentType</a></code>
+            </dt><dd>Run the steps to <a class="internalDFN" href="#dfn-concept-serialize-doctype" title="concept-serialize-doctype">produce a DocumentType 
+                serialization</a> of <var>node</var>
+                and return the string this produced.           
+            
+            </dd><dt><code><a title="processinginstruction" data-spec="DOM4" class="externalDFN">ProcessingInstruction</a></code>
+            </dt><dd><ol>
+                <li>Let <var>markup</var> be the concatenation of "<code>&lt;?</code>", 
+                <var>node</var>'s
+                <code><a title="dom-characterdata-data" data-spec="DOM4" class="externalDFN">data</a></code>, 
+                and "<code>?&gt;</code>".
+
+                <!-- This does not actually appear to be the case in implementations today.
+                <p>If <var>data</var> doesn't match the
+                  <code><a title="NT-PI" data-spec="XML10" class="externalDFN">PI</a></code> production, throw a
+                  <code><a title=domexception data-spec="DOM4" class="externalDFN">DOMException</a></code>
+                  with name <code>InvalidStateError</code> and terminate the entire algorithm.
+                -->
+                
+                </li><li>Return <var>markup</var>.
+              </li></ol>
+            <div class="note"><div id="h_note_6" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">ProcessingInstruction objects may be created by the historical 
+            <code>document.createProcessingInstruction</code> API, or as a result of parsing an
+            <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>.
+         
+        </p></div></dd></dl>
+
+        <p>To <dfn id="dfn-concept-serialize-doctype" title="concept-serialize-doctype">produce a DocumentType serialization</dfn> of a
+        <a title="node" data-spec="DOM4" class="externalDFN">Node</a> <var>node</var>, the user agent
+        must return the result of the following algorithm:</p>
+                
+        <ol>
+            <li>Let <var>markup</var> be an empty string.
+            </li><li>Append the string "<code>&lt;!DOCTYPE</code>" to <var>markup</var>.
+            </li><li>Append "<code> </code>" (U+0020 SPACE) to <var>markup</var>.
+            </li><li>Append the value of the <var>node</var>'s 
+                <code><a title="dom-documenttype-name" data-spec="DOM4" class="externalDFN">name</a></code>
+                attribute to <var>markup</var>. For a <var>node</var> belonging to an
+                <a title="html-document" data-spec="DOM4" class="externalDFN">HTML document</a>,
+                the value will be all lowercase.
+            </li><li>If the <var>node</var>'s 
+                <code><a title="dom-documenttype-publicid" data-spec="DOM4" class="externalDFN">publicId</a></code>
+                is not the empty string then append the following, in order, to <var>markup</var>:
+                <ol>
+                    <li>"<code> </code>" (U+0020 SPACE);
+                    </li><li>The string "<code>PUBLIC</code>";
+                    </li><li>"<code> </code>" (U+0020 SPACE);
+                    </li><li>"<code>"</code>" (U+0022 QUOTATION MARK);
+                    </li><li>The value of the <var>node</var>'s 
+                        <code><a title="dom-documenttype-publicid" data-spec="DOM4" class="externalDFN">publicId</a></code>
+                        attribute;
+                    </li><li>"<code>"</code>" (U+0022 QUOTATION MARK);
+                </li></ol>
+            </li>
+            <li>If the <var>node</var>'s 
+                <code><a title="dom-documenttype-systemid" data-spec="DOM4" class="externalDFN">systemId</a></code>
+                is not the empty string and the <var>node</var>'s 
+                <code><a title="dom-documenttype-publicid" data-spec="DOM4" class="externalDFN">publicId</a></code>
+                is set to the empty string, then append the following, in order, to <var>markup</var>:
+                <ol>
+                    <li>"<code> </code>" (U+0020 SPACE);
+                    </li><li>The string "<code>SYSTEM</code>";
+                </li></ol>
+            </li>
+            <li>If the <var>node</var>'s 
+                <code><a title="dom-documenttype-systemid" data-spec="DOM4" class="externalDFN">systemId</a></code>
+                is not the empty string then append the following, in order, to <var>markup</var>:
+                <ol>
+                    <li>"<code> </code>" (U+0020 SPACE);
+                    </li><li>"<code>"</code>" (U+0022 QUOTATION MARK);
+                    </li><li>The value of the <var>node</var>'s 
+                        <code><a title="dom-documenttype-systemid" data-spec="DOM4" class="externalDFN">systemId</a></code>
+                        attribute;
+                    </li><li>"<code>"</code>" (U+0022 QUOTATION MARK);
+                </li></ol>
+            </li>
+            <li>Optional: if the <var>node</var> has an (historical) 
+                <code><a title="ID-Core-DocType-internalSubset" data-spec="DOM3" class="externalDFN">internalSubset</a></code>
+                and the
+                <code><a title="ID-Core-DocType-internalSubset" data-spec="DOM3" class="externalDFN">internalSubset</a></code>
+                attribute's value is a non-empty string, then append the following,
+                in order, to <var>markup</var>:
+                <ol>
+                    <li>"<code> </code>" (U+0020 SPACE);
+                    </li><li>"<code>[</code>" (U+005B LEFT SQUARE BRACKET);
+                    </li><li>The value of the <var>node</var>'s 
+                        <code><a title="ID-Core-DocType-internalSubset" data-spec="DOM3" class="externalDFN">internalSubset</a></code>
+                        attribute;
+                    </li><li>"<code>]</code>" (U+005D RIGHT SQUARE BRACKET);
+                </li></ol>
+                <div class="note"><div id="h_note_7" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">A <var>node</var> belonging to an
+                   <a title="html-document" data-spec="DOM4" class="externalDFN">HTML document</a>
+                   will never have an 
+                   <code><a title="ID-Core-DocType-internalSubset" data-spec="DOM3" class="externalDFN">internalSubset</a></code>
+                   because any <code><a title="ID-Core-DocType-internalSubset" data-spec="DOM3" class="externalDFN">internalSubset</a></code>
+                   markup is ignored by the parser.</p></div>
+            </li>
+            <li>Append "<code>&gt;</code>" (U+003E GREATER-THAN SIGN) to <var>markup</var>.
+        </li></ol>
+
+        
+        <p>The <dfn id="dfn-concept-serialize-xml-attributes" title="concept-serialize-xml-attributes">XML serialization of the attributes</dfn>
+        of an <a title="concept-element" data-spec="DOM4" class="externalDFN">element</a>
+        <var>element</var> together with a prefix list <var>prefixes</var> is the result of the 
+        following algorithm:
+
+        </p><ol>
+            <li>Let <var>result</var> be the empty string.
+            </li><li>For each
+                <a title="concept-attribute" data-spec="DOM4" class="externalDFN">attribute</a>
+                <var>attr</var> in <var>element</var>'s
+                <a title="concept-element-attribute" data-spec="DOM4" class="externalDFN">attributes</a>,
+                in order:
+                <ol>
+                    <li>Append the following strings to <var>result</var>:
+                        <ol>
+                            <li>"<code> </code>" (U+0020 SPACE);
+                            </li><li><var>attr</var>'s
+                            <a title="concept-attribute-name" data-spec="DOM4" class="externalDFN">name</a>;
+                            <!--<p class="issue">escaping / throwing  NO issues here to my knowledge -->
+                            </li><li>"<code>="</code>" (U+003D EQUALS SIGN, U+0022 QUOTATION MARK);
+                            </li><li><var>attr</var>'s
+                            <a title="concept-attribute-value" data-spec="DOM4" class="externalDFN">value</a>,
+                            replacing any occurrences of the following:
+                            <ol>
+                                <li>"<code>"</code>" with "<code>&amp;quot;</code>"
+                                </li><li>"<code>&amp;</code>" with "<code>&amp;amp;</code>"
+                            </li></ol>
+                            </li><li>"<code>"</code>" (U+0022 QUOTATION MARK).
+                        </li></ol>
+                    </li><li>If the first six characters of the value of <var>attr</var>'s 
+                        <a title="concept-attribute-name" data-spec="DOM4" class="externalDFN">name</a> 
+                        attribute case-sensitively match the string "<code>xmlns:</code>", then:
+                        <ol>
+                            <li>Let <var>prefix definition</var> be the result of trimming 
+                                "<code>xmlns:</code>" from the beginning of the value of <var>attr</var>'s 
+                                <a title="concept-attribute-name" data-spec="DOM4" class="externalDFN">name</a>.
+                            </li><li>Add the value of <var>prefix definition</var> to <var>prefixes</var>. 
+                                Since this namespace prefix definition has been serialized, it is 
+                                unnecessary to serialize it again if subsequently encountered in 
+                                <var>element</var>'s children.
+                        </li></ol>
+                </li></ol>
+            </li><li>Return <var>result</var>.
+        </li></ol>
+    </section>
+</section>
+
+<section id="the-domparser-interface">
+    <!--OddPage--><h2 id="h2_the-domparser-interface" role="heading" aria-level="1"><span class="secno">4. </span>The <code>DOMParser</code> interface</h2>
+    
+<pre class="extraidl">enum <span class="idlInterfaceID">SupportedType</span> {
+    "text/html",
+    "text/xml",
+    "application/xml",
+    "application/xhtml+xml",
+    "image/svg+xml"
+};</pre>
+
+    <p>The <dfn id="dfn-dom-domparser" title="dom-DOMParser"><code>DOMParser()</code></dfn> constructor
+    must return a new <code>DOMParser</code> object.
+
+    </p><pre class="idl"><span class="idlInterface" id="idl-def-DOMParser">[<span class="extAttr">Constructor</span>]
+interface <span class="idlInterfaceID">DOMParser</span> {
+<span class="idlMethod">    <span class="idlMethType">Document</span> <span class="idlMethName"><a href="#widl-DOMParser-parseFromString-Document-DOMString-str-SupportedType-type">parseFromString</a></span> (<span class="idlParam"><span class="idlParamType">DOMString</span> <span class="idlParamName">str</span></span>, <span class="idlParam"><span class="idlParamType">SupportedType</span> <span class="idlParamName">type</span></span>);</span>
+};</span></pre><section id="methods"><h3 id="h3_methods" role="heading" aria-level="2"><span class="secno">4.1 </span>Methods</h3><dl class="methods"><dt id="widl-DOMParser-parseFromString-Document-DOMString-str-SupportedType-type"><code>parseFromString</code></dt><dd>
+            <p>The
+            <dfn id="dfn-dom-domparser-parsefromstring" title="dom-DOMParser-parseFromString"><code>parseFromString(<var>str</var>, <var>type</var>)</code></dfn>
+            method must run these steps, depending on <var>type</var>:
+
+            </p><dl class="switch">
+                <dt>"<code>text/html</code>"
+                </dt><dd>
+                <p>Parse <var>str</var> with an
+                <code><a data-spec="HTML5" title="html-parser" class="externalDFN">HTML parser</a></code>, and return the newly
+                created <a title="concept-document" data-spec="DOM4" class="externalDFN">document</a>.
+
+                </p><p>The <a data-spec="HTML5" title="scripting-flag" class="externalDFN">scripting flag</a> must be set to
+                "disabled".
+
+                </p><div class="note"><div id="h_note_8" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class=""><code><a data-spec="HTML5" title="meta" class="externalDFN">meta</a></code> elements are not
+                taken into account for the encoding used, as a Unicode stream is passed into
+                the parser.
+
+                </p></div><div class="note"><div id="h_note_9" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class=""><code><a data-spec="HTML5" title="script" class="externalDFN">script</a></code> elements get marked
+                unexecutable and the contents of <code><a data-spec="HTML5" title="noscript" class="externalDFN">noscript</a></code>
+                get parsed as markup.
+
+                </p></div></dd><dt>"<code>text/xml</code>"
+                </dt><dt>"<code>application/xml</code>"
+                </dt><dt>"<code>application/xhtml+xml</code>"
+                </dt><dt>"<code>image/svg+xml</code>"
+                </dt><dd>
+                <ol>
+                    <li>Parse <var>str</var> with a namespace-enabled
+                    <code><a data-spec="HTML5" title="xml-parser" class="externalDFN">XML parser</a></code>.
+
+                    </li><li>If the previous step didn't return an error, return the newly
+                    created <a title="concept-document" data-spec="DOM4" class="externalDFN">document</a>
+                    and terminate these steps.
+
+                    </li><li>Otherwise, throw a 
+                    <a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a> 
+                    with name <code>SyntaxError</code>.
+                    
+                    <div class="note"><div id="h_note_10" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">Some UAs do not throw an exception, but rather return a minimal 
+                    well-formed XML document that describes the error. In these cases, the error 
+                    document's root element will be named <code>parsererror</code> and its namespace
+                    will be set to "<code>http://www.mozilla.org/newlayout/xml/parsererror.xml</code>".
+                    
+                    <!--
+                    It does not make sense to pave the cow paths by standardizing the 
+                    mozilla error handling approach, when there is clear objection to that approach
+                    from web developers who expect success to load the document they want, rather
+                    than an error document. Browsers are reluctant to change behavior due to web
+                    compatibility, but IE has thrown in these cases for multiple releases now without
+                    any significant compatibility impact, and thus it seems feasable to spec the 
+                    simpler and developer-expected behavior here.
+                    appropriate behavior here.
+                    
+                    <li>Let <var>document</var> be a newly-created
+                    <code><a data-spec="DOM4" title="xmldocument" class="externalDFN">XMLDocument</a></code>.
+
+                    <li>
+                    <p>Let <var>root</var> be a new
+                    <code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code>, with its
+                    <a title=concept-element-local-name data-spec="DOM4" class="externalDFN">local name</a>
+                    set to "<code>parsererror</code>" and its
+                    <a title=concept-element-namespace data-spec="DOM4" class="externalDFN">namespace</a>
+                    set to
+                    "<code>http://www.mozilla.org/newlayout/xml/parsererror.xml</code>".
+                    <!-- see https://bugzilla.mozilla.org/show_bug.cgi?id=45566 --><!--
+                    <p>At this point user agents may
+                    <a data-spec="DOM4" title=concept-node-append class="externalDFN">append</a> nodes
+                    to <var>root</var>, for example to describe the nature of the
+                    error.
+
+                    <li><a data-spec="DOM4" title="concept-node-append" class="externalDFN">Append</a>
+                    <var>root</var> to <var>document</var>.
+
+                    <li>Return <var>document</var>.
+                    -->
+                </p></div></li></ol>
+            </dd></dl>
+
+            <p>In any case, the returned
+            <a title="concept-document" data-spec="DOM4" class="externalDFN">document</a>'s
+            <a title="concept-document-content-type" data-spec="DOM4" class="externalDFN">content type</a>
+            must be the <var>type</var> argument. Additionally, the 
+            <a title="concept-document" data-spec="DOM4" class="externalDFN">document</a> must have a
+            <a title="concept-document-url" data-spec="DOM4" class="externalDFN">URL</a> value equal to 
+            the URL of the 
+            <a title="active-document" data-spec="HTML5" class="externalDFN">active document</a>, a 
+            <a title="location" data-spec="HTML5" class="externalDFN">location</a> value of <code>null</code>.
+
+            </p><div class="note"><div id="h_note_11" role="heading" aria-level="3" class="note-title"><span>Note</span></div><p class="">The returned
+            <a title="concept-document" data-spec="DOM4" class="externalDFN">document</a>'s
+            <a title="concept-document-encoding" data-spec="DOM4" class="externalDFN">encoding</a> is
+            the default, UTF-8.
+        </p></div><table class="parameters"><tbody><tr><th>Parameter</th><th>Type</th><th>Nullable</th><th>Optional</th><th>Description</th></tr><tr><td class="prmName">str</td><td class="prmType"><code>DOMString</code></td><td class="prmNullFalse"><span role="img" aria-label="False">✘</span></td><td class="prmOptFalse"><span role="img" aria-label="False">✘</span></td><td class="prmDesc"></td></tr><tr><td class="prmName">type</td><td class="prmType"><code>SupportedType</code></td><td class="prmNullFalse"><span role="img" aria-label="False">✘</span></td><td class="prmOptFalse"><span role="img" aria-label="False">✘</span></td><td class="prmDesc"></td></tr></tbody></table><div><em>Return type: </em><code>Document</code></div></dd></dl></section>
+</section>
+
+<section id="the-xmlserializer-interface">
+    <!--OddPage--><h2 id="h2_the-xmlserializer-interface" role="heading" aria-level="1"><span class="secno">5. </span>The <code>XMLSerializer</code> interface</h2>
+
+    <p>The <dfn id="dfn-dom-xmlserializer" title="dom-XMLSerializer"><code>XMLSerializer()</code></dfn>
+    constructor must return a new <code>XMLSerializer</code> object.
+
+    </p><pre class="idl"><span class="idlInterface" id="idl-def-XMLSerializer">[<span class="extAttr">Constructor</span>]
+interface <span class="idlInterfaceID">XMLSerializer</span> {
+<span class="idlMethod">    <span class="idlMethType">DOMString</span> <span class="idlMethName"><a href="#widl-XMLSerializer-serializeToString-DOMString-Node-root">serializeToString</a></span> (<span class="idlParam"><span class="idlParamType">Node</span> <span class="idlParamName">root</span></span>);</span>
+};</span></pre><section id="methods-1"><h3 id="h3_methods-1" role="heading" aria-level="2"><span class="secno">5.1 </span>Methods</h3><dl class="methods"><dt id="widl-XMLSerializer-serializeToString-DOMString-Node-root"><code>serializeToString</code></dt><dd>The <code>serializeToString(<var>root</var>)</code>
+        method must <a class="internalDFN" href="#dfn-concept-serialize-xml" title="concept-serialize-xml">produce an XML serialization</a> of <var>root</var> and return the result.<table class="parameters"><tbody><tr><th>Parameter</th><th>Type</th><th>Nullable</th><th>Optional</th><th>Description</th></tr><tr><td class="prmName">root</td><td class="prmType"><code>Node</code></td><td class="prmNullFalse"><span role="img" aria-label="False">✘</span></td><td class="prmOptFalse"><span role="img" aria-label="False">✘</span></td><td class="prmDesc"></td></tr></tbody></table><div><em>Return type: </em><code>DOMString</code></div></dd></dl></section>
+</section>
+
+<section id="extensions-to-the-element-interface">
+    <!--OddPage--><h2 id="h2_extensions-to-the-element-interface" role="heading" aria-level="1"><span class="secno">6. </span>Extensions to the <code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code> interface</h2>
+
+    <pre class="idl"><span class="idlInterface" id="idl-def-Element">partial interface <span class="idlInterfaceID">Element</span> {
+<span class="idlAttribute">    [<span class="extAttr">TreatNullAs=EmptyString</span>]
+                attribute <span class="idlAttrType">DOMString</span> <span class="idlAttrName"><a href="#widl-Element-innerHTML">innerHTML</a></span>;</span>
+<span class="idlAttribute">    [<span class="extAttr">TreatNullAs=EmptyString</span>]
+                attribute <span class="idlAttrType">DOMString</span> <span class="idlAttrName"><a href="#widl-Element-outerHTML">outerHTML</a></span>;</span>
+<span class="idlMethod">    <span class="idlMethType">void</span> <span class="idlMethName"><a href="#widl-Element-insertAdjacentHTML-void-DOMString-position-DOMString-text">insertAdjacentHTML</a></span> (<span class="idlParam"><span class="idlParamType">DOMString</span> <span class="idlParamName">position</span></span>, <span class="idlParam"><span class="idlParamType">DOMString</span> <span class="idlParamName">text</span></span>);</span>
+};</span></pre><section id="attributes"><h3 id="h3_attributes" role="heading" aria-level="2"><span class="secno">6.1 </span>Attributes</h3><dl class="attributes"><dt id="widl-Element-innerHTML"><code>innerHTML</code> of type <span class="idlAttrType">DOMString</span>,            </dt><dd>
+            <p>The <dfn id="dfn-dom-element-innerhtml" title="dom-Element-innerHTML"><code>innerHTML</code></dfn> IDL
+            attribute represents the markup of the
+            <code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code>'s contents.
+
+            </p><dl class="domintro">
+                <!--doc.ih
+                <dt><var>document</var> . <code title=dom-Document-innerHTML>innerHTML</code> [ = <var>value</var> ]
+                <dd>
+                <p>Returns a fragment of HTML or XML that represents the
+                <code><a title="document" data-spec="DOM4" class="externalDFN">Document</a></code>.
+
+                <p>Can be set, to replace the
+                <code><a title="document" data-spec="DOM4" class="externalDFN">Document</a></code>'s contents with the result of
+                parsing the given string.
+
+                <p>In the case of an <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>,
+                will throw an
+                <code><a data-spec="DOM4" title=domexception class="externalDFN">DOMException</a></code> with name <code>InvalidStateError</code>
+                if the <code><a title="document" data-spec="DOM4" class="externalDFN">Document</a></code> cannot be serialized
+                to XML, and a
+                <code><a data-spec="DOM4" title=domexception class="externalDFN">DOMException</a></code> with name <code>SyntaxError</code>
+                if the given string is not well-formed.
+                -->
+
+                <dt><var>element</var> . <code title="dom-Element-innerHTML">innerHTML</code> [ = <var>value</var> ]
+                </dt><dd>
+                <p>Returns a fragment of HTML or XML that represents the element's
+                contents.
+
+                </p><p>Can be set, to replace the contents of the element with nodes
+                parsed from the given string.
+
+                </p><p>In the case of an <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>,
+                will throw a
+                <code><a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a></code> with name <code>InvalidStateError</code>
+                if the <code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code> cannot be serialized
+                to XML, and a
+                <code><a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a></code> with name <code>SyntaxError</code>
+                if the given string is not well-formed.
+            </p></dd></dl>
+
+            <p>On getting, if the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+            <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+            is an <a title="html-document" data-spec="DOM4" class="externalDFN">HTML document</a>, then the attribute
+            must return the result of running the
+            <a data-spec="HTML5" title="html-fragment-serialization-algorithm" class="externalDFN">HTML fragment serialization algorithm</a> on the
+            <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>; otherwise, the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+            <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+            is an <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>, and the attribute must
+            return the result of running the        
+            <a data-spec="HTML5" title="xml-fragment-serialization-algorithm" class="externalDFN">XML fragment serialization algorithm</a> on the
+            <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a> instead (this might throw an
+            exception instead of returning a string).
+
+            </p><p>On setting, these steps must be run:
+
+            </p><ol>
+                <li>Let <var>fragment</var> be the result of invoking the
+                <a class="internalDFN" href="#dfn-concept-parse-fragment" title="concept-parse-fragment">fragment parsing algorithm</a> with
+                the new value as <var>markup</var>, and the
+                <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a> as the <var>context element</var>.
+
+                </li><li><a data-spec="DOM4" title="concept-node-replace-all" class="externalDFN">Replace all</a>
+                with <var>fragment</var> within the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>.
+            </li></ol>
+        </dd><dt id="widl-Element-outerHTML"><code>outerHTML</code> of type <span class="idlAttrType">DOMString</span>,            </dt><dd>
+            <p>The <dfn id="dfn-dom-element-outerhtml" title="dom-Element-outerHTML"><code>outerHTML</code></dfn> IDL
+            attribute represents the markup of the
+            <code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code> and its contents.
+
+            </p><dl class="domintro">
+              <dt><var>element</var> . <code title="dom-Element-outerHTML">outerHTML</code> [ = <var>value</var> ]
+              </dt><dd>
+                <p>Returns a fragment of HTML or XML that represents the element and its
+                contents.
+
+                </p><p>Can be set, to replace the element with nodes parsed from the given
+                string.
+
+                </p><p>In the case of an <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>,
+                will throw a
+                <code><a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a></code> with name <code>InvalidStateError</code>
+                if the element cannot be serialized to XML, and a
+                <code><a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a></code> with name <code>SyntaxError</code>
+                if the given string is not well-formed.
+
+                </p><p>Throws a
+                <code><a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a></code> with name <code>NoModificationAllowedError</code>
+                if the parent of the element is the
+                <code><a title="document" data-spec="DOM4" class="externalDFN">Document</a></code> node.
+            </p></dd></dl>
+
+            <p>On getting, if the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+            <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+            is an <a title="html-document" data-spec="DOM4" class="externalDFN">HTML document</a>, then the attribute
+            must return the result of running the
+            <a data-spec="HTML5" title="html-fragment-serialization-algorithm" class="externalDFN">HTML fragment serialization algorithm</a> on a
+            fictional node whose only child is <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>; otherwise, the
+            <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+            <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+            is an <a title="xml-document" data-spec="DOM4" class="externalDFN">XML document</a>, and the attribute must
+            return the result of running the
+            <a data-spec="HTML5" title="xml-fragment-serialization-algorithm" class="externalDFN">XML fragment serialization algorithm</a> on that
+            fictional node instead (this might throw an exception instead of returning a
+            string).
+
+            </p><p>On setting, the following steps must be run:
+
+            </p><ol>
+                <li>Let <var>parent</var> be the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                <a data-spec="DOM4" title="concept-tree-parent" class="externalDFN">parent</a>.
+
+                </li><li>If <var>parent</var> is null, terminate these steps. There would be no
+                way to obtain a reference to the nodes created even if the remaining steps
+                were run.
+
+                </li><li>If <var>parent</var> is a
+                <code><a title="document" data-spec="DOM4" class="externalDFN">Document</a></code>, throw a
+                <code><a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a></code> with name <code>NoModificationAllowedError</code>
+                exception and terminate these steps.
+
+                </li><li>If <var>parent</var> is a
+                <code><a title="documentfragment" data-spec="DOM4" class="externalDFN">DocumentFragment</a></code>, let
+                <var>parent</var> be a new
+                <code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code> with
+
+                <ul>
+                    <li><code>body</code> as its
+                    <a data-spec="DOM4" title="concept-element-local-name" class="externalDFN">local name</a>,
+
+                    </li><li>the <a data-spec="DOM4" title="html-namespace" class="externalDFN">HTML namespace</a> as its
+                    <a data-spec="DOM4" title="concept-element-namespace" class="externalDFN">namespace</a>, and
+                    </li><li>the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                    <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+                    as its
+                    <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>.
+                </li></ul>
+
+                </li><li>Let <var>fragment</var> be the result of invoking the
+                <a class="internalDFN" href="#dfn-concept-parse-fragment" title="concept-parse-fragment">fragment parsing algorithm</a> with
+                the new value as <var>markup</var>, and <var>parent</var> as
+                the <var>context element</var>.
+
+                </li><li><a data-spec="DOM4" title="concept-node-replace" class="externalDFN">Replace</a>
+                the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a> with <var>fragment</var> within
+                the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                <a data-spec="DOM4" title="concept-tree-parent" class="externalDFN">parent</a>.
+            </li></ol>
+        </dd></dl></section><section id="methods-2"><h3 id="h3_methods-2" role="heading" aria-level="2"><span class="secno">6.2 </span>Methods</h3><dl class="methods"><dt id="widl-Element-insertAdjacentHTML-void-DOMString-position-DOMString-text"><code>insertAdjacentHTML</code></dt><dd>
+             <dl class="domintro">
+                  <dt><var>element</var> . <code title="dom-Element-insertAdjacentHTML">insertAdjacentHTML</code>(<var>position</var>, <var>text</var>)
+
+                  </dt><dd>
+                    <p>Parses the given string <var>text</var> as HTML or XML and inserts
+                    the resulting nodes into the tree in the position given by the
+                    <var>position</var> argument, as follows:
+
+                    </p><dl>
+                      <dt>"beforebegin"
+                      </dt><dd>Before the element itself.
+
+                      </dd><dt>"afterbegin"
+                      </dt><dd>Just inside the element, before its first child.
+
+                      </dd><dt>"beforeend"
+                      </dt><dd>Just inside the element, after its last child.
+
+                      </dd><dt>"afterend"
+                      </dt><dd>After the element itself.
+                    </dd></dl>
+
+                    <p>Throws a <code>SyntaxError</code> exception if the arguments have invalid values (e.g., in the case of an
+                    <a data-spec="DOM4" title="XML-document" class="externalDFN">XML document</a>, if the given string is
+                    not well-formed).
+
+                    </p><p>Throws a
+                    <code><a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a></code> with name <code>NoModificationAllowedError</code>
+                    if the given position isn't possible (e.g. inserting elements
+                    after the root element of a <code><a title="document" data-spec="DOM4" class="externalDFN">Document</a></code>).
+                </p></dd></dl>
+
+                <p>The
+                <dfn id="dfn-dom-element-insertadjacenthtml" title="dom-Element-insertAdjacentHTML"><code>insertAdjacentHTML(<var>position</var>, <var>text</var>)</code></dfn>
+                method must run these steps:
+
+                </p><ol>
+                    <li>Use the first matching item from this list:
+
+                    <dl class="switch">
+                        <dt>If <var>position</var> is an
+                        <a data-spec="DOM4" class="externalDFN" title="ascii-case-insensitive">ASCII case-insensitive</a> match for
+                        the string "beforebegin"
+
+                        </dt><dt>If <var>position</var> is an
+                        <a data-spec="DOM4" class="externalDFN" title="ascii-case-insensitive">ASCII case-insensitive</a> match for
+                        the string "afterend"
+
+                        </dt><dd>
+                            <p>Let <var>context</var> be the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                            <a data-spec="DOM4" title="concept-tree-parent" class="externalDFN">parent</a>.
+
+                            </p><p>If <var>context</var> is null or a
+                            <a data-spec="DOM4" class="externalDFN" title="concept-document">document</a>, throw
+                            a
+                            <code><a data-spec="DOM4" title="domexception" class="externalDFN">DOMException</a></code> with name <code>NoModificationAllowedError</code>
+                            and terminate these steps.
+
+                        </p></dd><dt>If <var>position</var> is an
+                        <a data-spec="DOM4" class="externalDFN" title="ascii-case-insensitive">ASCII case-insensitive</a> match for
+                        the string "afterbegin"
+
+                        </dt><dt>If <var>position</var> is an
+                        <a data-spec="DOM4" class="externalDFN" title="ascii-case-insensitive">ASCII case-insensitive</a> match for
+                        the string "beforeend"
+
+                        </dt><dd>Let <var>context</var> be the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>.
+
+                        </dd><dt>Otherwise
+                        </dt><dd>
+                            <p>Throw a <code>SyntaxError</code> exception.
+                    </p></dd></dl>
+
+                  </li><li>If <var>context</var> is not an
+                    <code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code> or the following are all true:
+
+                    <ul>
+                      <li><var>context</var>'s
+                      <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+                      is an <a title="html-document" data-spec="DOM4" class="externalDFN">HTML document</a>,
+
+                      </li><li><var>context</var>'s
+                      <a data-spec="DOM4" title="concept-element-local-name" class="externalDFN">local name</a>
+                      is "<code>html</code>", and
+
+                      </li><li><var>context</var>'s
+                      <a data-spec="DOM4" title="concept-element-namespace" class="externalDFN">namespace</a>
+                      is the <a data-spec="DOM4" title="html-namespace" class="externalDFN">HTML namespace</a>;
+                    </li></ul>
+
+                    <p>let <var>context</var> be a new
+                    <code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code> with
+
+                    </p><ul>
+                      <li><code>body</code> as its
+                      <a data-spec="DOM4" title="concept-element-local-name" class="externalDFN">local name</a>,
+
+                      </li><li>the <a data-spec="DOM4" title="html-namespace" class="externalDFN">HTML namespace</a> as its
+                      <a data-spec="DOM4" title="concept-element-namespace" class="externalDFN">namespace</a>, and
+
+                      </li><li>the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                      <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+                      as its
+                      <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>.
+                    </li></ul>
+
+                </li><li>Let <var>fragment</var> be the result of invoking the
+                <a class="internalDFN" href="#dfn-concept-parse-fragment" title="concept-parse-fragment">fragment parsing algorithm</a> with <var>text</var> as 
+                <var>markup</var>, and <var>parent</var> as the <var>context element</var>.
+
+                </li><li>Use the first matching item from this list:
+
+                <dl class="switch">
+                    <dt>If <var>position</var> is an
+                    <a data-spec="DOM4" class="externalDFN" title="ascii-case-insensitive">ASCII case-insensitive</a> match for
+                    the string "beforebegin"
+            
+                    </dt><dd><a data-spec="DOM4" title="concept-node-insert" class="externalDFN">Insert</a>
+                    <var>fragment</var> into the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                    <a data-spec="DOM4" title="concept-tree-parent" class="externalDFN">parent</a>
+                    before the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>.
+
+                    </dd><dt>If <var>position</var> is an
+                    <a data-spec="DOM4" class="externalDFN" title="ascii-case-insensitive">ASCII case-insensitive</a> match for
+                    the string "afterbegin"
+
+                    </dt><dd><a data-spec="DOM4" title="concept-node-insert" class="externalDFN">Insert</a>
+                    <var>fragment</var> into the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>
+                    before its
+                    <a data-spec="DOM4" title="concept-tree-first-child" class="externalDFN">first child</a>.
+
+                    </dd><dt>If <var>position</var> is an
+                    <a data-spec="DOM4" class="externalDFN" title="ascii-case-insensitive">ASCII case-insensitive</a> match for
+                    the string "beforeend"
+
+                    </dt><dd><a data-spec="DOM4" title="concept-node-append" class="externalDFN">Append</a>
+                    <var>fragment</var> to the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>.
+
+                    </dd><dt>If <var>position</var> is an
+                    <a data-spec="DOM4" class="externalDFN" title="ascii-case-insensitive">ASCII case-insensitive</a> match for
+                    the string "afterend"
+
+                    </dt><dd><a data-spec="DOM4" title="concept-node-insert" class="externalDFN">Insert</a>
+                    <var>fragment</var> into the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                    <a data-spec="DOM4" title="concept-tree-parent" class="externalDFN">parent</a>
+                    before the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                    <a data-spec="DOM4" title="concept-tree-next-sibling" class="externalDFN">next sibling</a>.
+                </dd></dl>
+            </li></ol>
+        <table class="parameters"><tbody><tr><th>Parameter</th><th>Type</th><th>Nullable</th><th>Optional</th><th>Description</th></tr><tr><td class="prmName">position</td><td class="prmType"><code>DOMString</code></td><td class="prmNullFalse"><span role="img" aria-label="False">✘</span></td><td class="prmOptFalse"><span role="img" aria-label="False">✘</span></td><td class="prmDesc"></td></tr><tr><td class="prmName">text</td><td class="prmType"><code>DOMString</code></td><td class="prmNullFalse"><span role="img" aria-label="False">✘</span></td><td class="prmOptFalse"><span role="img" aria-label="False">✘</span></td><td class="prmDesc"></td></tr></tbody></table><div><em>Return type: </em><code>void</code></div></dd></dl></section>
+</section>
+
+<!-- Dropping this extention as it is not implemented, nor does it appear that any browser
+     is currently interested in supporting it. Perhaps it can come back in a V2 of this spec
+     if browsers become interested.
+<section>
+    <h1>Extensions to the <code><a title="text" data-spec="DOM4" class="externalDFN">Text</a></code> interface</h1>
+
+    <dl class="idl" title="partial interface Text">
+        <dt>attribute boolean serializeAsCDATA</dt>
+        <dd>
+            <dl class=domintro>
+              <dt><var>text</var> .
+                  <code title=dom-Text-serializeAsCDATA>serializeAsCDATA</code> [ = <var>value</var> ]
+              <dd>Controls whether, in XML, this node is serialized as a CDATA section.
+            </dl>
+
+            <p><code><a title="text" data-spec="DOM4" class="externalDFN">Text</a></code> nodes have an additional
+            associated flag, the <dfn>serialize as CDATA flag</dfn>.
+
+            <p>The
+            <dfn title=dom-Text-serializeAsCDATA><code>serializeAsCDATA</code></dfn>
+            attribute must return true if the <a title="context object">context object</a> has its
+            <a>serialize as CDATA flag</a> set, or false otherwise.
+
+            <p>Setting the <code title=dom-Text-serializeAsCDATA>serializeAsCDATA</code>
+            attribute must, if the new value is true, set the
+            <a title="context object">context object</a>'s <a>serialize as CDATA flag</a>, or unset
+            it otherwise.
+        </dd>
+    </dl>
+</section>
+-->
+
+<section id="extensions-to-the-range-interface">
+    <!--OddPage--><h2 id="h2_extensions-to-the-range-interface" role="heading" aria-level="1"><span class="secno">7. </span>Extensions to the <code><a data-spec="DOM4" title="range" class="externalDFN">Range</a></code> interface</h2>
+
+    <pre class="idl"><span class="idlInterface" id="idl-def-Range">partial interface <span class="idlInterfaceID">Range</span> {
+<span class="idlMethod">    <span class="idlMethType">DocumentFragment</span> <span class="idlMethName"><a href="#widl-Range-createContextualFragment-DocumentFragment-DOMString-fragment">createContextualFragment</a></span> (<span class="idlParam"><span class="idlParamType">DOMString</span> <span class="idlParamName">fragment</span></span>);</span>
+};</span></pre><section id="methods-3"><h3 id="h3_methods-3" role="heading" aria-level="2"><span class="secno">7.1 </span>Methods</h3><dl class="methods"><dt id="widl-Range-createContextualFragment-DocumentFragment-DOMString-fragment"><code>createContextualFragment</code></dt><dd>
+            <dl class="domintro">
+              <dt><var>fragment</var> = <var>range</var> . <code title="dom-Range-createContextualFragment">createContextualFragment</code>(<var>fragment</var>)
+              </dt><dd>Returns a <code><a title="documentfragment" data-spec="DOM4" class="externalDFN">DocumentFragment</a></code>, created
+                from the markup string given.
+            </dd></dl>
+
+            <p>The
+            <dfn id="dfn-dom-range-createcontextualfragment" title="dom-Range-createContextualFragment"><code>createContextualFragment(<var>fragment</var>)</code></dfn>
+            method must run these steps:
+
+            </p><ol>
+                <li>Let <var>node</var> the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                <a data-spec="DOM4" title="concept-range-start-node" class="externalDFN">start node</a>.
+
+                <p>Let <var>element</var> be as follows, depending on <var>node</var>'s interface:
+
+                </p><dl class="switch">
+                    <dt><code><a title="document" data-spec="DOM4" class="externalDFN">Document</a></code>
+                    </dt><dt><code><a title="documentfragment" data-spec="DOM4" class="externalDFN">DocumentFragment</a></code>
+                    </dt><dd>null
+
+                    </dd><dt><code><a title="element" data-spec="DOM4" class="externalDFN">Element</a></code>
+                    </dt><dd><var>node</var>
+
+                    </dd><dt><code><a title="text" data-spec="DOM4" class="externalDFN">Text</a></code>
+                    </dt><dt><code><a title="comment" data-spec="DOM4" class="externalDFN">Comment</a></code>
+                    </dt><dd><var>node</var>'s
+                    <a data-spec="DOM4" class="externalDFN" title="parent-element">parent element</a>
+
+                    </dd><dt><code><a title="documenttype" data-spec="DOM4" class="externalDFN">DocumentType</a></code>
+                    </dt><dt><code><a title="processinginstruction" data-spec="DOM4" class="externalDFN">ProcessingInstruction</a></code>
+                    </dt><dd>[<cite><a href="#bib-DOM4" class="bibref">DOM4</a></cite>] prevents this case.
+                </dd></dl>
+
+                </li><li>If either <var>element</var> is null or the following are all true:
+
+                    <ul>
+                      <li><var>element</var>'s
+                      <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+                      is an <a title="html-document" data-spec="DOM4" class="externalDFN">HTML document</a>,
+
+                      </li><li><var>element</var>'s
+                      <a data-spec="DOM4" title="concept-element-local-name" class="externalDFN">local name</a>
+                      is "<code>html</code>", and
+
+                      </li><li><var>element</var>'s
+                      <a data-spec="DOM4" title="concept-element-namespace" class="externalDFN">namespace</a>
+                      is the <a data-spec="DOM4" title="html-namespace" class="externalDFN">HTML namespace</a>;
+                    </li></ul>
+
+                    <p>let <var>element</var> be a new
+                    <a data-spec="DOM4" title="concept-element" class="externalDFN">element</a> with
+
+                    </p><ul>
+                      <li>"<code>body</code>" as its
+                      <a data-spec="DOM4" title="concept-element-local-name" class="externalDFN">local name</a>,
+
+                      </li><li>the <a data-spec="DOM4" title="html-namespace" class="externalDFN">HTML namespace</a> as its
+                      <a data-spec="DOM4" title="concept-element-namespace" class="externalDFN">namespace</a>, and
+
+                      </li><li>the <a class="internalDFN" href="#dfn-context-object" title="context object">context object</a>'s
+                      <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>
+                      as its
+                      <a title="concept-node-document" data-spec="DOM4" class="externalDFN">node document</a>.
+                    </li></ul>
+
+                </li><li>Let <var>fragment node</var> be the result of invoking the
+                <a class="internalDFN" href="#dfn-concept-parse-fragment" title="concept-parse-fragment">fragment parsing algorithm</a> with <var>fragment</var> as 
+                <var>markup</var>, and <var>element</var> as the <var>context element</var>.
+
+                </li><li>Unmark all scripts in <var>fragment node</var> as "already started".
+
+                </li><li>Return <var>fragment node</var>.
+            </li></ol>
+        <table class="parameters"><tbody><tr><th>Parameter</th><th>Type</th><th>Nullable</th><th>Optional</th><th>Description</th></tr><tr><td class="prmName">fragment</td><td class="prmType"><code>DOMString</code></td><td class="prmNullFalse"><span role="img" aria-label="False">✘</span></td><td class="prmOptFalse"><span role="img" aria-label="False">✘</span></td><td class="prmDesc"></td></tr></tbody></table><div><em>Return type: </em><code>DocumentFragment</code></div></dd></dl></section>
+</section>
+
+<section id="acknowledgements" class="appendix">
+    <!--OddPage--><h2 id="h2_acknowledgements" role="heading" aria-level="1"><span class="secno">A. </span>Acknowledgements</h2>
+    <p>Thanks to Ms2ger [<a href="http://www.mozilla.org">Mozilla</a>] for maintaining the initial 
+       drafts of this specification and for its continued improvement in the 
+       <a href="http://domparsing.spec.whatwg.org/">Living Standard</a>.
+
+    </p><p>Thanks to Anne van Kesteren, Aryeh Gregor, Boris Zbarsky, Henri Sivonen, Simon Pieters and timeless
+    for their useful comments.
+
+    </p><p>Special thanks to Ian Hickson for defining the
+    <code title="dom-Element-innerHTML">innerHTML</code> and
+    <code title="dom-Element-outerHTML">outerHTML</code> attributes, and the
+    <code title="dom-Element-insertAdjacentHTML">insertAdjacentHTML()</code> method in
+    [<cite><a href="#bib-HTML5" class="bibref">HTML5</a></cite>] and his useful comments.
+</p></section>
+
+
+<section rel="bibo:Chapter" resource="#ref" typeof="bibo:Chapter" id="references" class="appendix"><!--OddPage--><h2 id="h2_references" role="heading" aria-level="1"><span class="secno">B. </span>References</h2><section rel="bibo:Chapter" resource="#ref" typeof="bibo:Chapter" id="normative-references"><h3 id="h3_normative-references" role="heading" aria-level="2"><span class="secno">B.1 </span>Normative references</h3><dl about="" class="bibliography"><dt id="bib-HTML5">[HTML5]</dt><dd rel="dcterms:requires">Robin Berjon; Steve Faulkner; Travis Leithead; Erika Doyle Navara; Edward O'Connor; Silvia Pfeiffer. <a href="http://www.w3.org/TR/html5/"><cite>HTML5</cite></a>. 6 August 2013. W3C Candidate Recommendation. URL: <a href="http://www.w3.org/TR/html5/">http://www.w3.org/TR/html5/</a>
+</dd><dt id="bib-RFC2119">[RFC2119]</dt><dd rel="dcterms:requires">S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words for use in RFCs to Indicate Requirement Levels.</cite></a> March 1997. Internet RFC 2119.  URL: <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a> 
+</dd><dt id="bib-WEBIDL">[WEBIDL]</dt><dd rel="dcterms:requires">Cameron McCormack. <a href="http://www.w3.org/TR/WebIDL/"><cite>Web IDL</cite></a>. 19 April 2012. W3C Candidate Recommendation. URL: <a href="http://www.w3.org/TR/WebIDL/">http://www.w3.org/TR/WebIDL/</a>
+</dd></dl></section><section rel="bibo:Chapter" resource="#ref" typeof="bibo:Chapter" id="informative-references"><h3 id="h3_informative-references" role="heading" aria-level="2"><span class="secno">B.2 </span>Informative references</h3><dl about="" class="bibliography"><dt id="bib-DOM4">[DOM4]</dt><dd rel="dcterms:references">Anne van Kesteren; Aryeh Gregor; Ms2ger; Alex Russell; Robin Berjon. <a href="http://www.w3.org/TR/dom/"><cite>W3C DOM4</cite></a>. 7 November 2013. W3C Working Draft. URL: <a href="http://www.w3.org/TR/dom/">http://www.w3.org/TR/dom/</a>
+</dd><dt id="bib-XML-NAMES">[XML-NAMES]</dt><dd rel="dcterms:references">Tim Bray; Dave Hollander; Andrew Layman; Richard Tobin; Henry Thompson et al. <a href="http://www.w3.org/TR/xml-names"><cite>Namespaces in XML 1.0 (Third Edition)</cite></a>. 8 December 2009. W3C Recommendation. URL: <a href="http://www.w3.org/TR/xml-names">http://www.w3.org/TR/xml-names</a>
+</dd><dt id="bib-XML10">[XML10]</dt><dd rel="dcterms:references">Tim Bray; Jean Paoli; Michael Sperberg-McQueen; Eve Maler; François Yergeau et al. <a href="http://www.w3.org/TR/xml"><cite>Extensible Markup Language (XML) 1.0 (Fifth Edition)</cite></a>. 26 November 2008. W3C Recommendation. URL: <a href="http://www.w3.org/TR/xml">http://www.w3.org/TR/xml</a>
+</dd></dl></section></section></body></html>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/respecConfig-LCWD.js	Tue Dec 03 18:23:21 2013 -0800
@@ -0,0 +1,35 @@
+// Configuration for the Editor's Draft of DOM Parsing and Serialization
+
+var respecConfig = {
+    subtitle: "DOMParser, XMLSerializer, innerHTML, and similar APIs",
+	specStatus: "LC",
+    lcEnd: "2014-01-01",
+    editors: [
+	    {
+			name: "Travis Leithead", 
+            company: "Microsoft",
+            mailto: "travis.leithead@microsoft.com",
+            companyURL: "http://www.microsoft.com"
+		}
+	],
+    //publishDate:  "2012-09-20",
+	edDraftURI: "http://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html",
+	previousPublishDate: "2012-09-20",
+    previousMaturity: "2012-09-20",
+    otherLinks: [
+        {
+            key: "WHATWG Living Standard",
+            data: [{ value: "http://domparsing.spec.whatwg.org/", href: "http://domparsing.spec.whatwg.org/"}]
+        }
+    ],
+    noIDLIn:  true,
+    inlineCSS:  true,
+    //noRecTrack:  true,
+    shortName:  "DOM-Parsing",
+    wg:         ["Web Applications Working Group"],
+    wgURI:    ["http://www.w3.org/2008/webapps/"],
+    wgPublicList: "www-dom",
+    wgPatentURI:  ["http://www.w3.org/2004/01/pp-impl/42538/status"],
+    subjectPrefix: "DOM-Parsing",
+    testSuiteURI: "https://github.com/whatwg/domparsing/tree/master/tests"
+};
\ No newline at end of file