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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by wakaba, Sun Jul 1 10:02:24 2007 UTC revision 1.7 by wakaba, Sat Aug 11 13:54:55 2007 UTC
# Line 11  Web Document Conformance Checker (BETA)< Line 11  Web Document Conformance Checker (BETA)<
11  <body>  <body>
12  <h1>Description of Errors</h1>  <h1>Description of Errors</h1>
13    
14  <section id="html5-parse-errors">  <section id="html5-tokenize-error">
15  <h2>HTML5 Parse Errors</h2>  <h2>HTML5 Parse Errors in Tokenization Stage</h2>
16    
17  <d:item name="after head"  <d:item name="after html"
18      class="parse-error">      class="parse-error">
19    <d:message xml:lang="en">The <code><var>$0</var></code> element cannot be    <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
20    inserted between <code>head</code> and <code>body</code> elements.</d:message>    is not allowed after the end tag <code>&lt;/html></code>.</d:message>
21    <d:desc xml:lang="en">    <d:desc xml:lang="en">
22      <p>A start tag occurs after the <code>head</code> element is closed      <p>The start or end tag of an element appears after the
23      but before the <code>body</code> element is opened.      <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    <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    <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>      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    <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    <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        <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    
113        <p>The <code>&lt;</code> character as a data character must
114        be escaped as:
115        <pre class="html example"><code>&amp;lt;</code></pre>
116        </p>
117      </d:desc>
118    </d:item>
119    
120    <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        a named entity reference for the <code>&amp;</code> character:
148          <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        a named entity reference for the <code>&amp;</code> character:
170          <pre class="html example"><code>&amp;amp;#x</code></pre>
171        </p>
172      </d:desc>
173    </d:item>
174    
175    <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    <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>    </d:desc>
212  </d:item>  </d:item>
213    
214  <d:item name="duplicate attribute"  <d:item name="duplicate attribute"
215      class="tokenize-error">      class="tokenize-error">
216    <d:message xml:lang="en">There are two attributes with same name.</d:message>    <d:message xml:lang="en">There are two attributes with name
217          <code><var>$0</var></code>.</d:message>
218    <d:desc xml:lang="en">    <d:desc xml:lang="en">
219      <p>Attributes must be unique in an element.  Specifying      <p>There are more than one attributes with the same
220      attributes with same name more than once is non-conforming.</p>      name in a tag.  The document is non-conforming.</p>
221    
222      <p>The <code>motion</code> attribute is not part of the HTML standard.      <p>The <code>motion</code> attribute is not part of the HTML standard.
223      Use <code>img</code> element with animation GIF instead.</p>      Use <code>img</code> element with animation GIF instead.</p>
# Line 42  Web Document Conformance Checker (BETA)< Line 229  Web Document Conformance Checker (BETA)<
229    <d:message xml:lang="en">Void element syntax (<code>/></code>) cannot be    <d:message xml:lang="en">Void element syntax (<code>/></code>) cannot be
230    used for this element.</d:message>    used for this element.</d:message>
231    <d:desc xml:lang="en">    <d:desc xml:lang="en">
232      <p>The void element syntax <code>/></code> syntax can only be      <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      used for <code>base</code>, <code>link</code>, <code>meta</code>,      used for <code>base</code>, <code>link</code>, <code>meta</code>,
237      <code>hr</code>, <code>br</code>, <code>img</code>,      <code>hr</code>, <code>br</code>, <code>img</code>,
238      <code>embed</code>, <code>param</code>, <code>area</code>,      <code>embed</code>, <code>param</code>, <code>area</code>,
239      <code>col</code>, and <code>input</code> elements.      <code>col</code>, and <code>input</code> elements.</p>
     For any other elements, using that syntax is non-conforming.</p>  
