/[suikacvs]/test/html-webhacc/error-description-source.xml
Suika

Contents of /test/html-webhacc/error-description-source.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.8 - (hide annotations) (download) (as text)
Sun Sep 2 07:59:01 2007 UTC (17 years, 3 months ago) by wakaba
Branch: MAIN
Changes since 1.7: +54 -3 lines
File MIME type: text/xml
++ ChangeLog	2 Sep 2007 07:58:58 -0000
2007-08-26  Wakaba  <wakaba@suika.fam.cx>

	* cc.cgi: New catalog macros |local-name| and |element-local-name|.

1 wakaba 1.1 <!DOCTYPE html>
2     <html xmlns="http://www.w3.org/1999/xhtml"
3     xmlns:d="http://suika.fam.cx/~wakaba/archive/2007/wdcc-desc/"
4     id="error-description">
5     <head>
6     <title xml:lang="en">Description of Errors &#x2014;
7     Web Document Conformance Checker (BETA)</title>
8     <link rel="stylesheet" href="cc-style"/>
9     <link rel="license" href="#license"/>
10     </head>
11     <body>
12     <h1>Description of Errors</h1>
13    
14 wakaba 1.2 <section id="html5-tokenize-error">
15     <h2>HTML5 Parse Errors in Tokenization Stage</h2>
16 wakaba 1.1
17 wakaba 1.3 <d:item name="after html"
18     class="parse-error">
19     <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
20     is not allowed after the end tag <code>&lt;/html></code>.</d:message>
21     <d:desc xml:lang="en">
22     <p>The start or end tag of an element appears after the
23     <code>html</code> element has been closed. The document is
24     non-conforming.</p>
25    
26     <p>Any content of the document other than comments
27     must be put into the <code>html</code> element.</p>
28     </d:desc>
29     </d:item>
30    
31 wakaba 1.7 <d:item name="after body"
32     class="parse-error">
33     <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
34     is not allowed after the end tag <code>&lt;/body></code>.</d:message>
35     <d:desc xml:lang="en">
36     <p>The start or end tag of an element appears after the
37     <code>body</code> element has been closed. The document is
38     non-conforming.</p>
39    
40     <p>Any content of the document other than <code>head</code>
41     contents and comments must be put into the <code>body</code>
42     element.</p>
43     </d:desc>
44     </d:item>
45    
46 wakaba 1.3 <d:item name="bare ero"
47     class="tokenize-error">
48     <d:message xml:lang="en">The <code>&amp;</code> character must
49     introduce a reference.</d:message>
50     <d:desc xml:lang="en">
51     <p>An <code>&amp;</code> (<code>U+0026</code>
52     <code class="charname">AMPERSAND</code>) character which
53     is not part of any reference appears in the input stream.
54     The document is non-conforming.</p>
55    
56     <p>The <code>&amp;</code> character must
57     be the first character of a reference:
58     <dl>
59     <dt>Named entity reference</dt>
60     <dd><pre class="html example"><code>&amp;<var>entity-name</var>;</code></pre>
61     where <var>entity-name</var> is the name of the
62     character entity to be referenced.</dd>
63     <dt>Numeric character reference</dt>
64     <dd><pre class="html example"><code>&amp;#<var>d</var>;</code></pre>
65     where <var>d</var> is the decimal representation of
66     the code position of the character to be referenced.</dd>
67     <dt>Hexadecimal character reference</dt>
68     <dd><pre class="html example"><code>&amp;#x<var>h</var>;</code></pre>
69     where <var>h</var> is the hexadecimal representation
70     of the code position of the character to be referenced.</dd>
71     </dl>
72     </p>
73    
74     <p>To represent <code>&amp;</code> as a data character, use
75     named entity reference:
76     <pre class="html example"><code>&amp;amp;</code></pre>
77     </p>
78     </d:desc>
79     </d:item>
80    
81 wakaba 1.7 <d:item name="bare etago"
82     class="tokenize-error">
83     <d:message xml:lang="en">A <code>&lt;/</code> string is not followed
84     by a tag name.</d:message><!-- </ EOF -->
85     <d:desc xml:lang="en">
86     <p>There is a <code>&lt;</code> (<code>U+003C</code>
87     <code class="charname">LESS-THAN SIGN</code>) character
88     immediately followed by a <code>/</code> (<code>U+005F</code>
89     <code>SOLIDUS</code>) character, which is not part
90     of any end tag, in the input stream. The document
91     is non-conforming.</p>
92    
93     <p>The <code>&lt;/</code> sequence immediately followed
94     by an <abbr title="End of file pseudo-character">EOF</abbr> is
95     interpreted as a string data of <code>&lt;/</code>.</p>
96    
97     <p>The <code>&lt;/</code> sequence as string data must
98     be escaped as:
99     <pre class="html example"><code>&amp;lt;/</code></pre>
100     </p>
101     </d:desc>
102     </d:item>
103    
104 wakaba 1.4 <d:item name="bare stago"
105     class="tokenize-error">
106     <d:message xml:lang="en">A <code>&lt;</code> character is not followed
107     by tag name or by a <code>!</code> character.</d:message>
108     <d:desc xml:lang="en">
109 wakaba 1.6 <p>A <code>&lt;</code> (<code>U+003C</code>
110     <code class="charname">LESS-THAN SIGN</code>) character which is not part
111     of any markup appears in the input stream.</p>
112 wakaba 1.4
113     <p>The <code>&lt;</code> character as a data character must
114     be escaped as:
115 wakaba 1.6 <pre class="html example"><code>&amp;lt;</code></pre>
116 wakaba 1.4 </p>
117     </d:desc>
118     </d:item>
119    
120 wakaba 1.3 <d:item name="bare nero"
121     class="tokenize-error">
122     <d:message xml:lang="en">The decimal representation of the code position
123     of a character must be specified after <code>&amp;#</code>.</d:message>
124     <d:desc xml:lang="en">
125     <p>An <code>&amp;</code> (<code>U+0026</code>
126     <code class="charname">AMPERSAND</code>) character immediately
127     followed by a <code>#</code> (<code>U+0023</code>
128     <code>NUMBER SIGN</code>) character which
129     is not part of any reference appears in the input stream.
130     The document is non-conforming.</p>
131    
132     <p>The string <code>&amp;#</code> must be the first two characters
133     of a reference:
134     <dl>
135     <dt>Numeric character reference</dt>
136     <dd><pre class="html example"><code>&amp;#<var>d</var>;</code></pre>
137     where <var>d</var> is the decimal representation of
138     the code point of the character to be referenced.</dd>
139     <dt>Hexadecimal character reference</dt>
140     <dd><pre class="html example"><code>&amp;#x<var>h</var>;</code></pre>
141     where <var>h</var> is the hexadecimal representation
142     of the code point of the character to be referenced.</dd>
143     </dl>
144     </p>
145    
146     <p>To represent <code>&amp;#</code> as data characters, use
147 wakaba 1.6 a named entity reference for the <code>&amp;</code> character:
148 wakaba 1.3 <pre class="html example"><code>&amp;amp;#</code></pre>
149     </p>
150     </d:desc>
151     </d:item>
152    
153     <d:item name="bare hcro"
154     class="tokenize-error">
155     <d:message xml:lang="en">The hexadecimal representation of the code position
156     of a character must be specified after <code>&amp;#x</code>.</d:message>
157     <d:desc xml:lang="en">
158     <p>The string <code>&amp;#x</code> or <code>&amp;#X</code> which
159     is not part of any reference appears in the input stream.
160     The document is non-conforming.</p>
161    
162     <p>The string <code>&amp;#x</code> or <code>&amp;#X</code> must
163     be the first three characters of a hexadecimal reference:
164     <pre class="html example"><code>&amp;#x<var>h</var>;</code></pre>
165     where <var>h</var> is the hexadecimal representation
166     of the code point of the character to be referenced.</p>
167    
168     <p>To represent <code>&amp;#x</code> as data characters, use
169 wakaba 1.6 a named entity reference for the <code>&amp;</code> character:
170 wakaba 1.3 <pre class="html example"><code>&amp;amp;#x</code></pre>
171     </p>
172     </d:desc>
173     </d:item>
174    
175 wakaba 1.7 <d:item name="bogus end tag"
176     class="tokenize-error">
177     <d:message xml:lang="en">A <code>&lt;/</code> string is not followed
178     by a tag name.</d:message><!-- </ non-name-start-char-non-EOF -->
179     <d:desc xml:lang="en">
180     <p>There is a <code>&lt;</code> (<code>U+003C</code>
181     <code class="charname">LESS-THAN SIGN</code>) character
182     immediately followed by a <code>/</code> (<code>U+005F</code>
183     <code>SOLIDUS</code>) character, which is not part
184     of any end tag, in the input stream. The document
185     is non-conforming.</p>
186    
187     <p>The <code>&lt;/</code> sequence not followed by a
188     tag name is parsed as an opening of bogus comment.</p>
189    
190     <p>The <code>&lt;/</code> sequence as string data must
191     be escaped as:
192     <pre class="html example"><code>&amp;lt;/</code></pre>
193     </p>
194     </d:desc>
195     </d:item>
196    
197 wakaba 1.4 <d:item name="dash in comment"
198     class="tokenize-error">
199     <d:message xml:lang="en">There is a <code>--</code> sequence
200     in a comment.</d:message>
201     <d:desc xml:lang="en">
202     <p>There is a <code>-</code> (<code>U+002D</code>
203     <code class="charname">HYPHEN-MINUS</code>) character
204     at the end of the comment or a <code>--</code> sequence
205     in the comment. The document is non-conforming.</p>
206    
207     <p>Comments cannot contain a string <code>--</code>, as in XML.
208     Unlike SGML, there cannot be more than one comments
209     (where <i>comment</i> is an SGML term) in the comment
210     declaration.</p>
211     </d:desc>
212     </d:item>
213    
214 wakaba 1.1 <d:item name="duplicate attribute"
215     class="tokenize-error">
216 wakaba 1.6 <d:message xml:lang="en">There are two attributes with name
217     <code><var>$0</var></code>.</d:message>
218 wakaba 1.1 <d:desc xml:lang="en">
219 wakaba 1.3 <p>There are more than one attributes with the same
220     name in a tag. The document is non-conforming.</p>
221 wakaba 1.1
222     <p>The <code>motion</code> attribute is not part of the HTML standard.
223     Use <code>img</code> element with animation GIF instead.</p>
224     </d:desc>
225     </d:item>
226    
227     <d:item name="nestc"
228     class="tokenize-error">
229     <d:message xml:lang="en">Void element syntax (<code>/></code>) cannot be
230     used for this element.</d:message>
231     <d:desc xml:lang="en">
232 wakaba 1.3 <p>Void element syntax (<code>/></code>) must not be used
233     for the element. The document is non-conforming.</p>
234    
235     <p>The void element syntax can only be
236 wakaba 1.1 used for <code>base</code>, <code>link</code>, <code>meta</code>,
237     <code>hr</code>, <code>br</code>, <code>img</code>,
238     <code>embed</code>, <code>param</code>, <code>area</code>,
239 wakaba 1.3 <code>col</code>, and <code>input</code> elements.</p>
240 wakaba 1.1
241 wakaba 1.3 <p>Note that, unlike in XML, the void element syntax has
242 wakaba 1.1 no effect in HTML.</p>
243     </d:desc>
244     </d:item>
245    
246 wakaba 1.5
247     <d:item name="pio"
248     class="tokenize-error">
249     <d:message xml:lang="en">Processing instruction
250     (<code>&lt;?<var>...</var>?></code>) cannot be used.</d:message>
251     <d:desc xml:lang="en">
252     <p>Processing instructions (<code>&lt;?<var>...</var>?></code>),
253     including XML declaration (<code>&lt;?xml <var>...</var>?></code>)
254     and XML style sheet <abbr title="processing instruction">PI</abbr>
255     (<code>&lt;xml-stylesheet <var>...</var>?></code>), are not allowed
256     in the HTML syntax. The document is non-conforming.</p>
257    
258     <p>If it is necessary to embed a processing instruction
259     in the HTML document, you must use the XML syntax instead.</p>
260    
261     <p>In the HTML syntax, XML declaration is not necessary.</p>
262    
263     <p>Instead of XML style sheet,
264     <abbr title="processing instruction">PI</abbr>s, you must
265     use the HTML <code>link</code> element whose <code>rel</code>
266 wakaba 1.6 attribute is set to <code>stylesheet</code> (or
267     <code>alternate stylesheet</code> for an aleternate style sheet).</p>
268 wakaba 1.5
269     <p>Web browsers will parse processing instructions as bogus
270     comments. Some legacy Web browsers, such as IE:mac and
271     some mobile browsers, will display processing instructions
272     as string.</p>
273     </d:desc>
274     </d:item>
275    
276 wakaba 1.1 </section>
277    
278 wakaba 1.2 <section id="html5-parse-errors">
279     <h2>HTML5 Parse Errors in Tree Construction Stage</h2>
280    
281     <d:item name="after head"
282     class="parse-error">
283     <d:message xml:lang="en">The <code><var>$0</var></code> element cannot be
284     inserted between <code>head</code> and <code>body</code> elements.</d:message>
285     <d:desc xml:lang="en">
286 wakaba 1.3 <p>A start tag appears after the <code>head</code> element is closed
287 wakaba 1.2 but before the <code>body</code> element is opened.
288     The document is non-conforming.</p>
289     </d:desc>
290     </d:item>
291    
292 wakaba 1.4 <d:item name="DOCTYPE in the middle"
293     class="parse-error">
294     <d:message xml:lang="en">A <code>DOCTYPE</code> appears after any
295     element or data character has been seen.</d:message>
296     <d:desc xml:lang="en">
297     <p>A <code>DOCTYPE</code> appears after any element or data character
298     has been seen. The document is non-conforming.</p>
299    
300     <p>The <code>DOCTYPE</code> must be placed before any
301     tag, reference, or data character. Only white space characters
302     and comments can be inserted before the <code>DOCTYPE</code>.</p>
303     </d:desc>
304     </d:item>
305    
306 wakaba 1.5 <d:item name="in a:a"
307     class="parse-error">
308     <d:message xml:lang="en">Anchor cannot be nested.</d:message>
309     <d:desc xml:lang="en">
310     <p>HTML <code>a</code> elements cannot be nested.
311     The document is non-conforming.</p>
312    
313     <p>In the HTML syntax, a start tag of the <code>a</code>
314     implies the end tag of any opening <code>a</code> element.</p>
315     </d:desc>
316     </d:item>
317    
318 wakaba 1.4 <d:item name="in body"
319     class="parse-error">
320     <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
321 wakaba 1.5 is not allowed in a <code>body</code> element.</d:message>
322 wakaba 1.4 <d:desc xml:lang="en">
323     <p>The start or end tag of an element, which
324     cannot be a descendant of <code>body</code> element, appears
325     in the input stream while the <code>body</code> element has been opened.
326     The document is non-conforming.</p>
327     </d:desc>
328     </d:item>
329    
330 wakaba 1.5 <d:item name="in head:head"
331     class="parse-error">
332     <d:message xml:lang="en">Start tag <code>&lt;<var>head</var>&gt;</code>
333     is not allowed in the <code>head</code> element.</d:message>
334     <d:desc xml:lang="en">
335     <p>There is a start tag <code>&lt;head></code> in the
336     <code>&lt;head></code> element. The document is non-conforming.</p>
337    
338     <p>In an HTML document there must not be more than
339     one <code>head</code> element, therefore no more than one
340     start tag <code>&lt;head></code> can appear in the input stream.</p>
341     </d:desc>
342     </d:item>
343    
344 wakaba 1.3 <d:item name="in table"
345     class="parse-error">
346     <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
347 wakaba 1.5 is not allowed in a <code>table</code> element.</d:message>
348 wakaba 1.3 <d:desc xml:lang="en">
349 wakaba 1.4 <p>The start or end tag of an element, which
350     cannot be a child of <code>table</code> element, appears
351     in the input stream while the <code>table</code> element has been opened
352     but no other element has been opened. The document is non-conforming.</p>
353 wakaba 1.3
354     <p>In <code>table</code>, only table related elements
355     are allowed; any other element must be contained in
356     <code>td</code> or <code>th</code> element to form
357     a part of the table, or <code>caption</code> element to create
358     a table caption.</p>
359     </d:desc>
360     </d:item>
361    
362     <d:item name="in table:#character"
363     class="parse-error">
364     <d:message xml:lang="en">Data character is not allowed in
365     <code>table</code>.</d:message>
366     <d:desc xml:lang="en">
367     <p>A data character appears in <code>table</code>. The document
368     is non-conforming.</p>
369    
370     <p>In <code>table</code>, only table related elements
371     are allowed; any other element and data character must be contained in
372     <code>td</code> or <code>th</code> element to form
373     a part of the table, or <code>caption</code> element to create
374     a table caption.</p>
375     </d:desc>
376     </d:item>
377    
378     <d:item name="missing start tag:tr"
379     class="parse-error">
380     <d:message xml:lang="en">Start tag of <code>tr</code>
381     element is missing.</d:message>
382     <d:desc>
383     <p>Start tag of a <code>tr</code> element, which is <em>not</em>
384     optional, is missing. The document is non-conforming.</p>
385    
386     <p>In a table section, a <code>&lt;tr></code> start tag
387     must occur before any <code>&lt;td></code> or
388     <code>&lt;th></code> start tag. Though the HTML5 parser
389     implies the <code>&lt;tr></code> start tag before
390     these start tags, it must be explicitly specified.</p>
391     </d:desc>
392     </d:item>
393    
394 wakaba 1.2 <d:item name="no DOCTYPE"
395     class="parse-error">
396 wakaba 1.6 <d:message xml:lang="en">This document does not start with a
397 wakaba 1.3 <code>DOCTYPE</code>.</d:message>
398     <d:desc>
399     <p>The document does not start with a <code>DOCTYPE</code>.
400     The document is non-conforming.</p>
401    
402     <p>An HTML document must start by a <code>DOCTYPE</code>:
403     <pre class="html example"><code>&lt;!DOCTYPE HTML></code></pre>
404     </p>
405    
406     <p>Only white space characters and comments are allowed
407     before the <code>DOCTYPE</code>.</p>
408     </d:desc>
409 wakaba 1.2 </d:item>
410    
411     <d:item name="not closed"
412     class="parse-error">
413     <d:message xml:lang="en">Element <code><var>$0</var></code> is not
414     closed.</d:message>
415 wakaba 1.3 <d:desc>
416     <p>End tag of an element is not found before, for example,
417     an end tag of another element appears or
418     the end of the document. The document is non-conforming.</p>
419     </d:desc>
420 wakaba 1.2 </d:item>
421    
422 wakaba 1.6 <d:item name="not first start tag"
423     class="parse-error">
424     <d:message xml:lang="en">This <code>&lt;html></code> tag is not
425     the first start tag.</d:message>
426     <d:desc>
427     <p>There is a start tag of the <code>html</code> element
428     that it not the first start tag in the input stream.
429     The document is non-conforming.</p>
430    
431     <p>In an HTML document, there cannot be more than one
432     <code>html</code> element and therefore there cannot be
433     more than one <code>&lt;html></code> tag. In addition,
434     nothing can be placed before the <code>&lt;html></code> tag
435     except a <code>DOCTYPE</code>, white space characters,
436     and comments.</p>
437     </d:desc>
438     </d:item>
439    
440 wakaba 1.2 <d:item name="not HTML5"
441     class="parse-error">
442     <d:message xml:lang="en">This document is written in an old version of
443     HTML.</d:message>
444 wakaba 1.3 <d:desc xml:lang="en">
445     <p>The document contains a <code>DOCTYPE</code> declaration
446 wakaba 1.6 that is different from HTML5 <code>DOCTYPE</code> (i.e.
447     <code>&lt;!DOCTYPE HTML&gt;</code>). The document is non-conforming.</p>
448 wakaba 1.3
449     <p>The document might or might not be conformant to
450     some version of HTML. However, conformance to any HTML
451     specification other than HTML5 provides for no practical
452     convenience, since Web borwsers will parse any
453     HTML document (roughly) as defined in HTML5.</p>
454     </d:desc>
455 wakaba 1.2 </d:item>
456    
457     <d:item name="unmatched end tag"
458     class="parse-error">
459     <d:message xml:lang="en">Element <code><var>$0</var></code> is not
460     opened.</d:message>
461 wakaba 1.4 <d:desc>
462     <p>An end tag appears though no element with the same name
463     has been opened. The document is non-conforming.</p>
464    
465     <p>For any end tag in HTML document, there must be a
466     corresponding start tag.</p>
467     </d:desc>
468 wakaba 1.2 </d:item>
469    
470     </section>
471    
472 wakaba 1.1 <section id="element-content-model-errors">
473     <h2>Element Content Model Errors</h2>
474    
475     <d:item name="character not allowed"
476     class="content-model-error">
477     <d:message xml:lang="en">Data character is not allowed in this
478     context.</d:message>
479     <d:desc xml:lang="en">
480 wakaba 1.3 <p>A data character appears where it is not allowed in this
481 wakaba 1.1 context. The document is non-conforming.</p>
482    
483     <p>Possible causes:
484 wakaba 1.6 <ul>
485     <li><p>A data character cannot be a child
486     of certain sectioning elements such as <code>body</code>,
487     <code>section</code>, and <code>blockquote</code>.</p>
488    
489     <p>Any inline-level content must be put
490     in e.g. paragraph element such as <code>p</code>.</p></li>
491     <li><p>Though some elements such as <code>div</code>,
492     <code>li</code>, and <code>td</code> allow
493     <em>either one</em> of block-level or inline-level content
494     is allowed. If there is a block-level content,
495     any inline-level content must be put
496     in e.g. paragraph element such as <code>p</code>.</p></li>
497     </ul>
498 wakaba 1.1 </p>
499     </d:desc>
500     </d:item>
501    
502     <d:item name="child element missing"
503     class="content-model-error">
504     <d:message xml:lang="en">There must be a <code><var>$0</var></code>
505     element as a child of this element.</d:message>
506     <d:desc xml:lang="en">
507     <p>The content model of the element is so defined that it
508     must contain a <code><var>$0</var></code> child element.
509 wakaba 1.3 The document is non-conforming.</p>
510 wakaba 1.1
511     <p>For example:
512     <ul>
513     <li>The <code>head</code> element must contain exactly one
514     <code>title</code> child element.</li>
515     <li><a href="#child-element-missing:td%7Cth">The <code>tr</code>
516     element must contain one or more <code>td</code> or <code>th</code>
517     child element.</a></li>
518     </ul>
519     </p>
520     </d:desc>
521     </d:item>
522    
523     <d:item name="child element missing:td|th"
524     class="content-model-error">
525     <d:message xml:lang="en">There must be a <code>td</code>
526     or <code>th</code> element as a child of this element.</d:message>
527     <d:desc xml:lang="en">
528     <p>The <code>tr</code> element must contain at least one
529 wakaba 1.3 <code>td</code> or <code>th</code> child element. The document
530     is non-conforming.</p>
531 wakaba 1.1 </d:desc>
532     </d:item>
533    
534     <d:item name="element not allowed"
535     class="content-model-error">
536     <d:message xml:lang="en">This element is not allowed in this
537     context.</d:message>
538     <d:desc xml:lang="en">
539 wakaba 1.3 <p>An element appears where it is not allowed. The document
540 wakaba 1.1 is non-conforming.</p>
541    
542 wakaba 1.3 <p><strong>Note</strong>: The conformance checker does
543     <em>not</em> support form elements yet.</p>
544    
545 wakaba 1.1 <p>Possible causes:
546 wakaba 1.6 <dl class="switch">
547     <dt>If the element with the error is an inline-level element,
548     such as <code>a</code>, <code>progress</code>, or <code>img</code></dt>
549 wakaba 1.1 <dd><p>An inline-level element cannot be a child
550     of certain sectioning elements such as <code>body</code>,
551     <code>section</code>, and <code>blockquote</code>.</p>
552    
553     <p>Any inline-level content must be put
554     in e.g. paragraph element such as <code>p</code>.</p></dd>
555 wakaba 1.6 <dt>If the element with the error is a block-level element,
556     such as <code>div</code>, <code>h<var>n</var></code>, or
557     <code>section</code></dt>
558 wakaba 1.1 <dd><p>Though some elements such as <code>div</code>,
559     <code>li</code>, and <code>td</code> allow
560     <em>either one</em> of block-level or inline-level content
561     is allowed. If there is a block-level content,
562     any inline-level content must be put
563     in e.g. paragraph element such as <code>p</code>.</p></dd>
564 wakaba 1.6 <dt>If the element with the error is a <code>noscript</code> element</dt>
565     <dd>The <code>noscript</code> element is allowed only in the context
566     where a block-level or inline-level content is expected
567     and in the <code>head</code> element.
568     It cannot be used in e.g. <code>ul</code>, <code>table</code>,
569     or <code>select</code>.</dd>
570     <dt>If the element with the error is the <code>html</code> element
571     that is the root element of an XHTML document</dt>
572 wakaba 1.1 <dd><p>In an XHTML document, the root <code>html</code>
573     element must have an <code>xmlns</code> attribute
574     whose value is set to
575     <code>http://www.w3.org/1999/xhtml</code>.</p></dd>
576 wakaba 1.8 <dt>If the element with the error is <code>blink</code>,
577     <code>center</code>, or <code>marquee</code> element</dt>
578     <dd>These elements are not part of the HTML standard.
579     Use CSS for styling control.</dd>
580 wakaba 1.1 </dl>
581     </p>
582     </d:desc>
583     </d:item>
584    
585 wakaba 1.6 <d:item name="ps element missing"
586     class="content-model-error">
587     <d:message xml:lang="en">There is no <code><var>$0</var></code>
588     element before this element.</d:message>
589     <d:desc xml:lang="en">
590     <p>There must be an element before another element, but there
591     is not. The document is non-conforming.</p>
592    
593     <p>For example, there must be a <code>dt</code> element
594     before any <code>dd</code> element.</p>
595     </d:desc>
596     </d:item>
597    
598 wakaba 1.2 </section>
599    
600 wakaba 1.3 <section id="attribute-errors">
601     <h2>Attribute Errors</h2>
602    
603     <d:item name="attribute missing"
604     class="attribute-error">
605     <d:message xml:lang="en">Required attribute <code><var>$0</var></code>
606     is not specified.</d:message>
607     <d:desc>
608     <p>A required attribute is not specified. The document
609     is non-conforming.</p>
610    
611     <p>Some attribute is defined as <i>required</i>.
612     For example, any <code>img</code> element must have
613     <code>alt</code> and <code>src</code> attributes specified.
614     Without required attributes specified, user agents
615     cannot provide the full functionality of the element
616     to the user.</p>
617     </d:desc>
618     </d:item>
619    
620 wakaba 1.8 <d:item name="attribute not allowed" class="attribute-error">
621     <d:message xml:lang="en">Attribute
622     <code><var>{local-name}</var></code> is not allowed for
623     <code><var>{element-local-name}</var></code> element.</d:message>
624     <d:desc xml:lang="en">
625     <p>An attribute is specified where it is not allowed.
626     The document is non-conforming.</p>
627    
628     <dl>
629     <dt>HTML <code>meta</code> element</dt>
630     <dd>For HTML <code>meta</code> element, <em>only one</em> of
631     <code>name</code>, <code>http-equiv</code>, or <code>charset</code>
632     attribute is allowed.</dd>
633     </dl>
634     </d:desc>
635     </d:item>
636    
637 wakaba 1.3 <d:item name="in HTML:xml:lang"
638     class="attribute-error">
639     <d:message xml:lang="en">The <code>xml:lang</code> attribute is not
640     allowed in HTML document.</d:message>
641 wakaba 1.8 <d:desc xml:lang="en">
642 wakaba 1.3 <p>The <code>xml:lang</code> attribute is not allowed in
643     HTML document. The document is non-conforming.</p>
644    
645 wakaba 1.4 <p>The <code>lang</code> attribute in the <code>null</code>
646     namespace for HTML elements is defined as conforming <em>only</em> for
647 wakaba 1.3 XML document.</p>
648    
649     <p>To specify natural language information in HTML document,
650     use <code>lang</code> attribute instead.</p>
651 wakaba 1.6
652     <p>XHTML 1.0 Appendix C was encouraged to specify both
653     <code>lang</code> and <code>xml:lang</code> attributes with
654     the same value. Such a duplication has <em>no effect</em> in practice.
655     Use only one of <code>lang</code> (in HTML) or <code>xml:lang</code> (in
656     XML).</p>
657    
658 wakaba 1.3 <!-- @@ ISSUE: xml:lang in non-HTML element in DOM5 HTML created
659     from an HTML document? -->
660     </d:desc>
661     </d:item>
662    
663     <d:item name="in XML:charset"
664     class="attribute-error">
665     <d:message xml:lang="en">The <code>charset</code> attribute is not
666     allowed in XML document.</d:message>
667     <d:desc>
668     <p>The <code>charset</code> attribute of a
669     <code>meta</code> element is not allowed in XML document.
670     The document is non-conforming.</p>
671    
672     <p>To specify the character encoding used for serialization,
673     if necessary, use XML declaration instead:
674     <pre class="xml example"><code>&lt;?xml version="1.0" encoding="<var>encoding-name</var>"?></code></pre>
675     </p>
676     </d:desc>
677     </d:item>
678    
679     <d:item name="in XML:lang"
680     class="attribute-error">
681     <d:message xml:lang="en">The <code>lang</code> attribute is not
682     allowed in XML document.</d:message>
683     <d:desc>
684     <p>The HTML <code>lang</code> attribute is not allowed in
685     XML document. The document is non-conforming.</p>
686    
687     <p>The <code>lang</code> attribute in <code>null</code>
688 wakaba 1.4 namespace for HTML elements is defined as conforming <em>only</em> for
689 wakaba 1.3 HTML document.</p>
690    
691     <p>To specify natural language information in XML document,
692     use <code>xml:lang</code> attribute instead.</p>
693     </d:desc>
694     </d:item>
695    
696     <d:item name="in XML:xmlns"
697     class="attribute-error">
698     <d:message xml:lang="en">The <code>xmlns</code> attribute
699     in the <code>null</code> namespace is not allowed in
700     XHTML document. The document is non-conforming.</d:message>
701     <d:desc>
702     <p>The <code>xmlns</code> attribute in the <code>null</code>
703     namespace is not allowed in XHTML document.</p>
704    
705 wakaba 1.8 <p>This error should not occur in conformance-checking of
706 wakaba 1.3 static documents.</p>
707     </d:desc>
708     </d:item>
709    
710     </section>
711    
712 wakaba 1.2 <section id="attribute-value-errors">
713     <h2>Attribute Value Errors</h2>
714 wakaba 1.1
715 wakaba 1.2 <d:item name="enumerated:invalid"
716 wakaba 1.3 class="attribute-value-error">
717 wakaba 1.2 <d:message xml:lang="en">This attribute only allow a limited set of
718 wakaba 1.6 values and the specified value <code><var>{@}</var></code> is not one
719     of them.</d:message>
720 wakaba 1.8 <d:desc xml:lang="en">
721     <p>For this attribute only several values are allowed and the
722     value of the attribute is not one of them. The document
723     is non-conforming.</p>
724    
725     <dl>
726     <dt>HTML <code>meta</code> element, <code>http-equiv</code> attribute</dt>
727     <dd><p>Only <code>Default-Style</code> and <code>Refresh</code>
728     is allowed.</p>
729     <p>Value <code>Content-Type</code> is obsolete; for charset
730     declaration, the <code>charset</code> attribute can be used as:
731     <pre class="html example"><code>&lt;meta charset="<var>charset-name</var>"></code></pre>
732     ... where <var>charset-name</var> is a name of the character encoding
733     of the document, such as <code>utf-8</code>.</p>
734     <p>Values <code>Content-Style-Type</code> and
735     <code>Content-Script-Type</code> are currently not allowed.</p>
736     <p>Value <code>Keywords</code> is not allowed. Use
737     <code>name</code> attribute instead of <code>http-equiv</code>
738     attribute.</p>
739     <p>Values <code>Expires</code>, <code>Pragma</code>,
740     and <code>Cache-Control</code> are not allowed;
741     use <em>real</em> HTTP header fields for cache control.</p></dd>
742     </dl>
743     </d:desc>
744 wakaba 1.2 </d:item>
745    
746 wakaba 1.3 <d:item name="duplicate ID"
747     class="attribute-value-error">
748     <d:message xml:lang="en">This identifier has already been
749     assigned to another element.</d:message>
750     <!-- @@ <id=a xml:id=a>? -->
751     </d:item>
752    
753 wakaba 1.5 <d:item name="link type:bad context"
754 wakaba 1.4 class="attribute-value-error">
755     <d:message xml:lang="en">The link type <code><var>$0</var></code>
756     cannot be specified for this element.</d:message>
757     <d:desc xml:lang="en">
758     <p>The specified link type cannot be used for the element.
759     The document is non-conforming.</p>
760    
761     <p>Link types are associated with limited set of elements.
762     They cannot be used with other elements.</p>
763    
764     <p>For example, link type <code>bookmark</code>
765     can be used with <code>a</code> or <code>area</code> element,
766     while it cannot be used with <code>link</code> element.</p>
767     </d:desc>
768     </d:item>
769    
770     <d:item name="link type:non-conforming"
771     class="attribute-value-error">
772     <d:message xml:lang="en">The link type <code><var>$0</var></code>
773     is non-conforming.</d:message>
774     <d:desc xml:lang="en">
775 wakaba 1.6 <p>The specified link type is non-conforming, and therefore
776     the document is non-conforming.</p>
777 wakaba 1.4
778 wakaba 1.6 <dl>
779     <dt>Link type <code>contents</code></dt>
780     <dd>Use link type <code>index</code>.</dd>
781     <dt>Link type <code>copyright</code></dt>
782     <dd>Use link type <code>license</code>.</dd>
783     <dt>Link type <code>home</code></dt>
784     <dd>Use link type <code>index</code>.</dd>
785     <dt>Link type <code>start</code></dt>
786     <dd>Use link type <code>first</code>.</dd>
787     <dt>Link type <code>toc</code></dt>
788     <dd>Use link type <code>index</code>.</dd>
789     </dl>
790 wakaba 1.4 </d:desc>
791     </d:item>
792    
793 wakaba 1.3 <d:item name="reserved browsing context name"
794     class="attribute-value-error">
795 wakaba 1.6 <d:message xml:lang="en">Browsing context name
796     <code><var>{@}</var></code> is reserved.</d:message>
797     <d:desc xml:lang="en">
798 wakaba 1.3 <p>The specified browsing context name is reserved.
799     The document is non-conforming.</p>
800    
801     <p>Names of browsing contexts starting with <code>_</code>
802     (<code>U+005F</code> <code class="charname">LOW LINE</code>)
803     are reserved so that it must not be used.</p>
804    
805     <p>Old version of HTML, non-HTML markup languages, and
806     Web browsers define or implements special reserved
807     browsing context names <code>_blank</code>,
808     <code>_main</code>, and <code>_replace</code>.
809     However, they are <em>not</em> conforming attribute values.</p>
810 wakaba 1.6 </d:desc>
811 wakaba 1.3 </d:item>
812    
813 wakaba 1.2 </section>
814    
815 wakaba 1.4 <section id="attribute-value-warnings">
816     <h2>Attribute Value Warnings</h2>
817    
818     <d:item name="link type:proposed" level="s"
819     class="attribute-value-warning should">
820     <d:message xml:lang="en">Link type <code><var>$0</var></code>
821     is proposed but not accepted yet; it <em>should not</em> be
822     used until it has been accepted.</d:message>
823     <d:desc>
824     <p>The link type is in the <i>proposed</i> status; it
825     <em>should not</em> be used until it has been
826     accepted.</p>
827    
828     <p><strong>Warning</strong>: The data served to the
829     conforming checker might be out of date; it might have already
830     been accepted or rejected, depending on which the document
831     might be conforming or non-conforming. See WHATWG Wiki
832     for the latest information.</p>
833     </d:desc>
834     </d:item>
835    
836     </section>
837    
838 wakaba 1.2 <section id="table-model-errors">
839     <h2>Table Model Errors</h2>
840    
841 wakaba 1.3 <d:item name="table:colspan creates column with no anchored cell"
842     class="table-model-error">
843     <d:message xml:lang="en">This <code>colspan</code> attribute
844     results in creating a table column that does not contain
845     any cell anchored to it.</d:message>
846     </d:item>
847    
848 wakaba 1.2 <d:item name="table:no cell in last row"
849     class="table-model-error">
850     <d:message xml:lang="en">The table has no cell (<code>td</code> or
851     <code>th</code>) in the last row.</d:message>
852     </d:item>
853    
854 wakaba 1.6 <d:item name="table:rowspan extends table"
855     class="table-model-error">
856     <d:message xml:lang="en">This <code>rowspan</code> attribute
857     results in creating a table row that does not contain
858     any cell anchored to it.</d:message>
859     <d:desc xml:lang="en">
860     <p>The <code>rowspan</code> attribute value of the cell
861     is so specified that it extends a table in the row axis.
862     However, the extended row does not contain any cell by itself.
863     The document is non-conforming.</p>
864    
865     <p>For example, the table below is non-conforming:
866     <pre class="html non-conforming example"><code>&lt;table>
867     &lt;tbody>
868     &lt;tr>&lt;td rowspan=2>&lt;/td>&lt;/tr>
869     &lt;/tbody>
870     &lt;/table></code></pre>
871     ... is non-conforming, since the second row contains only
872     a cell that spans the first and the second rows.</p>
873     </d:desc>
874     </d:item>
875    
876 wakaba 1.2 </section>
877    
878     <section id="imt-warnings">
879     <h2>Internet Media Type Warnings</h2>
880    
881     <d:item name="IMT:obsolete subtype"
882     class="should" level="s">
883 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: An <em>obsolete</em>
884     subtype is used.</d:message>
885 wakaba 1.2 </d:item>
886    
887     <d:item name="IMT:private subtype"
888     class="should" level="s">
889 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: A private
890     (<code>x-</code> or <code>x.</code>) subtype is used.</d:message>
891 wakaba 1.2 </d:item>
892    
893     <d:item name="IMT:unregistered subtype"
894     class="should" level="s">
895 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: The subtype is
896     not registered to IANA.</d:message>
897 wakaba 1.2 <!-- TODO: Unknown message?? -->
898     </d:item>
899    
900     </section>
901    
902     <section id="uri-errors">
903     <h2>URI (or IRI) Errors</h2>
904    
905     <d:item name="URI::syntax error"
906     class="must" level="m">
907 wakaba 1.6 <d:message xml:lang="en">The specified value is syntactically not an IRI
908     reference.</d:message>
909     <d:desc xml:lang="en">
910     <p>The specified value does not satisfy the syntactical requirements
911     for IRI references. The document is non-conforming.</p>
912    
913     <p>Possible causes:
914     <ul>
915     <li>The string might contain one or more white space characters.
916     Especially, the <code> </code> (<code>U+0020</code>
917     <code class="charname">SPACE</code>) character cannot be
918     used in IRI references.</li>
919     </ul>
920     </p>
921     </d:desc>
922 wakaba 1.2 </d:item>
923    
924     </section>
925    
926 wakaba 1.3 <section id="uri-warnings">
927     <h2>URI (or IRI) Warnings</h2>
928    
929     <d:item name="URI::dot-segment"
930     class="should" level="s">
931     <d:message xml:lang="en">Dot-segment (<code>.</code> or
932     <code>..</code>) should not occur in an absolute reference.</d:message>
933     <d:desc>
934     <p>Dot-segment (<code>.</code> or <code>..</code>) should
935     not occur in an absolute reference.</p>
936    
937     <p>In relative references, dot-segments are used to represent
938     the current (<code>.</code>) or the parent (<code>..</code>)
939     hierarchy of the path. Though they are also allowed
940     in absolute references, it should be resolved to the
941     canonical form before it has been published.</p>
942     </d:desc>
943     </d:item>
944 wakaba 1.2
945     <d:item name="URI::empty path"
946     class="should" level="s">
947     <d:message xml:lang="en">This IRI should explicitly end with
948     <code>/</code>.</d:message>
949     </d:item>
950 wakaba 1.1
951 wakaba 1.4 <d:item name="URI::lowercase hexadecimal digit"
952     class="should" level="s">
953     <d:message xml:lang="en">Hexadecimal digit in percent-encoding
954     should be in lowercase.</d:message>
955     <d:desc xml:lang="en">
956     <p>The hexadecimal digit in percent-encoding string in the IRI
957     is in lowercase. Though the IRI <em>is</em> conforming,
958     it should be in uppercase.</p>
959     </d:desc>
960     </d:item>
961    
962     <d:item name="URI::percent-encoded unreserved"
963     class="should" level="s">
964     <d:message xml:lang="en">An unreserved character is
965     percent-encoded.</d:message>
966     <d:desc xml:lang="en">
967     <p>An unreserved character is percent-encoded in the IRI.
968     Though it <em>is</em> conforming, it should be in the
969     decoded (or bare) form.</p>
970     </d:desc>
971     </d:item>
972    
973 wakaba 1.6 <d:item name="URI::uppercase scheme name"
974     class="should" level="s">
975     <d:message xml:lang="en">URI scheme name is in uppercase.</d:message>
976     <d:desc xml:lang="en">
977     <p>The scheme part of the IRI is written in uppercase letter.</p>
978    
979     <p>Uppercase scheme names are not required to be processed
980     correctly.</p>
981     <!-- @@
982     RFC 3986 3.1.
983     > Although schemes are case-
984     insensitive, the canonical form is lowercase and documents that
985     specify schemes must do so with lowercase letters.
986    
987     > An implementation ... should only produce lowercase scheme names for
988     consistency.
989     -->
990     </d:desc>
991     </d:item>
992    
993 wakaba 1.1 </section>
994    
995     <section id="unsupported-messages">
996     <h2><i>Unsupported</i> Messages</h2>
997    
998 wakaba 1.2 <d:item name="attribute"
999     class="unsupported" level="unsupported">
1000 wakaba 1.1 <d:message xml:lang="en">This attribute is not supported by the
1001     conformance checker; <em>it might or might not be conforming</em>.</d:message>
1002     <d:desc xml:lang="en">
1003     <p>The conformant checker does not support the attribute.
1004     It cannot determine whether the document is conforming or not.</p>
1005     </d:desc>
1006     </d:item>
1007    
1008 wakaba 1.2 <d:item name="element"
1009     class="unsupported" level="unsupported">
1010 wakaba 1.1 <d:message xml:lang="en">This element is not supported by the
1011     conformance checker; <em>it might or might not be conforming</em>.</d:message>
1012     <d:desc xml:lang="en">
1013     <p>The conformant checker does not support the element.
1014     It cannot determine whether the document is conforming or not.</p>
1015     </d:desc>
1016     </d:item>
1017    
1018 wakaba 1.2 <d:item name="link type"
1019     class="unsupported" level="unsupported">
1020 wakaba 1.4 <d:message xml:lang="en">The link type <code><var>$0</var></code> is not
1021     standardized or registered at the time of the release of the conformance
1022     checker; <em>it is non-conforming unless it has now been
1023     registered</em>.</d:message>
1024 wakaba 1.1 <d:desc xml:lang="en">
1025     <p>The <code>rel</code> attribute is defined as a list of link types.
1026     Some common link types are defined in the HTML5 specification.
1027     Additional link types can be registered to the WHATWG Wiki.
1028     use of any other link type is non-conforming.</p>
1029    
1030     <p>The specified link type is not part of the standard or registry
1031     when the database used by the conformance cheker is created.
1032     The link type might have been added to the registry since then.
1033     In such case it might be conforming. Otherwise, the
1034     document is non-conforming.</p>
1035 wakaba 1.8
1036     <dl>
1037     <dt>Link types <code>shortcut icon</code></dt>
1038     <dd>Link type <code>shortcut</code> is not registered.
1039     Use only <code>icon</code> for linking to so-called favicon.</dd>
1040     </dl>
1041 wakaba 1.1 </d:desc>
1042     </d:item>
1043    
1044 wakaba 1.4 <d:item name="event handler"
1045     class="unsupported" level="unsupported">
1046     <d:message xml:lang="en">Conformance checking for event handler attribute
1047     is not supported; <em>it might or might not be conforming.</em></d:message>
1048     </d:item>
1049    
1050     <d:item name="language tag"
1051     class="unsupported" level="unsupported">
1052     <d:message xml:lang="en">Conformance checking for language tag
1053     is not supported; <em>it might or might not be conforming.</em></d:message>
1054     </d:item>
1055    
1056     <d:item name="media query"
1057     class="unsupported" level="unsupported">
1058     <d:message xml:lang="en">Conformance checking for media query
1059     is not supported; <em>it might or might not be conforming.</em></d:message>
1060     </d:item>
1061    
1062     <d:item name="script"
1063     class="unsupported" level="unsupported">
1064     <d:message xml:lang="en">Conformance checking for script
1065     language <code><var>$0</var></code> is not supported;
1066     <em>it might or might not be conforming.</em></d:message>
1067     </d:item>
1068    
1069     <d:item name="style"
1070     class="unsupported" level="unsupported">
1071     <d:message xml:lang="en">Conformance checking for style
1072     language <code><var>$0</var></code> is not supported;
1073     <em>it might or might not be conforming.</em></d:message>
1074     </d:item>
1075    
1076 wakaba 1.1 </section>
1077    
1078 wakaba 1.2 <d:catalog>
1079     manakaiCompatMode:quirks;;Quirks Mode
1080     manakaiCompatMode:limited quirks;;Limited Quirks Mode
1081     manakaiCompatMode:no quirks;;No Quirks Mode
1082    
1083     manakaiIsHTML:1;;HTML Document
1084     manakaiIsHTML:0;;XML Document
1085     </d:catalog>
1086    
1087 wakaba 1.1 <section id="license">
1088     <h2>License of This Document</h2>
1089    
1090     <p>Copyright 2007 <a href="http://suika.fam.cx/~wakaba/who?">Wakaba</a></p>
1091     <p>This library is free software; you can redistribute it
1092     and/or modify it under the same terms as Perl itself.</p>
1093     </section>
1094    
1095 wakaba 1.8 <!-- $Date: 2007/08/11 13:54:55 $ -->
1096 wakaba 1.1 </body>
1097     </html>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24