/[suikacvs]/test/html-webhacc/error-description.en.html.u8
Suika

Contents of /test/html-webhacc/error-description.en.html.u8

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.23 - (hide annotations) (download)
Thu Aug 14 15:50:42 2008 UTC (16 years, 3 months ago) by wakaba
Branch: MAIN
Changes since 1.22: +51 -1 lines
++ ChangeLog	14 Aug 2008 15:42:17 -0000
	* cc.cgi: Generate result summary sections for
	each subdocument.

	* error-description-source.xml: New entries to
	support localization of result sections.

2008-08-14  Wakaba  <wakaba@suika.fam.cx>

	* cc-style.css: Support for revised version of result summary
	section styling.

2008-08-14  Wakaba  <wakaba@suika.fam.cx>

++ html/WebHACC/Language/ChangeLog	14 Aug 2008 15:50:38 -0000
	* Base.pm, CSS.pm, CacheManifest.pm, DOM.pm, Default.pm,
	HTML.pm, WebIDL.pm, XML.pm: Set |layer_applicable|
	or |layer_uncertain| flag appropriately.

2008-08-14  Wakaba  <wakaba@suika.fam.cx>

++ html/WebHACC/ChangeLog	14 Aug 2008 15:48:38 -0000
	* Input.pm: Methods |generate_transfer_sections|
	and |generate_http_header_section| are moved to HTTP
	subclass, since they are irrelevant to non-HTTP inputs.
	(_get_document): Forbidden host error was not represented
	by WebHACC::Input::Error subclass.
	(WebHACC::Input::Error generate_transfer_sections): Use
	role name for the section.
	(WebHACC::Input::HTTPError generate_transfer_sections): New method
	added, since the main superclass, i.e. WebHACC::Input::Error,
	no longer dumps HTTP headers due to the change mentioned above.

	* Output.pm (start_section): New roles "transfer-errors" and "result".

	* Result.pm (parent_result): New attribute.
	(layer_applicable, layer_uncertain): New methods to set flags.
	(add_error): Natural language strings are now handled
	by the catalog mechanism.  Use new scoring mechanism.
	(generate_result_section): Use catalog for all natural
	language strings.  Table generation is now much more sophiscated
	that it was.  Support for subdoc result summary.  Support
	for the column of the number of informational message.  Support
	for "N/A" status.

2008-08-14  Wakaba  <wakaba@suika.fam.cx>