240    
241      <p>Unlike XML, the void element syntax (<code>/></code>) has      <p>Note that, unlike in XML, the void element syntax has
242      no effect in HTML.</p>      no effect in HTML.</p>
243    </d:desc>    </d:desc>
244  </d:item>  </d:item>
245    
246    
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        attribute is set to <code>stylesheet</code> (or
267        <code>alternate stylesheet</code> for an aleternate style sheet).</p>
268    
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    </section>
277    
278    <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        <p>A start tag appears after the <code>head</code> element is closed
287        but before the <code>body</code> element is opened.
288        The document is non-conforming.</p>
289      </d:desc>
290    </d:item>
291    
292    <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    <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    <d:item name="in body"
319        class="parse-error">
320      <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
321      is not allowed in a <code>body</code> element.</d:message>
322      <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    <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    <d:item name="in table"
345        class="parse-error">
346      <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
347      is not allowed in a <code>table</code> element.</d:message>
348      <d:desc xml:lang="en">
349        <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    
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    <d:item name="no DOCTYPE"
395        class="parse-error">
396      <d:message xml:lang="en">This document does not start with a
397      <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    </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      <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    </d:item>
421    
422    <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    <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      <d:desc xml:lang="en">
445        <p>The document contains a <code>DOCTYPE</code> declaration
446        that is different from HTML5 <code>DOCTYPE</code> (i.e.
447        <code>&lt;!DOCTYPE HTML&gt;</code>).  The document is non-conforming.</p>
448    
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    </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      <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    </d:item>
469    
470  </section>  </section>
471    
472  <section id="element-content-model-errors">  <section id="element-content-model-errors">
# Line 64  Web Document Conformance Checker (BETA)< Line 477  Web Document Conformance Checker (BETA)<
477    <d:message xml:lang="en">Data character is not allowed in this    <d:message xml:lang="en">Data character is not allowed in this
478    context.</d:message>    context.</d:message>
479    <d:desc xml:lang="en">    <d:desc xml:lang="en">
480      <p>A data character occurs where it is not allowed in this      <p>A data character appears where it is not allowed in this
481      context.  The document is non-conforming.</p>      context.  The document is non-conforming.</p>
482    
483      <p>Possible causes:      <p>Possible causes:
484        <dl>        <ul>
485        <dt>If the erred element is an inline-level element (such        <li><p>A data character cannot be a child
486        as <code>a</code> or <code>span</code>)</dt>        of certain sectioning elements such as <code>body</code>,
487            <dd><p>A data character cannot be a child        <code>section</code>, and <code>blockquote</code>.</p>
488            of certain sectioning elements such as <code>body</code>,  
489            <code>section</code>, and <code>blockquote</code>.</p>        <p>Any inline-level content must be put
490          in e.g. paragraph element such as <code>p</code>.</p></li>
491            <p>Any inline-level content must be put        <li><p>Though some elements such as <code>div</code>,
492            in e.g. paragraph element such as <code>p</code>.</p></dd>        <code>li</code>, and <code>td</code> allow
493        <dt>If the erred element is a block-level element (such as        <em>either one</em> of block-level or inline-level content
494        <code>div</code> or <code>h<var>n</var></code>)</dt>        is allowed.  If there is a block-level content,
495            <dd><p>Though some elements such as <code>div</code>,        any inline-level content must be put
496            <code>li</code>, and <code>td</code> allow        in e.g. paragraph element such as <code>p</code>.</p></li>
497            <em>either one</em> of block-level or inline-level content        </ul>
           is allowed.  If there is a block-level content,  
           any inline-level content must be put  
           in e.g. paragraph element such as <code>p</code>.</p></dd>  
       </dl>  
