- From: poot <cvsmail@w3.org>
- Date: Tue, 20 Oct 2009 09:19:58 +0900 (JST)
- To: public-html-diffs@w3.org
hixie: Redefine how to parse RCDATA and RAWTEXT elements, and introduce a whole new way to parse <script> blocks, along with new rules for authors. This should improve compatibility with <script> parsing on the Web, but it might need a few more tweaks. (whatwg r4178) http://dev.w3.org/cvsweb/html5/spec/Overview.html?r1=1.3324&r2=1.3325&f=h http://html5.org/tools/web-apps-tracker?from=4177&to=4178 =================================================================== RCS file: /sources/public/html5/spec/Overview.html,v retrieving revision 1.3324 retrieving revision 1.3325 diff -u -d -r1.3324 -r1.3325 --- Overview.html 19 Oct 2009 10:48:09 -0000 1.3324 +++ Overview.html 20 Oct 2009 00:19:32 -0000 1.3325 @@ -216,7 +216,7 @@ <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2> <!--ZZZ:--> <!--<h2 class="no-num no-toc">W3C Working Draft 25 August 2009</h2>--> - <h2 class="no-num no-toc" id="editor-s-draft-19-october-2009">Editor's Draft 19 October 2009</h2> + <h2 class="no-num no-toc" id="editor-s-draft-20-october-2009">Editor's Draft 20 October 2009</h2> <!--:ZZZ--> <dl><!-- ZZZ: update the month/day (twice), (un)comment out--><!-- <dt>This Version:</dt> @@ -318,7 +318,7 @@ track. <!--ZZZ:--> <!--This specification is the 25 August 2009 Working Draft.--> - This specification is the 19 October 2009 Editor's Draft. + This specification is the 20 October 2009 Editor's Draft. <!--:ZZZ--> </p><!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- relationship to other work (required) --><p>This specification is also being produced by the <a href="http://www.whatwg.org/">WHATWG</a>. The two specifications are identical from the table of contents onwards.</p><!-- UNDER NO CIRCUMSTANCES IS THE FOLLOWING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- context and rationale (required) --><p>This specification is intended to replace (be a new version of) @@ -496,7 +496,8 @@ <li><a href="#script"><span class="secno">4.3.1 </span>The <code>script</code> element</a> <ol> <li><a href="#scriptingLanguages"><span class="secno">4.3.1.1 </span>Scripting languages</a></li> - <li><a href="#inline-documentation-for-external-scripts"><span class="secno">4.3.1.2 </span>Inline documentation for external scripts</a></ol></li> + <li><a href="#restrictions-for-contents-of-script-elements"><span class="secno">4.3.1.2 </span>Restrictions for contents of <code>script</code> elements</a></li> + <li><a href="#inline-documentation-for-external-scripts"><span class="secno">4.3.1.3 </span>Inline documentation for external scripts</a></ol></li> <li><a href="#the-noscript-element"><span class="secno">4.3.2 </span>The <code>noscript</code> element</a></ol></li> <li><a href="#sections"><span class="secno">4.4 </span>Sections</a> <ol> @@ -1050,43 +1051,52 @@ <li><a href="#script-data-escaped-state"><span class="secno">9.2.4.21 </span>Script data escaped state</a></li> <li><a href="#script-data-escaped-dash-state"><span class="secno">9.2.4.22 </span>Script data escaped dash state</a></li> <li><a href="#script-data-escaped-dash-dash-state"><span class="secno">9.2.4.23 </span>Script data escaped dash dash state</a></li> - <li><a href="#before-attribute-name-state"><span class="secno">9.2.4.24 </span>Before attribute name state</a></li> - <li><a href="#attribute-name-state"><span class="secno">9.2.4.25 </span>Attribute name state</a></li> - <li><a href="#after-attribute-name-state"><span class="secno">9.2.4.26 </span>After attribute name state</a></li> - <li><a href="#before-attribute-value-state"><span class="secno">9.2.4.27 </span>Before attribute value state</a></li> - <li><a href="#attribute-value-double-quoted-state"><span class="secno">9.2.4.28 </span>Attribute value (double-quoted) state</a></li> - <li><a href="#attribute-value-single-quoted-state"><span class="secno">9.2.4.29 </span>Attribute value (single-quoted) state</a></li> - <li><a href="#attribute-value-unquoted-state"><span class="secno">9.2.4.30 </span>Attribute value (unquoted) state</a></li> - <li><a href="#character-reference-in-attribute-value-state"><span class="secno">9.2.4.31 </span>Character reference in attribute value state</a></li> - <li><a href="#after-attribute-value-quoted-state"><span class="secno">9.2.4.32 </span>After attribute value (quoted) state</a></li> - <li><a href="#self-closing-start-tag-state"><span class="secno">9.2.4.33 </span>Self-closing start tag state</a></li> - <li><a href="#bogus-comment-state"><span class="secno">9.2.4.34 </span>Bogus comment state</a></li> - <li><a href="#markup-declaration-open-state"><span class="secno">9.2.4.35 </span>Markup declaration open state</a></li> - <li><a href="#comment-start-state"><span class="secno">9.2.4.36 </span>Comment start state</a></li> - <li><a href="#comment-start-dash-state"><span class="secno">9.2.4.37 </span>Comment start dash state</a></li> - <li><a href="#comment-state"><span class="secno">9.2.4.38 </span>Comment state</a></li> - <li><a href="#comment-end-dash-state"><span class="secno">9.2.4.39 </span>Comment end dash state</a></li> - <li><a href="#comment-end-state"><span class="secno">9.2.4.40 </span>Comment end state</a></li> - <li><a href="#comment-end-bang-state"><span class="secno">9.2.4.41 </span>Comment end bang state</a></li> - <li><a href="#comment-end-space-state"><span class="secno">9.2.4.42 </span>Comment end space state</a></li> - <li><a href="#doctype-state"><span class="secno">9.2.4.43 </span>DOCTYPE state</a></li> - <li><a href="#before-doctype-name-state"><span class="secno">9.2.4.44 </span>Before DOCTYPE name state</a></li> - <li><a href="#doctype-name-state"><span class="secno">9.2.4.45 </span>DOCTYPE name state</a></li> - <li><a href="#after-doctype-name-state"><span class="secno">9.2.4.46 </span>After DOCTYPE name state</a></li> - <li><a href="#after-doctype-public-keyword-state"><span class="secno">9.2.4.47 </span>After DOCTYPE public keyword state</a></li> - <li><a href="#before-doctype-public-identifier-state"><span class="secno">9.2.4.48 </span>Before DOCTYPE public identifier state</a></li> - <li><a href="#doctype-public-identifier-double-quoted-state"><span class="secno">9.2.4.49 </span>DOCTYPE public identifier (double-quoted) state</a></li> - <li><a href="#doctype-public-identifier-single-quoted-state"><span class="secno">9.2.4.50 </span>DOCTYPE public identifier (single-quoted) state</a></li> - <li><a href="#after-doctype-public-identifier-state"><span class="secno">9.2.4.51 </span>After DOCTYPE public identifier state</a></li> - <li><a href="#between-doctype-public-and-system-identifiers-state"><span class="secno">9.2.4.52 </span>Between DOCTYPE public and system identifiers state</a></li> - <li><a href="#after-doctype-system-keyword-state"><span class="secno">9.2.4.53 </span>After DOCTYPE system keyword state</a></li> - <li><a href="#before-doctype-system-identifier-state"><span class="secno">9.2.4.54 </span>Before DOCTYPE system identifier state</a></li> - <li><a href="#doctype-system-identifier-double-quoted-state"><span class="secno">9.2.4.55 </span>DOCTYPE system identifier (double-quoted) state</a></li> - <li><a href="#doctype-system-identifier-single-quoted-state"><span class="secno">9.2.4.56 </span>DOCTYPE system identifier (single-quoted) state</a></li> - <li><a href="#after-doctype-system-identifier-state"><span class="secno">9.2.4.57 </span>After DOCTYPE system identifier state</a></li> - <li><a href="#bogus-doctype-state"><span class="secno">9.2.4.58 </span>Bogus DOCTYPE state</a></li> - <li><a href="#cdata-section-state"><span class="secno">9.2.4.59 </span>CDATA section state</a></li> - <li><a href="#tokenizing-character-references"><span class="secno">9.2.4.60 </span>Tokenizing character references</a></ol></li> + <li><a href="#script-data-escaped-less-than-sign-state"><span class="secno">9.2.4.24 </span>Script data escaped less-than sign state</a></li> + <li><a href="#script-data-escaped-end-tag-open-state"><span class="secno">9.2.4.25 </span>Script data escaped end tag open state</a></li> + <li><a href="#script-data-escaped-end-tag-name-state"><span class="secno">9.2.4.26 </span>Script data escaped end tag name state</a></li> + <li><a href="#script-data-double-escape-start-state"><span class="secno">9.2.4.27 </span>Script data double escape start state</a></li> + <li><a href="#script-data-double-escaped-state"><span class="secno">9.2.4.28 </span>Script data double escaped state</a></li> + <li><a href="#script-data-double-escaped-dash-state"><span class="secno">9.2.4.29 </span>Script data double escaped dash state</a></li> + <li><a href="#script-data-double-escaped-dash-dash-state"><span class="secno">9.2.4.30 </span>Script data double escaped dash dash state</a></li> + <li><a href="#script-data-double-escaped-less-than-sign-state"><span class="secno">9.2.4.31 </span>Script data double escaped less-than sign state</a></li> + <li><a href="#script-data-double-escape-end-state"><span class="secno">9.2.4.32 </span>Script data double escape end state</a></li> + <li><a href="#before-attribute-name-state"><span class="secno">9.2.4.33 </span>Before attribute name state</a></li> + <li><a href="#attribute-name-state"><span class="secno">9.2.4.34 </span>Attribute name state</a></li> + <li><a href="#after-attribute-name-state"><span class="secno">9.2.4.35 </span>After attribute name state</a></li> + <li><a href="#before-attribute-value-state"><span class="secno">9.2.4.36 </span>Before attribute value state</a></li> + <li><a href="#attribute-value-double-quoted-state"><span class="secno">9.2.4.37 </span>Attribute value (double-quoted) state</a></li> + <li><a href="#attribute-value-single-quoted-state"><span class="secno">9.2.4.38 </span>Attribute value (single-quoted) state</a></li> + <li><a href="#attribute-value-unquoted-state"><span class="secno">9.2.4.39 </span>Attribute value (unquoted) state</a></li> + <li><a href="#character-reference-in-attribute-value-state"><span class="secno">9.2.4.40 </span>Character reference in attribute value state</a></li> + <li><a href="#after-attribute-value-quoted-state"><span class="secno">9.2.4.41 </span>After attribute value (quoted) state</a></li> + <li><a href="#self-closing-start-tag-state"><span class="secno">9.2.4.42 </span>Self-closing start tag state</a></li> + <li><a href="#bogus-comment-state"><span class="secno">9.2.4.43 </span>Bogus comment state</a></li> + <li><a href="#markup-declaration-open-state"><span class="secno">9.2.4.44 </span>Markup declaration open state</a></li> + <li><a href="#comment-start-state"><span class="secno">9.2.4.45 </span>Comment start state</a></li> + <li><a href="#comment-start-dash-state"><span class="secno">9.2.4.46 </span>Comment start dash state</a></li> + <li><a href="#comment-state"><span class="secno">9.2.4.47 </span>Comment state</a></li> + <li><a href="#comment-end-dash-state"><span class="secno">9.2.4.48 </span>Comment end dash state</a></li> + <li><a href="#comment-end-state"><span class="secno">9.2.4.49 </span>Comment end state</a></li> + <li><a href="#comment-end-bang-state"><span class="secno">9.2.4.50 </span>Comment end bang state</a></li> + <li><a href="#comment-end-space-state"><span class="secno">9.2.4.51 </span>Comment end space state</a></li> + <li><a href="#doctype-state"><span class="secno">9.2.4.52 </span>DOCTYPE state</a></li> + <li><a href="#before-doctype-name-state"><span class="secno">9.2.4.53 </span>Before DOCTYPE name state</a></li> + <li><a href="#doctype-name-state"><span class="secno">9.2.4.54 </span>DOCTYPE name state</a></li> + <li><a href="#after-doctype-name-state"><span class="secno">9.2.4.55 </span>After DOCTYPE name state</a></li> + <li><a href="#after-doctype-public-keyword-state"><span class="secno">9.2.4.56 </span>After DOCTYPE public keyword state</a></li> + <li><a href="#before-doctype-public-identifier-state"><span class="secno">9.2.4.57 </span>Before DOCTYPE public identifier state</a></li> + <li><a href="#doctype-public-identifier-double-quoted-state"><span class="secno">9.2.4.58 </span>DOCTYPE public identifier (double-quoted) state</a></li> + <li><a href="#doctype-public-identifier-single-quoted-state"><span class="secno">9.2.4.59 </span>DOCTYPE public identifier (single-quoted) state</a></li> + <li><a href="#after-doctype-public-identifier-state"><span class="secno">9.2.4.60 </span>After DOCTYPE public identifier state</a></li> + <li><a href="#between-doctype-public-and-system-identifiers-state"><span class="secno">9.2.4.61 </span>Between DOCTYPE public and system identifiers state</a></li> + <li><a href="#after-doctype-system-keyword-state"><span class="secno">9.2.4.62 </span>After DOCTYPE system keyword state</a></li> + <li><a href="#before-doctype-system-identifier-state"><span class="secno">9.2.4.63 </span>Before DOCTYPE system identifier state</a></li> + <li><a href="#doctype-system-identifier-double-quoted-state"><span class="secno">9.2.4.64 </span>DOCTYPE system identifier (double-quoted) state</a></li> + <li><a href="#doctype-system-identifier-single-quoted-state"><span class="secno">9.2.4.65 </span>DOCTYPE system identifier (single-quoted) state</a></li> + <li><a href="#after-doctype-system-identifier-state"><span class="secno">9.2.4.66 </span>After DOCTYPE system identifier state</a></li> + <li><a href="#bogus-doctype-state"><span class="secno">9.2.4.67 </span>Bogus DOCTYPE state</a></li> + <li><a href="#cdata-section-state"><span class="secno">9.2.4.68 </span>CDATA section state</a></li> + <li><a href="#tokenizing-character-references"><span class="secno">9.2.4.69 </span>Tokenizing character references</a></ol></li> <li><a href="#tree-construction"><span class="secno">9.2.5 </span>Tree construction</a> <ol> <li><a href="#creating-and-inserting-elements"><span class="secno">9.2.5.1 </span>Creating and inserting elements</a></li> @@ -10648,10 +10658,12 @@ <dd>Where <a href="#phrasing-content">phrasing content</a> is expected.</dd> <dt>Content model:</dt> <dd>If there is no <code title="attr-script-src"><a href="#attr-script-src">src</a></code> - attribute, depends on the value of the <code title="attr-script-type"><a href="#attr-script-type">type</a></code> attribute.</dd> + attribute, depends on the value of the <code title="attr-script-type"><a href="#attr-script-type">type</a></code> attribute, but must match + <a href="#restrictions-for-contents-of-script-elements">script content restrictions</a>.</dd> <dd>If there <em>is</em> a <code title="attr-script-src"><a href="#attr-script-src">src</a></code> attribute, the element must be either empty or contain only - <a href="#inline-documentation-for-external-scripts">script documentation</a>.</dd> + <a href="#inline-documentation-for-external-scripts">script documentation</a> that also matches <a href="#restrictions-for-contents-of-script-elements">script + content restrictions</a>.</dd> <dt>Content attributes:</dt> <dd><a href="#global-attributes">Global attributes</a></dd> <dd><code title="attr-script-src"><a href="#attr-script-src">src</a></code></dd> @@ -11216,7 +11228,49 @@ parameter for the purpose of comparing <a href="#mime-type" title="MIME type">MIME types</a> here.</p> - </div><h5 id="inline-documentation-for-external-scripts"><span class="secno">4.3.1.2 </span><dfn title="script documentation">Inline documentation for external scripts</dfn></h5><p>If a <code><a href="#script">script</a></code> element's <code title="attr-script-src"><a href="#attr-script-src">src</a></code> attribute is specified, then the + </div><h5 id="restrictions-for-contents-of-script-elements"><span class="secno">4.3.1.2 </span><dfn title="script content restrictions">Restrictions for contents of <code>script</code> elements</dfn></h5><p>The contents of a <code><a href="#script">script</a></code> element must match the + <code title="">script</code> production in the following ABNF, the + character set for which is Unicode. <a href="#refsABNF">[ABNF]</a><pre>script = body1 + +body1 = *( text1 / body2 ) +body2 = "<!--" *( text2 / body3 script-end ) [ body3 ] "-->" +body3 = script-start *text3 + +script-start = lt s c r i p t tag-end +script-end = lt slash s c r i p t tag-end + +text1 = <anything that doesn't match not-text1> +text2 = <anything that doesn't match not-text2> +text3 = <anything that doesn't match not-text3> + +not-text1 = "<!--" / script-end +not-text2 = script-start / script-end / "-->" +not-text3 = script-end / "-->" + +lt = %x003C ; U+003C LESS-THAN SIGN character (<) +slash = %x002F ; U+002F SOLIDUS character (/) + +s = %x0053 ; U+0053 LATIN CAPITAL LETTER S +s =/ %x0073 ; U+0073 LATIN SMALL LETTER S +c = %x0043 ; U+0043 LATIN CAPITAL LETTER C +c =/ %x0063 ; U+0063 LATIN SMALL LETTER C +r = %x0052 ; U+0052 LATIN CAPITAL LETTER R +r =/ %x0072 ; U+0072 LATIN SMALL LETTER R +i = %x0049 ; U+0049 LATIN CAPITAL LETTER I +i =/ %x0069 ; U+0069 LATIN SMALL LETTER I +p = %x0050 ; U+0050 LATIN CAPITAL LETTER P +p =/ %x0070 ; U+0070 LATIN SMALL LETTER P +t = %x0054 ; U+0054 LATIN CAPITAL LETTER T +t =/ %x0074 ; U+0074 LATIN SMALL LETTER T + +tag-end = %x0009 ; U+0009 CHARACTER TABULATION +tag-end =/ %x000A ; U+000A LINE FEED (LF) +tag-end =/ %x000C ; U+000C FORM FEED (FF) +tag-end =/ %x0020 ; U+0020 SPACE +tag-end =/ %x002F ; U+002F SOLIDUS (/) +tag-end =/ %x003E ; U+003E GREATER-THAN SIGN (>)</pre><p>When a <code><a href="#script">script</a></code> element contains <a href="#inline-documentation-for-external-scripts">script + documentation</a>, there are further restrictions on the contents + of the element, as described in the section below.<h5 id="inline-documentation-for-external-scripts"><span class="secno">4.3.1.3 </span><dfn title="script documentation">Inline documentation for external scripts</dfn></h5><p>If a <code><a href="#script">script</a></code> element's <code title="attr-script-src"><a href="#attr-script-src">src</a></code> attribute is specified, then the contents of the <code><a href="#script">script</a></code> element, if any, must be such that the value of the DOM <code title="dom-script-text"><a href="#dom-script-text">text</a></code> attribute, which is derived from the element's contents, matches the @@ -11237,7 +11291,9 @@ ; a Unicode character other than U+002A ASTERISK (*) not-slash = %x0000-002E / %x0030-10FFFF ; a Unicode character other than U+002F SOLIDUS (/)</pre><p class="note">This corresponds to putting the contents of the - element in JavaScript comments.<div class="example"> + element in JavaScript comments.<p class="note">This requirement is in addition to the earlier + restrictiosn on the syntax of contents of <code><a href="#script">script</a></code> + elements.<div class="example"> <p>This allows authors to include documentation, such as license information or API information, inside their documents while still @@ -53717,29 +53773,7 @@ case-insensitively match the tag name of the element followed by one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), U+000D CARRIAGE RETURN (CR), U+0020 SPACE, U+003E - GREATER-THAN SIGN (>), or U+002F SOLIDUS (/), unless that string is - part of an <a href="#syntax-escape" title="syntax-escape">escaping text - span</a>.<p>An <dfn id="syntax-escape" title="syntax-escape">escaping text span</dfn> is a span - of <a href="#syntax-text" title="syntax-text">text</a> that starts with an <a href="#syntax-escape-start" title="syntax-escape-start">escaping text span start</a> that is - not itself in an <a href="#syntax-escape" title="syntax-escape">escaping text - span</a>, and ends at the next <a href="#syntax-escape-end" title="syntax-escape-end">escaping text span end</a>. There - cannot be any <a href="#syntax-charref" title="syntax-charref">character - references</a> inside an <a href="#syntax-escape" title="syntax-escape">escaping - text span</a> — sequences of characters that would look - like <a href="#syntax-charref" title="syntax-charref">character references</a> do not - have special meaning.<p>An <dfn id="syntax-escape-start" title="syntax-escape-start">escaping text span - start</dfn> is a part of <a href="#syntax-text" title="syntax-text">text</a> that - consists of the four character sequence "<code title=""><!--</code>" (U+003C LESS-THAN SIGN, U+0021 EXCLAMATION - MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS).<p>An <dfn id="syntax-escape-end" title="syntax-escape-end">escaping text span end</dfn> is - a part of <a href="#syntax-text" title="syntax-text">text</a> that consists of the - three character sequence "<code title="">--></code>" (U+002D - HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN).<p>An <a href="#syntax-escape-start" title="syntax-escape-start">escaping text span - start</a> may share its U+002D HYPHEN-MINUS characters with its - corresponding <a href="#syntax-escape-end" title="syntax-escape-end">escaping text span - end</a>.<p>The text in <a href="#raw-text-elements">raw text elements</a> and <a href="#rcdata-elements">RCDATA - elements</a> must not have an <a href="#syntax-escape-start" title="syntax-escape-start">escaping text span start</a> that is - not followed by an <a href="#syntax-escape-end" title="syntax-escape-end">escaping text - span end</a>.<h4 id="text-0"><span class="secno">9.1.3 </span>Text</h4><p><dfn id="syntax-text" title="syntax-text">Text</dfn> is allowed inside elements, + GREATER-THAN SIGN (>), or U+002F SOLIDUS (/).<h4 id="text-0"><span class="secno">9.1.3 </span>Text</h4><p><dfn id="syntax-text" title="syntax-text">Text</dfn> is allowed inside elements, attributes, and comments. Text must consist of Unicode characters. Text must not contain U+0000 characters. Text must not contain permanently undefined Unicode characters (noncharacters). Text must @@ -55594,13 +55628,13 @@ character</a> (add 0x0020 to the character's code point) to the current tag token's tag name. Append the <a href="#current-input-character">current input character</a> to the <var><a href="#temporary-buffer">temporary buffer</a></var>. Stay in the - <a href="#script-data-end-tag-name-state">Script data end tag name state</a>.</dd> + <a href="#script-data-end-tag-name-state">script data end tag name state</a>.</dd> <dt>U+0061 LATIN SMALL LETTER A through to U+007A LATIN SMALL LETTER Z</dt> <dd>Append the <a href="#current-input-character">current input character</a> to the current tag token's tag name. Append the <a href="#current-input-character">current input character</a> to the <var><a href="#temporary-buffer">temporary buffer</a></var>. Stay in the - <a href="#script-data-end-tag-name-state">Script data end tag name state</a>.</dd> + <a href="#script-data-end-tag-name-state">script data end tag name state</a>.</dd> <dt>Anything else</dt> <dd>Emit a U+003C LESS-THAN SIGN character token, a U+002F SOLIDUS @@ -55641,13 +55675,17 @@ <dd>Emit a U+002D HYPHEN-MINUS character token. Switch to the <a href="#script-data-escaped-dash-state">script data escaped dash state</a>.</dd> + <dt>U+003C LESS-THAN SIGN (<)</dt> + <dd><p>Switch to the <a href="#script-data-escaped-less-than-sign-state">script data escaped less-than sign + state</a>.</dd> + <dt>EOF</dt> <dd><a href="#parse-error">Parse error</a>. Reconsume the EOF character in the <a href="#data-state">data state</a>.</dd> <dt>Anything else</dt> - <dd>Emit the current input character as a character token. Stay in - the <a href="#script-data-escaped-state">script data escaped state</a>.</dd> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Stay in the <a href="#script-data-escaped-state">script data escaped state</a>.</dd> </dl><h5 id="script-data-escaped-dash-state"><span class="secno">9.2.4.22 </span><dfn>Script data escaped dash state</dfn></h5> @@ -55657,13 +55695,17 @@ <dd>Emit a U+002D HYPHEN-MINUS character token. Switch to the <a href="#script-data-escaped-dash-dash-state">script data escaped dash dash state</a>.</dd> + <dt>U+003C LESS-THAN SIGN (<)</dt> + <dd><p>Switch to the <a href="#script-data-escaped-less-than-sign-state">script data escaped less-than sign + state</a>.</dd> + <dt>EOF</dt> <dd><a href="#parse-error">Parse error</a>. Reconsume the EOF character in the <a href="#data-state">data state</a>.</dd> <dt>Anything else</dt> - <dd>Emit the current input character as a character token. Switch - to the <a href="#script-data-escaped-state">script data escaped state</a>.</dd> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Switch to the <a href="#script-data-escaped-state">script data escaped state</a>.</dd> </dl><h5 id="script-data-escaped-dash-dash-state"><span class="secno">9.2.4.23 </span><dfn>Script data escaped dash dash state</dfn></h5> @@ -55673,6 +55715,10 @@ <dd>Emit a U+002D HYPHEN-MINUS character token. Stay in the <a href="#script-data-escaped-dash-dash-state">script data escaped dash dash state</a>.</dd> + <dt>U+003C LESS-THAN SIGN (<)</dt> + <dd><p>Switch to the <a href="#script-data-escaped-less-than-sign-state">script data escaped less-than sign + state</a>.</dd> + <dt>U+003E GREATER-THAN SIGN (>)</dt> <dd>Emit a U+003E GREATER-THAN SIGN character token. Switch to the <a href="#script-data-state">script data state</a>.</dd> @@ -55682,10 +55728,261 @@ <a href="#data-state">data state</a>.</dd> <dt>Anything else</dt> - <dd>Emit the current input character as a character token. Switch - to the <a href="#script-data-escaped-state">script data escaped state</a>.</dd> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Switch to the <a href="#script-data-escaped-state">script data escaped state</a>.</dd> - </dl><h5 id="before-attribute-name-state"><span class="secno">9.2.4.24 </span><dfn>Before attribute name state</dfn></h5> + </dl><h5 id="script-data-escaped-less-than-sign-state"><span class="secno">9.2.4.24 </span><dfn>Script data escaped less-than sign state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+002F SOLIDUS (/)</dt> + <dd>Set the <var><a href="#temporary-buffer">temporary buffer</a></var> to the empty string. Switch + to the <a href="#script-data-escaped-end-tag-open-state">script data escaped end tag open state</a>.</dd> + + <dt>U+0041 LATIN CAPITAL LETTER A through to U+005A LATIN CAPITAL LETTER Z</dt> + <dd>Emit a U+003C LESS-THAN SIGN character token and the + <a href="#current-input-character">current input character</a> as a character token. Set the + <var><a href="#temporary-buffer">temporary buffer</a></var> to the empty string. Append the + lowercase version of the <a href="#current-input-character">current input character</a> (add + 0x0020 to the character's code point) to the <var><a href="#temporary-buffer">temporary + buffer</a></var>. Switch to the <a href="#script-data-double-escape-start-state">script data double escape start + state</a>.</dd> + + <dt>U+0061 LATIN SMALL LETTER A through to U+007A LATIN SMALL LETTER Z</dt> + <dd>Emit a U+003C LESS-THAN SIGN character token and the + <a href="#current-input-character">current input character</a> as a character token. Set the + <var><a href="#temporary-buffer">temporary buffer</a></var> to the empty string. Append the + <a href="#current-input-character">current input character</a> to the <var><a href="#temporary-buffer">temporary + buffer</a></var>. Switch to the <a href="#script-data-double-escape-start-state">script data double escape start + state</a>.</dd> + + <dt>Anything else</dt> + <dd>Emit a U+003C LESS-THAN SIGN character token and reconsume the + <a href="#current-input-character">current input character</a> in the <a href="#script-data-escaped-state">script data + escaped state</a>.</dd> + + </dl><h5 id="script-data-escaped-end-tag-open-state"><span class="secno">9.2.4.25 </span><dfn>Script data escaped end tag open state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+0041 LATIN CAPITAL LETTER A through to U+005A LATIN CAPITAL LETTER Z</dt> + <dd>Create a new end tag token, and set its tag name to the + lowercase version of the <a href="#current-input-character">current input character</a> (add + 0x0020 to the character's code point). Append the <a href="#current-input-character">current + input character</a> to the <var><a href="#temporary-buffer">temporary buffer</a></var>. Finally, + switch to the <a href="#script-data-escaped-end-tag-name-state">script data escaped end tag name + state</a>. (Don't emit the token yet; further details will be + filled in before it is emitted.)</dd> + + <dt>U+0061 LATIN SMALL LETTER A through to U+007A LATIN SMALL LETTER Z</dt> + <dd>Create a new end tag token, and set its tag name to the + <a href="#current-input-character">current input character</a>. Append the <a href="#current-input-character">current + input character</a> to the <var><a href="#temporary-buffer">temporary buffer</a></var>. Finally, + switch to the <a href="#script-data-escaped-end-tag-name-state">script data escaped end tag name + state</a>. (Don't emit the token yet; further details will be + filled in before it is emitted.)</dd> + + <dt>Anything else</dt> + <dd>Emit a U+003C LESS-THAN SIGN character token, a U+002F SOLIDUS + character token, and reconsume the <a href="#current-input-character">current input + character</a> in the <a href="#script-data-escaped-state">script data escaped state</a>.</dd> + + </dl><h5 id="script-data-escaped-end-tag-name-state"><span class="secno">9.2.4.26 </span><dfn>Script data escaped end tag name state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+0009 CHARACTER TABULATION</dt> + <dt>U+000A LINE FEED (LF)</dt> + <dt>U+000C FORM FEED (FF)</dt> + <!--<dt>U+000D CARRIAGE RETURN (CR)</dt>--> + <dt>U+0020 SPACE</dt> + <dd>If the current end tag token is an <a href="#appropriate-end-tag-token">appropriate end tag + token</a>, then switch to the <a href="#before-attribute-name-state">before attribute name + state</a>. Otherwise, treat it as per the "anything else" entry + below.</dd> + + <dt>U+002F SOLIDUS (/)</dt> + <dd>If the current end tag token is an <a href="#appropriate-end-tag-token">appropriate end tag + token</a>, then switch to the <a href="#self-closing-start-tag-state">self-closing start tag + state</a>. Otherwise, treat it as per the "anything else" entry + below.</dd> + + <dt>U+003E GREATER-THAN SIGN (>)</dt> + <dd>If the current end tag token is an <a href="#appropriate-end-tag-token">appropriate end tag + token</a>, then emit the current tag token and switch to the + <a href="#data-state">data state</a>. Otherwise, treat it as per the "anything + else" entry below.</dd> + + <dt>U+0041 LATIN CAPITAL LETTER A through to U+005A LATIN CAPITAL LETTER Z</dt> + <dd>Append the lowercase version of the <a href="#current-input-character">current input + character</a> (add 0x0020 to the character's code point) to the + current tag token's tag name. Append the <a href="#current-input-character">current input + character</a> to the <var><a href="#temporary-buffer">temporary buffer</a></var>. Stay in the + <a href="#script-data-escaped-end-tag-name-state">script data escaped end tag name state</a>.</dd> + + <dt>U+0061 LATIN SMALL LETTER A through to U+007A LATIN SMALL LETTER Z</dt> + <dd>Append the <a href="#current-input-character">current input character</a> to the current + tag token's tag name. Append the <a href="#current-input-character">current input + character</a> to the <var><a href="#temporary-buffer">temporary buffer</a></var>. Stay in the + <a href="#script-data-escaped-end-tag-name-state">script data escaped end tag name state</a>.</dd> + + <dt>Anything else</dt> + <dd>Emit a U+003C LESS-THAN SIGN character token, a U+002F SOLIDUS + character token, a character token for each of the characters in + the <var><a href="#temporary-buffer">temporary buffer</a></var> (in the order they were added to + the buffer), and reconsume the <a href="#current-input-character">current input character</a> + in the <a href="#script-data-escaped-state">script data escaped state</a>.</dd> + + </dl><h5 id="script-data-double-escape-start-state"><span class="secno">9.2.4.27 </span><dfn>Script data double escape start state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+0009 CHARACTER TABULATION</dt> + <dt>U+000A LINE FEED (LF)</dt> + <dt>U+000C FORM FEED (FF)</dt> + <!--<dt>U+000D CARRIAGE RETURN (CR)</dt>--> + <dt>U+0020 SPACE</dt> + <dt>U+002F SOLIDUS (/)</dt> + <dt>U+003E GREATER-THAN SIGN (>)</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. If the <var><a href="#temporary-buffer">temporary buffer</a></var> is the string "<code title="">script</code>", then switch to the <a href="#script-data-double-escaped-state">script data + double escaped state</a>. Otherwise, switch to the <a href="#script-data-escaped-state">script + data escaped state</a>.</dd> + + <dt>U+0041 LATIN CAPITAL LETTER A through to U+005A LATIN CAPITAL LETTER Z</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Append the lowercase version of the <a href="#current-input-character">current input + character</a> (add 0x0020 to the character's code point) to the + <var><a href="#temporary-buffer">temporary buffer</a></var>. Stay in the <a href="#script-data-double-escape-start-state">script data double + escape start state</a>.</dd> + + <dt>U+0061 LATIN SMALL LETTER A through to U+007A LATIN SMALL LETTER Z</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Append the <a href="#current-input-character">current input character</a> to the + <var><a href="#temporary-buffer">temporary buffer</a></var>. Stay in the <a href="#script-data-double-escape-start-state">script data double + escape start state</a>.</dd> + + <dt>Anything else</dt> + <dd>Reconsume the <a href="#current-input-character">current input character</a> in the + <a href="#script-data-escaped-state">script data escaped state</a>.</dd> + + </dl><h5 id="script-data-double-escaped-state"><span class="secno">9.2.4.28 </span><dfn>Script data double escaped state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+002D HYPHEN-MINUS (-)</dt> + <dd>Emit a U+002D HYPHEN-MINUS character token. Switch to the + <a href="#script-data-double-escaped-dash-state">script data double escaped dash state</a>.</dd> + + <dt>U+003C LESS-THAN SIGN (<)</dt> + <dd><p>Emit a U+003C LESS-THAN SIGN character token. Switch to the + <a href="#script-data-double-escaped-less-than-sign-state">script data double escaped less-than sign + state</a>.</dd> + + <dt>EOF</dt> + <dd><a href="#parse-error">Parse error</a>. Reconsume the EOF character in the + <a href="#data-state">data state</a>.</dd> + + <dt>Anything else</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Stay in the <a href="#script-data-double-escaped-state">script data double escaped + state</a>.</dd> + + </dl><h5 id="script-data-double-escaped-dash-state"><span class="secno">9.2.4.29 </span><dfn>Script data double escaped dash state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+002D HYPHEN-MINUS (-)</dt> + <dd>Emit a U+002D HYPHEN-MINUS character token. Switch to the + <a href="#script-data-double-escaped-dash-dash-state">script data double escaped dash dash state</a>.</dd> + + <dt>U+003C LESS-THAN SIGN (<)</dt> + <dd><p>Emit a U+003C LESS-THAN SIGN character token. Switch to the + <a href="#script-data-double-escaped-less-than-sign-state">script data double escaped less-than sign + state</a>.</dd> + + <dt>EOF</dt> + <dd><a href="#parse-error">Parse error</a>. Reconsume the EOF character in the + <a href="#data-state">data state</a>.</dd> + + <dt>Anything else</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Switch to the <a href="#script-data-double-escaped-state">script data double escaped + state</a>.</dd> + + </dl><h5 id="script-data-double-escaped-dash-dash-state"><span class="secno">9.2.4.30 </span><dfn>Script data double escaped dash dash state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+002D HYPHEN-MINUS (-)</dt> + <dd>Emit a U+002D HYPHEN-MINUS character token. Stay in the + <a href="#script-data-double-escaped-dash-dash-state">script data double escaped dash dash state</a>.</dd> + + <dt>U+003C LESS-THAN SIGN (<)</dt> + <dd><p>Emit a U+003C LESS-THAN SIGN character token. Switch to the + <a href="#script-data-double-escaped-less-than-sign-state">script data double escaped less-than sign + state</a>.</dd> + + <dt>U+003E GREATER-THAN SIGN (>)</dt> + <dd>Emit a U+003E GREATER-THAN SIGN character token. Switch to the + <a href="#script-data-state">script data state</a>.</dd> + + <dt>EOF</dt> + <dd><a href="#parse-error">Parse error</a>. Reconsume the EOF character in the + <a href="#data-state">data state</a>.</dd> + + <dt>Anything else</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Switch to the <a href="#script-data-double-escaped-state">script data double escaped + state</a>.</dd> + + </dl><h5 id="script-data-double-escaped-less-than-sign-state"><span class="secno">9.2.4.31 </span><dfn>Script data double escaped less-than sign state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+002F SOLIDUS (/)</dt> + <dd>Emit a U+002F SOLIDUS character token. Set the <var><a href="#temporary-buffer">temporary + buffer</a></var> to the empty string. Switch to the <a href="#script-data-double-escape-end-state">script data + double escape end state</a>.</dd> + + <dt>Anything else</dt> + <dd>Reconsume the <a href="#current-input-character">current input character</a> in the + <a href="#script-data-double-escaped-state">script data double escaped state</a>.</dd> + + </dl><h5 id="script-data-double-escape-end-state"><span class="secno">9.2.4.32 </span><dfn>Script data double escape end state</dfn></h5> + + <p>Consume the <a href="#next-input-character">next input character</a>:</p> + + <dl class="switch"><dt>U+0009 CHARACTER TABULATION</dt> + <dt>U+000A LINE FEED (LF)</dt> + <dt>U+000C FORM FEED (FF)</dt> + <!--<dt>U+000D CARRIAGE RETURN (CR)</dt>--> + <dt>U+0020 SPACE</dt> + <dt>U+002F SOLIDUS (/)</dt> + <dt>U+003E GREATER-THAN SIGN (>)</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. If the <var><a href="#temporary-buffer">temporary buffer</a></var> is the string "<code title="">script</code>", then switch to the <a href="#script-data-escaped-state">script data + escaped state</a>. Otherwise, switch to the <a href="#script-data-double-escaped-state">script data + double escaped state</a>.</dd> + + <dt>U+0041 LATIN CAPITAL LETTER A through to U+005A LATIN CAPITAL LETTER Z</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Append the lowercase version of the <a href="#current-input-character">current input + character</a> (add 0x0020 to the character's code point) to the + <var><a href="#temporary-buffer">temporary buffer</a></var>. Stay in the <a href="#script-data-double-escape-end-state">script data double + escape end state</a>.</dd> + + <dt>U+0061 LATIN SMALL LETTER A through to U+007A LATIN SMALL LETTER Z</dt> + <dd>Emit the <a href="#current-input-character">current input character</a> as a character + token. Append the <a href="#current-input-character">current input character</a> to the + <var><a href="#temporary-buffer">temporary buffer</a></var>. Stay in the <a href="#script-data-double-escape-end-state">script data double + escape end state</a>.</dd> + + <dt>Anything else</dt> + <dd>Reconsume the <a href="#current-input-character">current input character</a> in the + <a href="#script-data-double-escaped-state">script data double escaped state</a>.</dd> + + </dl><h5 id="before-attribute-name-state"><span class="secno">9.2.4.33 </span><dfn>Before attribute name state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -55727,7 +56024,7 @@ the empty string. Switch to the <a href="#attribute-name-state">attribute name state</a>.</dd> - </dl><h5 id="attribute-name-state"><span class="secno">9.2.4.25 </span><dfn>Attribute name state</dfn></h5> + </dl><h5 id="attribute-name-state"><span class="secno">9.2.4.34 </span><dfn>Attribute name state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -55778,7 +56075,7 @@ associated with it (if any).</p> - <h5 id="after-attribute-name-state"><span class="secno">9.2.4.26 </span><dfn>After attribute name state</dfn></h5> + <h5 id="after-attribute-name-state"><span class="secno">9.2.4.35 </span><dfn>After attribute name state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -55822,7 +56119,7 @@ its value to the empty string. Switch to the <a href="#attribute-name-state">attribute name state</a>.</dd> - </dl><h5 id="before-attribute-value-state"><span class="secno">9.2.4.27 </span><dfn>Before attribute value state</dfn></h5> + </dl><h5 id="before-attribute-value-state"><span class="secno">9.2.4.36 </span><dfn>Before attribute value state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -55862,7 +56159,7 @@ attribute's value. Switch to the <a href="#attribute-value-unquoted-state">attribute value (unquoted) state</a>.</dd> - </dl><h5 id="attribute-value-double-quoted-state"><span class="secno">9.2.4.28 </span><dfn>Attribute value (double-quoted) state</dfn></h5> + </dl><h5 id="attribute-value-double-quoted-state"><span class="secno">9.2.4.37 </span><dfn>Attribute value (double-quoted) state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -55884,7 +56181,7 @@ attribute's value. Stay in the <a href="#attribute-value-double-quoted-state">attribute value (double-quoted) state</a>.</dd> - </dl><h5 id="attribute-value-single-quoted-state"><span class="secno">9.2.4.29 </span><dfn>Attribute value (single-quoted) state</dfn></h5> + </dl><h5 id="attribute-value-single-quoted-state"><span class="secno">9.2.4.38 </span><dfn>Attribute value (single-quoted) state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -55906,7 +56203,7 @@ attribute's value. Stay in the <a href="#attribute-value-single-quoted-state">attribute value (single-quoted) state</a>.</dd> - </dl><h5 id="attribute-value-unquoted-state"><span class="secno">9.2.4.30 </span><dfn>Attribute value (unquoted) state</dfn></h5> + </dl><h5 id="attribute-value-unquoted-state"><span class="secno">9.2.4.39 </span><dfn>Attribute value (unquoted) state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -55943,7 +56240,7 @@ attribute's value. Stay in the <a href="#attribute-value-unquoted-state">attribute value (unquoted) state</a>.</dd> - </dl><h5 id="character-reference-in-attribute-value-state"><span class="secno">9.2.4.31 </span><dfn>Character reference in attribute value state</dfn></h5> + </dl><h5 id="character-reference-in-attribute-value-state"><span class="secno">9.2.4.40 </span><dfn>Character reference in attribute value state</dfn></h5> <p>Attempt to <a href="#consume-a-character-reference">consume a character reference</a>.</p> @@ -55957,7 +56254,7 @@ in when were switched into this state.</p> - <h5 id="after-attribute-value-quoted-state"><span class="secno">9.2.4.32 </span><dfn>After attribute value (quoted) state</dfn></h5> + <h5 id="after-attribute-value-quoted-state"><span class="secno">9.2.4.41 </span><dfn>After attribute value (quoted) state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -55983,7 +56280,7 @@ <dd><a href="#parse-error">Parse error</a>. Reconsume the character in the <a href="#before-attribute-name-state">before attribute name state</a>.</dd> - </dl><h5 id="self-closing-start-tag-state"><span class="secno">9.2.4.33 </span><dfn>Self-closing start tag state</dfn></h5> + </dl><h5 id="self-closing-start-tag-state"><span class="secno">9.2.4.42 </span><dfn>Self-closing start tag state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56000,7 +56297,7 @@ <dd><a href="#parse-error">Parse error</a>. Reconsume the character in the <a href="#before-attribute-name-state">before attribute name state</a>.</dd> - </dl><h5 id="bogus-comment-state"><span class="secno">9.2.4.34 </span><dfn>Bogus comment state</dfn></h5> + </dl><h5 id="bogus-comment-state"><span class="secno">9.2.4.43 </span><dfn>Bogus comment state</dfn></h5> <p>Consume every character up to and including the first U+003E GREATER-THAN SIGN character (>) or the end of the file (EOF), @@ -56018,7 +56315,7 @@ character.</p> - <h5 id="markup-declaration-open-state"><span class="secno">9.2.4.35 </span><dfn>Markup declaration open state</dfn></h5> + <h5 id="markup-declaration-open-state"><span class="secno">9.2.4.44 </span><dfn>Markup declaration open state</dfn></h5> <p>If the next two characters are both U+002D HYPHEN-MINUS (-) characters, consume those two characters, create a comment token @@ -56043,7 +56340,7 @@ comment.</p> - <h5 id="comment-start-state"><span class="secno">9.2.4.36 </span><dfn>Comment start state</dfn></h5> + <h5 id="comment-start-state"><span class="secno">9.2.4.45 </span><dfn>Comment start state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56063,7 +56360,7 @@ <dd>Append the <a href="#current-input-character">current input character</a> to the comment token's data. Switch to the <a href="#comment-state">comment state</a>.</dd> - </dl><h5 id="comment-start-dash-state"><span class="secno">9.2.4.37 </span><dfn>Comment start dash state</dfn></h5> + </dl><h5 id="comment-start-dash-state"><span class="secno">9.2.4.46 </span><dfn>Comment start dash state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56084,7 +56381,7 @@ <a href="#current-input-character">current input character</a> to the comment token's data. Switch to the <a href="#comment-state">comment state</a>.</dd> - </dl><h5 id="comment-state"><span class="secno">9.2.4.38 </span><dfn id="comment">Comment state</dfn></h5> + </dl><h5 id="comment-state"><span class="secno">9.2.4.47 </span><dfn id="comment">Comment state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56100,7 +56397,7 @@ <dd>Append the <a href="#current-input-character">current input character</a> to the comment token's data. Stay in the <a href="#comment-state">comment state</a>.</dd> - </dl><h5 id="comment-end-dash-state"><span class="secno">9.2.4.39 </span><dfn>Comment end dash state</dfn></h5> + </dl><h5 id="comment-end-dash-state"><span class="secno">9.2.4.48 </span><dfn>Comment end dash state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56117,7 +56414,7 @@ <a href="#current-input-character">current input character</a> to the comment token's data. Switch to the <a href="#comment-state">comment state</a>.</dd> - </dl><h5 id="comment-end-state"><span class="secno">9.2.4.40 </span><dfn>Comment end state</dfn></h5> + </dl><h5 id="comment-end-state"><span class="secno">9.2.4.49 </span><dfn>Comment end state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56158,7 +56455,7 @@ comment token's data. Switch to the <a href="#comment-state">comment state</a>.</dd> - </dl><h5 id="comment-end-bang-state"><span class="secno">9.2.4.41 </span><dfn>Comment end bang state</dfn></h5> + </dl><h5 id="comment-end-bang-state"><span class="secno">9.2.4.50 </span><dfn>Comment end bang state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56182,7 +56479,7 @@ character</a> to the comment token's data. Switch to the <a href="#comment-state">comment state</a>.</dd> - </dl><h5 id="comment-end-space-state"><span class="secno">9.2.4.42 </span><dfn>Comment end space state</dfn></h5> + </dl><h5 id="comment-end-space-state"><span class="secno">9.2.4.51 </span><dfn>Comment end space state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56210,7 +56507,7 @@ <dd>Append the <a href="#current-input-character">current input character</a> to the comment token's data. Switch to the <a href="#comment-state">comment state</a>.</dd> - </dl><h5 id="doctype-state"><span class="secno">9.2.4.43 </span><dfn>DOCTYPE state</dfn></h5> + </dl><h5 id="doctype-state"><span class="secno">9.2.4.52 </span><dfn>DOCTYPE state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56230,7 +56527,7 @@ <dd><a href="#parse-error">Parse error</a>. Reconsume the current character in the <a href="#before-doctype-name-state">before DOCTYPE name state</a>.</dd> - </dl><h5 id="before-doctype-name-state"><span class="secno">9.2.4.44 </span><dfn>Before DOCTYPE name state</dfn></h5> + </dl><h5 id="before-doctype-name-state"><span class="secno">9.2.4.53 </span><dfn>Before DOCTYPE name state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56262,7 +56559,7 @@ <a href="#current-input-character">current input character</a>. Switch to the <a href="#doctype-name-state">DOCTYPE name state</a>.</dd> - </dl><h5 id="doctype-name-state"><span class="secno">9.2.4.45 </span><dfn>DOCTYPE name state</dfn></h5> + </dl><h5 id="doctype-name-state"><span class="secno">9.2.4.54 </span><dfn>DOCTYPE name state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56293,7 +56590,7 @@ DOCTYPE token's name. Stay in the <a href="#doctype-name-state">DOCTYPE name state</a>.</dd> - </dl><h5 id="after-doctype-name-state"><span class="secno">9.2.4.46 </span><dfn>After DOCTYPE name state</dfn></h5> + </dl><h5 id="after-doctype-name-state"><span class="secno">9.2.4.55 </span><dfn>After DOCTYPE name state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56333,7 +56630,7 @@ </dd> - </dl><h5 id="after-doctype-public-keyword-state"><span class="secno">9.2.4.47 </span><dfn>After DOCTYPE public keyword state</dfn></h5> + </dl><h5 id="after-doctype-public-keyword-state"><span class="secno">9.2.4.56 </span><dfn>After DOCTYPE public keyword state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56354,7 +56651,7 @@ <dd><a href="#parse-error">Parse error</a>. Reconsume the current character in the <a href="#before-doctype-public-identifier-state">before DOCTYPE public identifier state</a>.</dd> - </dl><h5 id="before-doctype-public-identifier-state"><span class="secno">9.2.4.48 </span><dfn>Before DOCTYPE public identifier state</dfn></h5> + </dl><h5 id="before-doctype-public-identifier-state"><span class="secno">9.2.4.57 </span><dfn>Before DOCTYPE public identifier state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56390,7 +56687,7 @@ <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href="#bogus-doctype-state">bogus DOCTYPE state</a>.</dd> - </dl><h5 id="doctype-public-identifier-double-quoted-state"><span class="secno">9.2.4.49 </span><dfn>DOCTYPE public identifier (double-quoted) state</dfn></h5> + </dl><h5 id="doctype-public-identifier-double-quoted-state"><span class="secno">9.2.4.58 </span><dfn>DOCTYPE public identifier (double-quoted) state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56412,7 +56709,7 @@ token's public identifier. Stay in the <a href="#doctype-public-identifier-double-quoted-state">DOCTYPE public identifier (double-quoted) state</a>.</dd> - </dl><h5 id="doctype-public-identifier-single-quoted-state"><span class="secno">9.2.4.50 </span><dfn>DOCTYPE public identifier (single-quoted) state</dfn></h5> + </dl><h5 id="doctype-public-identifier-single-quoted-state"><span class="secno">9.2.4.59 </span><dfn>DOCTYPE public identifier (single-quoted) state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56434,7 +56731,7 @@ token's public identifier. Stay in the <a href="#doctype-public-identifier-single-quoted-state">DOCTYPE public identifier (single-quoted) state</a>.</dd> - </dl><h5 id="after-doctype-public-identifier-state"><span class="secno">9.2.4.51 </span><dfn>After DOCTYPE public identifier state</dfn></h5> + </dl><h5 id="after-doctype-public-identifier-state"><span class="secno">9.2.4.60 </span><dfn>After DOCTYPE public identifier state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56470,7 +56767,7 @@ <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href="#bogus-doctype-state">bogus DOCTYPE state</a>.</dd> - </dl><h5 id="between-doctype-public-and-system-identifiers-state"><span class="secno">9.2.4.52 </span><dfn>Between DOCTYPE public and system identifiers state</dfn></h5> + </dl><h5 id="between-doctype-public-and-system-identifiers-state"><span class="secno">9.2.4.61 </span><dfn>Between DOCTYPE public and system identifiers state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56506,7 +56803,7 @@ <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href="#bogus-doctype-state">bogus DOCTYPE state</a>.</dd> - </dl><h5 id="after-doctype-system-keyword-state"><span class="secno">9.2.4.53 </span><dfn>After DOCTYPE system keyword state</dfn></h5> + </dl><h5 id="after-doctype-system-keyword-state"><span class="secno">9.2.4.62 </span><dfn>After DOCTYPE system keyword state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56527,7 +56824,7 @@ <dd><a href="#parse-error">Parse error</a>. Reconsume the current character in the <a href="#before-doctype-system-identifier-state">before DOCTYPE system identifier state</a>.</dd> - </dl><h5 id="before-doctype-system-identifier-state"><span class="secno">9.2.4.54 </span><dfn>Before DOCTYPE system identifier state</dfn></h5> + </dl><h5 id="before-doctype-system-identifier-state"><span class="secno">9.2.4.63 </span><dfn>Before DOCTYPE system identifier state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56563,7 +56860,7 @@ <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href="#bogus-doctype-state">bogus DOCTYPE state</a>.</dd> - </dl><h5 id="doctype-system-identifier-double-quoted-state"><span class="secno">9.2.4.55 </span><dfn>DOCTYPE system identifier (double-quoted) state</dfn></h5> + </dl><h5 id="doctype-system-identifier-double-quoted-state"><span class="secno">9.2.4.64 </span><dfn>DOCTYPE system identifier (double-quoted) state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56586,7 +56883,7 @@ DOCTYPE token's system identifier. Stay in the <a href="#doctype-system-identifier-double-quoted-state">DOCTYPE system identifier (double-quoted) state</a>.</dd> - </dl><h5 id="doctype-system-identifier-single-quoted-state"><span class="secno">9.2.4.56 </span><dfn>DOCTYPE system identifier (single-quoted) state</dfn></h5> + </dl><h5 id="doctype-system-identifier-single-quoted-state"><span class="secno">9.2.4.65 </span><dfn>DOCTYPE system identifier (single-quoted) state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56609,7 +56906,7 @@ DOCTYPE token's system identifier. Stay in the <a href="#doctype-system-identifier-single-quoted-state">DOCTYPE system identifier (single-quoted) state</a>.</dd> - </dl><h5 id="after-doctype-system-identifier-state"><span class="secno">9.2.4.57 </span><dfn>After DOCTYPE system identifier state</dfn></h5> + </dl><h5 id="after-doctype-system-identifier-state"><span class="secno">9.2.4.66 </span><dfn>After DOCTYPE system identifier state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56635,7 +56932,7 @@ state</a>. (This does <em>not</em> set the DOCTYPE token's <i>force-quirks flag</i> to <i>on</i>.)</dd> - </dl><h5 id="bogus-doctype-state"><span class="secno">9.2.4.58 </span><dfn>Bogus DOCTYPE state</dfn></h5> + </dl><h5 id="bogus-doctype-state"><span class="secno">9.2.4.67 </span><dfn>Bogus DOCTYPE state</dfn></h5> <p>Consume the <a href="#next-input-character">next input character</a>:</p> @@ -56650,7 +56947,7 @@ <dt>Anything else</dt> <dd>Stay in the <a href="#bogus-doctype-state">bogus DOCTYPE state</a>.</dd> - </dl><h5 id="cdata-section-state"><span class="secno">9.2.4.59 </span><dfn>CDATA section state</dfn></h5> + </dl><h5 id="cdata-section-state"><span class="secno">9.2.4.68 </span><dfn>CDATA section state</dfn></h5> <p>Consume every character up to the next occurrence of the three character sequence U+005D RIGHT SQUARE BRACKET U+005D RIGHT SQUARE @@ -56667,7 +56964,7 @@ - <h5 id="tokenizing-character-references"><span class="secno">9.2.4.60 </span>Tokenizing character references</h5> + <h5 id="tokenizing-character-references"><span class="secno">9.2.4.69 </span>Tokenizing character references</h5> <p>This section defines how to <dfn id="consume-a-character-reference">consume a character reference</dfn>. This definition is used when parsing character
Received on Tuesday, 20 October 2009 00:20:30 UTC