/[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.20 - (show annotations) (download)
Sun May 18 07:24:04 2008 UTC (16 years ago) by wakaba
Branch: MAIN
Changes since 1.19: +12 -6 lines
++ ChangeLog	18 May 2008 07:23:53 -0000
	* LICENSE: Note on icons/*.png are added.

	* icons/: New directory.

	* cc-style.css: Rules for background images on error category
	are added.

2008-05-18  Wakaba  <wakaba@suika.fam.cx>

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 <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 <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 though the use of another character encoding is still conforming.</p>
36 </div>
37
38 <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 <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 specified in lower‐level protocol, e.g. in <abbr>HTTP</abbr>,
52 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 <code class="html bad example">&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=<var>charset-name</var>&quot;&gt;</code>
57 is obsolete. The new syntax is:</p>
58 <pre class="html example">
59 <code>&lt;meta charset=&quot;<var>charset-name</var>&quot;&gt;</code></pre>
60
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 in lower‐level protocol nor is there <abbr>BOM</abbr>, while
67 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 in lower‐level protocol, e.g. in <abbr>HTTP</abbr>, and
71 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 <code class="html example">&lt;meta charset=&quot;<var>charset-name</var>&quot;&gt;</code>,
83 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 to detect the character encoding might be a result of non‐conformance
102 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 <code>Content-Type: text/html; charset=&quot;<var>charset-name</var>&quot;</code></pre></li>
113 <li>Put the character encoding declaration
114 (<code class="html example">&lt;meta charset=&quot;<var>charset-name</var>&quot;&gt;</code>)
115 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 <section id="html5-tokenize-error">
122 <h2>HTML5 Parse Errors in Tokenization Stage</h2>
123
124 <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 <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 <div class="section tokenize-error" id="bare-ero"><h3>The <code>&amp;</code> character must
146 be escaped as <code class="html example">&amp;amp;</code>.</h3>
147 <p>An <code>&amp;</code> character which
148 is not part of any reference appears in the input stream.
149 The document is non‐conforming.</p>
150
151 <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
154 <p>The <code>&amp;</code> character must
155 be the first character of a reference:
156 <dl class="switch">
157 <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 <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 <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 <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
208 <p>The <code>&lt;</code> character as a data character must
209 be escaped as:
210 <pre class="html example">
211 <code>&amp;lt;</code></pre>
212 </p>
213 </div>
214
215 <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 <dl class="switch">
227 <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 a named entity reference for the <code>&amp;</code> character:
242 <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 a named entity reference for the <code>&amp;</code> character:
262 <pre class="html example">
263 <code>&amp;amp;#x</code></pre>
264 </p>
265 </div>
266
267 <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 <dd>In HTML document, comments must be introduced by
279 <code class="example">&lt;!--</code> (<code>&lt;!</code>
280 <em>immediately</em> followed
281 by <em>two</em> <code>-</code>s) and must be terminated by
282 <code class="example">--&gt;</code>.
283 Strings <code>&lt;!</code> not followed
284 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 <dd>Marked sections are not allowed in HTML document.</dd>
288 <dt>Markup declarations</dt>
289 <dd>Markup declarations, except for <code>DOCTYPE</code>
290 and comment declarations, are not allowed in HTML document.</dd>
291 <dt>String <code>&lt;!</code></dt>
292 <dd>String <code>&lt;!</code> must be escaped as
293 <code class="example">&amp;lt;!</code>.</dd>
294 </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 <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 <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 <div class="section tokenize-error" id="duplicate-attribute"><h3>There are two attributes with name
330 <code><var>$0</var></code>.</h3>
331 <p>There are more than one attributes with the same
332 name in a tag. The document is non-conforming.</p>
333
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 <div class="section tokenize-error" id="nestc"><h3>Polytheistic slash (<code>/&gt;</code>) cannot be
339 used for this element.</h3>
340 <p>Polytheistic slash (<code>/&gt;</code>) must not be used
341 for the element. The document is non-conforming.</p>
342
343 <p>The polytheistic slash can only be
344 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 <code>col</code>, and <code>input</code> elements.</p>
348
349 <dl class="switch">
350 <dt><code>&lt;script/&gt;</code></dt>
351 <dd><p>The polytheistic slash cannot be used for <code>script</code>
352 element. Even for an empty <code>script</code> element,
353 there must be an explicit end tag
354 <code class="html example">&lt;/script&gt;</code>.</p>
355
356 <p><strong>NOTE</strong>: Though some user agents interpret
357 polytheistic slash for <code>script</code> element as the
358 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 <code>&lt;nest/&gt;</code>, or <code>&lt;source/&gt;</code></dt>
367 <dd>Future revision of HTML5 parsing algorithm is expected
368 to allow polytheistic slash for these elements.</dd>
369 <dt><code>&lt;a/&gt;</code>, <code>&lt;p/&gt;</code></dt>
370 <dd>These elements are not always empty and therefore
371 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 </dl>
377
378 <p>Note that, unlike in XML, the polytheistic slash has
379 no effect in HTML.</p>
380 </div>
381
382
383 <div class="section tokenize-error" id="pio"><h3>Processing instruction
384 (<code>&lt;?<var>...</var>&gt;</code>) cannot be used.</h3>
385 <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 (<code>&lt;?xml-stylesheet <var>...</var>?&gt;</code>), are not allowed
389 in the HTML syntax. The document is non-conforming.</p>
390
391 <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 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 <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 <abbr title="processing instruction">PI</abbr>)</dt>
408 <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 sheet).
412 <pre class="example html">
413 <code>&lt;link rel=stylesheet href=&quot;path/to/stylesheet.css&quot;&gt;</code></pre>
414 </dd>
415 <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 <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
426 <p>Web browsers will parse processing instructions as bogus
427 comments. Some legacy Web browsers, such as IE:mac and
428 some mobile Web browsers, will display processing instructions
429 as string.</p>
430 </div>
431
432 </section>
433
434 <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 <p>A start tag appears after the <code>head</code> element is closed
440 but before the <code>body</code> element is opened.
441 The document is non-conforming.</p>
442 </div>
443
444 <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 <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 <div class="section parse-error" id="in-body"><h3>Tag <code>&lt;<var>$0</var>&gt;</code>
463 is not allowed in the <code>body</code> element.</h3>
464 <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 <div class="section parse-error" id="in-head:head"><h3>Start tag <code>&lt;head&gt;</code>
471 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 <div class="section parse-error" id="in-table"><h3>Tag <code>&lt;<var>$0</var>&gt;</code>
481 is not allowed in a <code>table</code> element.</h3>
482 <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
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 <div class="section parse-error" id="no-DOCTYPE"><h3>This document does not start with a
519 <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 before the <code>DOCTYPE</code>. XML declaration is <em>not</em>
530 allowed in HTML document.</p>
531 </div>
532
533 <div class="section parse-error" id="not-closed"><h3>Element <code><var>$0</var></code> is not
534 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
539 <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 <code>ol</code>, <code>option</code>, <code>optgroup</code>,
542 <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 For any element except for void element, there must be an explicit
547 end tag.</p>
548
549 <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 <code class="html example">&lt;/canvas&gt;</code>.</dd>
555 </dl>
556
557 <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 </div>
561
562 <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 <div class="section parse-error" id="not-HTML5"><h3>This document is written in an old version of
577 HTML.</h3>
578 <p>The document contains a <code>DOCTYPE</code> declaration
579 that is different from HTML5 <code>DOCTYPE</code> (i.e.
580 <code class="example html">&lt;!DOCTYPE HTML&gt;</code>).
581 The document is non‐conforming.</p>
582
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
590 <div class="section parse-error" id="unmatched-end-tag"><h3>Element <code><var>$0</var></code> is not
591 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
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 </div>
611
612 </section>
613
614 <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 <p>A data character appears where it is not allowed in this
620 context. The document is non-conforming.</p>
621
622 <p>Possible causes:
623 <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 </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 The document is non-conforming.</p>
645
646 <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 </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 <code>td</code> or <code>th</code> child element. The document
662 is non-conforming.</p>
663 </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 <p>An element appears where it is not allowed. The document
668 is non-conforming.</p>
669
670 <p>Possible causes:
671 <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 <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 <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 <!-- @@ TODO: <p><ul><li><p> -->
688 <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 <code class="html bad example">&lt;div&gt;&lt;p&gt;Hello!&lt;/p&gt; World!&lt;/div&gt;</code>
694 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 <pre class="html example">
698 <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 <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 <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
717 <dt><code>button</code>, <code>datalist</code>,
718 <code>fieldset</code>, <code>form</code>,
719 <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 </dl>
727 </p>
728 </div>
729
730 <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 <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 <code>&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;</code></pre></p></dd>
742 <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 in the <code>http://www.w3.org/2005/Atom</code>
749 namespace as:
750 <pre class="xml example">
751 <code>&lt;feed xmlns=&quot;http://www.w3.org/2005/Atom&quot;&gt;</code></pre>
752 </p>
753 <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 <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 </section>
768
769 <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 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 </div>
791
792 <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 <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 <p>Use of the <code>xml:lang</code> attribute is conforming
812 <em>only</em> in XML documents.</p>
813
814 <p>To specify natural language information in HTML document,
815 use <code>lang</code> attribute instead.</p>
816
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 <!-- @@ 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 <code>&lt;?xml version=&quot;1.0&quot; encoding=&quot;<var>encoding-name</var>&quot;?&gt;</code></pre>
837 </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 namespace for HTML elements is conforming <em>only</em> in
847 HTML documents.</p>
848
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 <p>This error should not occur in conformance-checking of
860 static documents.</p>
861 </div>
862
863 </section>
864
865 <section id="attribute-value-errors">
866 <h2>Attribute Value Errors</h2>
867
868 <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 <div class="section attribute-value-error" id="enumerated:invalid"><h3>This attribute only allow a limited set of
938 values and the specified value <code><var>{@}</var></code> is not one
939 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 <dd><p>Only values <code>Default-Style</code> and <code>Refresh</code>
947 are allowed.</p>
948 <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 <code>&lt;meta charset=&quot;<var>charset-name</var>&quot;&gt;</code></pre>
952 ... 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
965 <div class="section attribute-value-error" id="enumerated:invalid:http-equiv:content-type"><h3>Character encoding declaration syntax
966 <code class="html bad example">&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=<var>charset-name</var>&quot;&gt;</code>
967 is obsolete.</h3>
968 <p>Old long character encoding declaration syntax
969 <code class="html bad example">&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=<var>charset-name</var>&quot;&gt;</code>
970 is in use. The document is non‐conforming.</p>
971
972 <p>The new character encoding declaration syntax is:
973 <pre class="html example">
974 <code>&lt;meta charset=&quot;<var>charset-name</var>&quot;&gt;</code></pre>
975 </p>
976 </div>
977
978 <div class="section attribute-value-error" id="duplicate-ID"><h3>This identifier has already been
979 assigned to another element.</h3></div>
980
981 <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 <p>The specified link type is non-conforming, and therefore
997 the document is non-conforming.</p>
998
999 <dl class="switch">
1000 <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 <dt>Link type <code>previous</code></dt>
1007 <dd>Use link type <code>prev</code>.</dd>
1008 <dt>Link type <code>start</code></dt>
1009 <dd>Use link type <code>first</code>.</dd>
1010 <dt>Link type <code>toc</code> or <code>top</code></dt>
1011 <dd>Use link type <code>index</code>.</dd>
1012 </dl>
1013 </div>
1014
1015 <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 <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
1028 <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 </div>
1038
1039 </section>
1040
1041 <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 been accepted or rejected. The document might or might not be
1054 conforming depending on the status. See WHATWG Wiki
1055 for the latest information.</p>
1056 </div>
1057
1058 </section>
1059
1060 <section id="table-model-errors">
1061 <h2>Table Model Errors</h2>
1062
1063 <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 <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 <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 <pre class="html bad example">
1080 <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 ... since the second row contains only
1086 a cell that spans between first and second rows.</p>
1087 </div>
1088
1089 </section>
1090
1091 <section id="imt-warnings">
1092 <h2>Internet Media Type Warnings</h2>
1093
1094 <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
1097 <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
1100 <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
1103 </section>
1104
1105 <section id="uri-errors">
1106 <h2>URI (or IRI) Errors</h2>
1107
1108 <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
1123 </section>
1124
1125 <section id="uri-shoulds">
1126 <h2>URI (or IRI) Should-level Errors</h2>
1127
1128 <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 <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
1140 <div class="section should" id="s:URI::empty-path"><h3>This IRI does not end with
1141 a <code>/</code>.</h3></div>
1142
1143 <div class="section should" id="s:URI::lowercase-hexadecimal-digit"><h3>A lowercase hexadecimal digit is used
1144 in percent-encoding.</h3>
1145 <p>The hexadecimal digit in percent-encoding string in the IRI
1146 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 <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 </section>
1174
1175 <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 <code class="manifest example">CACHE MANIFEST</code>
1187 (exactly one space character between
1188 <code>CACHE</code> and <code>MANIFEST</code>).</p>
1189 </div>
1190 </section>
1191
1192 <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 <strong>call for implementation</strong> stage.</h3>
1197 <p>The element is in the call for implementation stage.</p>
1198
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 <p>Elements defined by Atom 1.0 (IETF Proposed Standard), and XBL 2.0
1205 (W3C Candidate Recommendation) belong to this class.</p>
1206 </div>
1207
1208 <div class="section level-i" id="i:status:lc:element"><h3>This element is in the <strong>last
1209 call for comments</strong> stage.</h3>
1210 <p>The element is in the last call for comments stage.</p>
1211
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 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
1239 <p>The element should not be used for any practical purpose unless
1240 there is really a standard that defines the element.</p>
1241 </div>
1242 </section>
1243
1244 <section id="unsupported-messages">
1245 <h2><i>Unsupported</i> Messages</h2>
1246
1247 <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 It cannot determine whether the document is conforming or not.</p>
1252 </div>
1253
1254 <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 It cannot determine whether the document is conforming or not.</p>
1260 </div>
1261
1262 <div class="section unsupported" id="unsupported:link-type"><h3>Link type <code><var>$0</var></code> is not
1263 standardized or registered at the time of the release of the conformance
1264 checker; <em>it is non-conforming unless it now has been
1265 registered</em>.</h3>
1266 <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
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 </div>
1283
1284 <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 </section>
1299
1300
1301
1302 <section id="levels">
1303 <h2>Error Levels</h2>
1304
1305 <table id="levels-table">
1306 <thead>
1307 <tr><th scope="col">Level</th>
1308 <th scope="col">Conforming?</th>
1309 <th scope="col">Description</th>
1310 </tr>
1311 </thead>
1312 <tbody>
1313 <tr class="level-m" id="level-m">
1314 <th scope="row"><em class="rfc2119">MUST</em>‐level error</th>
1315 <td>Non‐conforming.</td>
1316 <td>A violation to a hard requirement of the specification.
1317 The document is non‐conforming.</td>
1318 </tr>
1319 <tr class="level-s" id="level-s">
1320 <th scope="row"><em class="rfc2119">SHOULD</em>‐level error</th>
1321 <td>Non‐conforming, but <em>in some case</em>
1322 conforming.</td>
1323 <td>A violation to a requirement of the specification.
1324 The violation might be legitimize in some case. Otherwise,
1325 the document is non‐conforming.</td>
1326 </tr>
1327 <tr class="level-w" id="level-w">
1328 <th scope="row">Warning</th>
1329 <td>Conforming.</td>
1330 <td>A warning is an advice from the conformance checker to avoid
1331 to solve a problem in a confusing or possibly wrong way.
1332 It does not affect to the conformance of the document, and
1333 may sometimes be inappropriate.</td>
1334 </tr>
1335 <tr class="level-i" id="level-i">
1336 <th scope="row">Information</th>
1337 <td>Conforming.</td>
1338 <td>An informational message just provides an additional information
1339 on the feature used in the document or the status of the retrieval
1340 or so on.
1341 It does not affect to the conformance of the document.</td>
1342 </tr>
1343 <tr class="level-u" id="level-u">
1344 <th scope="row">Not supported</th>
1345 <td><em>Unknown</em>.</td>
1346 <td>Some feature that is not supported by the conformance checker
1347 is used in the document.</td>
1348 </tr>
1349 </tbody>
1350 </table>
1351 </section>
1352
1353 <section id="license">
1354 <h2>License of This Document</h2>
1355
1356 <p>Copyright <time>2007</time>‐<time>2008</time>
1357 <a href="http://suika.fam.cx/~wakaba/who?" rel="author" xml:lang="ja">Wakaba</a>
1358 <code class="mail">&lt;<a href="mailto:w@suika.fam.cx">w@suika.fam.cx</a>&gt;</code>.</p>
1359
1360 <p>This document is free software; you can redistribute it
1361 and/or modify it under the same terms as Perl itself.</p>
1362 </section>
1363
1364 <!-- $Date: 2008/04/12 15:57:56 $ -->
1365 </body>
1366 </html>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24