498      </p>      </p>
499    </d:desc>    </d:desc>
500  </d:item>  </d:item>
# Line 97  Web Document Conformance Checker (BETA)< Line 506  Web Document Conformance Checker (BETA)<
506    <d:desc xml:lang="en">    <d:desc xml:lang="en">
507      <p>The content model of the element is so defined that it      <p>The content model of the element is so defined that it
508      must contain a <code><var>$0</var></code> child element.      must contain a <code><var>$0</var></code> child element.
509      Without such an element, the document is non-conforming.</p>      The document is non-conforming.</p>
510    
511      <p>For example:      <p>For example:
512        <ul>        <ul>
# Line 117  Web Document Conformance Checker (BETA)< Line 526  Web Document Conformance Checker (BETA)<
526    or <code>th</code> element as a child of this element.</d:message>    or <code>th</code> element as a child of this element.</d:message>
527    <d:desc xml:lang="en">    <d:desc xml:lang="en">
528      <p>The <code>tr</code> element must contain at least one      <p>The <code>tr</code> element must contain at least one
529      <code>td</code> or <code>th</code> child element.  Without      <code>td</code> or <code>th</code> child element.  The document
530      such an element, the document is non-conforming.</p>      is non-conforming.</p>
531    </d:desc>    </d:desc>
532  </d:item>  </d:item>
533    
# Line 127  Web Document Conformance Checker (BETA)< Line 536  Web Document Conformance Checker (BETA)<
536    <d:message xml:lang="en">This element is not allowed in this    <d:message xml:lang="en">This element is not allowed in this
537    context.</d:message>    context.</d:message>
538    <d:desc xml:lang="en">    <d:desc xml:lang="en">
539      <p>An element occurs where it is not allowed.  The document      <p>An element appears where it is not allowed.  The document
540      is non-conforming.</p>      is non-conforming.</p>
541    
542        <p><strong>Note</strong>: The conformance checker does
543        <em>not</em> support form elements yet.</p>
544    
545      <p>Possible causes:      <p>Possible causes:
546        <dl>        <dl class="switch">
547        <dt>If the erred element is an inline-level element (such        <dt>If the element with the error is an inline-level element,
548        as <code>a</code> or <code>span</code>)</dt>        such as <code>a</code>, <code>progress</code>, or <code>img</code></dt>
549            <dd><p>An inline-level element cannot be a child            <dd><p>An inline-level element cannot be a child
550            of certain sectioning elements such as <code>body</code>,            of certain sectioning elements such as <code>body</code>,
551            <code>section</code>, and <code>blockquote</code>.</p>            <code>section</code>, and <code>blockquote</code>.</p>
552    
553            <p>Any inline-level content must be put            <p>Any inline-level content must be put
554            in e.g. paragraph element such as <code>p</code>.</p></dd>            in e.g. paragraph element such as <code>p</code>.</p></dd>
555        <dt>If the erred element is a block-level element (such as        <dt>If the element with the error is a block-level element,
556        <code>div</code> or <code>h<var>n</var></code>)</dt>        such as <code>div</code>, <code>h<var>n</var></code>, or
557          <code>section</code></dt>
558            <dd><p>Though some elements such as <code>div</code>,            <dd><p>Though some elements such as <code>div</code>,
559            <code>li</code>, and <code>td</code> allow            <code>li</code>, and <code>td</code> allow
560            <em>either one</em> of block-level or inline-level content            <em>either one</em> of block-level or inline-level content
561            is allowed.  If there is a block-level content,            is allowed.  If there is a block-level content,
562            any inline-level content must be put            any inline-level content must be put
563            in e.g. paragraph element such as <code>p</code>.</p></dd>            in e.g. paragraph element such as <code>p</code>.</p></dd>
564        <dt>If the erred element is the root <code>html</code> element</dt>        <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            <dd><p>In an XHTML document, the root <code>html</code>            <dd><p>In an XHTML document, the root <code>html</code>
573            element must have an <code>xmlns</code> attribute            element must have an <code>xmlns</code> attribute
574            whose value is set to            whose value is set to
# Line 158  Web Document Conformance Checker (BETA)< Line 578  Web Document Conformance Checker (BETA)<
578    </d:desc>    </d:desc>
579  </d:item>  </d:item>
580    
581  enumerated:invalid;attribute-error;This attribute only allow a limited set of values and the specified value is not one of them.  <d:item name="ps element missing"
582  no DOCTYPE;parse-error;This document does not start with the <code>DOCTYPE</code> declaration.      class="content-model-error">
583  not HTML5;parse-error;This document is written in an old version of HTML.    <d:message xml:lang="en">There is no <code><var>$0</var></code>
584  not closed;parse-error;Element <code>$0</code> is not closed.    element before this element.</d:message>
585  unmatched end tag;parse-error;Element <code>$0</code> is not opened.    <d:desc xml:lang="en">
586        <p>There must be an element before another element, but there
587  table:no cell in last row;table-model-error;The table has no cell (<code>td</code> or <code>th</code>) in the last row.      is not.  The document is non-conforming.</p>
588    
589  s:IMT:obsolete subtype;should;An <em>obsolete</em> subtype is used.      <p>For example, there must be a <code>dt</code> element
590  s:IMT:private subtype;should;A private (<code>x-</code> or <code>x.</code>) subtype is used.      before any <code>dd</code> element.</p>
591  s:IMT:unregistered subtype;should;The subtype is not registered to IANA.    </d:desc>
592    </d:item>
593    
594    </section>
595    
596    <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        <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        XML document.</p>
627    
628        <p>To specify natural language information in HTML document,
629        use <code>lang</code> attribute instead.</p>
630    
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        <!-- @@ 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        namespace for HTML elements is defined as conforming <em>only</em> for
668        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    <section id="attribute-value-errors">
692    <h2>Attribute Value Errors</h2>
693    
694    <d:item name="enumerated:invalid"
695        class="attribute-value-error">
696      <d:message xml:lang="en">This attribute only allow a limited set of
697      values and the specified value <code><var>{@}</var></code> is not one
698      of them.</d:message>
699    </d:item>
700    
701    <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    <d:item name="link type:bad context"
709        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        <p>The specified link type is non-conforming, and therefore
731        the document is non-conforming.</p>
732    
733        <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      </d:desc>
746    </d:item>
747    
748    <d:item name="reserved browsing context name"
749        class="attribute-value-error">
750      <d:message xml:lang="en">Browsing context name
751      <code><var>{@}</var></code> is reserved.</d:message>
752      <d:desc xml:lang="en">
753        <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      </d:desc>
766    </d:item>
767    
768    </section>
769    
770    <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    <section id="table-model-errors">
794    <h2>Table Model Errors</h2>
795    
796    <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    <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    <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    </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      <d:message xml:lang="en"><code><var>{@}</var></code>: An <em>obsolete</em>
839      subtype is used.</d:message>
840    </d:item>
841    
842    <d:item name="IMT:private subtype"
843        class="should" level="s">
844      <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    </d:item>
847    
848    <d:item name="IMT:unregistered subtype"
849        class="should" level="s">
850      <d:message xml:lang="en"><code><var>{@}</var></code>: The subtype is
851      not registered to IANA.</d:message>
852    <!-- 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      <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    </d:item>
878    
879    </section>
880    
881    <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    
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    
906    <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    <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  s:URI::empty path;should;This IRI should explicitly end with <code>/</code>.      <p>Uppercase scheme names are not required to be processed
935  m:URI::syntax error;must;This IRI is not syntactically valid.      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  </section>  </section>
949    
950  <section id="unsupported-messages">  <section id="unsupported-messages">
951  <h2><i>Unsupported</i> Messages</h2>  <h2><i>Unsupported</i> Messages</h2>
952    
953  <d:item name="unsupported:attribute"  <d:item name="attribute"
954      class="unsupported">      class="unsupported" level="unsupported">
955    <d:message xml:lang="en">This attribute is not supported by the    <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>    conformance checker; <em>it might or might not be conforming</em>.</d:message>
957    <d:desc xml:lang="en">    <d:desc xml:lang="en">
# Line 188  m:URI::syntax error;must;This IRI is not Line 960  m:URI::syntax error;must;This IRI is not
960    </d:desc>    </d:desc>
961  </d:item>  </d:item>
962    
963  <d:item name="unsupported:element"  <d:item name="element"
964      class="unsupported">      class="unsupported" level="unsupported">
965    <d:message xml:lang="en">This element is not supported by the    <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>    conformance checker; <em>it might or might not be conforming</em>.</d:message>
967    <d:desc xml:lang="en">    <d:desc xml:lang="en">
# Line 198  m:URI::syntax error;must;This IRI is not Line 970  m:URI::syntax error;must;This IRI is not
970    </d:desc>    </d:desc>
971  </d:item>  </d:item>
972    
973  <d:item name="unsupported:link type"  <d:item name="link type"
974      class="unsupported">      class="unsupported" level="unsupported">
975    <d:message xml:lang="en">The link type <code>$0</code> is not standardized    <d:message xml:lang="en">The link type <code><var>$0</var></code> is not
976    or registered at the time of the release of the conformance checker;    standardized or registered at the time of the release of the conformance
977    <em>it is non-conforming unless it has now been registered</em>.</d:message>    checker; <em>it is non-conforming unless it has now been
978      registered</em>.</d:message>
979    <d:desc xml:lang="en">    <d:desc xml:lang="en">
980      <p>The <code>rel</code> attribute is defined as a list of link types.      <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.      Some common link types are defined in the HTML5 specification.
# Line 217  m:URI::syntax error;must;This IRI is not Line 990  m:URI::syntax error;must;This IRI is not
990    </d:desc>    </d:desc>
991  </d:item>  </d:item>
992    
993    <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  </section>  </section>
1026    
1027    <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  <section id="license">  <section id="license">
1037  <h2>License of This Document</h2>  <h2>License of This Document</h2>
1038    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.7

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24