/[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.7 - (hide annotations) (download) (as text)
Sat Aug 11 13:54:55 2007 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.6: +61 -1 lines
File MIME type: text/xml
++ ChangeLog	11 Aug 2007 13:54:20 -0000
2007-08-11  Wakaba  <wakaba@suika.fam.cx>

	* cc.cgi, parser-manakai.cgi, parser.cgi: Use |Message::CGI::HTTP|
	instead of |SuikaWiki::Input::HTTP|.

2007-08-05  Wakaba  <wakaba@suika.fam.cx>

	* cc-interface.en.html: IMT |application/atom+xml| is added.
	Link to |cc-todo| is added.

2007-07-24  Wakaba  <wakaba@suika.fam.cx>

	* error-description.xml: Description for "after body", "bare etago",
	and "bogus end tag" are added.

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     </dl>
577     </p>
578     </d:desc>
579     </d:item>
580    
581 wakaba 1.6 <d:item name="ps element missing"
582     class="content-model-error">
583     <d:message xml:lang="en">There is no <code><var>$0</var></code>
584     element before this element.</d:message>
585     <d:desc xml:lang="en">
586     <p>There must be an element before another element, but there
587     is not. The document is non-conforming.</p>
588    
589     <p>For example, there must be a <code>dt</code> element
590     before any <code>dd</code> element.</p>
591     </d:desc>
592     </d:item>
593    
594 wakaba 1.2 </section>
595    
596 wakaba 1.3 <section id="attribute-errors">
597     <h2>Attribute Errors</h2>
598    
599     <d:item name="attribute missing"
600     class="attribute-error">
601     <d:message xml:lang="en">Required attribute <code><var>$0</var></code>
602     is not specified.</d:message>
603     <d:desc>
604     <p>A required attribute is not specified. The document
605     is non-conforming.</p>
606    
607     <p>Some attribute is defined as <i>required</i>.
608     For example, any <code>img</code> element must have
609     <code>alt</code> and <code>src</code> attributes specified.
610     Without required attributes specified, user agents
611     cannot provide the full functionality of the element
612     to the user.</p>
613     </d:desc>
614     </d:item>
615    
616     <d:item name="in HTML:xml:lang"
617     class="attribute-error">
618     <d:message xml:lang="en">The <code>xml:lang</code> attribute is not
619     allowed in HTML document.</d:message>
620     <d:desc>
621     <p>The <code>xml:lang</code> attribute is not allowed in
622     HTML document. The document is non-conforming.</p>
623    
624 wakaba 1.4 <p>The <code>lang</code> attribute in the <code>null</code>
625     namespace for HTML elements is defined as conforming <em>only</em> for
626 wakaba 1.3 XML document.</p>
627    
628     <p>To specify natural language information in HTML document,
629     use <code>lang</code> attribute instead.</p>
630 wakaba 1.6
631     <p>XHTML 1.0 Appendix C was encouraged to specify both
632     <code>lang</code> and <code>xml:lang</code> attributes with
633     the same value. Such a duplication has <em>no effect</em> in practice.
634     Use only one of <code>lang</code> (in HTML) or <code>xml:lang</code> (in
635     XML).</p>
636    
637 wakaba 1.3 <!-- @@ ISSUE: xml:lang in non-HTML element in DOM5 HTML created
638     from an HTML document? -->
639     </d:desc>
640     </d:item>
641    
642     <d:item name="in XML:charset"
643     class="attribute-error">
644     <d:message xml:lang="en">The <code>charset</code> attribute is not
645     allowed in XML document.</d:message>
646     <d:desc>
647     <p>The <code>charset</code> attribute of a
648     <code>meta</code> element is not allowed in XML document.
649     The document is non-conforming.</p>
650    
651     <p>To specify the character encoding used for serialization,
652     if necessary, use XML declaration instead:
653     <pre class="xml example"><code>&lt;?xml version="1.0" encoding="<var>encoding-name</var>"?></code></pre>
654     </p>
655     </d:desc>
656     </d:item>
657    
658     <d:item name="in XML:lang"
659     class="attribute-error">
660     <d:message xml:lang="en">The <code>lang</code> attribute is not
661     allowed in XML document.</d:message>
662     <d:desc>
663     <p>The HTML <code>lang</code> attribute is not allowed in
664     XML document. The document is non-conforming.</p>
665    
666     <p>The <code>lang</code> attribute in <code>null</code>
667 wakaba 1.4 namespace for HTML elements is defined as conforming <em>only</em> for
668 wakaba 1.3 HTML document.</p>
669    
670     <p>To specify natural language information in XML document,
671     use <code>xml:lang</code> attribute instead.</p>
672     </d:desc>
673     </d:item>
674    
675     <d:item name="in XML:xmlns"
676     class="attribute-error">
677     <d:message xml:lang="en">The <code>xmlns</code> attribute
678     in the <code>null</code> namespace is not allowed in
679     XHTML document. The document is non-conforming.</d:message>
680     <d:desc>
681     <p>The <code>xmlns</code> attribute in the <code>null</code>
682     namespace is not allowed in XHTML document.</p>
683    
684     <p>This error should not occur in conformance-checking
685     static documents.</p>
686     </d:desc>
687     </d:item>
688    
689     </section>
690    
691 wakaba 1.2 <section id="attribute-value-errors">
692     <h2>Attribute Value Errors</h2>
693 wakaba 1.1
694 wakaba 1.2 <d:item name="enumerated:invalid"
695 wakaba 1.3 class="attribute-value-error">
696 wakaba 1.2 <d:message xml:lang="en">This attribute only allow a limited set of
697 wakaba 1.6 values and the specified value <code><var>{@}</var></code> is not one
698     of them.</d:message>
699 wakaba 1.2 </d:item>
700    
701 wakaba 1.3 <d:item name="duplicate ID"
702     class="attribute-value-error">
703     <d:message xml:lang="en">This identifier has already been
704     assigned to another element.</d:message>
705     <!-- @@ <id=a xml:id=a>? -->
706     </d:item>
707    
708 wakaba 1.5 <d:item name="link type:bad context"
709 wakaba 1.4 class="attribute-value-error">
710     <d:message xml:lang="en">The link type <code><var>$0</var></code>
711     cannot be specified for this element.</d:message>
712     <d:desc xml:lang="en">
713     <p>The specified link type cannot be used for the element.
714     The document is non-conforming.</p>
715    
716     <p>Link types are associated with limited set of elements.
717     They cannot be used with other elements.</p>
718    
719     <p>For example, link type <code>bookmark</code>
720     can be used with <code>a</code> or <code>area</code> element,
721     while it cannot be used with <code>link</code> element.</p>
722     </d:desc>
723     </d:item>
724    
725     <d:item name="link type:non-conforming"
726     class="attribute-value-error">
727     <d:message xml:lang="en">The link type <code><var>$0</var></code>
728     is non-conforming.</d:message>
729     <d:desc xml:lang="en">
730 wakaba 1.6 <p>The specified link type is non-conforming, and therefore
731     the document is non-conforming.</p>
732 wakaba 1.4
733 wakaba 1.6 <dl>
734     <dt>Link type <code>contents</code></dt>
735     <dd>Use link type <code>index</code>.</dd>
736     <dt>Link type <code>copyright</code></dt>
737     <dd>Use link type <code>license</code>.</dd>
738     <dt>Link type <code>home</code></dt>
739     <dd>Use link type <code>index</code>.</dd>
740     <dt>Link type <code>start</code></dt>
741     <dd>Use link type <code>first</code>.</dd>
742     <dt>Link type <code>toc</code></dt>
743     <dd>Use link type <code>index</code>.</dd>
744     </dl>
745 wakaba 1.4 </d:desc>
746     </d:item>
747    
748 wakaba 1.3 <d:item name="reserved browsing context name"
749     class="attribute-value-error">
750 wakaba 1.6 <d:message xml:lang="en">Browsing context name
751     <code><var>{@}</var></code> is reserved.</d:message>
752     <d:desc xml:lang="en">
753 wakaba 1.3 <p>The specified browsing context name is reserved.
754     The document is non-conforming.</p>
755    
756     <p>Names of browsing contexts starting with <code>_</code>
757     (<code>U+005F</code> <code class="charname">LOW LINE</code>)
758     are reserved so that it must not be used.</p>
759    
760     <p>Old version of HTML, non-HTML markup languages, and
761     Web browsers define or implements special reserved
762     browsing context names <code>_blank</code>,
763     <code>_main</code>, and <code>_replace</code>.
764     However, they are <em>not</em> conforming attribute values.</p>
765 wakaba 1.6 </d:desc>
766 wakaba 1.3 </d:item>
767    
768 wakaba 1.2 </section>
769    
770 wakaba 1.4 <section id="attribute-value-warnings">
771     <h2>Attribute Value Warnings</h2>
772    
773     <d:item name="link type:proposed" level="s"
774     class="attribute-value-warning should">
775     <d:message xml:lang="en">Link type <code><var>$0</var></code>
776     is proposed but not accepted yet; it <em>should not</em> be
777     used until it has been accepted.</d:message>
778     <d:desc>
779     <p>The link type is in the <i>proposed</i> status; it
780     <em>should not</em> be used until it has been
781     accepted.</p>
782    
783     <p><strong>Warning</strong>: The data served to the
784     conforming checker might be out of date; it might have already
785     been accepted or rejected, depending on which the document
786     might be conforming or non-conforming. See WHATWG Wiki
787     for the latest information.</p>
788     </d:desc>
789     </d:item>
790    
791     </section>
792    
793 wakaba 1.2 <section id="table-model-errors">
794     <h2>Table Model Errors</h2>
795    
796 wakaba 1.3 <d:item name="table:colspan creates column with no anchored cell"
797     class="table-model-error">
798     <d:message xml:lang="en">This <code>colspan</code> attribute
799     results in creating a table column that does not contain
800     any cell anchored to it.</d:message>
801     </d:item>
802    
803 wakaba 1.2 <d:item name="table:no cell in last row"
804     class="table-model-error">
805     <d:message xml:lang="en">The table has no cell (<code>td</code> or
806     <code>th</code>) in the last row.</d:message>
807     </d:item>
808    
809 wakaba 1.6 <d:item name="table:rowspan extends table"
810     class="table-model-error">
811     <d:message xml:lang="en">This <code>rowspan</code> attribute
812     results in creating a table row that does not contain
813     any cell anchored to it.</d:message>
814     <d:desc xml:lang="en">
815     <p>The <code>rowspan</code> attribute value of the cell
816     is so specified that it extends a table in the row axis.
817     However, the extended row does not contain any cell by itself.
818     The document is non-conforming.</p>
819    
820     <p>For example, the table below is non-conforming:
821     <pre class="html non-conforming example"><code>&lt;table>
822     &lt;tbody>
823     &lt;tr>&lt;td rowspan=2>&lt;/td>&lt;/tr>
824     &lt;/tbody>
825     &lt;/table></code></pre>
826     ... is non-conforming, since the second row contains only
827     a cell that spans the first and the second rows.</p>
828     </d:desc>
829     </d:item>
830    
831 wakaba 1.2 </section>
832    
833     <section id="imt-warnings">
834     <h2>Internet Media Type Warnings</h2>
835    
836     <d:item name="IMT:obsolete subtype"
837     class="should" level="s">
838 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: An <em>obsolete</em>
839     subtype is used.</d:message>
840 wakaba 1.2 </d:item>
841    
842     <d:item name="IMT:private subtype"
843     class="should" level="s">
844 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: A private
845     (<code>x-</code> or <code>x.</code>) subtype is used.</d:message>
846 wakaba 1.2 </d:item>
847    
848     <d:item name="IMT:unregistered subtype"
849     class="should" level="s">
850 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: The subtype is
851     not registered to IANA.</d:message>
852 wakaba 1.2 <!-- TODO: Unknown message?? -->
853     </d:item>
854    
855     </section>
856    
857     <section id="uri-errors">
858     <h2>URI (or IRI) Errors</h2>
859    
860     <d:item name="URI::syntax error"
861     class="must" level="m">
862 wakaba 1.6 <d:message xml:lang="en">The specified value is syntactically not an IRI
863     reference.</d:message>
864     <d:desc xml:lang="en">
865     <p>The specified value does not satisfy the syntactical requirements
866     for IRI references. The document is non-conforming.</p>
867    
868     <p>Possible causes:
869     <ul>
870     <li>The string might contain one or more white space characters.
871     Especially, the <code> </code> (<code>U+0020</code>
872     <code class="charname">SPACE</code>) character cannot be
873     used in IRI references.</li>
874     </ul>
875     </p>
876     </d:desc>
877 wakaba 1.2 </d:item>
878    
879     </section>
880    
881 wakaba 1.3 <section id="uri-warnings">
882     <h2>URI (or IRI) Warnings</h2>
883    
884     <d:item name="URI::dot-segment"
885     class="should" level="s">
886     <d:message xml:lang="en">Dot-segment (<code>.</code> or
887     <code>..</code>) should not occur in an absolute reference.</d:message>
888     <d:desc>
889     <p>Dot-segment (<code>.</code> or <code>..</code>) should
890     not occur in an absolute reference.</p>
891    
892     <p>In relative references, dot-segments are used to represent
893     the current (<code>.</code>) or the parent (<code>..</code>)
894     hierarchy of the path. Though they are also allowed
895     in absolute references, it should be resolved to the
896     canonical form before it has been published.</p>
897     </d:desc>
898     </d:item>
899 wakaba 1.2
900     <d:item name="URI::empty path"
901     class="should" level="s">
902     <d:message xml:lang="en">This IRI should explicitly end with
903     <code>/</code>.</d:message>
904     </d:item>
905 wakaba 1.1
906 wakaba 1.4 <d:item name="URI::lowercase hexadecimal digit"
907     class="should" level="s">
908     <d:message xml:lang="en">Hexadecimal digit in percent-encoding
909     should be in lowercase.</d:message>
910     <d:desc xml:lang="en">
911     <p>The hexadecimal digit in percent-encoding string in the IRI
912     is in lowercase. Though the IRI <em>is</em> conforming,
913     it should be in uppercase.</p>
914     </d:desc>
915     </d:item>
916    
917     <d:item name="URI::percent-encoded unreserved"
918     class="should" level="s">
919     <d:message xml:lang="en">An unreserved character is
920     percent-encoded.</d:message>
921     <d:desc xml:lang="en">
922     <p>An unreserved character is percent-encoded in the IRI.
923     Though it <em>is</em> conforming, it should be in the
924     decoded (or bare) form.</p>
925     </d:desc>
926     </d:item>
927    
928 wakaba 1.6 <d:item name="URI::uppercase scheme name"
929     class="should" level="s">
930     <d:message xml:lang="en">URI scheme name is in uppercase.</d:message>
931     <d:desc xml:lang="en">
932     <p>The scheme part of the IRI is written in uppercase letter.</p>
933    
934     <p>Uppercase scheme names are not required to be processed
935     correctly.</p>
936     <!-- @@
937     RFC 3986 3.1.
938     > Although schemes are case-
939     insensitive, the canonical form is lowercase and documents that
940     specify schemes must do so with lowercase letters.
941    
942     > An implementation ... should only produce lowercase scheme names for
943     consistency.
944     -->
945     </d:desc>
946     </d:item>
947    
948 wakaba 1.1 </section>
949    
950     <section id="unsupported-messages">
951     <h2><i>Unsupported</i> Messages</h2>
952    
953 wakaba 1.2 <d:item name="attribute"
954     class="unsupported" level="unsupported">
955 wakaba 1.1 <d:message xml:lang="en">This attribute is not supported by the
956     conformance checker; <em>it might or might not be conforming</em>.</d:message>
957     <d:desc xml:lang="en">
958     <p>The conformant checker does not support the attribute.
959     It cannot determine whether the document is conforming or not.</p>
960     </d:desc>
961     </d:item>
962    
963 wakaba 1.2 <d:item name="element"
964     class="unsupported" level="unsupported">
965 wakaba 1.1 <d:message xml:lang="en">This element is not supported by the
966     conformance checker; <em>it might or might not be conforming</em>.</d:message>
967     <d:desc xml:lang="en">
968     <p>The conformant checker does not support the element.
969     It cannot determine whether the document is conforming or not.</p>
970     </d:desc>
971     </d:item>
972    
973 wakaba 1.2 <d:item name="link type"
974     class="unsupported" level="unsupported">
975 wakaba 1.4 <d:message xml:lang="en">The link type <code><var>$0</var></code> is not
976     standardized or registered at the time of the release of the conformance
977     checker; <em>it is non-conforming unless it has now been
978     registered</em>.</d:message>
979 wakaba 1.1 <d:desc xml:lang="en">
980     <p>The <code>rel</code> attribute is defined as a list of link types.
981     Some common link types are defined in the HTML5 specification.
982     Additional link types can be registered to the WHATWG Wiki.
983     use of any other link type is non-conforming.</p>
984    
985     <p>The specified link type is not part of the standard or registry
986     when the database used by the conformance cheker is created.
987     The link type might have been added to the registry since then.
988     In such case it might be conforming. Otherwise, the
989     document is non-conforming.</p>
990     </d:desc>
991     </d:item>
992    
993 wakaba 1.4 <d:item name="event handler"
994     class="unsupported" level="unsupported">
995     <d:message xml:lang="en">Conformance checking for event handler attribute
996     is not supported; <em>it might or might not be conforming.</em></d:message>
997     </d:item>
998    
999     <d:item name="language tag"
1000     class="unsupported" level="unsupported">
1001     <d:message xml:lang="en">Conformance checking for language tag
1002     is not supported; <em>it might or might not be conforming.</em></d:message>
1003     </d:item>
1004    
1005     <d:item name="media query"
1006     class="unsupported" level="unsupported">
1007     <d:message xml:lang="en">Conformance checking for media query
1008     is not supported; <em>it might or might not be conforming.</em></d:message>
1009     </d:item>
1010    
1011     <d:item name="script"
1012     class="unsupported" level="unsupported">
1013     <d:message xml:lang="en">Conformance checking for script
1014     language <code><var>$0</var></code> is not supported;
1015     <em>it might or might not be conforming.</em></d:message>
1016     </d:item>
1017    
1018     <d:item name="style"
1019     class="unsupported" level="unsupported">
1020     <d:message xml:lang="en">Conformance checking for style
1021     language <code><var>$0</var></code> is not supported;
1022     <em>it might or might not be conforming.</em></d:message>
1023     </d:item>
1024    
1025 wakaba 1.1 </section>
1026    
1027 wakaba 1.2 <d:catalog>
1028     manakaiCompatMode:quirks;;Quirks Mode
1029     manakaiCompatMode:limited quirks;;Limited Quirks Mode
1030     manakaiCompatMode:no quirks;;No Quirks Mode
1031    
1032     manakaiIsHTML:1;;HTML Document
1033     manakaiIsHTML:0;;XML Document
1034     </d:catalog>
1035    
1036 wakaba 1.1 <section id="license">
1037     <h2>License of This Document</h2>
1038    
1039     <p>Copyright 2007 <a href="http://suika.fam.cx/~wakaba/who?">Wakaba</a></p>
1040     <p>This library is free software; you can redistribute it
1041     and/or modify it under the same terms as Perl itself.</p>
1042     </section>
1043    
1044 wakaba 1.7 <!-- $Date: 2007/07/21 04:58:17 $ -->
1045 wakaba 1.1 </body>
1046     </html>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24