/[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.16 - (hide annotations) (download)
Fri Nov 23 06:36:19 2007 UTC (16 years, 5 months ago) by wakaba
Branch: MAIN
Changes since 1.15: +90 -4 lines
++ ChangeLog	23 Nov 2007 06:36:14 -0000
2007-11-23  Wakaba  <wakaba@suika.fam.cx>

	* error-description-source.xml: New error descriptions.

	* cc.cgi: |Accept-Encoding: *; q=0| is a request for server to send
	a 406 page!  |identity| encoding is added.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24