1 wakaba 1.1 <!DOCTYPE html><html id="error-description" lang="en" xmlns:d="http://suika.fam.cx/~wakaba/archive/2007/wdcc-desc/" xmlns="http://www.w3.org/1999/xhtml">
2     <head>
3     <title xml:lang="en">Description of Errors —
4     Web Document Conformance Checker (BETA)</title>
5     <link href="cc-style" rel="stylesheet">
6     <link href="#license" rel="license">
7     </head>
8     <body>
9     <h1>Description of Errors</h1>
10    
11 wakaba 1.20 <section id="character-encoding-layer">
12     <h2>Character Encoding Layer Errors</h2>
13    
14     <div class="section error-category-charset" id="m:illegal-octets-error"><h3>An illegal octet in the input stream.</h3></div>
15     </section>
16    
17 wakaba 1.15 <section id="html5-character-encoding">
18     <h2>HTML5 Character Encoding Errors</h2>
19    
20     <div class="section format-charset must" id="m:character-encoding"><h3>Character encoding <code><var>$0</var></code>
21     is not allowed for <abbr>HTML</abbr> document.</h3>
22     <p>The character encoding used for the document is not allowed
23     for <abbr>HTML</abbr> document. The document is non‐conforming.</p>
24     </div>
25    
26     <div class="section format-charset should" id="s:character-encoding"><h3>Character encoding <code><var>$0</var></code>
27     should not be used for <abbr>HTML</abbr> document.</h3>
28     <p>The character encoding used for the document is not recommended
29     for <abbr>HTML</abbr> document. The document is non‐conforming
30     unless there is any good reason to use that encoding.</p>
31     </div>
32    
33     <div class="section format-charset warning" id="w:character-encoding"><h3>Use of UTF-8 is encouraged.</h3>
34     <p>Use of UTF-8 as the character encoding of the document is encouraged,
35 wakaba 1.20 though the use of another character encoding is still conforming.</p>
36 wakaba 1.15 </div>
37    
38 wakaba 1.16 <div class="section format-charset unsupported" id="unsupported:character-encoding"><h3>Conformance for character encoding requirements
39     cannot be checked.</h3>
40     <p>The conformance checker cannot detect whether the input document
41     met the requirements on character encoding, since the document
42     is not inputed as a serialized byte sequence. The document is
43     not conforming if it is not encoded in an appropriate character
44     encoding with appropriate labeling.</p>
45     </div>
46    
47 wakaba 1.15 <div class="section format-charset error" id="m:no-character-encoding-declaration"><h3>There is no character encoding
48     declaration.</h3>
49     <p>The document does not contain a character encoding
50     declaration. Unless the character encoding is explicitly
51 wakaba 1.16 specified in lower‐level protocol, e.g. in <abbr>HTTP</abbr>,
52 wakaba 1.15 or is implied by <abbr>BOM</abbr>, there must be a character
53     encoding declaration. The document is non‐conforming.</p>
54    
55     <p>The long character encoding declaration syntax
56 wakaba 1.21 <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"&gt;</code>
57 wakaba 1.15 is obsolete. The new syntax is:</p>
58     <pre class="html example">
59 wakaba 1.21 <code>&lt;meta charset="<var>charset-name</var>"&gt;</code></pre>
60 wakaba 1.15
61     <p>Note that the <code>encoding</code> declaration in <abbr>XML</abbr>
62     declaration has no effect for <abbr>HTML</abbr> document.</p>
63     </div>
64    
65     <div class="section format-charset error" id="m:non-ascii-superset"><h3>No character encoding metadata is found
66 wakaba 1.16 in lower‐level protocol nor is there <abbr>BOM</abbr>, while
67 wakaba 1.15 character encoding <code><var>$0</var></code>
68     is not a superset of <abbr>ASCII</abbr>.</h3>
69     <p>The document is not labeled with character encoding name
70 wakaba 1.16 in lower‐level protocol, e.g. in <abbr>HTTP</abbr>, and
71 wakaba 1.15 the document is not begin with <abbr>BOM</abbr>. In addition,
72     the character encoding of the document is not a superset of
73     <abbr>ASCII</abbr>. The document is non‐conforming.</p>
74    
75     <p>Unless there is a <abbr>BOM</abbr>, the character encoding
76     for the document must be specified in e.g. <abbr>HTTP</abbr>‐level,
77     as:</p>
78     <pre class="http example">
79     <code>Content-Type: text/html; charset=<var>charset-name</var></code></pre>
80    
81     <p>Existence of <abbr>HTML</abbr> character encoding declaration, i.e.
82 wakaba 1.21 <code class="html example">&lt;meta charset="<var>charset-name</var>"&gt;</code>,
83 wakaba 1.15 does not allow to omit <code>charset</code> parameter
84     for <abbr>HTML</abbr> document encoded in non‐<abbr>ASCII</abbr>
85     compatible encoding.</p>
86    
87     <p>Character encodings <code>Shift_JIS</code>, <code>Windows-31J</code>,
88     and <code>ISO-2022-JP</code> are <em>not</em> a superset of
89     <abbr>ASCII</abbr> for the purpose of <abbr>HTML</abbr> conformance.</p>
90     </div>
91    
92     <div class="section format-charset warning" id="w:charset-label-detected"><h3>While parsing the document as
93     <code><var>$0</var></code>, a character encoding declaration specifying
94     character encoding as <code><var>$1</var></code> is found. The document
95     is reparsed.</h3>
96     <p>While parsing a document in a character encoding,
97     a character encoding declaration which declares the character
98     encoding of the document as another character encoding is found.
99     The occurence of this warning itself does not make the document
100     non‐conforming. However, the failure of the first attempt to
101 wakaba 1.20 to detect the character encoding might be a result of non‐conformance
102 wakaba 1.15 of the document.</p>
103    
104     <p>The document will be reparsed from the beginning. Some error
105     or warning might be reported again.</p>
106    
107     <p>These are suggestions to avoid this warning:</p>
108     <ul>
109     <li>Specify <code>charset</code> parameter in the <code>Content-Type</code>
110     field in the <abbr>HTTP</abbr> header, as:
111     <pre class="HTTP example">
112 wakaba 1.21 <code>Content-Type: text/html; charset="<var>charset-name</var>"</code></pre></li>
113 wakaba 1.15 <li>Put the character encoding declaration
114 wakaba 1.21 (<code class="html example">&lt;meta charset="<var>charset-name</var>"&gt;</code>)
115 wakaba 1.15 just after <code class="html example">&lt;head&gt;</code> start tag.</li>
116     <li>Use <code>UTF-8</code>.</li>
117     </ul>
118     </div>
119     </section>
120    
121 wakaba 1.2 <section id="html5-tokenize-error">
122     <h2>HTML5 Parse Errors in Tokenization Stage</h2>
123 wakaba 1.1
124 wakaba 1.3 <div class="section parse-error" id="after-html"><h3>Tag <code>&lt;<var>$0</var>&gt;</code>
125     is not allowed after the end tag <code>&lt;/html&gt;</code>.</h3>
126     <p>The start or end tag of an element appears after the
127     <code>html</code> element has been closed. The document is
128     non-conforming.</p>
129    
130     <p>Any content of the document other than comments
131     must be put into the <code>html</code> element.</p>
132     </div>
133    
134 wakaba 1.7 <div class="section parse-error" id="after-body"><h3>Tag <code>&lt;<var>$0</var>&gt;</code>
135     is not allowed after the end tag <code>&lt;/body&gt;</code>.</h3>
136     <p>The start or end tag of an element appears after the
137     <code>body</code> element has been closed. The document is
138     non-conforming.</p>
139    
140     <p>Any content of the document other than <code>head</code>
141     contents and comments must be put into the <code>body</code>
142     element.</p>
143     </div>
144    
145 wakaba 1.3 <div class="section tokenize-error" id="bare-ero"><h3>The <code>&amp;</code> character must
146 wakaba 1.20 be escaped as <code class="html example">&amp;amp;</code>.</h3>
147 wakaba 1.14 <p>An <code>&amp;</code> character which
148 wakaba 1.3 is not part of any reference appears in the input stream.
149 wakaba 1.14 The document is non‐conforming.</p>
150 wakaba 1.3
151 wakaba 1.14 <p><em>Any <code>&amp;</code> character in URI (or IRI)
152     must be escaped as <code class="example">&amp;amp;</code>.</em></p>
153 wakaba 1.9
154 wakaba 1.3 <p>The <code>&amp;</code> character must
155     be the first character of a reference:
156 wakaba 1.14 <dl class="switch">
157 wakaba 1.3 <dt>Named entity reference</dt>
158     <dd><pre class="html example">
159     <code>&amp;<var>entity-name</var>;</code></pre>
160     where <var>entity-name</var> is the name of the
161     character entity to be referenced.</dd>
162     <dt>Numeric character reference</dt>
163     <dd><pre class="html example">
164     <code>&amp;#<var>d</var>;</code></pre>
165     where <var>d</var> is the decimal representation of
166     the code position of the character to be referenced.</dd>
167     <dt>Hexadecimal character reference</dt>
168     <dd><pre class="html example">
169     <code>&amp;#x<var>h</var>;</code></pre>
170     where <var>h</var> is the hexadecimal representation
171     of the code position of the character to be referenced.</dd>
172     </dl>
173     </p>
174    
175     <p>To represent <code>&amp;</code> as a data character, use
176     named entity reference:
177     <pre class="html example">
178     <code>&amp;amp;</code></pre>
179     </p>
180     </div>
181    
182 wakaba 1.7 <div class="section tokenize-error" id="bare-etago"><h3>A <code>&lt;/</code> string is not followed
183     by a tag name.</h3>
184     <p>There is a <code>&lt;</code> (<code>U+003C</code>
185     <code class="charname">LESS-THAN SIGN</code>) character
186     immediately followed by a <code>/</code> (<code>U+005F</code>
187     <code>SOLIDUS</code>) character, which is not part
188     of any end tag, in the input stream. The document
189     is non-conforming.</p>
190    
191     <p>The <code>&lt;/</code> sequence immediately followed
192     by an <abbr title="End of file pseudo-character">EOF</abbr> is
193     interpreted as a string data of <code>&lt;/</code>.</p>
194    
195     <p>The <code>&lt;/</code> sequence as string data must
196     be escaped as:
197     <pre class="html example">
198     <code>&amp;lt;/</code></pre>
199     </p>
200     </div>
201    
202 wakaba 1.4 <div class="section tokenize-error" id="bare-stago"><h3>A <code>&lt;</code> character is not followed
203     by tag name or by a <code>!</code> character.</h3>
204 wakaba 1.6 <p>A <code>&lt;</code> (<code>U+003C</code>
205     <code class="charname">LESS-THAN SIGN</code>) character which is not part
206     of any markup appears in the input stream.</p>
207 wakaba 1.4
208     <p>The <code>&lt;</code> character as a data character must
209     be escaped as:
210     <pre class="html example">
211 wakaba 1.6 <code>&amp;lt;</code></pre>
212 wakaba 1.4 </p>
213     </div>
214    
215 wakaba 1.3 <div class="section tokenize-error" id="bare-nero"><h3>The decimal representation of the code position
216     of a character must be specified after <code>&amp;#</code>.</h3>
217     <p>An <code>&amp;</code> (<code>U+0026</code>
218     <code class="charname">AMPERSAND</code>) character immediately
219     followed by a <code>#</code> (<code>U+0023</code>
220     <code>NUMBER SIGN</code>) character which
221     is not part of any reference appears in the input stream.
222     The document is non-conforming.</p>
223    
224     <p>The string <code>&amp;#</code> must be the first two characters
225     of a reference:
226 wakaba 1.14 <dl class="switch">
227 wakaba 1.3 <dt>Numeric character reference</dt>
228     <dd><pre class="html example">
229     <code>&amp;#<var>d</var>;</code></pre>
230     where <var>d</var> is the decimal representation of
231     the code point of the character to be referenced.</dd>
232     <dt>Hexadecimal character reference</dt>
233     <dd><pre class="html example">
234     <code>&amp;#x<var>h</var>;</code></pre>
235     where <var>h</var> is the hexadecimal representation
236     of the code point of the character to be referenced.</dd>
237     </dl>
238     </p>
239    
240     <p>To represent <code>&amp;#</code> as data characters, use
241 wakaba 1.6 a named entity reference for the <code>&amp;</code> character:
242 wakaba 1.3 <pre class="html example">
243     <code>&amp;amp;#</code></pre>
244     </p>
245     </div>
246    
247     <div class="section tokenize-error" id="bare-hcro"><h3>The hexadecimal representation of the code position
248     of a character must be specified after <code>&amp;#x</code>.</h3>
249     <p>The string <code>&amp;#x</code> or <code>&amp;#X</code> which
250     is not part of any reference appears in the input stream.
251     The document is non-conforming.</p>
252    
253     <p>The string <code>&amp;#x</code> or <code>&amp;#X</code> must
254     be the first three characters of a hexadecimal reference:
255     <pre class="html example">
256     <code>&amp;#x<var>h</var>;</code></pre>
257     where <var>h</var> is the hexadecimal representation
258     of the code point of the character to be referenced.</p>
259    
260     <p>To represent <code>&amp;#x</code> as data characters, use
261 wakaba 1.6 a named entity reference for the <code>&amp;</code> character:
262 wakaba 1.3 <pre class="html example">
263     <code>&amp;amp;#x</code></pre>
264     </p>
265     </div>
266    
267 wakaba 1.9 <div class="section tokenize-error" id="bogus-comment"><h3>String <code>&lt;!</code> is not followed
268     by <code>--</code>.</h3>
269     <p>There is a <code>&lt;</code> (<code>U+003C</code>
270     <code class="charname">LESS-THAN SIGN</code>) character
271     followed by a <code>!</code> (<code>U+0021</code>
272     <code class="charname">EXCLAMATION MARK</code>) character,
273     which is not followed by a <code>--</code> or
274     <code>!DOCTYPE</code>. The document is non-conforming.</p>
275    
276     <dl class="switch">
277     <dt>Comments</dt>
278 wakaba 1.14 <dd>In HTML document, comments must be introduced by
279     <code class="example">&lt;!--</code> (<code>&lt;!</code>
280     <em>immediately</em> followed
281 wakaba 1.9 by <em>two</em> <code>-</code>s) and must be terminated by
282 wakaba 1.14 <code class="example">--&gt;</code>.
283     Strings <code>&lt;!</code> not followed
284 wakaba 1.9 by <code>--</code> and <code>&lt;!-</code> not followed by
285     <code>-</code> are not valid open delimiters for comments.</dd>
286     <dt>Marked sections, including <code>CDATA</code> sections</dt>
287 wakaba 1.14 <dd>Marked sections are not allowed in HTML document.</dd>
288 wakaba 1.9 <dt>Markup declarations</dt>
289 wakaba 1.14 <dd>Markup declarations, except for <code>DOCTYPE</code>
290     and comment declarations, are not allowed in HTML document.</dd>
291 wakaba 1.9 <dt>String <code>&lt;!</code></dt>
292     <dd>String <code>&lt;!</code> must be escaped as
293 wakaba 1.14 <code class="example">&amp;lt;!</code>.</dd>
294 wakaba 1.9 </dl>
295     </div>
296    
297     <div class="section tokenize-error" id="bogus-end-tag"><h3>String <code>&lt;/</code> is not followed
298     by tag name.</h3>
299 wakaba 1.7 <p>There is a <code>&lt;</code> (<code>U+003C</code>
300     <code class="charname">LESS-THAN SIGN</code>) character
301     immediately followed by a <code>/</code> (<code>U+005F</code>
302     <code>SOLIDUS</code>) character, which is not part
303     of any end tag, in the input stream. The document
304     is non-conforming.</p>
305    
306     <p>The <code>&lt;/</code> sequence not followed by a
307     tag name is parsed as an opening of bogus comment.</p>
308    
309     <p>The <code>&lt;/</code> sequence as string data must
310     be escaped as:
311     <pre class="html example">
312     <code>&amp;lt;/</code></pre>
313     </p>
314     </div>
315    
316 wakaba 1.4 <div class="section tokenize-error" id="dash-in-comment"><h3>There is a <code>--</code> sequence
317     in a comment.</h3>
318     <p>There is a <code>-</code> (<code>U+002D</code>
319     <code class="charname">HYPHEN-MINUS</code>) character
320     at the end of the comment or a <code>--</code> sequence
321     in the comment. The document is non-conforming.</p>
322    
323     <p>Comments cannot contain a string <code>--</code>, as in XML.
324     Unlike SGML, there cannot be more than one comments
325     (where <i>comment</i> is an SGML term) in the comment
326     declaration.</p>
327     </div>
328    
329 wakaba 1.6 <div class="section tokenize-error" id="duplicate-attribute"><h3>There are two attributes with name
330     <code><var>$0</var></code>.</h3>
331 wakaba 1.3 <p>There are more than one attributes with the same
332     name in a tag. The document is non-conforming.</p>
333 wakaba 1.1
334     <p>The <code>motion</code> attribute is not part of the HTML standard.
335     Use <code>img</code> element with animation GIF instead.</p>
336     </div>
337    
338 wakaba 1.10 <div class="section tokenize-error" id="nestc"><h3>Polytheistic slash (<code>/&gt;</code>) cannot be
339 wakaba 1.1 used for this element.</h3>
340 wakaba 1.10 <p>Polytheistic slash (<code>/&gt;</code>) must not be used
341 wakaba 1.3 for the element. The document is non-conforming.</p>
342    
343 wakaba 1.10 <p>The polytheistic slash can only be
344 wakaba 1.1 used for <code>base</code>, <code>link</code>, <code>meta</code>,
345     <code>hr</code>, <code>br</code>, <code>img</code>,
346     <code>embed</code>, <code>param</code>, <code>area</code>,
347 wakaba 1.3 <code>col</code>, and <code>input</code> elements.</p>
348 wakaba 1.1
349 wakaba 1.11 <dl class="switch">
350 wakaba 1.9 <dt><code>&lt;script/&gt;</code></dt>
351 wakaba 1.10 <dd><p>The polytheistic slash cannot be used for <code>script</code>
352 wakaba 1.9 element. Even for an empty <code>script</code> element,
353 wakaba 1.14 there must be an explicit end tag
354     <code class="html example">&lt;/script&gt;</code>.</p>
355 wakaba 1.9
356     <p><strong>NOTE</strong>: Though some user agents interpret
357 wakaba 1.10 polytheistic slash for <code>script</code> element as the
358 wakaba 1.9 closing of the element, such usage is not allowed under
359     the current standard.</p></dd>
360     <dt><code>&lt;basefont/&gt;</code>, <code>&lt;bgsound/&gt;</code>,
361     <code>&lt;frame/&gt;</code>, <code>&lt;keygen/&gt;</code>,
362     <code>&lt;spacer/&gt;</code>, <code>&lt;wbr/&gt;</code></dt>
363     <dd>These elements are themselves non-conforming.</dd>
364     <!-- isindex, image -->
365     <dt><code>&lt;command/&gt;</code>, <code>&lt;event-source/&gt;</code>,
366 wakaba 1.11 <code>&lt;nest/&gt;</code>, or <code>&lt;source/&gt;</code></dt>
367 wakaba 1.9 <dd>Future revision of HTML5 parsing algorithm is expected
368 wakaba 1.10 to allow polytheistic slash for these elements.</dd>
369 wakaba 1.9 <dt><code>&lt;a/&gt;</code>, <code>&lt;p/&gt;</code></dt>
370     <dd>These elements are not always empty and therefore
371 wakaba 1.14 polytheistic slash is not allowed. Use explicit end tag
372     to represent empty element as:
373     <pre class="example html">
374     <code>&lt;p&gt;&lt;/p&gt;</code></pre>
375     </dd>
376 wakaba 1.9 </dl>
377    
378 wakaba 1.10 <p>Note that, unlike in XML, the polytheistic slash has
379 wakaba 1.1 no effect in HTML.</p>
380     </div>
381    
382 wakaba 1.5
383     <div class="section tokenize-error" id="pio"><h3>Processing instruction
384 wakaba 1.9 (<code>&lt;?<var>...</var>&gt;</code>) cannot be used.</h3>
385 wakaba 1.5 <p>Processing instructions (<code>&lt;?<var>...</var>?&gt;</code>),
386     including XML declaration (<code>&lt;?xml <var>...</var>?&gt;</code>)
387     and XML style sheet <abbr title="processing instruction">PI</abbr>
388 wakaba 1.9 (<code>&lt;?xml-stylesheet <var>...</var>?&gt;</code>), are not allowed
389 wakaba 1.5 in the HTML syntax. The document is non-conforming.</p>
390    
391 wakaba 1.11 <dl class="switch">
392     <dt><code>&lt;?xbl?&gt;</code> (<abbr>XBL</abbr> Association)</dt>
393     <dd>An <abbr>XBL</abbr> binding cannot be associated by
394     <abbr title="processing instruction">PI</abbr> in <abbr>HTML</abbr>
395     document. Use <code>binding</code> property in <abbr>CSS</abbr>
396 wakaba 1.14 style sheet as:
397     <pre class="html example">
398     <code>&lt;style&gt;
399     p {
400     binding: url(binding.xbl);
401     }
402     &lt;/style&gt;</code></pre>
403     </dd>
404 wakaba 1.9 <dt><code>&lt;?xml?&gt;</code> (XML declaration)</dt>
405     <dd>XML declaration is unnecessary for HTML documents.</dd>
406     <dt><code>&lt;?xml-stylesheet?&gt;</code> (XML style sheet
407 wakaba 1.11 <abbr title="processing instruction">PI</abbr>)</dt>
408 wakaba 1.9 <dd>Use HTML <code>link</code> element with <code>rel</code>
409     attribute set to <code>stylesheet</code> (or,
410     <code>alternate stylesheet</code> for an alternate style
411 wakaba 1.14 sheet).
412     <pre class="example html">
413 wakaba 1.21 <code>&lt;link rel=stylesheet href="path/to/stylesheet.css"&gt;</code></pre>
414 wakaba 1.14 </dd>
415 wakaba 1.11 <dt><code>&lt;?php?&gt;</code> or
416     <code>&lt;? <var>... <abbr>PHP</abbr> code ...</var> ?&gt;</code>
417     (<abbr>PHP</abbr> code)</dt>
418 wakaba 1.9 <dd>The conformance checker does <em>not</em> support
419     checking for PHP source documents.</dd>
420     <dt>Other processing instructions</dt>
421     <dd>Processing instructions cannot be inserted in an HTML
422     document. Use XML document or insert
423     <code>ProcessingInstruction</code> node by scripting.</dd>
424     </dl>
425 wakaba 1.5
426     <p>Web browsers will parse processing instructions as bogus
427     comments. Some legacy Web browsers, such as IE:mac and
428 wakaba 1.9 some mobile Web browsers, will display processing instructions
429 wakaba 1.5 as string.</p>
430     </div>
431    
432 wakaba 1.1 </section>
433    
434 wakaba 1.2 <section id="html5-parse-errors">
435     <h2>HTML5 Parse Errors in Tree Construction Stage</h2>
436    
437     <div class="section parse-error" id="after-head"><h3>The <code><var>$0</var></code> element cannot be
438     inserted between <code>head</code> and <code>body</code> elements.</h3>
439 wakaba 1.3 <p>A start tag appears after the <code>head</code> element is closed
440 wakaba 1.2 but before the <code>body</code> element is opened.
441     The document is non-conforming.</p>
442     </div>
443    
444 wakaba 1.4 <div class="section parse-error" id="DOCTYPE-in-the-middle"><h3>A <code>DOCTYPE</code> appears after any
445     element or data character has been seen.</h3>
446     <p>A <code>DOCTYPE</code> appears after any element or data character
447     has been seen. The document is non-conforming.</p>
448    
449     <p>The <code>DOCTYPE</code> must be placed before any
450     tag, reference, or data character. Only white space characters
451     and comments can be inserted before the <code>DOCTYPE</code>.</p>
452     </div>
453    
454 wakaba 1.5 <div class="section parse-error" id="in-a:a"><h3>Anchor cannot be nested.</h3>
455     <p>HTML <code>a</code> elements cannot be nested.
456     The document is non-conforming.</p>
457    
458     <p>In the HTML syntax, a start tag of the <code>a</code>
459     implies the end tag of any opening <code>a</code> element.</p>
460     </div>
461    
462 wakaba 1.4 <div class="section parse-error" id="in-body"><h3>Tag <code>&lt;<var>$0</var>&gt;</code>
463 wakaba 1.9 is not allowed in the <code>body</code> element.</h3>
464 wakaba 1.4 <p>The start or end tag of an element, which
465     cannot be a descendant of <code>body</code> element, appears
466     in the input stream while the <code>body</code> element has been opened.
467     The document is non-conforming.</p>
468     </div>
469    
470 wakaba 1.9 <div class="section parse-error" id="in-head:head"><h3>Start tag <code>&lt;head&gt;</code>
471 wakaba 1.6 is not allowed in the <code>head</code> element.</h3>
472     <p>There is a start tag <code>&lt;head&gt;</code> in the
473     <code>&lt;head&gt;</code> element. The document is non-conforming.</p>
474    
475     <p>In an HTML document there must not be more than
476     one <code>head</code> element, therefore no more than one
477     start tag <code>&lt;head&gt;</code> can appear in the input stream.</p>
478     </div>
479    
480 wakaba 1.3 <div class="section parse-error" id="in-table"><h3>Tag <code>&lt;<var>$0</var>&gt;</code>
481 wakaba 1.6 is not allowed in a <code>table</code> element.</h3>
482 wakaba 1.4 <p>The start or end tag of an element, which
483     cannot be a child of <code>table</code> element, appears
484     in the input stream while the <code>table</code> element has been opened
485     but no other element has been opened. The document is non-conforming.</p>
486 wakaba 1.3
487     <p>In <code>table</code>, only table related elements
488     are allowed; any other element must be contained in
489     <code>td</code> or <code>th</code> element to form
490     a part of the table, or <code>caption</code> element to create
491     a table caption.</p>
492     </div>
493    
494     <div class="section parse-error" id="in-table:#character"><h3>Data character is not allowed in
495     <code>table</code>.</h3>
496     <p>A data character appears in <code>table</code>. The document
497     is non-conforming.</p>
498    
499     <p>In <code>table</code>, only table related elements
500     are allowed; any other element and data character must be contained in
501     <code>td</code> or <code>th</code> element to form
502     a part of the table, or <code>caption</code> element to create
503     a table caption.</p>
504     </div>
505    
506     <div class="section parse-error" id="missing-start-tag:tr"><h3>Start tag of <code>tr</code>
507     element is missing.</h3>
508     <p>Start tag of a <code>tr</code> element, which is <em>not</em>
509     optional, is missing. The document is non-conforming.</p>
510    
511     <p>In a table section, a <code>&lt;tr&gt;</code> start tag
512     must occur before any <code>&lt;td&gt;</code> or
513     <code>&lt;th&gt;</code> start tag. Though the HTML5 parser
514     implies the <code>&lt;tr&gt;</code> start tag before
515     these start tags, it must be explicitly specified.</p>
516     </div>
517    
518 wakaba 1.6 <div class="section parse-error" id="no-DOCTYPE"><h3>This document does not start with a
519 wakaba 1.3 <code>DOCTYPE</code>.</h3>
520     <p>The document does not start with a <code>DOCTYPE</code>.
521     The document is non-conforming.</p>
522    
523     <p>An HTML document must start by a <code>DOCTYPE</code>:
524     <pre class="html example">
525     <code>&lt;!DOCTYPE HTML&gt;</code></pre>
526     </p>
527    
528     <p>Only white space characters and comments are allowed
529 wakaba 1.11 before the <code>DOCTYPE</code>. XML declaration is <em>not</em>
530     allowed in HTML document.</p>
531 wakaba 1.3 </div>
532 wakaba 1.2
533     <div class="section parse-error" id="not-closed"><h3>Element <code><var>$0</var></code> is not
534 wakaba 1.3 closed.</h3>
535     <p>End tag of an element is not found before, for example,
536     an end tag of another element appears or
537     the end of the document. The document is non-conforming.</p>
538 wakaba 1.10
539 wakaba 1.11 <p>Only <code>body</code>, <code>colgroup</code>, <code>dd</code>,
540     <code>dt</code>, <code>head</code>, <code>html</code>, <code>li</code>,
541 wakaba 1.10 <code>ol</code>, <code>option</code>, <code>optgroup</code>,
542 wakaba 1.11 <code>p</code>, <code>rb</code>, <code>rp</code>, <code>rt</code>,
543     <code>tbody</code>, <code>td</code>, <code>tfoot</code>,
544     <code>th</code>, <code>thead</code>, <code>tr</code>,
545     <code>ul</code> end tag can be omitted in HTML documents.
546 wakaba 1.10 For any element except for void element, there must be an explicit
547     end tag.</p>
548    
549 wakaba 1.11 <dl class="switch">
550     <dt>HTML <code>canvas</code> element</dt>
551     <dd>Though the element is void in earlier versions of Safari,
552     the <code>canvas</code> element is <em>no</em> longer
553     defined as empty. There must be an end tag
554 wakaba 1.14 <code class="html example">&lt;/canvas&gt;</code>.</dd>
555 wakaba 1.11 </dl>
556    
557 wakaba 1.10 <p>Note that misnesting tags, such as
558     <code class="bad example">&lt;a&gt;&lt;b&gt;&lt;/a&gt;&lt;/b&gt;</code>, are not
559     allowed and they also cause this error.</p>
560 wakaba 1.3 </div>
561 wakaba 1.2
562 wakaba 1.6 <div class="section parse-error" id="not-first-start-tag"><h3>This <code>&lt;html&gt;</code> tag is not
563     the first start tag.</h3>
564     <p>There is a start tag of the <code>html</code> element
565     that it not the first start tag in the input stream.
566     The document is non-conforming.</p>
567    
568     <p>In an HTML document, there cannot be more than one
569     <code>html</code> element and therefore there cannot be
570     more than one <code>&lt;html&gt;</code> tag. In addition,
571     nothing can be placed before the <code>&lt;html&gt;</code> tag
572     except a <code>DOCTYPE</code>, white space characters,
573     and comments.</p>
574     </div>
575    
576 wakaba 1.2 <div class="section parse-error" id="not-HTML5"><h3>This document is written in an old version of
577 wakaba 1.3 HTML.</h3>
578     <p>The document contains a <code>DOCTYPE</code> declaration
579 wakaba 1.6 that is different from HTML5 <code>DOCTYPE</code> (i.e.
580 wakaba 1.14 <code class="example html">&lt;!DOCTYPE HTML&gt;</code>).
581     The document is non‐conforming.</p>
582 wakaba 1.3
583     <p>The document might or might not be conformant to
584     some version of HTML. However, conformance to any HTML
585     specification other than HTML5 provides for no practical
586     convenience, since Web borwsers will parse any
587     HTML document (roughly) as defined in HTML5.</p>
588     </div>
589 wakaba 1.2
590     <div class="section parse-error" id="unmatched-end-tag"><h3>Element <code><var>$0</var></code> is not
591 wakaba 1.4 opened.</h3>
592     <p>An end tag appears though no element with the same name
593     has been opened. The document is non-conforming.</p>
594    
595     <p>For any end tag in HTML document, there must be a
596     corresponding start tag.</p>
597 wakaba 1.11
598     <dl class="switch">
599     <dt>HTML <code>base</code>, <code>basefont</code>,
600     <code>bgsound</code>, <code>br</code>, <code>col</code>,
601     <code>embed</code>, <code>frame</code>, <code>hr</code>,
602     <code>image</code>, <code>img</code>, <code>input</code>,
603     <code>isindex</code>, <code>link</code>, <code>meta</code>,
604     <code>param</code>, <code>spacer</code>, or <code>wbr</code> element</dt>
605     <dd>End tag is not allowed for these elements, since
606     those content must always be empty. Remove end tag.</dd>
607     <!-- keygen -->
608     <!-- command, event-source, nest, source -->
609     </dl>
610 wakaba 1.4 </div>
611 wakaba 1.2
612     </section>
613    
614 wakaba 1.1 <section id="element-content-model-errors">
615     <h2>Element Content Model Errors</h2>
616    
617     <div class="section content-model-error" id="character-not-allowed"><h3>Data character is not allowed in this
618     context.</h3>
619 wakaba 1.3 <p>A data character appears where it is not allowed in this
620 wakaba 1.1 context. The document is non-conforming.</p>
621    
622     <p>Possible causes:
623 wakaba 1.6 <ul>
624     <li><p>A data character cannot be a child
625     of certain sectioning elements such as <code>body</code>,
626     <code>section</code>, and <code>blockquote</code>.</p>
627    
628     <p>Any inline-level content must be put
629     in e.g. paragraph element such as <code>p</code>.</p></li>
630     <li><p>Though some elements such as <code>div</code>,
631     <code>li</code>, and <code>td</code> allow
632     <em>either one</em> of block-level or inline-level content
633     is allowed. If there is a block-level content,
634     any inline-level content must be put
635     in e.g. paragraph element such as <code>p</code>.</p></li>
636     </ul>
637 wakaba 1.1 </p>
638     </div>
639    
640     <div class="section content-model-error" id="child-element-missing"><h3>There must be a <code><var>$0</var></code>
641     element as a child of this element.</h3>
642     <p>The content model of the element is so defined that it
643     must contain a <code><var>$0</var></code> child element.
644 wakaba 1.3 The document is non-conforming.</p>
645 wakaba 1.1
646 wakaba 1.11 <dl class="switch">
647     <dt>HTML <code>head</code> element</dt>
648     <dd>There must be a <code>title</code> child element.</dd>
649     <dt>HTML <code>html</code> element</dt>
650     <dd>There must be a <code>head</code> child element followed
651     by a <code>body</code> element.</dd>
652     <dt>HTML <code>tr</code> element</dt>
653     <dd><a href="#child-element-missing:td%7Cth">There must be
654     one or more <code>td</code> or <code>th</code> child element.</a></dd>
655     </dl>
656 wakaba 1.1 </div>
657    
658     <div class="section content-model-error" id="child-element-missing:td|th"><h3>There must be a <code>td</code>
659     or <code>th</code> element as a child of this element.</h3>
660     <p>The <code>tr</code> element must contain at least one
661 wakaba 1.3 <code>td</code> or <code>th</code> child element. The document
662     is non-conforming.</p>
663 wakaba 1.1 </div>
664    
665     <div class="section content-model-error" id="element-not-allowed"><h3>This element is not allowed in this
666     context.</h3>
667 wakaba 1.3 <p>An element appears where it is not allowed. The document
668 wakaba 1.1 is non-conforming.</p>
669    
670     <p>Possible causes:
671 wakaba 1.6 <dl class="switch">
672     <dt>If the element with the error is an inline-level element,
673     such as <code>a</code>, <code>progress</code>, or <code>img</code></dt>
674 wakaba 1.1 <dd><p>An inline-level element cannot be a child
675     of certain sectioning elements such as <code>body</code>,
676     <code>section</code>, and <code>blockquote</code>.</p>
677    
678     <p>Any inline-level content must be put
679     in e.g. paragraph element such as <code>p</code>.</p></dd>
680 wakaba 1.9 <dt>If it is a block-level elements, such as <code>aside</code>,
681     <code>div</code>, <code>h<var>n</var></code>,
682     <code>p</code>, or <code>section</code></dt>
683     <dd><dl class="switch">
684     <dt>If the parent element is <code>div</code>,
685     <code>li</code>, <code>td</code>, or <code>th</code></dt>
686     <!-- @@ TODO: more... -->
687 wakaba 1.10 <!-- @@ TODO: <p><ul><li><p> -->
688 wakaba 1.9 <dd><p>The parent element allows <em>either</em>
689     block-level or inline-level content. If there is a
690     block-level content, any inline-level content must be
691     put in e.g. paragraph element such as <code>p</code>.</p>
692     <p>For example, an HTML document fragment
693 wakaba 1.14 <code class="html bad example">&lt;div&gt;&lt;p&gt;Hello!&lt;/p&gt; World!&lt;/div&gt;</code>
694 wakaba 1.9 is non-conforming, since a word <q>World!</q> does not belong
695     to any paragraph. (If not part of any paragraph, what is
696     it!?) A conforming example would be:
697 wakaba 1.14 <pre class="html example">
698 wakaba 1.9 <code>&lt;div&gt;&lt;p&gt;Hello!&lt;/p&gt; &lt;p&gt;World!&lt;/p&gt;&lt;/div&gt;</code></pre>
699     </p></dd>
700     <dt>If the parent element does <em>not</em> allow
701     block-level elements as content</dt>
702     <dd>The element is not allowed to be inserted here.
703     For example, a <code>div</code> element cannot be
704     a child of an <code>h1</code> element.</dd>
705     </dl></dd>
706 wakaba 1.6 <dt>If the element with the error is a <code>noscript</code> element</dt>
707     <dd>The <code>noscript</code> element is allowed only in the context
708     where a block-level or inline-level content is expected
709     and in the <code>head</code> element.
710     It cannot be used in e.g. <code>ul</code>, <code>table</code>,
711     or <code>select</code>.</dd>
712 wakaba 1.8 <dt>If the element with the error is <code>blink</code>,
713     <code>center</code>, or <code>marquee</code> element</dt>
714     <dd>These elements are not part of the HTML standard.
715     Use CSS for styling control.</dd>
716 wakaba 1.9
717 wakaba 1.11 <dt><code>button</code>, <code>datalist</code>,
718     <code>fieldset</code>, <code>form</code>,
719 wakaba 1.9 <code>input</code>, <code>label</code>,
720     <code>optgroup</code>, <code>option</code>, <code>output</code>,
721     <code>rb</code>, <code>rp</code>, <code>rt</code>, <code>ruby</code>,
722     <code>textarea</code>, or <code>textarea</code> element</dt>
723     <!-- rbc, rtc ? -->
724     <dd>These elements are intentionally not supported by the conformance
725     checker <em>yet</em>.</dd>
726 wakaba 1.1 </dl>
727     </p>
728     </div>
729    
730 wakaba 1.11 <div class="section content-model-error" id="element-not-allowed:root"><h3>This element is not allowed as a root
731     element.</h3>
732     <p>An element that is not allowed as the root element
733     is used as the root element of the document. The document is
734     non-conforming, as far as the conformance checker can tell.</p>
735    
736     <dl class="switch">
737     <dt><code>html</code> element in an XHTML document</dt>
738 wakaba 1.14 <dd><p>In <abbr>XHTML</abbr> document, the root <code>html</code>
739     element must have an <code>xmlns</code> attribute as:
740     <pre class="xml example">
741 wakaba 1.21 <code>&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;</code></pre></p></dd>
742 wakaba 1.11 <dt><code>rss</code> element</dt>
743     <dd><p>The document is written in some version of RSS.</p>
744     <p>The conformance checker does not support any version
745     of RSS. Use Atom 1.0 for feed documents.</p></dd>
746     <dt><code>feed</code> element</dt>
747     <dd><p>The Atom <code>feed</code> element must be
748 wakaba 1.14 in the <code>http://www.w3.org/2005/Atom</code>
749     namespace as:
750     <pre class="xml example">
751 wakaba 1.21 <code>&lt;feed xmlns="http://www.w3.org/2005/Atom"&gt;</code></pre>
752 wakaba 1.14 </p>
753 wakaba 1.11 <p>The conformance checker does not support Atom 0.3.
754     Use Atom 1.0 for feed documents.</p></dd>
755     </dl>
756     </div>
757    
758 wakaba 1.6 <div class="section content-model-error" id="ps-element-missing"><h3>There is no <code><var>$0</var></code>
759     element before this element.</h3>
760     <p>There must be an element before another element, but there
761     is not. The document is non-conforming.</p>
762    
763     <p>For example, there must be a <code>dt</code> element
764     before any <code>dd</code> element.</p>
765     </div>
766    
767 wakaba 1.2 </section>
768    
769 wakaba 1.3 <section id="attribute-errors">
770     <h2>Attribute Errors</h2>
771    
772     <div class="section attribute-error" id="attribute-missing"><h3>Required attribute <code><var>$0</var></code>
773     is not specified.</h3>
774     <p>A required attribute is not specified. The document
775     is non-conforming.</p>
776    
777     <p>Some attribute is defined as <i>required</i>.
778     Without required attributes specified, user agents
779 wakaba 1.9 cannot provide full functionality of the element to the user.</p>
780    
781     <dl class="switch">
782     <dt>HTML <code>img</code> element</dt>
783     <dd>The <code>src</code> attribute must be specified.
784     Additionally, the <code>alt</code> attribute must be specified
785     in many cases.</dd>
786     <dt>HTML <code>link</code> element</dt>
787     <dd>The <code>rel</code> attribute must be specified.
788     Note that the <code>rev</code> attribute is obsolete.</dd>
789     </dl>
790 wakaba 1.3 </div>
791    
792 wakaba 1.8 <div class="section attribute-error" id="attribute-not-allowed"><h3>Attribute
793     <code><var>{local-name}</var></code> is not allowed for
794     <code><var>{element-local-name}</var></code> element.</h3>
795     <p>An attribute is specified where it is not allowed.
796     The document is non-conforming.</p>
797    
798     <dl>
799     <dt>HTML <code>meta</code> element</dt>
800     <dd>For HTML <code>meta</code> element, <em>only one</em> of
801     <code>name</code>, <code>http-equiv</code>, or <code>charset</code>
802     attribute is allowed.</dd>
803     </dl>
804     </div>
805    
806 wakaba 1.3 <div class="section attribute-error" id="in-HTML:xml:lang"><h3>The <code>xml:lang</code> attribute is not
807     allowed in HTML document.</h3>
808     <p>The <code>xml:lang</code> attribute is not allowed in
809     HTML document. The document is non-conforming.</p>
810    
811 wakaba 1.9 <p>Use of the <code>xml:lang</code> attribute is conforming
812     <em>only</em> in XML documents.</p>
813 wakaba 1.3
814     <p>To specify natural language information in HTML document,
815     use <code>lang</code> attribute instead.</p>
816 wakaba 1.6
817     <p>XHTML 1.0 Appendix C was encouraged to specify both
818     <code>lang</code> and <code>xml:lang</code> attributes with
819     the same value. Such a duplication has <em>no effect</em> in practice.
820     Use only one of <code>lang</code> (in HTML) or <code>xml:lang</code> (in
821     XML).</p>
822    
823 wakaba 1.3 <!-- @@ ISSUE: xml:lang in non-HTML element in DOM5 HTML created
824     from an HTML document? -->
825     </div>
826    
827     <div class="section attribute-error" id="in-XML:charset"><h3>The <code>charset</code> attribute is not
828     allowed in XML document.</h3>
829     <p>The <code>charset</code> attribute of a
830     <code>meta</code> element is not allowed in XML document.
831     The document is non-conforming.</p>
832    
833     <p>To specify the character encoding used for serialization,
834     if necessary, use XML declaration instead:
835     <pre class="xml example">
836 wakaba 1.21 <code>&lt;?xml version="1.0" encoding="<var>encoding-name</var>"?&gt;</code></pre>
837 wakaba 1.3 </p>
838     </div>
839    
840     <div class="section attribute-error" id="in-XML:lang"><h3>The <code>lang</code> attribute is not
841     allowed in XML document.</h3>
842     <p>The HTML <code>lang</code> attribute is not allowed in
843     XML document. The document is non-conforming.</p>
844    
845     <p>The <code>lang</code> attribute in <code>null</code>
846 wakaba 1.9 namespace for HTML elements is conforming <em>only</em> in
847     HTML documents.</p>
848 wakaba 1.3
849     <p>To specify natural language information in XML document,
850     use <code>xml:lang</code> attribute instead.</p>
851     </div>
852    
853     <div class="section attribute-error" id="in-XML:xmlns"><h3>The <code>xmlns</code> attribute
854     in the <code>null</code> namespace is not allowed in
855     XHTML document. The document is non-conforming.</h3>
856     <p>The <code>xmlns</code> attribute in the <code>null</code>
857     namespace is not allowed in XHTML document.</p>
858    
859 wakaba 1.9 <p>This error should not occur in conformance-checking of
860 wakaba 1.3 static documents.</p>
861     </div>
862    
863     </section>
864    
865 wakaba 1.2 <section id="attribute-value-errors">
866     <h2>Attribute Value Errors</h2>
867    
868 wakaba 1.16 <div class="section attribute-value-warning warning" id="w:charset:not-registered"><h3>Character encoding name <code><var>$0</var></code>
869     is not registered.</h3>
870     <p>The specified character encoding name is not registered to
871     <abbr>IANA</abbr>. Use of registered character encoding name
872     is a good practice to facilitate interoperability.</p>
873    
874     <dl class="switch">
875     <dt><code>EUC-TW</code></dt>
876     <dd><code>EUC-TW</code> is not registered. Unfortunately, there
877     is no registered name for that character encoding. Use
878     Big5 encoding with character encoding name <code>Big5</code>
879     if it is enough to represent the document.</dd>
880     <dt><code>ISO-2022-JP-1</code></dt>
881     <dd><code>ISO-2022-JP-1</code> is not registered, nevertheless
882     this character encoding name is documented in
883     <a href="urn:ietf:rfc:2237"><abbr>RFC</abbr> 2237</a>. Use
884     <code>ISO-2022-JP-2</code> instead, since that character encoding
885     is a superset of ISO-2022-JP-1.</dd>
886     <dt><code>ISO-2022-JP-3</code>, <code>ISO-2022-JP-3-plane1</code></dt>
887     <dd>These names are not registered and obsoleted in favor of
888     <code>ISO-2022-JP-2004</code> and
889     <code>ISO-2022-JP-2004-plane1</code>.</dd>
890     <dt><code>ISO-2022-JP-2003</code>,
891     <code>ISO-2022-JP-2003-plane1</code></dt>
892     <dd>These names are not registered and corrected to
893     <code>ISO-2022-JP-2004</code> and
894     <code>ISO-2022-JP-2004-plane1</code>.</dd>
895     <dt><code>ISO-2022-JP-2004</code>,
896     <code>ISO-2022-JP-2004-plane1</code></dt>
897     <dd>These names are not registered. Unfortunately, there is
898     no registered name for these character encodings.</dd>
899     <dt><code>UTF-8N</code></dt>
900     <dd><code>UTF-8N</code> is not registered. Character encoding
901     name <code>UTF-8</code> represents UTF-8 encoding with or
902     without <abbr>BOM</abbr>.</dd>
903     </dl>
904    
905     <p><strong>WARNING</strong>: This error might be raised for
906     a registered character encoding name, since the character encoding
907     name database of the conformance checker is not complete yet.</p>
908     </div>
909    
910     <div class="section attribute-value-warning warning" id="w:charset:private"><h3><code><var>$0</var></code> is a private
911     character encoding name.</h3>
912     <p>The specified character encoding name is a private name and
913     not registered to <abbr>IANA</abbr>. Use of registered character
914     encoding name is a good practice to facilitate interoperability.</p>
915    
916     <dl class="switch">
917     <dt><code>x-euc-jp</code></dt>
918     <dd>Use <code>EUC-JP</code> for the Japanese <abbr>EUC</abbr>
919     character encoding.</dd>
920     <dt><code>x-sjis</code></dt>
921     <dd>Use <code>Shift_JIS</code> for standard Shift encoding scheme of
922     <abbr>JIS</abbr> coded character set, or <code>Windows-31J</code>
923     for Microsoft standard character set as implemented by
924     Microsoft Windows.</dd>
925     </dl>
926     </div>
927    
928     <div class="section attribute-value-error" id="m:charset:syntax-error"><h3>The specified value is syntactically not a
929     character encoding name.</h3>
930     <p>The attribute value must be a character encoding name. However,
931     the specified value is not a character encoding name syntactically.
932     The document is non‐conforming.</p>
933     <p>Character encoding name is a string of <abbr>ASCII</abbr>
934     printable characters, up to 40 characters.</p>
935     </div>
936    
937 wakaba 1.3 <div class="section attribute-value-error" id="enumerated:invalid"><h3>This attribute only allow a limited set of
938 wakaba 1.6 values and the specified value <code><var>{@}</var></code> is not one
939 wakaba 1.8 of them.</h3>
940     <p>For this attribute only several values are allowed and the
941     value of the attribute is not one of them. The document
942     is non-conforming.</p>
943    
944     <dl>
945     <dt>HTML <code>meta</code> element, <code>http-equiv</code> attribute</dt>
946 wakaba 1.14 <dd><p>Only values <code>Default-Style</code> and <code>Refresh</code>
947     are allowed.</p>
948 wakaba 1.8 <p>Value <code>Content-Type</code> is obsolete; for charset
949     declaration, the <code>charset</code> attribute can be used as:
950     <pre class="html example">
951 wakaba 1.21 <code>&lt;meta charset="<var>charset-name</var>"&gt;</code></pre>
952 wakaba 1.8 ... where <var>charset-name</var> is a name of the character encoding
953     of the document, such as <code>utf-8</code>.</p>
954     <p>Values <code>Content-Style-Type</code> and
955     <code>Content-Script-Type</code> are currently not allowed.</p>
956     <p>Value <code>Keywords</code> is not allowed. Use
957     <code>name</code> attribute instead of <code>http-equiv</code>
958     attribute.</p>
959     <p>Values <code>Expires</code>, <code>Pragma</code>,
960     and <code>Cache-Control</code> are not allowed;
961     use <em>real</em> HTTP header fields for cache control.</p></dd>
962     </dl>
963     </div>
964 wakaba 1.2
965 wakaba 1.15 <div class="section attribute-value-error" id="enumerated:invalid:http-equiv:content-type"><h3>Character encoding declaration syntax
966 wakaba 1.21 <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"&gt;</code>
967 wakaba 1.13 is obsolete.</h3>
968 wakaba 1.15 <p>Old long character encoding declaration syntax
969 wakaba 1.21 <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"&gt;</code>
970 wakaba 1.13 is in use. The document is non‐conforming.</p>
971    
972 wakaba 1.15 <p>The new character encoding declaration syntax is:
973 wakaba 1.14 <pre class="html example">
974 wakaba 1.21 <code>&lt;meta charset="<var>charset-name</var>"&gt;</code></pre>
975 wakaba 1.13 </p>
976     </div>
977    
978 wakaba 1.3 <div class="section attribute-value-error" id="duplicate-ID"><h3>This identifier has already been
979     assigned to another element.</h3></div>
980    
981 wakaba 1.4 <div class="section attribute-value-error" id="link-type:bad-context"><h3>The link type <code><var>$0</var></code>
982     cannot be specified for this element.</h3>
983     <p>The specified link type cannot be used for the element.
984     The document is non-conforming.</p>
985    
986     <p>Link types are associated with limited set of elements.
987     They cannot be used with other elements.</p>
988    
989     <p>For example, link type <code>bookmark</code>
990     can be used with <code>a</code> or <code>area</code> element,
991     while it cannot be used with <code>link</code> element.</p>
992     </div>
993    
994     <div class="section attribute-value-error" id="link-type:non-conforming"><h3>The link type <code><var>$0</var></code>
995     is non-conforming.</h3>
996 wakaba 1.6 <p>The specified link type is non-conforming, and therefore
997     the document is non-conforming.</p>
998    
999 wakaba 1.11 <dl class="switch">
1000 wakaba 1.6 <dt>Link type <code>contents</code></dt>
1001     <dd>Use link type <code>index</code>.</dd>
1002     <dt>Link type <code>copyright</code></dt>
1003     <dd>Use link type <code>license</code>.</dd>
1004     <dt>Link type <code>home</code></dt>
1005     <dd>Use link type <code>index</code>.</dd>
1006 wakaba 1.11 <dt>Link type <code>previous</code></dt>
1007     <dd>Use link type <code>prev</code>.</dd>
1008 wakaba 1.6 <dt>Link type <code>start</code></dt>
1009     <dd>Use link type <code>first</code>.</dd>
1010 wakaba 1.11 <dt>Link type <code>toc</code> or <code>top</code></dt>
1011 wakaba 1.6 <dd>Use link type <code>index</code>.</dd>
1012     </dl>
1013     </div>
1014    
1015 wakaba 1.16 <div class="section attribute-value-error" id="m:mismatched-charset-name"><h3>Character encoding name <code><var>$1</var></code>
1016     is different from document character encoding
1017     <code><var>$0</var></code>.</h3>
1018     <p>The specified character encoding name is different from
1019     the character encoding of the document. The document
1020     is non‐conforming.</p>
1021     </div>
1022    
1023 wakaba 1.6 <div class="section attribute-value-error" id="reserved-browsing-context-name"><h3>Browsing context name
1024     <code><var>{@}</var></code> is reserved.</h3>
1025     <p>The specified browsing context name is reserved.
1026     The document is non-conforming.</p>
1027 wakaba 1.4
1028 wakaba 1.6 <p>Names of browsing contexts starting with <code>_</code>
1029     (<code>U+005F</code> <code class="charname">LOW LINE</code>)
1030     are reserved so that it must not be used.</p>
1031    
1032     <p>Old version of HTML, non-HTML markup languages, and
1033     Web browsers define or implements special reserved
1034     browsing context names <code>_blank</code>,
1035     <code>_main</code>, and <code>_replace</code>.
1036     However, they are <em>not</em> conforming attribute values.</p>
1037 wakaba 1.4 </div>
1038    
1039 wakaba 1.2 </section>
1040    
1041 wakaba 1.4 <section id="attribute-value-warnings">
1042     <h2>Attribute Value Warnings</h2>
1043    
1044     <div class="section attribute-value-warning should" id="s:link-type:proposed"><h3>Link type <code><var>$0</var></code>
1045     is proposed but not accepted yet; it <em>should not</em> be
1046     used until it has been accepted.</h3>
1047     <p>The link type is in the <i>proposed</i> status; it
1048     <em>should not</em> be used until it has been
1049     accepted.</p>
1050    
1051     <p><strong>Warning</strong>: The data served to the
1052     conforming checker might be out of date; it might have already
1053 wakaba 1.11 been accepted or rejected. The document might or might not be
1054     conforming depending on the status. See WHATWG Wiki
1055 wakaba 1.4 for the latest information.</p>
1056     </div>
1057    
1058     </section>
1059    
1060 wakaba 1.2 <section id="table-model-errors">
1061     <h2>Table Model Errors</h2>
1062    
1063 wakaba 1.3 <div class="section table-model-error" id="table:colspan-creates-column-with-no-anchored-cell"><h3>This <code>colspan</code> attribute
1064     results in creating a table column that does not contain
1065     any cell anchored to it.</h3></div>
1066    
1067 wakaba 1.2 <div class="section table-model-error" id="table:no-cell-in-last-row"><h3>The table has no cell (<code>td</code> or
1068     <code>th</code>) in the last row.</h3></div>
1069    
1070 wakaba 1.6 <div class="section table-model-error" id="table:rowspan-extends-table"><h3>This <code>rowspan</code> attribute
1071     results in creating a table row that does not contain
1072     any cell anchored to it.</h3>
1073     <p>The <code>rowspan</code> attribute value of the cell
1074     is so specified that it extends a table in the row axis.
1075     However, the extended row does not contain any cell by itself.
1076     The document is non-conforming.</p>
1077    
1078     <p>For example, the table below is non-conforming:
1079 wakaba 1.14 <pre class="html bad example">
1080 wakaba 1.6 <code>&lt;table&gt;
1081     &lt;tbody&gt;
1082     &lt;tr&gt;&lt;td rowspan=2&gt;&lt;/td&gt;&lt;/tr&gt;
1083     &lt;/tbody&gt;
1084     &lt;/table&gt;</code></pre>
1085 wakaba 1.9 ... since the second row contains only
1086     a cell that spans between first and second rows.</p>
1087 wakaba 1.6 </div>
1088    
1089 wakaba 1.2 </section>
1090    
1091     <section id="imt-warnings">
1092     <h2>Internet Media Type Warnings</h2>
1093 wakaba 1.1
1094 wakaba 1.6 <div class="section should" id="s:IMT:obsolete-subtype"><h3><code><var>{@}</var></code>: An <em>obsolete</em>
1095     subtype is used.</h3></div>
1096 wakaba 1.2
1097 wakaba 1.6 <div class="section should" id="s:IMT:private-subtype"><h3><code><var>{@}</var></code>: A private
1098     (<code>x-</code> or <code>x.</code>) subtype is used.</h3></div>
1099 wakaba 1.2
1100 wakaba 1.6 <div class="section should" id="s:IMT:unregistered-subtype"><h3><code><var>{@}</var></code>: The subtype is
1101     not registered to IANA.</h3></div>
1102 wakaba 1.2
1103     </section>
1104    
1105     <section id="uri-errors">
1106     <h2>URI (or IRI) Errors</h2>
1107    
1108 wakaba 1.6 <div class="section must" id="m:URI::syntax-error"><h3>The specified value is syntactically not an IRI
1109     reference.</h3>
1110     <p>The specified value does not satisfy the syntactical requirements
1111     for IRI references. The document is non-conforming.</p>
1112    
1113     <p>Possible causes:
1114     <ul>
1115     <li>The string might contain one or more white space characters.
1116     Especially, the <code> </code> (<code>U+0020</code>
1117     <code class="charname">SPACE</code>) character cannot be
1118     used in IRI references.</li>
1119     </ul>
1120     </p>
1121     </div>
1122 wakaba 1.2
1123     </section>
1124    
1125 wakaba 1.9 <section id="uri-shoulds">
1126     <h2>URI (or IRI) Should-level Errors</h2>
1127 wakaba 1.3
1128 wakaba 1.9 <div class="section should" id="s:URI::dot-segment"><h3>A dot-segment (<code>.</code> or
1129     <code>..</code>) occurs in an absolute reference.</h3>
1130 wakaba 1.3 <p>Dot-segment (<code>.</code> or <code>..</code>) should
1131     not occur in an absolute reference.</p>
1132    
1133     <p>In relative references, dot-segments are used to represent
1134     the current (<code>.</code>) or the parent (<code>..</code>)
1135     hierarchy of the path. Though they are also allowed
1136     in absolute references, it should be resolved to the
1137     canonical form before it has been published.</p>
1138     </div>
1139 wakaba 1.2
1140 wakaba 1.9 <div class="section should" id="s:URI::empty-path"><h3>This IRI does not end with
1141     a <code>/</code>.</h3></div>
1142 wakaba 1.1
1143 wakaba 1.9 <div class="section should" id="s:URI::lowercase-hexadecimal-digit"><h3>A lowercase hexadecimal digit is used
1144     in percent-encoding.</h3>
1145 wakaba 1.5 <p>The hexadecimal digit in percent-encoding string in the IRI
1146 wakaba 1.4 is in lowercase. Though the IRI <em>is</em> conforming,
1147     it should be in uppercase.</p>
1148     </div>
1149    
1150     <div class="section should" id="s:URI::percent-encoded-unreserved"><h3>An unreserved character is
1151     percent-encoded.</h3>
1152     <p>An unreserved character is percent-encoded in the IRI.
1153     Though it <em>is</em> conforming, it should be in the
1154     decoded (or bare) form.</p>
1155     </div>
1156    
1157 wakaba 1.6 <div class="section should" id="s:URI::uppercase-scheme-name"><h3>URI scheme name is in uppercase.</h3>
1158     <p>The scheme part of the IRI is written in uppercase letter.</p>
1159    
1160     <p>Uppercase scheme names are not required to be processed
1161     correctly.</p>
1162     <!-- @@
1163     RFC 3986 3.1.
1164     > Although schemes are case-
1165     insensitive, the canonical form is lowercase and documents that
1166     specify schemes must do so with lowercase letters.
1167    
1168     > An implementation ... should only produce lowercase scheme names for
1169     consistency.
1170     -->
1171     </div>
1172    
1173 wakaba 1.1 </section>
1174    
1175 wakaba 1.11 <section id="cache-manifest-errors">
1176     <h2>Cache Manifest Errors</h2>
1177    
1178     <div class="section must" id="m:not-manifest"><h3>This document is not a cache manifest.</h3>
1179     <p>The specified document is <em>not</em> a cache manifest.
1180     The document is non-conforming.</p>
1181    
1182     <p>An entity labeled as Internet media type
1183     <code>text/cache-manifest</code> must contain a cache manifest.</p>
1184    
1185     <p>A cache manifest must start with a line whose content is
1186 wakaba 1.14 <code class="manifest example">CACHE MANIFEST</code>
1187     (exactly one space character between
1188 wakaba 1.11 <code>CACHE</code> and <code>MANIFEST</code>).</p>
1189     </div>
1190     </section>
1191    
1192 wakaba 1.17 <section id="information">
1193     <h2>Stability Information</h2>
1194    
1195     <div class="section level-i" id="i:status:cr:element"><h3>This element is in the
1196 wakaba 1.19 <strong>call for implementation</strong> stage.</h3>
1197     <p>The element is in the call for implementation stage.</p>
1198 wakaba 1.17
1199     <p>Usually, using the element is safe. However, it is a new feature
1200     so that it might not be implemented correctly. If it is found that
1201     the feature is hard or impossible to implement, the feature
1202     might be revised, or in some case it might be dropped.</p>
1203    
1204 wakaba 1.20 <p>Elements defined by Atom 1.0 (IETF Proposed Standard), and XBL 2.0
1205     (W3C Candidate Recommendation) belong to this class.</p>
1206 wakaba 1.17 </div>
1207    
1208     <div class="section level-i" id="i:status:lc:element"><h3>This element is in the <strong>last
1209 wakaba 1.18 call for comments</strong> stage.</h3>
1210     <p>The element is in the last call for comments stage.</p>
1211 wakaba 1.17
1212     <p>The element is relatively mature, though the standardization
1213     is not done yet. It may be used for experiments. Since it is a new
1214     feature, it might not be implemented correctly or at all. If it is
1215     found that the feature is hard or impossible to implement, the feature
1216     might be revised or might be dropped.</p>
1217    
1218     <p>Elements defined by Web Forms 2.0 as well as some elements
1219     defined by HTML5 belong to this class.</p>
1220     </div>
1221    
1222     <div class="section level-i" id="i:status:wd:element"><h3>This element is documented in a <strong>working
1223     draft</strong>.</h3>
1224     <p>The element is documented in a working or editor's draft
1225     and not yet completed.</p>
1226    
1227     <p>The element should not be used for any practical purpose.
1228     The feature might be drastically changed later or might be
1229     entirely removed.</p>
1230    
1231     <p>Most of new elements defined by HTML5 belong to this class.</p>
1232     </div>
1233    
1234     <div class="section level-i" id="i:status:non-standard:element"><h3>This element is <strong>not part of any
1235 wakaba 1.19 standard</strong> the conformance checker knows.</h3>
1236     <p>The element is not part of any standard or draft the conformance
1237     checker is aware of.</p>
1238 wakaba 1.17
1239 wakaba 1.19 <p>The element should not be used for any practical purpose unless
1240     there is really a standard that defines the element.</p>
1241 wakaba 1.17 </div>
1242     </section>
1243    
1244 wakaba 1.1 <section id="unsupported-messages">
1245     <h2><i>Unsupported</i> Messages</h2>
1246    
1247 wakaba 1.9 <div class="section unsupported" id="unsupported:element"><h3>Conformance checking for element
1248     <code><var>{local-name}</var></code> is not supported; <em>it might or
1249     might not be conforming</em>.</h3>
1250     <p>The conformant checker does not support the element.
1251 wakaba 1.1 It cannot determine whether the document is conforming or not.</p>
1252     </div>
1253    
1254 wakaba 1.9 <div class="section unsupported" id="unsupported:attribute"><h3>Conformance checking for attribute
1255     <code><var>{local-name}</var></code> of element
1256     <code><var>{element-local-name}</var></code> is not supported;
1257     <em>it might or might not be conforming</em>.</h3>
1258     <p>The conformant checker does not support the attribute.
1259 wakaba 1.1 It cannot determine whether the document is conforming or not.</p>
1260     </div>
1261    
1262 wakaba 1.9 <div class="section unsupported" id="unsupported:link-type"><h3>Link type <code><var>$0</var></code> is not
1263 wakaba 1.4 standardized or registered at the time of the release of the conformance
1264 wakaba 1.9 checker; <em>it is non-conforming unless it now has been
1265 wakaba 1.4 registered</em>.</h3>
1266 wakaba 1.1 <p>The <code>rel</code> attribute is defined as a list of link types.
1267     Some common link types are defined in the HTML5 specification.
1268     Additional link types can be registered to the WHATWG Wiki.
1269     use of any other link type is non-conforming.</p>
1270    
1271     <p>The specified link type is not part of the standard or registry
1272     when the database used by the conformance cheker is created.
1273     The link type might have been added to the registry since then.
1274     In such case it might be conforming. Otherwise, the
1275     document is non-conforming.</p>
1276 wakaba 1.8
1277     <dl>
1278     <dt>Link types <code>shortcut icon</code></dt>
1279     <dd>Link type <code>shortcut</code> is not registered.
1280     Use only <code>icon</code> for linking to so-called favicon.</dd>
1281     </dl>
1282 wakaba 1.1 </div>
1283    
1284 wakaba 1.4 <div class="section unsupported" id="unsupported:event-handler"><h3>Conformance checking for event handler attribute
1285     is not supported; <em>it might or might not be conforming.</em></h3></div>
1286    
1287     <div class="section unsupported" id="unsupported:media-query"><h3>Conformance checking for media query
1288     is not supported; <em>it might or might not be conforming.</em></h3></div>
1289    
1290     <div class="section unsupported" id="unsupported:script"><h3>Conformance checking for script
1291     language <code><var>$0</var></code> is not supported;
1292     <em>it might or might not be conforming.</em></h3></div>
1293    
1294     <div class="section unsupported" id="unsupported:style"><h3>Conformance checking for style
1295     language <code><var>$0</var></code> is not supported;
1296     <em>it might or might not be conforming.</em></h3></div>
1297    
1298 wakaba 1.1 </section>
1299    
1300 wakaba 1.3
1301 wakaba 1.2
1302 wakaba 1.21
1303    
1304    
1305    
1306    
1307    
1308    
1309    
1310    
1311    
1312    
1313    
1314    
1315    
1316    
1317    
1318    
1319    
1320    
1321    
1322    
1323    
1324    
1325    
1326    
1327    
1328    
1329    
1330    
1331    
1332    
1333    
1334    
1335    
1336    
1337    
1338    
1339    
1340    
1341    
1342    
1343    
1344    
1345    
1346    
1347    
1348    
1349    
1350    
1351    
1352    
1353    
1354    
1355    
1356    
1357    
1358    
1359    
1360    
1361    
1362    
1363    
1364    
1365    
1366    
1367    
1368    
1369    
1370    
1371    
1372    
1373    
1374    
1375    
1376    
1377    
1378    
1379    
1380    
1381    
1382    
1383    
1384    
1385    
1386    
1387    
1388    
1389    
1390    
1391    
1392    
1393    
1394    
1395    
1396    
1397    
1398    
1399    
1400    
1401    
1402    
1403    
1404 wakaba 1.23
1405    
1406    
1407    
1408    
1409    
1410    
1411    
1412    
1413    
1414    
1415    
1416    
1417    
1418    
1419    
1420    
1421    
1422    
1423    
1424    
1425    
1426    
1427    
1428     <!-- Structure -->
1429    
1430    
1431    
1432    
1433    
1434    
1435    
1436    
1437    
1438    
1439    
1440    
1441    
1442    
1443    
1444    
1445    
1446    
1447    
1448    
1449    
1450    
1451    
1452    
1453    
1454 wakaba 1.12 <section id="levels">
1455     <h2>Error Levels</h2>
1456    
1457     <table id="levels-table">
1458     <thead>
1459     <tr><th scope="col">Level</th>
1460     <th scope="col">Conforming?</th>
1461     <th scope="col">Description</th>
1462     </tr>
1463     </thead>
1464     <tbody>
1465     <tr class="level-m" id="level-m">
1466     <th scope="row"><em class="rfc2119">MUST</em>‐level error</th>
1467     <td>Non‐conforming.</td>
1468     <td>A violation to a hard requirement of the specification.
1469     The document is non‐conforming.</td>
1470     </tr>
1471     <tr class="level-s" id="level-s">
1472     <th scope="row"><em class="rfc2119">SHOULD</em>‐level error</th>
1473     <td>Non‐conforming, but <em>in some case</em>
1474     conforming.</td>
1475     <td>A violation to a requirement of the specification.
1476     The violation might be legitimize in some case. Otherwise,
1477     the document is non‐conforming.</td>
1478     </tr>
1479     <tr class="level-w" id="level-w">
1480     <th scope="row">Warning</th>
1481     <td>Conforming.</td>
1482     <td>A warning is an advice from the conformance checker to avoid
1483     to solve a problem in a confusing or possibly wrong way.
1484     It does not affect to the conformance of the document, and
1485     may sometimes be inappropriate.</td>
1486     </tr>
1487 wakaba 1.17 <tr class="level-i" id="level-i">
1488     <th scope="row">Information</th>
1489     <td>Conforming.</td>
1490     <td>An informational message just provides an additional information
1491     on the feature used in the document or the status of the retrieval
1492     or so on.
1493     It does not affect to the conformance of the document.</td>
1494     </tr>
1495     <tr class="level-u" id="level-u">
1496 wakaba 1.12 <th scope="row">Not supported</th>
1497     <td><em>Unknown</em>.</td>
1498     <td>Some feature that is not supported by the conformance checker
1499     is used in the document.</td>
1500     </tr>
1501     </tbody>
1502     </table>
1503     </section>
1504    
1505 wakaba 1.1 <section id="license">
1506     <h2>License of This Document</h2>
1507    
1508 wakaba 1.19 <p>Copyright <time>2007</time>‐<time>2008</time>
1509 wakaba 1.11 <a href="http://suika.fam.cx/~wakaba/who?" rel="author" xml:lang="ja">Wakaba</a>
1510     <code class="mail">&lt;<a href="mailto:w@suika.fam.cx">w@suika.fam.cx</a>&gt;</code>.</p>
1511    
1512 wakaba 1.9 <p>This document is free software; you can redistribute it
1513 wakaba 1.1 and/or modify it under the same terms as Perl itself.</p>
1514     </section>
1515    
1516 wakaba 1.23 <!-- $Date: 2008/07/27 10:33:45 $ -->
1517 wakaba 1.1 </body>
1518     </html>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24