/[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.7 by wakaba, Sat Aug 11 13:54:55 2007 UTC revision 1.30 by wakaba, Fri Aug 15 12:11:56 2008 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="character-encoding-layer">
15    <h2>Character Encoding Layer Errors</h2>
16    
17    <d:item name="illegal-octets-error" class="error-category-charset" level="m">
18      <d:message xml:lang="en">An illegal octet in the input stream.</d:message>
19    </d:item>
20    </section>
21    
22    <section id="html5-character-encoding">
23    <h2>HTML5 Character Encoding Errors</h2>
24    
25    <d:item name="disallowed character encoding"
26        modules="ContentChecker">
27      <d:message xml:lang="en">Character encoding <code><var>{text}</var></code>
28      is not allowed for <abbr>HTML</abbr> document.</d:message>
29      <d:desc xml:lang="en">
30        <p>The character encoding used for the document is not allowed
31        for <abbr>HTML</abbr> document.  The document is non‐conforming.</p>
32      </d:desc>
33    </d:item>
34    
35    <d:item name="bad character encoding"
36        modules="ContentChecker">
37      <d:message xml:lang="en">Character encoding <code><var>{text}</var></code>
38      should not be used for <abbr>HTML</abbr> document.</d:message>
39      <d:desc xml:lang="en">
40        <p>The character encoding used for the document is not recommended
41        for <abbr>HTML</abbr> document.  The document is non‐conforming
42        unless there is any good reason to use that encoding.</p>
43      </d:desc>
44    </d:item>
45    
46    <d:item name="non-utf-8 character encoding"
47        modules="ContentChecker">
48      <d:message xml:lang="en">Use of UTF-8 is encouraged (this document
49      is encoded in <code><var>{text}</var></code>).</d:message>
50      <d:desc xml:lang="en">
51        <p>Use of UTF-8 as the character encoding of the document is encouraged,
52        though the use of another character encoding is still conforming.</p>
53      </d:desc>
54    </d:item>
55    
56    <d:item name="character encoding unchecked"
57        modules="ContentChecker">
58      <d:message xml:lang="en">Conformance for character encoding requirements
59      cannot be checked, since the input is not a byte stream.</d:message>
60      <d:desc xml:lang="en">
61        <p>The conformance checker cannot detect whether the input document
62        met the requirements on character encoding, since the document
63        is not inputed as a serialized byte sequence.  The document is
64        not conforming if it is not encoded in an appropriate character
65        encoding with appropriate labeling.</p>
66      </d:desc>
67    </d:item>
68    
69    <d:item name="no character encoding declaration"
70        modules="ContentChecker">
71      <d:message xml:lang="en">There is no character encoding
72      declaration.</d:message>
73      <d:desc xml:lang="en">
74        <p>The document does not contain a character encoding
75        declaration.  Unless the character encoding is explicitly
76        specified in lower‐level protocol, e.g. in <abbr>HTTP</abbr>,
77        or is implied by <abbr>BOM</abbr>, there must be a character
78        encoding declaration.  The document is non‐conforming.</p>
79    
80        <p>The long character encoding declaration syntax
81        <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"></code>
82        is obsolete.  The new syntax is:</p>
83        <pre class="html example"><code>&lt;meta charset="<var>charset-name</var>"></code></pre>
84    
85        <p>Note that the <code>encoding</code> declaration in <abbr>XML</abbr>
86        declaration has no effect for <abbr>HTML</abbr> document.</p>
87      </d:desc>
88    </d:item>
89    
90    <d:item name="non ascii superset"
91        modules="ContentChecker">
92      <d:message xml:lang="en">No character encoding metadata is found
93      in lower‐level protocol nor is there <abbr>BOM</abbr>, while
94      character encoding <code><var>{text}</var></code>
95      is not a superset of <abbr>ASCII</abbr>.</d:message>
96      <d:desc xml:lang="en">
97        <p>The document is not labeled with character encoding name
98        in lower‐level protocol, e.g. in <abbr>HTTP</abbr>, and
99        the document is not begin with <abbr>BOM</abbr>.  In addition,
100        the character encoding of the document is not a superset of
101        <abbr>ASCII</abbr>.  The document is non‐conforming.</p>
102    
103        <p>Unless there is a <abbr>BOM</abbr>, the character encoding
104        for the document must be specified in e.g. <abbr>HTTP</abbr>‐level,
105        as:</p>
106        <pre class="http example"><code>Content-Type: text/html; charset=<var>charset-name</var></code></pre>
107    
108        <p>Existence of <abbr>HTML</abbr> character encoding declaration, i.e.
109        <code class="html example">&lt;meta charset="<var>charset-name</var>"></code>,
110        does not allow to omit <code>charset</code> parameter
111        for <abbr>HTML</abbr> document encoded in non‐<abbr>ASCII</abbr>
112        compatible encoding.</p>
113    
114        <p>Character encodings <code>Shift_JIS</code>, <code>Windows-31J</code>,
115        and <code>ISO-2022-JP</code> are <em>not</em> a superset of
116        <abbr>ASCII</abbr> for the purpose of <abbr>HTML</abbr> conformance.</p>
117      </d:desc>
118    </d:item>
119    
120    <d:item name="sniffing:chardet"
121        modules="HTML::Parser">
122      <d:message xml:lang="en">Character encoding of this document is sniffed
123      as <code><var>{text}</var></code> (Sniffed because no explicit specification
124      for the character encoding of this document is found in the transfer
125      procotol headers).</d:message>
126    </d:item>
127    
128    <d:item name="sniffing:default"
129        modules="HTML::Parser">
130      <d:message xml:lang="en">Character encoding of this document is defaulted
131      to <code><var>{text}</var></code> because no explicit specification
132      for the character encoding of this document is found in the transfer
133      procotol headers.</d:message>
134    </d:item>
135    
136    <d:item name="chardecode:fallback"
137        modules="HTML::Parser">
138      <d:message xml:lang="en">Since no decoder for the document character
139      encoding is found, decoder for the character encoding
140      <code><var>{text}</var></code> is used.  Checking results might be
141      <em>wrong</em>.</d:message>
142    </d:item>
143    
144    <d:item name="chardecode:no error"
145        modules="HTML::Parser">
146      <d:message xml:lang="en">Conformance error checking for the character
147      encoding <code><var>{text}</var></code> is not supported.</d:message>
148    </d:item>
149    
150    <d:item name="charset label:matching"
151        modules="HTML::Parser">
152      <d:message xml:lang="en">Sniffed character encoding
153      <code><var>{text}</var></code> is same as the character encoding specified
154      in the character encoding declaration.  This is <em>not</em> an
155      error.</d:message>
156    </d:item>
157    
158    <d:item name="charset label detected"
159        class="format-charset warning"
160        modules="HTML::Parser">
161      <d:message xml:lang="en">While parsing the document as
162      <code><var>{text}</var></code>, a character encoding declaration specifying
163      a different character encoding is found.  The document
164      is reparsed.</d:message>
165      <d:desc xml:lang="en">
166        <p>While parsing a document in a character encoding,
167        a character encoding declaration which declares the character
168        encoding of the document as another character encoding is found.
169        The occurence of this warning itself does not make the document
170        non‐conforming.  However, the failure of the first attempt to
171        to detect the character encoding might be a result of non‐conformance
172        of the document.</p>
173    
174        <p>The document will be reparsed from the beginning.  Some error
175        or warning might be reported again.</p>
176    
177        <p>These are suggestions to avoid this warning:</p>
178        <ul>
179        <li>Specify <code>charset</code> parameter in the <code>Content-Type</code>
180        field in the <abbr>HTTP</abbr> header, as:
181        <pre class="HTTP example"><code>Content-Type: text/html; charset="<var>charset-name</var>"</code></pre></li>
182        <li>Put the character encoding declaration
183        (<code class="html example">&lt;meta charset="<var>charset-name</var>"></code>)
184        just after <code class="html example">&lt;head></code> start tag.</li>
185        <li>Use <code>UTF-8</code>.</li>
186        </ul>
187      </d:desc>
188    </d:item>
189    
190    <d:item name="NULL"
191        modules="HTML::Parser">
192      <d:message xml:lang="en">The <code class="charname">NULL</code> character
193      is not allowed.</d:message>
194    </d:item>
195    
196    <d:item name="control char"
197        modules="HTML::Parser">
198      <d:message xml:lang="en">Code point <code><var>{text}</var></code> is
199      not allowed.</d:message>
200    </d:item>
201    
202    </section>
203    
204  <section id="html5-tokenize-error">  <section id="html5-tokenize-error">
205  <h2>HTML5 Parse Errors in Tokenization Stage</h2>  <h2>HTML5 Parse Errors in Tokenization Stage</h2>
206    
# Line 43  Web Document Conformance Checker (BETA)< Line 233  Web Document Conformance Checker (BETA)<
233    </d:desc>    </d:desc>
234  </d:item>  </d:item>
235    
236    <d:item name="bad attribute name"
237        class="tokenize-error"
238        modules="HTML::Parser">
239      <d:message xml:lang="en">Attribute name cannot contain characters
240      <code>"</code>, <code>'</code>, and <code>=</code>.</d:message>
241    </d:item>
242    
243    <d:item name="bad attribute value"
244        class="tokenize-error"
245        modules="HTML::Parser">
246      <d:message xml:lang="en">Attribute value must be quoted by <code>"</code>
247      or <code>'</code> if it contains a <code>"</code>, <code>'</code>, or
248      <code>=</code> character.</d:message>
249    </d:item>
250    
251  <d:item name="bare ero"  <d:item name="bare ero"
252      class="tokenize-error">      class="tokenize-error"
253        modules="HTML::Parser">
254    <d:message xml:lang="en">The <code>&amp;</code> character must    <d:message xml:lang="en">The <code>&amp;</code> character must
255    introduce a reference.</d:message>    be escaped as <code class="html example">&amp;amp;</code>.</d:message>
256    <d:desc xml:lang="en">    <d:desc xml:lang="en">
257      <p>An <code>&amp;</code> (<code>U+0026</code>      <p>An <code>&amp;</code> character which
     <code class="charname">AMPERSAND</code>) character which  
258      is not part of any reference appears in the input stream.      is not part of any reference appears in the input stream.
259      The document is non-conforming.</p>      The document is non‐conforming.</p>
260    
261        <p><em>Any <code>&amp;</code> character in URI (or IRI)
262        must be escaped as <code class="example">&amp;amp;</code>.</em></p>
263    
264      <p>The <code>&amp;</code> character must      <p>The <code>&amp;</code> character must
265      be the first character of a reference:      be the first character of a reference:
266        <dl>        <dl class="switch">
267        <dt>Named entity reference</dt>        <dt>Named entity reference</dt>
268            <dd><pre class="html example"><code>&amp;<var>entity-name</var>;</code></pre>            <dd><pre class="html example"><code>&amp;<var>entity-name</var>;</code></pre>
269            where <var>entity-name</var> is the name of the            where <var>entity-name</var> is the name of the
# Line 79  Web Document Conformance Checker (BETA)< Line 287  Web Document Conformance Checker (BETA)<
287  </d:item>  </d:item>
288    
289  <d:item name="bare etago"  <d:item name="bare etago"
290      class="tokenize-error">      class="tokenize-error"
291        modules="HTML::Parser">
292    <d:message xml:lang="en">A <code>&lt;/</code> string is not followed    <d:message xml:lang="en">A <code>&lt;/</code> string is not followed
293    by a tag name.</d:message><!-- </ EOF -->    by a tag name.</d:message><!-- </ EOF -->
294    <d:desc xml:lang="en">    <d:desc xml:lang="en">
# Line 102  Web Document Conformance Checker (BETA)< Line 311  Web Document Conformance Checker (BETA)<
311  </d:item>  </d:item>
312    
313  <d:item name="bare stago"  <d:item name="bare stago"
314      class="tokenize-error">      class="tokenize-error"
315        modules="HTML::Parser">
316    <d:message xml:lang="en">A <code>&lt;</code> character is not followed    <d:message xml:lang="en">A <code>&lt;</code> character is not followed
317    by tag name or by a <code>!</code> character.</d:message>    by tag name or by a <code>!</code> character.</d:message>
318    <d:desc xml:lang="en">    <d:desc xml:lang="en">
# Line 118  Web Document Conformance Checker (BETA)< Line 328  Web Document Conformance Checker (BETA)<
328  </d:item>  </d:item>
329    
330  <d:item name="bare nero"  <d:item name="bare nero"
331      class="tokenize-error">      class="tokenize-error"
332        modules="HTML::Parser">
333    <d:message xml:lang="en">The decimal representation of the code position    <d:message xml:lang="en">The decimal representation of the code position
334    of a character must be specified after <code>&amp;#</code>.</d:message>    of a character must be specified after <code>&amp;#</code>.</d:message>
335    <d:desc xml:lang="en">    <d:desc xml:lang="en">
# Line 131  Web Document Conformance Checker (BETA)< Line 342  Web Document Conformance Checker (BETA)<
342    
343      <p>The string <code>&amp;#</code> must be the first two characters      <p>The string <code>&amp;#</code> must be the first two characters
344      of a reference:      of a reference:
345        <dl>        <dl class="switch">
346        <dt>Numeric character reference</dt>        <dt>Numeric character reference</dt>
347            <dd><pre class="html example"><code>&amp;#<var>d</var>;</code></pre>            <dd><pre class="html example"><code>&amp;#<var>d</var>;</code></pre>
348            where <var>d</var> is the decimal representation of            where <var>d</var> is the decimal representation of
# Line 151  Web Document Conformance Checker (BETA)< Line 362  Web Document Conformance Checker (BETA)<
362  </d:item>  </d:item>
363    
364  <d:item name="bare hcro"  <d:item name="bare hcro"
365      class="tokenize-error">      class="tokenize-error"
366        modules="HTML::Parser">
367    <d:message xml:lang="en">The hexadecimal representation of the code position    <d:message xml:lang="en">The hexadecimal representation of the code position
368    of a character must be specified after <code>&amp;#x</code>.</d:message>    of a character must be specified after <code>&amp;#x</code>.</d:message>
369    <d:desc xml:lang="en">    <d:desc xml:lang="en">
# Line 172  Web Document Conformance Checker (BETA)< Line 384  Web Document Conformance Checker (BETA)<
384    </d:desc>    </d:desc>
385  </d:item>  </d:item>
386    
387    <d:item name="bogus comment"
388        class="tokenize-error"
389        modules="HTML::Parser">
390      <d:message xml:lang="en">String <code>&lt;!</code> is not followed
391      by <code>--</code>.</d:message>
392      <d:desc xml:lang="en">
393        <p>There is a <code>&lt;</code> (<code>U+003C</code>
394        <code class="charname">LESS-THAN SIGN</code>) character
395        followed by a <code>!</code> (<code>U+0021</code>
396        <code class="charname">EXCLAMATION MARK</code>) character,
397        which is not followed by a <code>--</code> or
398        <code>!DOCTYPE</code>.  The document is non-conforming.</p>
399    
400        <dl class="switch">
401        <dt>Comments</dt>
402          <dd>In HTML document, comments must be introduced by
403          <code class="example">&lt;!--</code> (<code>&lt;!</code>
404          <em>immediately</em> followed
405          by <em>two</em> <code>-</code>s) and must be terminated by
406          <code class="example">--></code>.
407          Strings <code>&lt;!</code> not followed
408          by <code>--</code> and <code>&lt;!-</code> not followed by
409          <code>-</code> are not valid open delimiters for comments.</dd>
410        <dt>Marked sections, including <code>CDATA</code> sections</dt>
411          <dd>Marked sections are not allowed in HTML document.</dd>
412        <dt>Markup declarations</dt>
413          <dd>Markup declarations, except for <code>DOCTYPE</code>
414          and comment declarations, are not allowed in HTML document.</dd>
415        <dt>String <code>&lt;!</code></dt>
416          <dd>String <code>&lt;!</code> must be escaped as
417          <code class="example">&amp;lt;!</code>.</dd>
418        </dl>
419      </d:desc>
420    </d:item>
421    
422  <d:item name="bogus end tag"  <d:item name="bogus end tag"
423      class="tokenize-error">      class="tokenize-error"
424    <d:message xml:lang="en">A <code>&lt;/</code> string is not followed      modules="HTML::Parser">
425    by a tag name.</d:message><!-- </ non-name-start-char-non-EOF -->    <d:message xml:lang="en">String <code>&lt;/</code> is not followed
426      by tag name.</d:message><!-- </ non-name-start-char-non-EOF -->
427    <d:desc xml:lang="en">    <d:desc xml:lang="en">
428      <p>There is a <code>&lt;</code> (<code>U+003C</code>      <p>There is a <code>&lt;</code> (<code>U+003C</code>
429      <code class="charname">LESS-THAN SIGN</code>) character      <code class="charname">LESS-THAN SIGN</code>) character
# Line 194  Web Document Conformance Checker (BETA)< Line 442  Web Document Conformance Checker (BETA)<
442    </d:desc>    </d:desc>
443  </d:item>  </d:item>
444    
445    <d:item name="C1 character reference"
446        class="tokenize-error"
447        modules="HTML::Parser">
448      <d:message xml:lang="en">Character reference to
449      <code><var>{text}</var></code> is not allowed.</d:message>
450    </d:item>
451    
452    <d:item name="CR character reference"
453        class="tokenize-error"
454        modules="HTML::Parser">
455      <d:message xml:lang="en">Character reference to
456      <code>U+000D</code> (<code class="charname">CARRIAGE RETURN</code>)
457      is not allowed.</d:message>
458    </d:item>
459    
460  <d:item name="dash in comment"  <d:item name="dash in comment"
461      class="tokenize-error">      class="tokenize-error"
462        modules="HTML::Parser">
463    <d:message xml:lang="en">There is a <code>--</code> sequence    <d:message xml:lang="en">There is a <code>--</code> sequence
464    in a comment.</d:message>    in a comment.</d:message>
465    <d:desc xml:lang="en">    <d:desc xml:lang="en">
# Line 212  Web Document Conformance Checker (BETA)< Line 476  Web Document Conformance Checker (BETA)<
476  </d:item>  </d:item>
477    
478  <d:item name="duplicate attribute"  <d:item name="duplicate attribute"
479      class="tokenize-error">      class="tokenize-error"
480        modules="HTML::Parser">
481    <d:message xml:lang="en">There are two attributes with name    <d:message xml:lang="en">There are two attributes with name
482        <code><var>$0</var></code>.</d:message>        <code><var>{text}</var></code>.</d:message>
483    <d:desc xml:lang="en">    <d:desc xml:lang="en">
484      <p>There are more than one attributes with the same      <p>There are more than one attributes with the same
485      name in a tag.  The document is non-conforming.</p>      name in a tag.  The document is non-conforming.</p>
# Line 224  Web Document Conformance Checker (BETA)< Line 489  Web Document Conformance Checker (BETA)<
489    </d:desc>    </d:desc>
490  </d:item>  </d:item>
491    
492    <d:item name="empty start tag"
493        class="tokenize-error"
494        modules="HTML::Parser">
495      <d:message xml:lang="en">Empty start tag (<code>&lt;></code>) is not
496      allowed.</d:message>
497    </d:item>
498    
499    <d:item name="empty end tag"
500        class="tokenize-error"
501        modules="HTML::Parser">
502      <d:message xml:lang="en">Empty end tag (<code>&lt;/></code>) is not
503      allowed.</d:message>
504    </d:item>
505    
506    <d:item name="end tag attribute"
507        class="tokenize-error"
508        modules="HTML::Parser">
509      <d:message xml:lang="en">End tag cannot have attributes.</d:message>
510    </d:item>
511    
512    <d:item name="invalid character reference"
513        class="tokenize-error"
514        modules="HTML::Parser">
515      <d:message xml:lang="en">Character reference to
516      <code><var>{text}</var></code> is not allowed.</d:message>
517    </d:item>
518    
519  <d:item name="nestc"  <d:item name="nestc"
520      class="tokenize-error">      class="tokenize-error"
521    <d:message xml:lang="en">Void element syntax (<code>/></code>) cannot be      modules="HTML::Parser">
522      <d:message xml:lang="en">Polytheistic slash (<code>/></code>) cannot be
523    used for this element.</d:message>    used for this element.</d:message>
524    <d:desc xml:lang="en">    <d:desc xml:lang="en">
525      <p>Void element syntax (<code>/></code>) must not be used      <p>Polytheistic slash (<code>/></code>) must not be used
526      for the element.  The document is non-conforming.</p>      for the element.  The document is non-conforming.</p>
527    
528      <p>The void element syntax can only be      <p>The polytheistic slash can only be
529      used for <code>base</code>, <code>link</code>, <code>meta</code>,      used for <code>base</code>, <code>link</code>, <code>meta</code>,
530      <code>hr</code>, <code>br</code>, <code>img</code>,      <code>hr</code>, <code>br</code>, <code>img</code>,
531      <code>embed</code>, <code>param</code>, <code>area</code>,      <code>embed</code>, <code>param</code>, <code>area</code>,
532      <code>col</code>, and <code>input</code> elements.</p>      <code>col</code>, and <code>input</code> elements.</p>
533    
534      <p>Note that, unlike in XML, the void element syntax has      <dl class="switch">
535        <dt><code>&lt;script/></code></dt>
536            <dd><p>The polytheistic slash cannot be used for <code>script</code>
537            element.  Even for an empty <code>script</code> element,
538            there must be an explicit end tag
539            <code class="html example">&lt;/script></code>.</p>
540    
541            <p><strong>NOTE</strong>: Though some user agents interpret
542            polytheistic slash for <code>script</code> element as the
543            closing of the element, such usage is not allowed under
544            the current standard.</p></dd>
545        <dt><code>&lt;basefont/></code>, <code>&lt;bgsound/></code>,
546        <code>&lt;frame/></code>, <code>&lt;keygen/></code>,
547        <code>&lt;spacer/></code>, <code>&lt;wbr/></code></dt>
548            <dd>These elements are themselves non-conforming.</dd>
549        <!-- isindex, image -->
550        <dt><code>&lt;command/></code>, <code>&lt;event-source/></code>,
551        <code>&lt;nest/></code>, or <code>&lt;source/></code></dt>
552            <dd>Future revision of HTML5 parsing algorithm is expected
553            to allow polytheistic slash for these elements.</dd>
554        <dt><code>&lt;a/></code>, <code>&lt;p/></code></dt>
555            <dd>These elements are not always empty and therefore
556            polytheistic slash is not allowed.  Use explicit end tag
557            to represent empty element as:
558              <pre class="example html"><code>&lt;p>&lt;/p></code></pre>
559            </dd>
560        </dl>
561    
562        <p>Note that, unlike in XML, the polytheistic slash has
563      no effect in HTML.</p>      no effect in HTML.</p>
564    </d:desc>    </d:desc>
565  </d:item>  </d:item>
566    
567    <d:item name="no DOCTYPE name"
568        class="tokenize-error"
569        modules="HTML::Parser">
570      <d:message xml:lang="en">After the string <code>&lt;!DOCTYPE </code>, the
571      document type name must be specified.</d:message>
572    </d:item>
573    
574    <d:item name="no PUBLIC literal"
575        class="tokenize-error"
576        modules="HTML::Parser">
577      <d:message xml:lang="en">After the keyword <code>PUBLIC</code>, no
578      oublic identifier is specified.</d:message>
579    </d:item>
580    
581    <d:item name="no refc"
582        class="tokenize-error"
583        modules="HTML::Parser">
584      <d:message xml:lang="en">Character reference must be closed by a
585      <code>;</code> character.</d:message>
586    </d:item>
587    
588    <d:item name="no space before DOCTYPE name"
589        class="tokenize-error"
590        modules="HTML::Parser">
591      <d:message xml:lang="en">After the string <code>&lt;!DOCTYPE</code>, there
592      must be at least a white space character before the document type
593      name.</d:message>
594    </d:item>
595    
596    <d:item name="no space between attributes"
597        class="tokenize-error"
598        modules="HTML::Parser">
599      <d:message xml:lang="en">Attributes must be separeted by at least a
600      white space character.</d:message>
601    </d:item>
602    
603    <d:item name="no SYSTEM literal"
604        class="tokenize-error"
605        modules="HTML::Parser">
606      <d:message xml:lang="en">After the keyword <code>SYSTEM</code>, no
607      system identifier is specified.</d:message>
608    </d:item>
609    
610  <d:item name="pio"  <d:item name="pio"
611      class="tokenize-error">      class="tokenize-error"
612        modules="HTML::Parser">
613    <d:message xml:lang="en">Processing instruction    <d:message xml:lang="en">Processing instruction
614    (<code>&lt;?<var>...</var>?></code>) cannot be used.</d:message>    (<code>&lt;?<var>...</var>></code>) is not allowed in HTML
615      document.</d:message>
616    <d:desc xml:lang="en">    <d:desc xml:lang="en">
617      <p>Processing instructions (<code>&lt;?<var>...</var>?></code>),      <p>Processing instructions (<code>&lt;?<var>...</var>?></code>),
618      including XML declaration (<code>&lt;?xml <var>...</var>?></code>)      including XML declaration (<code>&lt;?xml <var>...</var>?></code>)
619      and XML style sheet <abbr title="processing instruction">PI</abbr>      and XML style sheet <abbr title="processing instruction">PI</abbr>
620      (<code>&lt;xml-stylesheet <var>...</var>?></code>), are not allowed      (<code>&lt;?xml-stylesheet <var>...</var>?></code>), are not allowed
621      in the HTML syntax.  The document is non-conforming.</p>      in the HTML syntax.  The document is non-conforming.</p>
622    
623      <p>If it is necessary to embed a processing instruction      <dl class="switch">
624      in the HTML document, you must use the XML syntax instead.</p>      <dt><code>&lt;?xbl?></code> (<abbr>XBL</abbr> Association)</dt>
625          <dd>An <abbr>XBL</abbr> binding cannot be associated by
626      <p>In the HTML syntax, XML declaration is not necessary.</p>        <abbr title="processing instruction">PI</abbr> in <abbr>HTML</abbr>
627          document.  Use <code>binding</code> property in <abbr>CSS</abbr>
628      <p>Instead of XML style sheet,        style sheet as:
629      <abbr title="processing instruction">PI</abbr>s, you must          <pre class="html example"><code>&lt;style>
630      use the HTML <code>link</code> element whose <code>rel</code>  p {
631      attribute is set to <code>stylesheet</code> (or    binding: url(binding.xbl);
632      <code>alternate stylesheet</code> for an aleternate style sheet).</p>  }
633    &lt;/style></code></pre>
634          </dd>
635        <dt><code>&lt;?xml?&gt;</code> (XML declaration)</dt>
636            <dd>XML declaration is unnecessary for HTML documents.</dd>
637        <dt><code>&lt;?xml-stylesheet?></code> (XML style sheet
638        <abbr title="processing instruction">PI</abbr>)</dt>
639            <dd>Use HTML <code>link</code> element with <code>rel</code>
640            attribute set to <code>stylesheet</code> (or,
641            <code>alternate stylesheet</code> for an alternate style
642            sheet).
643              <pre class="example html"><code>&lt;link rel=stylesheet href="path/to/stylesheet.css"></code></pre>
644            </dd>
645        <dt><code>&lt;?php?&gt;</code> or
646        <code>&lt;? <var>... <abbr>PHP</abbr> code ...</var> ?&gt;</code>
647        (<abbr>PHP</abbr> code)</dt>
648            <dd>The conformance checker does <em>not</em> support
649            checking for PHP source documents.</dd>
650        <dt>Other processing instructions</dt>
651            <dd>Processing instructions cannot be inserted in an HTML
652            document.  Use XML document or insert
653            <code>ProcessingInstruction</code> node by scripting.</dd>
654        </dl>
655    
656      <p>Web browsers will parse processing instructions as bogus      <p>Web browsers will parse processing instructions as bogus
657      comments.  Some legacy Web browsers, such as IE:mac and      comments.  Some legacy Web browsers, such as IE:mac and
658      some mobile browsers, will display processing instructions      some mobile Web browsers, will display processing instructions
659      as string.</p>      as string.</p>
660    </d:desc>    </d:desc>
661  </d:item>  </d:item>
662    
663    <d:item name="string after DOCTYPE name"
664        class="tokenize-error"
665        modules="HTML::Parser">
666      <d:message xml:lang="en">There is a bogus string after the document type
667      name.</d:message>
668    </d:item>
669    
670    <d:item name="string after PUBLIC"
671        class="tokenize-error"
672        modules="HTML::Parser">
673      <d:message xml:lang="en">There is a bogus string after the keyword
674      <code>PUBLIC</code>.</d:message>
675    </d:item>
676    
677    <d:item name="string after PUBLIC literal"
678        class="tokenize-error"
679        modules="HTML::Parser">
680      <d:message xml:lang="en">There is a bogus string after the public
681      identifier.</d:message>
682    </d:item>
683    
684    <d:item name="string after SYSTEM"
685        class="tokenize-error"
686        modules="HTML::Parser">
687      <d:message xml:lang="en">There is a bogus string after the keyword
688      <code>SYSTEM</code>.</d:message>
689    </d:item>
690    
691    <d:item name="string after SYSTEM literal"
692        class="tokenize-error"
693        modules="HTML::Parser">
694      <d:message xml:lang="en">There is a bogus string after the system
695      identifier.</d:message>
696    </d:item>
697    
698    <d:item name="unclosed attribute value"
699        class="tokenize-error"
700        modules="HTML::Parser">
701      <d:message xml:lang="en">Attribute value is not closed by a quotation
702      mark.</d:message>
703    </d:item>
704    
705    <d:item name="unclosed comment"
706        class="tokenize-error"
707        modules="HTML::Parser">
708      <d:message xml:lang="en">Comment is not closed by a string
709      <code>--></code>.</d:message>
710    </d:item>
711    
712    <d:item name="unclosed DOCTYPE"
713        class="tokenize-error"
714        modules="HTML::Parser">
715      <d:message xml:lang="en">The <code>DOCTYPE</code> is not closed by a
716      <code>></code> character.</d:message>
717    </d:item>
718    
719    <d:item name="unclosed PUBLIC literal"
720        class="tokenize-error"
721        modules="HTML::Parser">
722      <d:message xml:lang="en">The public identifier literal is not closed by a
723      quotation mark.</d:message>
724    </d:item>
725    
726    <d:item name="unclosed SYSTEM literal"
727        class="tokenize-error"
728        modules="HTML::Parser">
729      <d:message xml:lang="en">The system identifier literal is not closed by a
730      quotation mark.</d:message>
731    </d:item>
732    
733    <d:item name="unclosed tag"
734        class="tokenize-error"
735        modules="HTML::Parser">
736      <d:message xml:lang="en">Tag is not closed by a <code>></code>
737      character.</d:message>
738    </d:item>
739    
740  </section>  </section>
741    
742  <section id="html5-parse-errors">  <section id="html5-parse-errors">
743  <h2>HTML5 Parse Errors in Tree Construction Stage</h2>  <h2>HTML5 Parse Errors in Tree Construction Stage</h2>
744    
745    <d:item name="after body"
746        class="parse-error"
747        modules="HTML::Parser">
748      <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>></code> is
749      not allowed after the <code>body</code> is closed.</d:message>
750    </d:item>
751    
752    <d:item name="after body:/"
753        class="parse-error"
754        modules="HTML::Parser">
755      <d:message xml:lang="en">End tag <code>&lt;/<var>{text}</var>></code> is
756      not allowed after the <code>body</code> is closed.</d:message>
757    </d:item>
758    
759    <d:item name="after body:#text"
760        class="parse-error"
761        modules="HTML::Parser">
762      <d:message xml:lang="en">Non‐white‐space characters are not allowed
763      after the <code>body</code> is closed.</d:message>
764    </d:item>
765    
766    <d:item name="after frameset"
767        class="parse-error"
768        modules="HTML::Parser">
769      <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>></code> is
770      not allowed after the <code>frameset</code> is closed.</d:message>
771    </d:item>
772    
773    <d:item name="after frameset:/"
774        class="parse-error"
775        modules="HTML::Parser">
776      <d:message xml:lang="en">End tag <code>&lt;/<var>{text}</var>></code> is
777      not allowed after the <code>frameset</code> is closed.</d:message>
778    </d:item>
779    
780    <d:item name="after frameset:#text"
781        class="parse-error"
782        modules="HTML::Parser">
783      <d:message xml:lang="en">Non‐white‐space characters are not allowed
784      after the <code>frame</code> is closed.</d:message>
785    </d:item>
786    
787  <d:item name="after head"  <d:item name="after head"
788      class="parse-error">      class="parse-error">
789    <d:message xml:lang="en">The <code><var>$0</var></code> element cannot be    <d:message xml:lang="en">The <code><var>{text}</var></code> element cannot be
790    inserted between <code>head</code> and <code>body</code> elements.</d:message>    inserted between <code>head</code> and <code>body</code>
791      elements.</d:message>
792    <d:desc xml:lang="en">    <d:desc xml:lang="en">
793      <p>A start tag appears after the <code>head</code> element is closed      <p>A start tag appears after the <code>head</code> element is closed
794      but before the <code>body</code> element is opened.      but before the <code>body</code> element is opened.
# Line 289  Web Document Conformance Checker (BETA)< Line 796  Web Document Conformance Checker (BETA)<
796    </d:desc>    </d:desc>
797  </d:item>  </d:item>
798    
799  <d:item name="DOCTYPE in the middle"  <d:item name="after html"
800      class="parse-error">      class="parse-error"
801    <d:message xml:lang="en">A <code>DOCTYPE</code> appears after any      modules="HTML::Parser">
802    element or data character has been seen.</d:message>    <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>></code> is
803    <d:desc xml:lang="en">    not allowed after the <code>html</code> is closed.</d:message>
804      <p>A <code>DOCTYPE</code> appears after any element or data character  </d:item>
805      has been seen.  The document is non-conforming.</p>  
806        <d:item name="after html:/"
807      <p>The <code>DOCTYPE</code> must be placed before any      class="parse-error"
808      tag, reference, or data character.  Only white space characters      modules="HTML::Parser">
809      and comments can be inserted before the <code>DOCTYPE</code>.</p>    <d:message xml:lang="en">End tag <code>&lt;/<var>{text}</var>></code> is
810    </d:desc>    not allowed after the <code>html</code> is closed.</d:message>
811    </d:item>
812    
813    <d:item name="after html:#text"
814        class="parse-error"
815        modules="HTML::Parser">
816      <d:message xml:lang="en">Non‐white‐space characters are not allowed
817      after the <code>html</code> is closed.</d:message>
818    </d:item>
819    
820    <d:item name="image"
821        class="parse-error"
822        modules="HTML::Parser">
823      <d:message xml:lang="en">The <code>image</code> element is
824      obsolete.</d:message>
825  </d:item>  </d:item>
826    
827  <d:item name="in a:a"  <d:item name="in a:a"
828      class="parse-error">      class="parse-error"
829        modules="HTML::Parser">
830    <d:message xml:lang="en">Anchor cannot be nested.</d:message>    <d:message xml:lang="en">Anchor cannot be nested.</d:message>
831    <d:desc xml:lang="en">    <d:desc xml:lang="en">
832      <p>HTML <code>a</code> elements cannot be nested.      <p>HTML <code>a</code> elements cannot be nested.
# Line 316  Web Document Conformance Checker (BETA)< Line 838  Web Document Conformance Checker (BETA)<
838  </d:item>  </d:item>
839    
840  <d:item name="in body"  <d:item name="in body"
841      class="parse-error">      class="parse-error"
842    <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>      modules="HTML::Parser">
843    is not allowed in a <code>body</code> element.</d:message>    <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>&gt;</code>
844      is not allowed in the <code>body</code> element.</d:message>
845    <d:desc xml:lang="en">    <d:desc xml:lang="en">
846      <p>The start or end tag of an element, which      <p>The start or end tag of an element, which
847      cannot be a descendant of <code>body</code> element, appears      cannot be a descendant of <code>body</code> element, appears
# Line 327  Web Document Conformance Checker (BETA)< Line 850  Web Document Conformance Checker (BETA)<
850    </d:desc>    </d:desc>
851  </d:item>  </d:item>
852    
853    <d:item name="in body:#eof"
854        class="parse-error"
855        modules="HTML::Parser">
856      <d:message xml:lang="en">Some element is not closed before the end of
857      file.</d:message>
858    </d:item>
859    
860    <d:item name="in button:button"
861        class="parse-error"
862        modules="HTML::Parser">
863      <d:message xml:lang="en">The <code>button</code> element cannot be
864      nested.</d:message>
865    </d:item>
866    
867    <d:item name="in CDATA:#eof"
868        class="parse-error"
869        modules="HTML::Parser">
870      <d:message xml:lang="en">Element is not closed before the end of
871      file.</d:message>
872    </d:item>
873    
874    <d:item name="in form:form"
875        class="parse-error"
876        modules="HTML::Parser">
877      <d:message xml:lang="en">Start tag <code>&lt;form></code> is
878      not allowed in a <code>form</code> element.</d:message>
879    </d:item>
880    
881    <d:item name="in frameset"
882        class="parse-error"
883        modules="HTML::Parser">
884      <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>></code> is
885      not allowed in a <code>framset</code> element.</d:message>
886    </d:item>
887    
888    <d:item name="in frameset:/"
889        class="parse-error"
890        modules="HTML::Parser">
891      <d:message xml:lang="en">End tag <code>&lt;/<var>{text}</var>></code> is
892      not allowed in a <code>frameset</code> element.</d:message>
893    </d:item>
894    
895    <d:item name="in frameset:#text"
896        class="parse-error"
897        modules="HTML::Parser">
898      <d:message xml:lang="en">Non‐white‐space characters are not allowed
899      in a <code>frameset</code> element.</d:message>
900    </d:item>
901    
902  <d:item name="in head:head"  <d:item name="in head:head"
903      class="parse-error">      class="parse-error"
904    <d:message xml:lang="en">Start tag <code>&lt;<var>head</var>&gt;</code>      modules="HTML::Parser">
905      <d:message xml:lang="en">Start tag <code>&lt;head&gt;</code>
906    is not allowed in the <code>head</code> element.</d:message>    is not allowed in the <code>head</code> element.</d:message>
907    <d:desc xml:lang="en">    <d:desc xml:lang="en">
908      <p>There is a start tag <code>&lt;head></code> in the      <p>There is a start tag <code>&lt;head></code> in the
# Line 341  Web Document Conformance Checker (BETA)< Line 914  Web Document Conformance Checker (BETA)<
914    </d:desc>    </d:desc>
915  </d:item>  </d:item>
916    
917    <d:item name="in html:#DOCTYPE"
918        class="parse-error"
919        modules="HTML::Parser">
920      <d:message xml:lang="en">A <code>DOCTYPE</code> appears after any
921      element or data character has been seen.</d:message>
922      <!-- <!DOCTYPE HTML><!DOCTYPE HTML> -->
923      <!-- <html><!DOCTYPE HTML> -->
924      <d:desc xml:lang="en">
925        <p>A <code>DOCTYPE</code> appears after any element or data character
926        has been seen.  The document is non-conforming.</p>
927        
928        <p>The <code>DOCTYPE</code> must be placed before any
929        tag, reference, or data character.  Only white space characters
930        and comments can be inserted before the <code>DOCTYPE</code>.</p>
931      </d:desc>
932    </d:item>
933    
934    <d:item name="in nobr:nobr"
935        class="parse-error"
936        modules="HTML::Parser">
937      <d:message xml:lang="en">The <code>nobr</code> element cannot be
938      nested.</d:message>
939    </d:item>
940    
941    <d:item name="in noscript"
942        class="parse-error"
943        modules="HTML::Parser">
944      <d:message xml:lang="en">The <code><var>{text}</var></code> element is not
945      allowed in a <code>noscript</code> element in the
946      <code>head</code> element.</d:message>
947    </d:item>
948    
949    <d:item name="in noscript:/"
950        class="parse-error"
951        modules="HTML::Parser">
952      <d:message xml:lang="en">An end tag <code>&lt;/<var>{text}</var>></code>
953      appers before the <code>noscript</code> element is closed.</d:message>
954    </d:item>
955    
956    <d:item name="in noscript:#eof"
957        class="parse-error"
958        modules="HTML::Parser">
959      <d:message xml:lang="en">A <code>noscript</code> element is not closed
960      before the end of file.</d:message>
961    </d:item>
962    
963    <d:item name="in noscript:#text"
964        class="parse-error"
965        modules="HTML::Parser">
966      <d:message xml:lang="en">Non‐white‐space characters are not allowed
967      in a <code>noscript</code> element in the <code>head</code>
968      element.</d:message>
969    </d:item>
970    
971    <d:item name="in PCDATA:#eof"
972        class="parse-error"
973        modules="HTML::Parser">
974      <d:message xml:lang="en">Element is not closed before the end of
975      file.</d:message>
976    </d:item>
977    
978    <d:item name="in select"
979        class="parse-error"
980        modules="HTML::Parser">
981      <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>&gt;</code>
982      is not allowed in a <code>select</code> element.</d:message>
983    </d:item>
984    
985    <d:item name="in select:/"
986        class="parse-error"
987        modules="HTML::Parser">
988      <d:message xml:lang="en">End tag <code>&lt;/<var>{text}</var>&gt;</code>
989      is not allowed in a <code>select</code> element.</d:message>
990    </d:item>
991    
992  <d:item name="in table"  <d:item name="in table"
993      class="parse-error">      class="parse-error"
994    <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>      modules="HTML::Parser">
995      <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>&gt;</code>
996    is not allowed in a <code>table</code> element.</d:message>    is not allowed in a <code>table</code> element.</d:message>
997    <d:desc xml:lang="en">    <d:desc xml:lang="en">
998      <p>The start or end tag of an element, which      <p>The start or end tag of an element, which
# Line 359  Web Document Conformance Checker (BETA)< Line 1008  Web Document Conformance Checker (BETA)<
1008    </d:desc>    </d:desc>
1009  </d:item>  </d:item>
1010    
1011  <d:item name="in table:#character"  <d:item name="in table:/"
1012      class="parse-error">      class="parse-error"
1013    <d:message xml:lang="en">Data character is not allowed in      modules="HTML::Parser">
1014    <code>table</code>.</d:message>    <d:message xml:lang="en">End tag <code>&lt;/<var>{text}</var>&gt;</code>
1015      is not allowed in a <code>table</code> element.</d:message>
1016    </d:item>
1017    
1018    <d:item name="in table:#text"
1019        class="parse-error"
1020        modules="HTML::Parser">
1021      <d:message xml:lang="en">Non‐white‐space character is not allowed within
1022      the <code>table</code> element, outside of the caption and cells.</d:message>
1023    <d:desc xml:lang="en">    <d:desc xml:lang="en">
1024      <p>A data character appears in <code>table</code>.  The document      <p>A non‐white‐space character appears in <code>table</code>.
1025      is non-conforming.</p>      The document is non-conforming.</p>
1026    
1027      <p>In <code>table</code>, only table related elements      <p>In <code>table</code>, only table related elements
1028      are allowed; any other element and data character must be contained in      are allowed; any other element and data character must be contained in
# Line 375  Web Document Conformance Checker (BETA)< Line 1032  Web Document Conformance Checker (BETA)<
1032    </d:desc>    </d:desc>
1033  </d:item>  </d:item>
1034    
1035    <d:item name="isindex"
1036        class="parse-error"
1037        modules="HTML::Parser">
1038      <d:message xml:lang="en">The <code>isindex</code> element is
1039      obsolete.</d:message>
1040    </d:item>
1041    
1042  <d:item name="missing start tag:tr"  <d:item name="missing start tag:tr"
1043      class="parse-error">      class="parse-error"
1044        modules="HTML::Parser">
1045    <d:message xml:lang="en">Start tag of <code>tr</code>    <d:message xml:lang="en">Start tag of <code>tr</code>
1046    element is missing.</d:message>    element is missing.</d:message>
1047    <d:desc>    <d:desc>
# Line 392  Web Document Conformance Checker (BETA)< Line 1057  Web Document Conformance Checker (BETA)<
1057  </d:item>  </d:item>
1058    
1059  <d:item name="no DOCTYPE"  <d:item name="no DOCTYPE"
1060      class="parse-error">      class="parse-error"
1061        modules="HTML::Parser">
1062    <d:message xml:lang="en">This document does not start with a    <d:message xml:lang="en">This document does not start with a
1063    <code>DOCTYPE</code>.</d:message>    <code>DOCTYPE</code>.</d:message>
1064    <d:desc>    <d:desc>
# Line 404  Web Document Conformance Checker (BETA)< Line 1070  Web Document Conformance Checker (BETA)<
1070      </p>      </p>
1071    
1072      <p>Only white space characters and comments are allowed      <p>Only white space characters and comments are allowed
1073      before the <code>DOCTYPE</code>.</p>      before the <code>DOCTYPE</code>.  XML declaration is <em>not</em>
1074        allowed in HTML document.</p>
1075    </d:desc>    </d:desc>
1076  </d:item>  </d:item>
1077    
1078  <d:item name="not closed"  <d:item name="not closed"
1079      class="parse-error">      class="parse-error"
1080    <d:message xml:lang="en">Element <code><var>$0</var></code> is not      modules="HTML::Parser">
1081      <d:message xml:lang="en">Element <code><var>{text}</var></code> is not
1082    closed.</d:message>    closed.</d:message>
1083    <d:desc>    <d:desc>
1084      <p>End tag of an element is not found before, for example,      <p>End tag of an element is not found before, for example,
1085      an end tag of another element appears or      an end tag of another element appears or
1086      the end of the document.  The document is non-conforming.</p>      the end of the document.  The document is non-conforming.</p>
1087    
1088        <p>Only <code>body</code>, <code>colgroup</code>, <code>dd</code>,
1089        <code>dt</code>, <code>head</code>, <code>html</code>, <code>li</code>,
1090        <code>ol</code>, <code>option</code>, <code>optgroup</code>,
1091        <code>p</code>, <code>rb</code>, <code>rp</code>, <code>rt</code>,
1092        <code>tbody</code>, <code>td</code>, <code>tfoot</code>,
1093        <code>th</code>, <code>thead</code>, <code>tr</code>,
1094        <code>ul</code> end tag can be omitted in HTML documents.
1095        For any element except for void element, there must be an explicit
1096        end tag.</p>
1097    
1098        <dl class="switch">
1099        <dt>HTML <code>canvas</code> element</dt>
1100          <dd>Though the element is void in earlier versions of Safari,
1101          the <code>canvas</code> element is <em>no</em> longer
1102          defined as empty.  There must be an end tag
1103          <code class="html example">&lt;/canvas></code>.</dd>
1104        </dl>
1105    
1106        <p>Note that misnesting tags, such as
1107        <code class="bad example">&lt;a>&lt;b>&lt;/a>&lt;/b></code>, are not
1108        allowed and they also cause this error.</p>
1109    </d:desc>    </d:desc>
1110  </d:item>  </d:item>
1111    
1112  <d:item name="not first start tag"  <d:item name="not first start tag"
1113      class="parse-error">      class="parse-error"
1114        modules="HTML::Parser">
1115    <d:message xml:lang="en">This <code>&lt;html></code> tag is not    <d:message xml:lang="en">This <code>&lt;html></code> tag is not
1116    the first start tag.</d:message>    the first start tag.</d:message>
1117    <d:desc>    <d:desc>
# Line 438  Web Document Conformance Checker (BETA)< Line 1129  Web Document Conformance Checker (BETA)<
1129  </d:item>  </d:item>
1130    
1131  <d:item name="not HTML5"  <d:item name="not HTML5"
1132      class="parse-error">      class="parse-error"
1133        modules="HTML::Parser">
1134    <d:message xml:lang="en">This document is written in an old version of    <d:message xml:lang="en">This document is written in an old version of
1135    HTML.</d:message>    HTML.</d:message>
1136    <d:desc xml:lang="en">    <d:desc xml:lang="en">
1137      <p>The document contains a <code>DOCTYPE</code> declaration      <p>The document contains a <code>DOCTYPE</code> declaration
1138      that is different from HTML5 <code>DOCTYPE</code> (i.e.      that is different from HTML5 <code>DOCTYPE</code> (i.e.
1139      <code>&lt;!DOCTYPE HTML&gt;</code>).  The document is non-conforming.</p>      <code class="example html">&lt;!DOCTYPE HTML&gt;</code>).
1140        The document is non‐conforming.</p>
1141    
1142      <p>The document might or might not be conformant to      <p>The document might or might not be conformant to
1143      some version of HTML.  However, conformance to any HTML      some version of HTML.  However, conformance to any HTML
# Line 454  Web Document Conformance Checker (BETA)< Line 1147  Web Document Conformance Checker (BETA)<
1147    </d:desc>    </d:desc>
1148  </d:item>  </d:item>
1149    
1150    <d:item name="start tag not allowed"
1151        class="parse-error"
1152        modules="HTML::Parser">
1153      <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>></code> is
1154      not allowed here.</d:message>
1155    </d:item>
1156    
1157  <d:item name="unmatched end tag"  <d:item name="unmatched end tag"
1158      class="parse-error">      class="parse-error"
1159    <d:message xml:lang="en">Element <code><var>$0</var></code> is not      modules="HTML::Parser">
1160      <d:message xml:lang="en">Element <code><var>{text}</var></code> is not
1161    opened.</d:message>    opened.</d:message>
1162    <d:desc>    <d:desc>
1163      <p>An end tag appears though no element with the same name      <p>An end tag appears though no element with the same name
# Line 464  Web Document Conformance Checker (BETA)< Line 1165  Web Document Conformance Checker (BETA)<
1165    
1166      <p>For any end tag in HTML document, there must be a      <p>For any end tag in HTML document, there must be a
1167      corresponding start tag.</p>      corresponding start tag.</p>
1168    
1169        <dl class="switch">
1170        <dt>HTML <code>base</code>, <code>basefont</code>,
1171        <code>bgsound</code>, <code>br</code>, <code>col</code>,
1172        <code>embed</code>, <code>frame</code>, <code>hr</code>,
1173        <code>image</code>, <code>img</code>, <code>input</code>,
1174        <code>isindex</code>, <code>link</code>, <code>meta</code>,
1175        <code>param</code>, <code>spacer</code>, or <code>wbr</code> element</dt>
1176          <dd>End tag is not allowed for these elements, since
1177          those content must always be empty.  Remove end tag.</dd>
1178        <!-- keygen -->
1179        <!-- command, event-source, nest, source -->
1180        </dl>
1181    </d:desc>    </d:desc>
1182  </d:item>  </d:item>
1183    
# Line 472  Web Document Conformance Checker (BETA)< Line 1186  Web Document Conformance Checker (BETA)<
1186  <section id="element-content-model-errors">  <section id="element-content-model-errors">
1187  <h2>Element Content Model Errors</h2>  <h2>Element Content Model Errors</h2>
1188    
1189    <d:item name="basehref after URL attribute"
1190        modules="ContentChecker::HTML">
1191      <d:message xml:lang="en">The <code>base</code> element with the
1192      <code>href</code> attribute specified cannot be placed after
1193      any attribute with a URL.</d:message>
1194    </d:item>
1195    
1196    <d:item name="basetarget after hyperlink"
1197        modules="ContentChecker::HTML">
1198      <d:message xml:lang="en">The <code>base</code> element with the
1199      <code>target</code> attribute specified cannot be placed after
1200      any element that defines a hyperlink.</d:message>
1201    </d:item>
1202    
1203  <d:item name="character not allowed"  <d:item name="character not allowed"
1204      class="content-model-error">      modules="ContentChecker::HTML">
1205    <d:message xml:lang="en">Data character is not allowed in this    <d:message xml:lang="en">Data character is not allowed in this
1206    context.</d:message>    context.</d:message>
1207    <d:desc xml:lang="en">    <d:desc xml:lang="en">
# Line 499  Web Document Conformance Checker (BETA)< Line 1227  Web Document Conformance Checker (BETA)<
1227    </d:desc>    </d:desc>
1228  </d:item>  </d:item>
1229    
1230    <d:item name="character not allowed:empty"
1231        modules="ContentChecker::HTML">
1232      <d:message xml:lang="en">Non‐white‐space characters are not allowed in
1233      an empty element.</d:message>
1234    </d:item>
1235    
1236  <d:item name="child element missing"  <d:item name="child element missing"
1237      class="content-model-error">      modules="ContentChecker::HTML">
1238    <d:message xml:lang="en">There must be a <code><var>$0</var></code>    <d:message xml:lang="en">There must be a <code><var>{text}</var></code>
1239    element as a child of this element.</d:message>    element as a child of this element.</d:message>
1240    <d:desc xml:lang="en">    <d:desc xml:lang="en">
1241      <p>The content model of the element is so defined that it      <p>The content model of the element is so defined that it
1242      must contain a <code><var>$0</var></code> child element.      must contain a <code><var>$0</var></code> child element.
1243      The document is non-conforming.</p>      The document is non-conforming.</p>
1244    
1245      <p>For example:      <dl class="switch">
1246        <ul>      <dt>HTML <code>head</code> element</dt>
1247        <li>The <code>head</code> element must contain exactly one        <dd>There must be a <code>title</code> child element.</dd>
1248        <code>title</code> child element.</li>      <dt>HTML <code>html</code> element</dt>
1249        <li><a href="#child-element-missing:td%7Cth">The <code>tr</code>        <dd>There must be a <code>head</code> child element followed
1250        element must contain one or more <code>td</code> or <code>th</code>        by a <code>body</code> element.</dd>
1251        child element.</a></li>      <dt>HTML <code>tr</code> element</dt>
1252        </ul>        <dd><a href="#child-element-missing:td%7Cth">There must be
1253      </p>        one or more <code>td</code> or <code>th</code> child element.</a></dd>
1254        </dl>
1255    </d:desc>    </d:desc>
1256  </d:item>  </d:item>
1257    
# Line 531  Web Document Conformance Checker (BETA)< Line 1266  Web Document Conformance Checker (BETA)<
1266    </d:desc>    </d:desc>
1267  </d:item>  </d:item>
1268    
1269    <d:item name="element missing:hn"
1270        modules="ContentChecker::HTML">
1271      <d:message xml:lang="en">There must be at least one
1272      <code>h<var>n</var></code> element descendant.</d:message>
1273    </d:item>
1274    
1275  <d:item name="element not allowed"  <d:item name="element not allowed"
1276      class="content-model-error">      class="content-model-error">
1277    <d:message xml:lang="en">This element is not allowed in this    <d:message xml:lang="en">This element is not allowed in this
# Line 539  Web Document Conformance Checker (BETA)< Line 1280  Web Document Conformance Checker (BETA)<
1280      <p>An element appears where it is not allowed.  The document      <p>An element appears where it is not allowed.  The document
1281      is non-conforming.</p>      is non-conforming.</p>
1282    
     <p><strong>Note</strong>: The conformance checker does  
     <em>not</em> support form elements yet.</p>  
   
1283      <p>Possible causes:      <p>Possible causes:
1284        <dl class="switch">        <dl class="switch">
1285        <dt>If the element with the error is an inline-level element,        <dt>If the element with the error is an inline-level element,
# Line 552  Web Document Conformance Checker (BETA)< Line 1290  Web Document Conformance Checker (BETA)<
1290    
1291            <p>Any inline-level content must be put            <p>Any inline-level content must be put
1292            in e.g. paragraph element such as <code>p</code>.</p></dd>            in e.g. paragraph element such as <code>p</code>.</p></dd>
1293        <dt>If the element with the error is a block-level element,        <dt>If it is a block-level elements, such as <code>aside</code>,
1294        such as <code>div</code>, <code>h<var>n</var></code>, or        <code>div</code>, <code>h<var>n</var></code>,
1295        <code>section</code></dt>        <code>p</code>, or <code>section</code></dt>
1296            <dd><p>Though some elements such as <code>div</code>,            <dd><dl class="switch">
1297            <code>li</code>, and <code>td</code> allow                <dt>If the parent element is <code>div</code>,
1298            <em>either one</em> of block-level or inline-level content                <code>li</code>, <code>td</code>, or <code>th</code></dt>
1299            is allowed.  If there is a block-level content,                <!-- @@ TODO: more... -->
1300            any inline-level content must be put                    <!-- @@ TODO: <p><ul><li><p> -->
1301            in e.g. paragraph element such as <code>p</code>.</p></dd>                    <dd><p>The parent element allows <em>either</em>
1302                      block-level or inline-level content.  If there is a
1303                      block-level content, any inline-level content must be
1304                      put in e.g. paragraph element such as <code>p</code>.</p>
1305                      <p>For example, an HTML document fragment
1306                      <code class="html bad example">&lt;div>&lt;p>Hello!&lt;/p> World!&lt;/div></code>
1307                      is non-conforming, since a word <q>World!</q> does not belong
1308                      to any paragraph.  (If not part of any paragraph, what is
1309                      it!?)  A conforming example would be:
1310                        <pre class="html example"><code>&lt;div>&lt;p>Hello!&lt;/p> &lt;p>World!&lt;/p>&lt;/div></code></pre>
1311                      </p></dd>
1312                  <dt>If the parent element does <em>not</em> allow
1313                  block-level elements as content</dt>
1314                      <dd>The element is not allowed to be inserted here.
1315                      For example, a <code>div</code> element cannot be
1316                      a child of an <code>h1</code> element.</dd>
1317              </dl></dd>
1318        <dt>If the element with the error is a <code>noscript</code> element</dt>        <dt>If the element with the error is a <code>noscript</code> element</dt>
1319            <dd>The <code>noscript</code> element is allowed only in the context            <dd>The <code>noscript</code> element is allowed only in the context
1320            where a block-level or inline-level content is expected            where a block-level or inline-level content is expected
1321            and in the <code>head</code> element.            and in the <code>head</code> element.
1322            It cannot be used in e.g. <code>ul</code>, <code>table</code>,            It cannot be used in e.g. <code>ul</code>, <code>table</code>,
1323            or <code>select</code>.</dd>            or <code>select</code>.</dd>
1324        <dt>If the element with the error is the <code>html</code> element        <dt>If the element with the error is <code>blink</code>,
1325        that is the root element of an XHTML document</dt>        <code>center</code>, or <code>marquee</code> element</dt>
1326            <dd><p>In an XHTML document, the root <code>html</code>            <dd>These elements are not part of the HTML standard.
1327            element must have an <code>xmlns</code> attribute            Use CSS for styling control.</dd>
1328            whose value is set to  
1329            <code>http://www.w3.org/1999/xhtml</code>.</p></dd>        <dt><code>button</code>, <code>datalist</code>,
1330          <code>fieldset</code>, <code>form</code>,
1331          <code>input</code>, <code>label</code>,
1332          <code>optgroup</code>, <code>option</code>, <code>output</code>,
1333          <code>rb</code>, <code>rp</code>, <code>rt</code>, <code>ruby</code>,
1334          <code>textarea</code>, or <code>textarea</code> element</dt>
1335          <!-- rbc, rtc ? -->
1336              <dd>These elements are intentionally not supported by the conformance
1337              checker <em>yet</em>.</dd>
1338        </dl>        </dl>
1339      </p>      </p>
1340    </d:desc>    </d:desc>
1341  </d:item>  </d:item>
1342    
1343    <d:item name="element not allowed:area"
1344        modules="ContentChecker ContentChecker::HTML">
1345      <d:message xml:lang="en">An <code>area</code> element cannot be used
1346      outside of a <code>map</code> element.</d:message>
1347    </d:item>
1348    
1349    <d:item name="element not allowed:base"
1350        modules="ContentChecker ContentChecker::HTML">
1351      <d:message xml:lang="en">There is another <code>base</code>
1352      element.</d:message>
1353    </d:item>
1354    
1355    <d:item name="element not allowed:datatemplate"
1356        modules="ContentChecker ContentChecker::HTML">
1357      <d:message xml:lang="en">In a <code>datatemplate</code> element, only
1358      <code>rule</code> elements are allowed.</d:message>
1359    </d:item>
1360    
1361    <d:item name="element not allowed:details legend"
1362        modules="ContentChecker::HTML">
1363      <d:message xml:lang="en">In a <code>details</code> element, only at the
1364      beginning of the element a <code>lengend</code> element
1365      may be used.</d:message>
1366    </d:item>
1367    
1368    <d:item name="element not allowed:empty"
1369        modules="ContentChecker::HTML">
1370      <d:message xml:lang="en">Elements are not allowed in an empty
1371      element.</d:message>
1372    </d:item>
1373    
1374    <d:item name="element not allowed:figure legend"
1375        modules="ContentChecker::HTML">
1376      <d:message xml:lang="en">In a <code>figure</code> element, only at the
1377      beginning or only at the end of the element a <code>lengend</code> element
1378      may be used.</d:message>
1379    </d:item>
1380    
1381    <d:item name="element not allowed:flow"
1382        modules="ContentChecker::HTML">
1383      <d:message xml:lang="en">This element is not allowed where flow
1384      content is expected.</d:message>
1385    </d:item>
1386    
1387    <d:item name="element not allowed:flow style"
1388        modules="ContentChecker::HTML">
1389      <d:message xml:lang="en">A <code>style</code> element without
1390      <code>scoped</code> attribute is not allowed in this context.</d:message>
1391    </d:item>
1392    
1393    <d:item name="element not allowed:head noscript"
1394        modules="ContentChecker::HTML">
1395      <d:message xml:lang="en">This element is not allowed in a
1396      <code>noscript</code> element in the <code>head</code> element.</d:message>
1397    </d:item>
1398    
1399    <d:item name="element not allowed:head style"
1400        modules="ContentChecker::HTML">
1401      <d:message xml:lang="en">A <code>style</code> element with
1402      <code>scoped</code> attribute is not allowed in the <code>head</code>
1403      element.</d:message>
1404    </d:item>
1405    
1406    <d:item name="element not allowed:head title"
1407        modules="ContentChecker ContentChecker::HTML">
1408      <d:message xml:lang="en">There is another <code>title</code>
1409      element.</d:message>
1410    </d:item>
1411    
1412    <d:item name="element not allowed:minus"
1413        modules="ContentChecker ContentChecker::HTML">
1414      <d:message xml:lang="en">This element is not allowed in this
1415      context.</d:message>
1416    </d:item>
1417    
1418    <d:item name="element not allowed:meta charset"
1419        modules="ContentChecker::HTML">
1420      <d:message xml:lang="en">The character encoding declaration must be the
1421      first element in the <code>head</code> element.</d:message>
1422    </d:item>
1423    
1424    <d:item name="element not allowed:metadata"
1425        modules="ContentChecker::HTML">
1426      <d:message xml:lang="en">This element is not allowed where metadata
1427      content is expected.</d:message>
1428    </d:item>
1429    
1430    <d:item name="element not allowed:phrasing"
1431        modules="ContentChecker::HTML">
1432      <d:message xml:lang="en">This element is not allowed where phrasing
1433      content is expected.</d:message>
1434    </d:item>
1435    
1436    <d:item name="element not allowed:root"
1437        modules="ContentChecker">
1438      <d:message xml:lang="en">This element is not allowed as the root
1439      element of a document.</d:message>
1440      <d:desc xml:lang="en">
1441        <p>An element that is not allowed as the root element
1442        is used as the root element of the document.  The document is
1443        non-conforming, as far as the conformance checker can tell.</p>
1444    
1445        <dl class="switch">
1446        <dt><code>html</code> element in an XHTML document</dt>
1447            <dd><p>In <abbr>XHTML</abbr> document, the root <code>html</code>
1448            element must have an <code>xmlns</code> attribute as:
1449              <pre class="xml example"><code>&lt;html xmlns="http://www.w3.org/1999/xhtml"></code></pre></p></dd>
1450        <dt><code>rss</code> element</dt>
1451            <dd><p>The document is written in some version of RSS.</p>
1452            <p>The conformance checker does not support any version
1453            of RSS.  Use Atom 1.0 for feed documents.</p></dd>
1454        <dt><code>feed</code> element</dt>
1455            <dd><p>The Atom <code>feed</code> element must be
1456            in the <code>http://www.w3.org/2005/Atom</code>
1457            namespace as:
1458              <pre class="xml example"><code>&lt;feed xmlns="http://www.w3.org/2005/Atom"></code></pre>
1459            </p>
1460            <p>The conformance checker does not support Atom 0.3.
1461            Use Atom 1.0 for feed documents.</p></dd>
1462        </dl>
1463      </d:desc>
1464    </d:item>
1465    
1466    <d:item name="element not allowed:root:xml"
1467        modules="ContentChecker">
1468      <d:message xml:lang="en">This element is not allowed as the root element
1469      of an XML document.</d:message>
1470    </d:item>
1471    
1472    <d:item name="element not allowed:ruby base"
1473        modules="ContentChecker">
1474      <d:message xml:lang="en">This element is not allowed in the <code>ruby</code>
1475      element.</d:message>
1476    </d:item>
1477    
1478    <d:item name="element not allowed:text"
1479        modules="ContentChecker::HTML">
1480      <d:message xml:lang="en">This element is not allowed in this
1481      context.</d:message>
1482    </d:item>
1483    
1484    <d:item name="element not defined"
1485        modules="ContentChecker">
1486      <d:message xml:lang="en">This element is not defined.</d:message>
1487    </d:item>
1488    
1489    <d:item name="no significant content"
1490        modules="ContentChecker::HTML">
1491      <d:message xml:lang="en">No significant content is contained
1492      in this element.</d:message>
1493    </d:item>
1494    
1495    <d:item name="no significant content before"
1496        modules="ContentChecker::HTML">
1497      <d:message xml:lang="en">There is no significant content
1498      before this element.</d:message>
1499    </d:item>
1500    
1501    <d:item name="no significant content at the end"
1502        modules="ContentChecker::HTML">
1503      <d:message xml:lang="en">No significant content is contained
1504      at the end of this element.</d:message>
1505    </d:item>
1506    
1507  <d:item name="ps element missing"  <d:item name="ps element missing"
1508      class="content-model-error">      modules="ContentChecker::HTML">
1509    <d:message xml:lang="en">There is no <code><var>$0</var></code>    <d:message xml:lang="en">There is no <code><var>{text}</var></code>
1510    element before this element.</d:message>    element before this element.</d:message>
1511    <d:desc xml:lang="en">    <d:desc xml:lang="en">
1512      <p>There must be an element before another element, but there      <p>There must be an element before another element, but there
# Line 591  Web Document Conformance Checker (BETA)< Line 1517  Web Document Conformance Checker (BETA)<
1517    </d:desc>    </d:desc>
1518  </d:item>  </d:item>
1519    
1520    <d:item name="rp:syntax error"
1521        modules="ContentChecker::HTML">
1522      <d:message xml:lang="en">The content of a <code>rp</code> element must
1523      be a parenthesis.</d:message>
1524    </d:item>
1525    
1526  </section>  </section>
1527    
1528  <section id="attribute-errors">  <section id="attribute-errors">
1529  <h2>Attribute Errors</h2>  <h2>Attribute Errors</h2>
1530    
1531  <d:item name="attribute missing"  <d:item name="attribute missing"
1532      class="attribute-error">      modules="ContentChecker::HTML">
1533    <d:message xml:lang="en">Required attribute <code><var>$0</var></code>    <d:message xml:lang="en">Required attribute <code><var>{text}</var></code>
1534    is not specified.</d:message>    is not specified.</d:message>
1535    <d:desc>    <d:desc>
1536      <p>A required attribute is not specified.  The document      <p>A required attribute is not specified.  The document
1537      is non-conforming.</p>      is non-conforming.</p>
1538    
1539      <p>Some attribute is defined as <i>required</i>.      <p>Some attribute is defined as <i>required</i>.
     For example, any <code>img</code> element must have  
     <code>alt</code> and <code>src</code> attributes specified.  
1540      Without required attributes specified, user agents      Without required attributes specified, user agents
1541      cannot provide the full functionality of the element      cannot provide full functionality of the element to the user.</p>
1542      to the user.</p>  
1543        <dl class="switch">
1544        <dt>HTML <code>img</code> element</dt>
1545            <dd>The <code>src</code> attribute must be specified.
1546            Additionally, the <code>alt</code> attribute must be specified
1547            in many cases.</dd>
1548        <dt>HTML <code>link</code> element</dt>
1549            <dd>The <code>rel</code> attribute must be specified.
1550            Note that the <code>rev</code> attribute is obsolete.</dd>
1551        </dl>
1552    </d:desc>    </d:desc>
1553  </d:item>  </d:item>
1554    
1555    <d:item name="attribute missing:data|type"
1556        modules="ContentChecker::HTML">
1557      <d:message xml:lang="en">For an <code>object</code> at least one of
1558      <code>data</code> and <code>type</code> attributes must be
1559      specified.</d:message>
1560    </d:item>
1561    
1562    <d:item name="attribute missing:href|target"
1563        modules="ContentChecker::HTML">
1564      <d:message xml:lang="en">For a <code>base</code> element, at least one of
1565      <code>href</code> and <code>target</code> attributes must be
1566      specified.</d:message>
1567    </d:item>
1568    
1569    <d:item name="attribute missing:name|http-equiv"
1570        modules="ContentChecker::HTML">
1571      <d:message xml:lang="en">For a <code>meta</code> element with the
1572      <code>content</code> attribute specified, exactly one of
1573      <code>name</code> and <code>http-equiv</code> attributes must be
1574      specified.</d:message>
1575    </d:item>
1576    
1577    <d:item name="attribute missing:name|http-equiv|charset"
1578        modules="ContentChecker::HTML">
1579      <d:message xml:lang="en">For a <code>meta</code> element, exactly one of
1580      <code>name</code>, <code>http-equiv</code>, and <code>charset</code>
1581      attributes must be specified.</d:message>
1582    </d:item>
1583    
1584    <d:item name="attribute not allowed"
1585        modules="ContentChecker::HTML">
1586      <d:message xml:lang="en">Attribute
1587      <code><var>{local-name}</var></code> is not allowed for
1588      <code><var>{element-local-name}</var></code> element.</d:message>
1589      <d:desc xml:lang="en">
1590        <p>An attribute is specified where it is not allowed.
1591        The document is non-conforming.</p>
1592    
1593        <dl>
1594        <dt>HTML <code>meta</code> element</dt>
1595            <dd>For HTML <code>meta</code> element, <em>only one</em> of
1596            <code>name</code>, <code>http-equiv</code>, or <code>charset</code>
1597            attribute is allowed.</dd>
1598        </dl>
1599      </d:desc>
1600    </d:item>
1601    
1602    <d:item name="attribute not allowed:ismap"
1603        modules="ContentChecker::HTML">
1604      <d:message xml:lang="en">The <code>ismap</code> attribute may only be
1605      used for the image contained in an <code>a</code> element.</d:message>
1606    </d:item>
1607    
1608    <d:item name="attribute not defined"
1609        modules="ContentChecker">
1610      <d:message xml:lang="en">This attribute is not defined.</d:message>
1611    </d:item>
1612    
1613  <d:item name="in HTML:xml:lang"  <d:item name="in HTML:xml:lang"
1614      class="attribute-error">      class="attribute-error"
1615        modules="ContentChecker::XML">
1616    <d:message xml:lang="en">The <code>xml:lang</code> attribute is not    <d:message xml:lang="en">The <code>xml:lang</code> attribute is not
1617    allowed in HTML document.</d:message>    allowed in HTML document.</d:message>
1618    <d:desc>    <d:desc xml:lang="en">
1619      <p>The <code>xml:lang</code> attribute is not allowed in      <p>The <code>xml:lang</code> attribute is not allowed in
1620      HTML document.  The document is non-conforming.</p>      HTML document.  The document is non-conforming.</p>
1621    
1622      <p>The <code>lang</code> attribute in the <code>null</code>      <p>Use of the <code>xml:lang</code> attribute is conforming
1623      namespace for HTML elements is defined as conforming <em>only</em> for      <em>only</em> in XML documents.</p>
     XML document.</p>  
1624    
1625      <p>To specify natural language information in HTML document,      <p>To specify natural language information in HTML document,
1626      use <code>lang</code> attribute instead.</p>      use <code>lang</code> attribute instead.</p>
# Line 640  Web Document Conformance Checker (BETA)< Line 1637  Web Document Conformance Checker (BETA)<
1637  </d:item>  </d:item>
1638    
1639  <d:item name="in XML:charset"  <d:item name="in XML:charset"
1640      class="attribute-error">      modules="ContentChecker::HTML">
1641    <d:message xml:lang="en">The <code>charset</code> attribute is not    <d:message xml:lang="en">The <code>charset</code> attribute is not
1642    allowed in XML document.</d:message>    allowed in XML document.</d:message>
1643    <d:desc>    <d:desc>
# Line 656  Web Document Conformance Checker (BETA)< Line 1653  Web Document Conformance Checker (BETA)<
1653  </d:item>  </d:item>
1654    
1655  <d:item name="in XML:lang"  <d:item name="in XML:lang"
1656      class="attribute-error">      modules="ContentChecker::HTML">
1657    <d:message xml:lang="en">The <code>lang</code> attribute is not    <d:message xml:lang="en">The <code>lang</code> attribute is not
1658    allowed in XML document.</d:message>    allowed in XML document.</d:message>
1659    <d:desc>    <d:desc>
# Line 664  Web Document Conformance Checker (BETA)< Line 1661  Web Document Conformance Checker (BETA)<
1661      XML document.  The document is non-conforming.</p>      XML document.  The document is non-conforming.</p>
1662    
1663      <p>The <code>lang</code> attribute in <code>null</code>      <p>The <code>lang</code> attribute in <code>null</code>
1664      namespace for HTML elements is defined as conforming <em>only</em> for      namespace for HTML elements is conforming <em>only</em> in
1665      HTML document.</p>      HTML documents.</p>
1666    
1667      <p>To specify natural language information in XML document,      <p>To specify natural language information in XML document,
1668      use <code>xml:lang</code> attribute instead.</p>      use <code>xml:lang</code> attribute instead.</p>
1669    </d:desc>    </d:desc>
1670  </d:item>  </d:item>
1671    
1672    <d:item name="in XML:noscript"
1673        modules="ContentChecker::HTML">
1674      <d:message xml:lang="en">A <code>noscript</code> element cannot be
1675      used in XML document.</d:message>
1676    </d:item>
1677    
1678  <d:item name="in XML:xmlns"  <d:item name="in XML:xmlns"
1679      class="attribute-error">      modules="ContentChecker::HTML">
1680    <d:message xml:lang="en">The <code>xmlns</code> attribute    <d:message xml:lang="en">The <code>xmlns</code> attribute
1681    in the <code>null</code> namespace is not allowed in    in the <code>null</code> namespace is not allowed in
1682    XHTML document.  The document is non-conforming.</d:message>    XHTML document.  The document is non-conforming.</d:message>
# Line 681  Web Document Conformance Checker (BETA)< Line 1684  Web Document Conformance Checker (BETA)<
1684      <p>The <code>xmlns</code> attribute in the <code>null</code>      <p>The <code>xmlns</code> attribute in the <code>null</code>
1685      namespace is not allowed in XHTML document.</p>      namespace is not allowed in XHTML document.</p>
1686    
1687      <p>This error should not occur in conformance-checking      <p>This error should not occur in conformance-checking of
1688      static documents.</p>      static documents.</p>
1689    </d:desc>    </d:desc>
1690  </d:item>  </d:item>
# Line 691  Web Document Conformance Checker (BETA)< Line 1694  Web Document Conformance Checker (BETA)<
1694  <section id="attribute-value-errors">  <section id="attribute-value-errors">
1695  <h2>Attribute Value Errors</h2>  <h2>Attribute Value Errors</h2>
1696    
1697    <d:item name="boolean:invalid"
1698        modules="ContentChecker::HTML">
1699      <d:message xml:lang="en">Attribute value <code><var>{@}</var></code>
1700      is not allowed.  It must be an empty string or a string
1701      <code><var>{local-name}</var></code>.</d:message>
1702    </d:item>
1703    
1704    <d:item name="char:syntax error"
1705        modules="ContentChecker::HTML">
1706      <d:message xml:lang="en">The attribute value must be exactly one
1707      character.</d:message>
1708    </d:item>
1709    
1710    <d:item name="charref in charset"
1711        modules="ContentChecker::HTML">
1712      <d:message xml:lang="en">A character reference cannot be used to
1713      represent a character encoding name.</d:message>
1714    </d:item>
1715    
1716    <d:item name="charset:not preferred"
1717        modules="ContentChecker::HTML">
1718      <d:message xml:lang="en">Character encoding name
1719      <code><var>{value}</var></code> is not the preferred name of that
1720      character encoding.</d:message>
1721    </d:item>
1722    
1723    <d:item name="charset:not registered"
1724        modules="ContentChecker::HTML">
1725      <d:message xml:lang="en">Character encoding name
1726      <code><var>{value}</var></code> is not a registered name.</d:message>
1727      <d:desc xml:lang="en">
1728        <p>The specified character encoding name is not registered to
1729        <abbr>IANA</abbr>.  Use of registered character encoding name
1730        is a good practice to facilitate interoperability.</p>
1731    
1732        <dl class="switch">
1733        <dt><code>EUC-TW</code></dt>
1734          <dd><code>EUC-TW</code> is not registered.  Unfortunately, there
1735          is no registered name for that character encoding.  Use
1736          Big5 encoding with character encoding name <code>Big5</code>
1737          if it is enough to represent the document.</dd>
1738        <dt><code>ISO-2022-JP-1</code></dt>
1739          <dd><code>ISO-2022-JP-1</code> is not registered, nevertheless
1740          this character encoding name is documented in
1741          <a href="urn:ietf:rfc:2237"><abbr>RFC</abbr> 2237</a>.  Use
1742          <code>ISO-2022-JP-2</code> instead, since that character encoding
1743          is a superset of ISO-2022-JP-1.</dd>
1744        <dt><code>ISO-2022-JP-3</code>, <code>ISO-2022-JP-3-plane1</code></dt>
1745          <dd>These names are not registered and obsoleted in favor of
1746          <code>ISO-2022-JP-2004</code> and
1747          <code>ISO-2022-JP-2004-plane1</code>.</dd>
1748        <dt><code>ISO-2022-JP-2003</code>,
1749        <code>ISO-2022-JP-2003-plane1</code></dt>
1750          <dd>These names are not registered and corrected to
1751          <code>ISO-2022-JP-2004</code> and
1752          <code>ISO-2022-JP-2004-plane1</code>.</dd>
1753        <dt><code>ISO-2022-JP-2004</code>,
1754        <code>ISO-2022-JP-2004-plane1</code></dt>
1755          <dd>These names are not registered.  Unfortunately, there is
1756          no registered name for these character encodings.</dd>
1757        <dt><code>UTF-8N</code></dt>
1758          <dd><code>UTF-8N</code> is not registered.  Character encoding
1759          name <code>UTF-8</code> represents UTF-8 encoding with or
1760          without <abbr>BOM</abbr>.</dd>
1761        </dl>
1762    
1763        <p><strong>WARNING</strong>: This error might be raised for
1764        a registered character encoding name, since the character encoding
1765        name database of the conformance checker is not complete yet.</p>
1766      </d:desc>
1767    </d:item>
1768    
1769    <d:item name="charset:private"
1770        modules="ContentChecker::HTML">
1771      <d:message xml:lang="en">Character encoding name
1772      <code><var>{value}</var></code> is a private name.</d:message>
1773      <d:desc xml:lang="en">
1774        <p>The specified character encoding name is a private name and
1775        not registered to <abbr>IANA</abbr>.  Use of registered character
1776        encoding name is a good practice to facilitate interoperability.</p>
1777    
1778        <dl class="switch">
1779        <dt><code>x-euc-jp</code></dt>
1780          <dd>Use <code>EUC-JP</code> for the Japanese <abbr>EUC</abbr>
1781          character encoding.</dd>
1782        <dt><code>x-sjis</code></dt>
1783          <dd>Use <code>Shift_JIS</code> for standard Shift encoding scheme of
1784          <abbr>JIS</abbr> coded character set, or <code>Windows-31J</code>
1785          for Microsoft standard character set as implemented by
1786          Microsoft Windows.</dd>
1787        </dl>
1788      </d:desc>
1789    </d:item>
1790    
1791    <d:item name="charset:syntax error"
1792        modules="ContentChecker::HTML">
1793      <d:message xml:lang="en">The specified value <code><var>{value}</var></code>
1794      is syntactically not a character encoding name.</d:message>
1795      <d:desc xml:lang="en">
1796        <p>The attribute value must be a character encoding name.  However,
1797        the specified value is not a character encoding name syntactically.
1798        The document is non‐conforming.</p>
1799        <p>Character encoding name is a string of <abbr>ASCII</abbr>
1800        printable characters, up to 40 characters.</p>
1801      </d:desc>
1802    </d:item>
1803    
1804    <d:item name="color:syntax error"
1805        modules="ContentChecker::HTML">
1806      <d:message xml:lang="en">The specified value is not a color
1807      name or hexadecimal color number.</d:message>
1808    </d:item>
1809    
1810    <d:item name="coords:number not 3"
1811        modules="ContentChecker::HTML">
1812      <d:message xml:lang="en">The <code>coords</code> attribute have to
1813      contain three (3) numbers (specified:
1814      <code><var>{text}</var></code>).</d:message>
1815    </d:item>
1816    
1817    <d:item name="coords:number not 4"
1818        modules="ContentChecker::HTML">
1819      <d:message xml:lang="en">The <code>coords</code> attribute have to
1820      contain four (4) numbers (specified:
1821      <code><var>{text}</var></code>).</d:message>
1822    </d:item>
1823    
1824    <d:item name="coords:number lt 6"
1825        modules="ContentChecker::HTML">
1826      <d:message xml:lang="en">The <code>coords</code> attribute have to
1827      contain more than or equal to six (6) numbers (specified:
1828      <code><var>{text}</var></code>).</d:message>
1829    </d:item>
1830    
1831    <d:item name="coords:number not even"
1832        modules="ContentChecker::HTML">
1833      <d:message xml:lang="en">The <code>coords</code> attribute have to
1834      contain even number of numbers (specified:
1835      <code><var>{text}</var></code>).</d:message>
1836    </d:item>
1837    
1838    <d:item name="coords:out of range"
1839        modules="ContentChecker::HTML">
1840      <d:message xml:lang="en">The specified value <code><var>{value}</var></code>
1841      is out of range.</d:message>
1842    </d:item>
1843    
1844    <d:item name="coords:syntax error"
1845        modules="ContentChecker::HTML">
1846      <d:message xml:lang="en">The specified value is not valid.</d:message>
1847    </d:item>
1848    
1849    <d:item name="datetime:bad year"
1850        modules="ContentChecker::HTML">
1851      <d:message xml:lang="en">Year number is out of range.</d:message>
1852    </d:item>
1853    
1854    <d:item name="datetime:bad month"
1855        modules="ContentChecker::HTML">
1856      <d:message xml:lang="en">Month number is out of range.</d:message>
1857    </d:item>
1858    
1859    <d:item name="datetime:bad day"
1860        modules="ContentChecker::HTML">
1861      <d:message xml:lang="en">Day number is out of range.</d:message>
1862    </d:item>
1863    
1864    <d:item name="datetime:bad hour"
1865        modules="ContentChecker::HTML">
1866      <d:message xml:lang="en">Hour number is out of range.</d:message>
1867    </d:item>
1868    
1869    <d:item name="datetime:bad minute"
1870        modules="ContentChecker::HTML">
1871      <d:message xml:lang="en">Minute number is out of range.</d:message>
1872    </d:item>
1873    
1874    <d:item name="datetime:bad second"
1875        modules="ContentChecker::HTML">
1876      <d:message xml:lang="en">Second number is out of range.</d:message>
1877    </d:item>
1878    
1879    <d:item name="datetime:bad timezone hour"
1880        modules="ContentChecker::HTML">
1881      <d:message xml:lang="en">Hour number of the timezone component is out of
1882      range.</d:message>
1883    </d:item>
1884    
1885    <d:item name="datetime:bad timezone minute"
1886        modules="ContentChecker::HTML">
1887      <d:message xml:lang="en">Minute number of the timezone component is out of
1888      range.</d:message>
1889    </d:item>
1890    
1891    <d:item name="datetime:syntax error"
1892        modules="ContentChecker::HTML">
1893      <d:message xml:lang="en">The attribute value is not a datetime.</d:message>
1894    </d:item>
1895    
1896    <d:item name="dateortime:syntax error"
1897        modules="ContentChecker::HTML">
1898      <d:message xml:lang="en">The attribute value is not a date or
1899      time.</d:message>
1900    </d:item>
1901    
1902  <d:item name="enumerated:invalid"  <d:item name="enumerated:invalid"
1903      class="attribute-value-error">      modules="ContentChecker::HTML">
1904    <d:message xml:lang="en">This attribute only allow a limited set of    <d:message xml:lang="en">This attribute only allow a limited set of
1905    values and the specified value <code><var>{@}</var></code> is not one    values and the specified value <code><var>{@}</var></code> is not one
1906    of them.</d:message>    of them.</d:message>
1907      <d:desc xml:lang="en">
1908        <p>For this attribute only several values are allowed and the
1909        value of the attribute is not one of them.  The document
1910        is non-conforming.</p>
1911    
1912        <dl>
1913        <dt>HTML <code>meta</code> element, <code>http-equiv</code> attribute</dt>
1914            <dd><p>Only values <code>Default-Style</code> and <code>Refresh</code>
1915            are allowed.</p>
1916            <p>Value <code>Content-Type</code> is obsolete; for charset
1917            declaration, the <code>charset</code> attribute can be used as:
1918            <pre class="html example"><code>&lt;meta charset="<var>charset-name</var>"></code></pre>
1919            ... where <var>charset-name</var> is a name of the character encoding
1920            of the document, such as <code>utf-8</code>.</p>
1921            <p>Values <code>Content-Style-Type</code> and
1922            <code>Content-Script-Type</code> are currently not allowed.</p>
1923            <p>Value <code>Keywords</code> is not allowed.  Use
1924            <code>name</code> attribute instead of <code>http-equiv</code>
1925            attribute.</p>
1926            <p>Values <code>Expires</code>, <code>Pragma</code>,
1927            and <code>Cache-Control</code> are not allowed;
1928            use <em>real</em> HTTP header fields for cache control.</p></dd>
1929        </dl>
1930      </d:desc>
1931  </d:item>  </d:item>
1932    
1933  <d:item name="duplicate ID"  <d:item name="enumerated:invalid:http-equiv:content-type"
1934      class="attribute-value-error">      class="attribute-value-error">
1935      <d:message xml:lang="en">Character encoding declaration syntax
1936      <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"></code>
1937      is obsolete.</d:message>
1938      <d:desc xml:lang="en">
1939        <p>Old long character encoding declaration syntax
1940        <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"></code>
1941        is in use.  The document is non‐conforming.</p>
1942    
1943        <p>The new character encoding declaration syntax is:
1944          <pre class="html example"><code>&lt;meta charset="<var>charset-name</var>"></code></pre>
1945        </p>
1946      </d:desc>
1947    </d:item>
1948    
1949    <d:item name="enumerated:non-conforming"
1950        modules="ContentChecker::HTML">
1951      <d:message xml:lang="en">Attribute value <code><var>{@}</var></code>
1952      is not allowed.</d:message>
1953    </d:item>
1954    
1955    <d:item name="duplicate http-equiv"
1956        modules="ContentChecker::HTML">
1957      <d:message xml:lang="en">There is another pragma
1958      <code><var>{value}</var></code>.</d:message>
1959    </d:item>
1960    
1961    <d:item name="duplicate ID"
1962        class="attribute-value-error"
1963        modules="ContentChecker::XML ContentChecker::HTML">
1964    <d:message xml:lang="en">This identifier has already been    <d:message xml:lang="en">This identifier has already been
1965    assigned to another element.</d:message>    assigned to another element.</d:message>
1966    <!-- @@ <id=a xml:id=a>? -->    <!-- @@ <id=a xml:id=a>? -->
1967  </d:item>  </d:item>
1968    
1969    <d:item name="duplicate token"
1970        modules="ContentChecker::HTML">
1971      <d:message xml:lang="en">The token <code><var>{value}</var></code>
1972      appears in the attribute value twice.</d:message>
1973    </d:item>
1974    
1975    <d:item name="empty attribute value"
1976        modules="ContentChecker::HTML">
1977      <d:message xml:lang="en">The attribute value must not be empty.</d:message>
1978    </d:item>
1979    
1980    <d:item name="float:out of range"
1981        modules="ContentChecker::HTML">
1982      <d:message xml:lang="en">The specified value is out of range.</d:message>
1983    </d:item>
1984    
1985    <d:item name="float:syntax error"
1986        modules="ContentChecker::HTML">
1987      <d:message xml:lang="en">The attribute value is not a real
1988      number.</d:message>
1989    </d:item>
1990    
1991    <d:item name="fragment points itself"
1992        modules="ContentChecker">
1993      <d:message xml:lang="en">A fragment identifier references the element
1994      itself.</d:message>
1995    </d:item>
1996    
1997    <d:item name="fragment points nothing"
1998        modules="ContentChecker">
1999      <d:message xml:lang="en">A fragment identifier references no
2000      node.</d:message>
2001    </d:item>
2002    
2003    <d:item name="hashref:syntax error"
2004        modules="ContentChecker::HTML">
2005      <d:message xml:lang="en">A hash−name reference must start with a
2006      <code>#</code> character.</d:message>
2007    </d:item>
2008    
2009    <d:item name="id ne name"
2010        modules="ContentChecker::HTML">
2011      <d:message xml:lang="en">The <code>id</code> attribute value is
2012      different from the <code>name</code> attribute value.</d:message>
2013    </d:item>
2014    
2015    <d:item name="integer:syntax error"
2016        modules="ContentChecker::HTML">
2017      <d:message xml:lang="en">The attribute value is not an integer.</d:message>
2018    </d:item>
2019    
2020  <d:item name="link type:bad context"  <d:item name="link type:bad context"
2021      class="attribute-value-error">      modules="ContentChecker::HTML">
2022    <d:message xml:lang="en">The link type <code><var>$0</var></code>    <d:message xml:lang="en">The link type <code><var>{value}</var></code>
2023    cannot be specified for this element.</d:message>    cannot be specified for this element.</d:message>
2024    <d:desc xml:lang="en">    <d:desc xml:lang="en">
2025      <p>The specified link type cannot be used for the element.      <p>The specified link type cannot be used for the element.
# Line 722  Web Document Conformance Checker (BETA)< Line 2034  Web Document Conformance Checker (BETA)<
2034    </d:desc>    </d:desc>
2035  </d:item>  </d:item>
2036    
2037    <d:item name="invalid attribute value"
2038        class="attribute-value-error"
2039        modules="ContentChecker::XML ContentChecker::HTML">
2040      <d:message xml:lang="en">Attribute value <code><var>{@}</var></code>
2041      is not an allowed value.</d:message>
2042    </d:item>
2043    
2044    <d:item name="length:syntax error"
2045        modules="ContentChecker::HTML">
2046      <d:message xml:lang="en">The attribute value is not a length
2047      value.</d:message>
2048    </d:item>
2049    
2050  <d:item name="link type:non-conforming"  <d:item name="link type:non-conforming"
2051      class="attribute-value-error">      modules="ContentChecker::HTML">
2052    <d:message xml:lang="en">The link type <code><var>$0</var></code>    <d:message xml:lang="en">The link type <code><var>{value}</var></code>
2053    is non-conforming.</d:message>    is non-conforming.</d:message>
2054    <d:desc xml:lang="en">    <d:desc xml:lang="en">
2055      <p>The specified link type is non-conforming, and therefore      <p>The specified link type is non-conforming, and therefore
2056      the document is non-conforming.</p>      the document is non-conforming.</p>
2057    
2058      <dl>      <dl class="switch">
2059      <dt>Link type <code>contents</code></dt>      <dt>Link type <code>contents</code></dt>
2060        <dd>Use link type <code>index</code>.</dd>        <dd>Use link type <code>index</code>.</dd>
2061      <dt>Link type <code>copyright</code></dt>      <dt>Link type <code>copyright</code></dt>
2062        <dd>Use link type <code>license</code>.</dd>        <dd>Use link type <code>license</code>.</dd>
2063      <dt>Link type <code>home</code></dt>      <dt>Link type <code>home</code></dt>
2064        <dd>Use link type <code>index</code>.</dd>        <dd>Use link type <code>index</code>.</dd>
2065        <dt>Link type <code>previous</code></dt>
2066          <dd>Use link type <code>prev</code>.</dd>
2067      <dt>Link type <code>start</code></dt>      <dt>Link type <code>start</code></dt>
2068        <dd>Use link type <code>first</code>.</dd>        <dd>Use link type <code>first</code>.</dd>
2069      <dt>Link type <code>toc</code></dt>      <dt>Link type <code>toc</code> or <code>top</code></dt>
2070        <dd>Use link type <code>index</code>.</dd>        <dd>Use link type <code>index</code>.</dd>
2071      </dl>      </dl>
2072    </d:desc>    </d:desc>
2073  </d:item>  </d:item>
2074    
2075    <d:item name="meta content-type syntax error"
2076        modules="ContentChecker::HTML">
2077      <d:message xml:lang="en">The specified value is not a valid as a long
2078      character encoding declaration.</d:message>
2079    </d:item>
2080    
2081    <d:item name="mismatched charset name"
2082        modules="ContentChecker::HTML">
2083      <d:message xml:lang="en">The specified character encoding name
2084      <code><var>{value}</var></code> is different from the actual document
2085      character encoding <code><var>{text}</var></code>.</d:message>
2086      <d:desc xml:lang="en">
2087        <p>The specified character encoding name is different from
2088        the character encoding of the document.  The document
2089        is non‐conforming.</p>
2090      </d:desc>
2091    </d:item>
2092    
2093    <d:item name="mismatched charset name not checked"
2094        mopdules="ContentChecker::HTML">
2095      <d:message xml:lang="en">Whether the specified character encoding name
2096      <code><var>{value}</var></code> matches to the actual character encoding
2097      name cannot be checked since the input is not a byte stream.</d:message>
2098    </d:item>
2099    
2100    <d:item name="mode:syntax error"
2101        modules="ContentChecker::HTML">
2102      <d:message xml:lang="en">The attribute value is not a valid mode
2103      name.</d:message>
2104    </d:item>
2105    
2106    <d:item name="nninteger:out of range"
2107        modules="ContentChecker::HTML">
2108      <d:message xml:lang="en">The specified value is out of range.</d:message>
2109    </d:item>
2110    
2111    <d:item name="nninteger:syntax error"
2112        modules="ContentChecker::HTML">
2113      <d:message xml:lang="en">The attribute value is not a non‐negative
2114      integer.</d:message>
2115    </d:item>
2116    
2117    <d:item name="no referenced map"
2118        modules="ContentChecker">
2119      <d:message xml:lang="en">The <code>usemap</code> attribute references
2120      no image map.</d:message>
2121    </d:item>
2122    
2123    <d:item name="no referenced menu"
2124        modules="ContentChecker">
2125      <d:message xml:lang="en">The <code>contextmenu</code> attribute references
2126      no menu.</d:message>
2127    </d:item>
2128    
2129    <d:item name="refresh:syntax error"
2130        modules="ContentChecker::HTML">
2131      <d:message xml:lang="en">the specified value is not a valid as part
2132      of a <code>Refresh</code> pragma.</d:message>
2133    </d:item>
2134    
2135    <d:item name="repeat:syntax error"
2136        modules="ContentChecker::HTML">
2137      <d:message xml:lang="en">The attribute value is not an integer or
2138      a string <code>template</code>.</d:message>
2139    </d:item>
2140    
2141  <d:item name="reserved browsing context name"  <d:item name="reserved browsing context name"
2142      class="attribute-value-error">      class="attribute-value-error">
2143    <d:message xml:lang="en">Browsing context name    <d:message xml:lang="en">Browsing context name
# Line 765  Web Document Conformance Checker (BETA)< Line 2158  Web Document Conformance Checker (BETA)<
2158    </d:desc>    </d:desc>
2159  </d:item>  </d:item>
2160    
2161  </section>  <d:item name="Reserved Prefixes and Namespace Names:Name"
2162        modules="ContentChecker::XML">
2163      <d:message xml:lang="en">Namespace name <code><var>{text}</var></code>
2164      is reserved and cannot be used for an arbitrary prefix.</d:message>
2165    </d:item>
2166    
2167  <section id="attribute-value-warnings">  <d:item name="Reserved Prefixes and Namespace Names:Prefix"
2168  <h2>Attribute Value Warnings</h2>      modules="ContentChecker::XML">
2169      <d:message xml:lang="en">Namespace prefix <code><var>{text}</var></code>
2170      is reserved and cannot be used for an arbitrary namespace name.</d:message>
2171    </d:item>
2172    
2173  <d:item name="link type:proposed" level="s"  <d:item name="link type:proposed"
2174      class="attribute-value-warning should">      modules="ContentChecker::HTML">
2175    <d:message xml:lang="en">Link type <code><var>$0</var></code>    <d:message xml:lang="en">Link type <code><var>{value}</var></code>
2176    is proposed but not accepted yet; it <em>should not</em> be    is proposed but not accepted yet; it <em>should not</em> be
2177    used until it has been accepted.</d:message>    used until it has been accepted.</d:message>
2178    <d:desc>    <d:desc>
# Line 782  Web Document Conformance Checker (BETA)< Line 2182  Web Document Conformance Checker (BETA)<
2182    
2183      <p><strong>Warning</strong>: The data served to the      <p><strong>Warning</strong>: The data served to the
2184      conforming checker might be out of date; it might have already      conforming checker might be out of date; it might have already
2185      been accepted or rejected, depending on which the document      been accepted or rejected.  The document might or might not be
2186      might be conforming or non-conforming.  See WHATWG Wiki      conforming depending on the status.  See WHATWG Wiki
2187      for the latest information.</p>      for the latest information.</p>
2188    </d:desc>    </d:desc>
2189  </d:item>  </d:item>
2190    
2191    <d:item name="sizes:syntax error"
2192        modules="ContentChecker::HTML">
2193      <d:message xml:lang="en">The specified value <code><var>{value}</var></code>
2194      is not a valid value.</d:message>
2195    </d:item>
2196    
2197    <d:item name="space in ID"
2198        modules="ContentChecker::HTML">
2199      <d:message xml:lang="en">White space characters are not allowed
2200      in the <code>id</code> attribute.</d:message>
2201    </d:item>
2202    
2203    <d:item name="template:not template"
2204        modules="ContentChecker ContentChecker::HTML">
2205      <d:message xml:lang="en">The node referenced by the <code>template</code>
2206      attribute is not a template.</d:message>
2207    </d:item>
2208    
2209    <d:item name="window name:empty"
2210        modules="ContentChecker::HTML">
2211      <d:message xml:lang="en">Browsing context name must not be empty.</d:message>
2212    </d:item>
2213    
2214    <d:item name="window name:reserved"
2215        modules="ContentChecker::HTML">
2216      <d:message xml:lang="en">Browsing context name
2217      <code><var>{value}</var></code> is reserved.</d:message>
2218    </d:item>
2219    
2220    <d:item name="word not allowed"
2221        modules="ContentChecker::HTML">
2222      <d:message xml:lang="en">The word <code><var>{value}</var></code> is not
2223      allowed in this attribute.</d:message>
2224    </d:item>
2225    
2226  </section>  </section>
2227    
2228  <section id="table-model-errors">  <section id="table-model-errors">
# Line 818  Web Document Conformance Checker (BETA)< Line 2253  Web Document Conformance Checker (BETA)<
2253      The document is non-conforming.</p>      The document is non-conforming.</p>
2254    
2255      <p>For example, the table below is non-conforming:      <p>For example, the table below is non-conforming:
2256        <pre class="html non-conforming example"><code>&lt;table>        <pre class="html bad example"><code>&lt;table>
2257  &lt;tbody>  &lt;tbody>
2258  &lt;tr>&lt;td rowspan=2>&lt;/td>&lt;/tr>  &lt;tr>&lt;td rowspan=2>&lt;/td>&lt;/tr>
2259  &lt;/tbody>  &lt;/tbody>
2260  &lt;/table></code></pre>  &lt;/table></code></pre>
2261      ... is non-conforming, since the second row contains only      ... since the second row contains only
2262      a cell that spans the first and the second rows.</p>      a cell that spans between first and second rows.</p>
2263    </d:desc>    </d:desc>
2264  </d:item>  </d:item>
2265    
2266  </section>  </section>
2267    
2268  <section id="imt-warnings">  <section id="imt-warnings">
2269  <h2>Internet Media Type Warnings</h2>  <h2>Internet Media Type Errors</h2>
2270    
2271    <d:item name="IMT:syntax error"
2272        modules="ContentChecker::HTML">
2273      <d:message xml:lang="en">The specified value is not an Internet Media
2274      Type.</d:message>
2275    </d:item>
2276    
2277  <d:item name="IMT:obsolete subtype"  <d:item name="IMT:obsolete subtype"
2278      class="should" level="s">      class="should" level="s">
2279    <d:message xml:lang="en"><code><var>{@}</var></code>: An <em>obsolete</em>    <d:message xml:lang="en"><code><var>{@}</var></code>: An <em>obsolete</em>
2280    subtype is used.</d:message>    subtype is used.</d:message>
2281      <d:item xml:lang="en">
2282        <p>The specified Internet Media Type is registered with status
2283        of <i>OBSOLETE</i>.</p><!-- @@ SHOULD NOT? -->
2284        
2285        <dl class="swtich">
2286        <dt>Media type <code>text/ecmascript</code></dt>
2287          <dd>Media type <code>text/ecmascript</code> is obsoleted in
2288          favor of <code>application/ecmascript</code>.  Note that
2289          <code>text/javascript</code> would be better alternative
2290          for many cases.</dd>
2291        <dt>Media type <code>text/javascript</code></dt>
2292          <dd>Media type <code>text/javascript</code> is obsoleted by
2293          <abbr>IETF</abbr> with backward incompatible alternate
2294          <code>application/javascript</code> for architectural
2295          purity.<!-- @@ ref? -->  Realist may ignore this warning.</dd>
2296        </dl>
2297      </d:item>
2298  </d:item>  </d:item>
2299    
2300  <d:item name="IMT:private subtype"  <d:item name="IMT:private subtype"
# Line 878  Web Document Conformance Checker (BETA)< Line 2336  Web Document Conformance Checker (BETA)<
2336    
2337  </section>  </section>
2338    
2339  <section id="uri-warnings">  <section id="uri-shoulds">
2340  <h2>URI (or IRI) Warnings</h2>  <h2>URI (or IRI) Should-level Errors</h2>
2341    
2342  <d:item name="URI::dot-segment"  <d:item name="URI::dot-segment"
2343      class="should" level="s">      class="should" level="s">
2344    <d:message xml:lang="en">Dot-segment (<code>.</code> or    <d:message xml:lang="en">A dot-segment (<code>.</code> or
2345    <code>..</code>) should not occur in an absolute reference.</d:message>    <code>..</code>) occurs in an absolute reference.</d:message>
2346    <d:desc>    <d:desc>
2347      <p>Dot-segment (<code>.</code> or <code>..</code>) should      <p>Dot-segment (<code>.</code> or <code>..</code>) should
2348      not occur in an absolute reference.</p>      not occur in an absolute reference.</p>
# Line 899  Web Document Conformance Checker (BETA)< Line 2357  Web Document Conformance Checker (BETA)<
2357    
2358  <d:item name="URI::empty path"  <d:item name="URI::empty path"
2359      class="should" level="s">      class="should" level="s">
2360    <d:message xml:lang="en">This IRI should explicitly end with    <d:message xml:lang="en">This IRI does not end with
2361    <code>/</code>.</d:message>    a <code>/</code>.</d:message>
2362      <d:item xml:lang="en">
2363        <p>The IRI does not end with a <code>/</code>.  If there is an
2364        authority component in an IRI, a <code>/</code> should be present
2365        instead of empty path component.</p>
2366    
2367        <p>For example, <code>http://www.example.com<strong>/</strong></code>
2368        is preferred to <code>http://www.example.com</code>.</p>
2369      </d:item>
2370  </d:item>  </d:item>
2371    
2372  <d:item name="URI::lowercase hexadecimal digit"  <d:item name="URI::lowercase hexadecimal digit"
2373      class="should" level="s">      class="should" level="s">
2374    <d:message xml:lang="en">Hexadecimal digit in percent-encoding    <d:message xml:lang="en">A lowercase hexadecimal digit is used
2375    should be in lowercase.</d:message>    in percent-encoding.</d:message>
2376    <d:desc xml:lang="en">    <d:desc xml:lang="en">
2377      <p>The hexadecimal digit in percent-encoding string in the IRI      <p>The hexadecimal digit in percent-encoding string in the IRI
2378      is in lowercase.  Though the IRI <em>is</em> conforming,      is in lowercase.  Though the IRI <em>is</em> conforming,
# Line 947  Web Document Conformance Checker (BETA)< Line 2413  Web Document Conformance Checker (BETA)<
2413    
2414  </section>  </section>
2415    
2416    <section id="cache-manifest-errors">
2417    <h2>Cache Manifest Errors</h2>
2418    
2419    <d:item name="not manifest" class="must" level="m">
2420      <d:message xml:lang="en">This document is not a cache manifest.</d:message>
2421      <d:desc xml:lang="en">
2422        <p>The specified document is <em>not</em> a cache manifest.
2423        The document is non-conforming.</p>
2424    
2425        <p>An entity labeled as Internet media type
2426        <code>text/cache-manifest</code> must contain a cache manifest.</p>
2427    
2428        <p>A cache manifest must start with a line whose content is
2429        <code class="manifest example">CACHE MANIFEST</code>
2430        (exactly one space character between
2431        <code>CACHE</code> and <code>MANIFEST</code>).</p>
2432      </d:desc>
2433    </d:item>
2434    </section>
2435    
2436    <section id="information">
2437    <h2>Stability Information</h2>
2438    
2439    <d:item name="deprecated:attr"
2440        modules="ContentChecker">
2441      <d:message xml:lang="en">This attribute is deprecated.</d:message>
2442    </d:item>
2443    
2444    <d:item name="deprecated:element"
2445        modules="ContentChecker">
2446      <d:message xml:lang="en">This element is deprecated.</d:message>
2447    </d:item>
2448    
2449    <d:item name="status:cr:element"
2450        modules="ContentChecker">
2451      <d:message xml:lang="en">This element is in the
2452      <strong>call for implementation</strong> stage.</d:message>
2453      <d:desc xml:lang="en">
2454        <p>The element is in the call for implementation stage.</p>
2455        
2456        <p>Usually, using the element is safe.  However, it is a new feature
2457        so that it might not be implemented correctly.  If it is found that
2458        the feature is hard or impossible to implement, the feature
2459        might be revised, or in some case it might be dropped.</p>
2460    
2461        <p>Elements defined by Atom 1.0 (IETF Proposed Standard), and XBL 2.0
2462        (W3C Candidate Recommendation) belong to this class.</p>
2463      </d:desc>
2464    </d:item>
2465    
2466    <d:item name="status:lc:element"
2467        modules="ContentChecker">
2468      <d:message xml:lang="en">This element is in the <strong>last
2469      call for comments</strong> stage.</d:message>
2470      <d:desc xml:lang="en">
2471        <p>The element is in the last call for comments stage.</p>
2472        
2473        <p>The element is relatively mature, though the standardization
2474        is not done yet.  It may be used for experiments.  Since it is a new
2475        feature, it might not be implemented correctly or at all.  If it is
2476        found that the feature is hard or impossible to implement, the feature
2477        might be revised or might be dropped.</p>
2478    
2479        <p>Elements defined by Web Forms 2.0 as well as some elements
2480        defined by HTML5 belong to this class.</p>
2481      </d:desc>
2482    </d:item>
2483    
2484    <d:item name="status:wd:element"
2485        modules="ContentChecker">
2486      <d:message xml:lang="en">This element is documented in a <strong>working
2487      draft</strong>.</d:message>
2488      <d:desc xml:lang="en">
2489        <p>The element is documented in a working or editor's draft
2490        and not yet completed.</p>
2491        
2492        <p>The element should not be used for any practical purpose.
2493        The feature might be drastically changed later or might be
2494        entirely removed.</p>
2495    
2496        <p>Most of new elements defined by HTML5 belong to this class.</p>
2497      </d:desc>
2498    </d:item>
2499    
2500    <d:item name="status:non-standard:element"
2501        modules="ContentChecker">
2502      <d:message xml:lang="en">This element is <strong>not part of any
2503      standard</strong> the conformance checker knows.</d:message>
2504      <d:desc xml:lang="en">
2505        <p>The element is not part of any standard or draft the conformance
2506        checker is aware of.</p>
2507        
2508        <p>The element should not be used for any practical purpose unless
2509        there is really a standard that defines the element.</p>
2510      </d:desc>
2511    </d:item>
2512    
2513    <d:item name="status:cr:attr"
2514        modules="ContentChecker">
2515      <d:message xml:lang="en">This attribute is in the
2516      <strong>call for implementation</strong> stage.</d:message>
2517      <d:desc xml:lang="en">
2518        <p>The attribute is in the call for implementation stage.</p>
2519        
2520        <p>Usually, using the attribute is safe.  However, it is a new feature
2521        so that it might not be implemented correctly.  If it is found that
2522        the feature is hard or impossible to implement, the feature
2523        might be revised, or in some case it might be dropped.</p>
2524      </d:desc>
2525    </d:item>
2526    
2527    <d:item name="status:lc:attr"
2528        modules="ContentChecker">
2529      <d:message xml:lang="en">This attribute is in the <strong>last
2530      call for comments</strong> stage.</d:message>
2531      <d:desc xml:lang="en">
2532        <p>The attribute is in the last call for comments stage.</p>
2533        
2534        <p>The attribute is relatively mature, though the standardization
2535        is not done yet.  It may be used for experiments.  Since it is a new
2536        feature, it might not be implemented correctly or at all.  If it is
2537        found that the feature is hard or impossible to implement, the feature
2538        might be revised or might be dropped.</p>
2539      </d:desc>
2540    </d:item>
2541    
2542    <d:item name="status:wd:attr"
2543        modules="ContentChecker">
2544      <d:message xml:lang="en">This attribute is documented in a <strong>working
2545      draft</strong>.</d:message>
2546      <d:desc xml:lang="en">
2547        <p>The attribute is documented in a working or editor's draft
2548        and not yet completed.</p>
2549        
2550        <p>The attribute should not be used for any practical purpose.
2551        The feature might be drastically changed later or might be
2552        entirely removed.</p>
2553      </d:desc>
2554    </d:item>
2555    
2556    <d:item name="status:non-standard:attr"
2557        modules="ContentChecker">
2558      <d:message xml:lang="en">This attribute is <strong>not part of any
2559      standard</strong> the conformance checker knows.</d:message>
2560      <d:desc xml:lang="en">
2561        <p>The attribute is not part of any standard or draft the conformance
2562        checker is aware of.</p>
2563        
2564        <p>The attribute should not be used for any practical purpose unless
2565        there is really a standard that defines the attribute.</p>
2566      </d:desc>
2567    </d:item>
2568    </section>
2569    
2570  <section id="unsupported-messages">  <section id="unsupported-messages">
2571  <h2><i>Unsupported</i> Messages</h2>  <h2><i>Unsupported</i> Messages</h2>
2572    
2573  <d:item name="attribute"  <d:item name="unknown element"
2574      class="unsupported" level="unsupported">      modules="ContentChecker">
2575    <d:message xml:lang="en">This attribute is not supported by the    <d:message xml:lang="en">Conformance checking for element
2576    conformance checker; <em>it might or might not be conforming</em>.</d:message>    <code><var>{local-name}</var></code> is not supported; <em>it might or
2577      might not be conforming</em>.</d:message>
2578    <d:desc xml:lang="en">    <d:desc xml:lang="en">
2579      <p>The conformant checker does not support the attribute.      <p>The conformant checker does not support the element.
2580      It cannot determine whether the document is conforming or not.</p>      It cannot determine whether the document is conforming or not.</p>
2581    </d:desc>    </d:desc>
2582  </d:item>  </d:item>
2583    
2584  <d:item name="element"  <d:item name="unknown attribute"
2585      class="unsupported" level="unsupported">      modules="ContentChecker ContentChecker::HTML">
2586    <d:message xml:lang="en">This element is not supported by the    <d:message xml:lang="en">Conformance checking for attribute
2587    conformance checker; <em>it might or might not be conforming</em>.</d:message>    <code><var>{local-name}</var></code> of element
2588      <code><var>{element-local-name}</var></code> is not supported;
2589      <em>it might or might not be conforming</em>.</d:message>
2590    <d:desc xml:lang="en">    <d:desc xml:lang="en">
2591      <p>The conformant checker does not support the element.      <p>The conformant checker does not support the attribute.
2592      It cannot determine whether the document is conforming or not.</p>      It cannot determine whether the document is conforming or not.</p>
2593    </d:desc>    </d:desc>
2594  </d:item>  </d:item>
2595    
2596  <d:item name="link type"  <d:item name="unknown link type"
2597      class="unsupported" level="unsupported">      modules="ContentChecker::HTML">
2598    <d:message xml:lang="en">The link type <code><var>$0</var></code> is not    <d:message xml:lang="en">Link type <code><var>{value}</var></code> is not
2599    standardized or registered at the time of the release of the conformance    standardized or registered at the time of the release of the conformance
2600    checker; <em>it is non-conforming unless it has now been    checker; <em>it is non-conforming unless it now has been
2601    registered</em>.</d:message>    registered</em>.</d:message>
2602    <d:desc xml:lang="en">    <d:desc xml:lang="en">
2603      <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.
# Line 987  Web Document Conformance Checker (BETA)< Line 2610  Web Document Conformance Checker (BETA)<
2610      The link type might have been added to the registry since then.      The link type might have been added to the registry since then.
2611      In such case it might be conforming.  Otherwise, the      In such case it might be conforming.  Otherwise, the
2612      document is non-conforming.</p>      document is non-conforming.</p>
2613    
2614        <dl>
2615        <dt>Link types <code>shortcut icon</code></dt>
2616            <dd>Link type <code>shortcut</code> is not registered.
2617            Use only <code>icon</code> for linking to so-called favicon.</dd>
2618        </dl>
2619    </d:desc>    </d:desc>
2620  </d:item>  </d:item>
2621    
2622  <d:item name="event handler"  <d:item name="event handler"
2623      class="unsupported" level="unsupported">      modules="ContentChecker::HTML">
2624    <d:message xml:lang="en">Conformance checking for event handler attribute    <d:message xml:lang="en">Conformance checking for event handler attribute
2625    is not supported; <em>it might or might not be conforming.</em></d:message>    is not supported; <em>it might or might not be conforming.</em></d:message>
2626  </d:item>  </d:item>
2627    
 <d:item name="language tag"  
     class="unsupported" level="unsupported">  
   <d:message xml:lang="en">Conformance checking for language tag  
   is not supported; <em>it might or might not be conforming.</em></d:message>  
 </d:item>  
   
2628  <d:item name="media query"  <d:item name="media query"
2629      class="unsupported" level="unsupported">      modules="ContentChecker::HTML">
2630    <d:message xml:lang="en">Conformance checking for media query    <d:message xml:lang="en">Conformance checking for media query
2631    is not supported; <em>it might or might not be conforming.</em></d:message>    is not supported; <em>it might or might not be conforming.</em></d:message>
2632  </d:item>  </d:item>
2633    
2634  <d:item name="script"  <d:item name="XML script lang"
2635      class="unsupported" level="unsupported">      modules="ContentChecker::HTML">
2636    <d:message xml:lang="en">Conformance checking for script    <d:message xml:lang="en">Conformance checking for script
2637    language <code><var>$0</var></code> is not supported;    language <code><var>{text}</var></code> is not supported;
2638    <em>it might or might not be conforming.</em></d:message>    <em>it might or might not be conforming.</em></d:message>
2639  </d:item>  </d:item>
2640    
2641  <d:item name="style"  <d:item name="XML style lang"
2642      class="unsupported" level="unsupported">      modules="ContentChecker::HTML">
2643    <d:message xml:lang="en">Conformance checking for style    <d:message xml:lang="en">Conformance checking for style
2644    language <code><var>$0</var></code> is not supported;    language <code><var>{text}</var></code> is not supported;
2645    <em>it might or might not be conforming.</em></d:message>    <em>it might or might not be conforming.</em></d:message>
2646  </d:item>  </d:item>
2647    
2648  </section>  </section>
2649    
2650  <d:catalog>  <d:cat name="WebHACC:Title">
2651  manakaiCompatMode:quirks;;Quirks Mode    <d:text xml:lang="en">WebHACC (β)</d:text>
2652  manakaiCompatMode:limited quirks;;Limited Quirks Mode  </d:cat>
2653  manakaiCompatMode:no quirks;;No Quirks Mode  
2654    <d:cat name="WebHACC:Heading">
2655  manakaiIsHTML:1;;HTML Document    <d:text xml:lang="en">
2656  manakaiIsHTML:0;;XML Document      <a href="../cc-about"><abbr title="Web Hypertext Application Conformance Checker (β)"><img src="../icons/title" alt="WebHACC"/></abbr></a>
2657  </d:catalog>    </d:text>
2658      <d:text xml:lang="ja">
2659        <a href="../cc-about"><abbr title="Web ハイパーテキスト応用適合性検査器 (β)"><img src="../icons/title" alt="WebHACC"/></abbr></a>
2660      </d:text>
2661    </d:cat>
2662    
2663    <d:cat name="Input">
2664      <d:text xml:lang="en">Input</d:text>
2665      <d:text xml:lang="ja">入力</d:text>
2666    </d:cat>
2667    
2668    <d:cat name="By URL">
2669      <d:text xml:lang="en">By URL</d:text>
2670      <d:text xml:lang="ja">URL で指定</d:text>
2671    </d:cat>
2672    
2673    <d:cat name="By direct input">
2674      <d:text xml:lang="en">By direct input</d:text>
2675      <d:text xml:lang="ja">直接入力</d:text>
2676    </d:cat>
2677    
2678    <d:cat name="Options">
2679      <d:text xml:lang="en">More options</d:text>
2680      <d:text xml:lang="ja">検査オプション</d:text>
2681    </d:cat>
2682    
2683    <d:cat name="Check error page">
2684      <d:text xml:lang="en">Check an error page</d:text>
2685      <d:text xml:lang="ja">誤り頁を検査する</d:text>
2686    </d:cat>
2687    
2688    <d:cat name="Content type">
2689      <d:text xml:lang="en">Content type</d:text>
2690      <d:text xml:lang="ja">内容型</d:text>
2691    </d:cat>
2692    
2693    <d:cat name="Charset">
2694      <d:text xml:lang="en">Character encoding</d:text>
2695      <d:text xml:lang="ja">文字符号化</d:text>
2696    </d:cat>
2697    
2698    <d:cat name="As specified">
2699      <d:text xml:lang="en">As specified</d:text>
2700      <d:text xml:lang="ja">指定通り</d:text>
2701    </d:cat>
2702    
2703    <d:cat name="Japanese charsets">
2704      <d:text xml:lang="en">Japanese character encodings</d:text>
2705      <d:text xml:lang="ja">日本語用文字符号化</d:text>
2706    </d:cat>
2707    
2708    <d:cat name="European charsets">
2709      <d:text xml:lang="en">European character encodings</d:text>
2710      <d:text xml:lang="ja">欧米言語用文字符号化</d:text>
2711    </d:cat>
2712    
2713    <d:cat name="Asian charsets">
2714      <d:text xml:lang="en">Asian character encodings</d:text>
2715      <d:text xml:lang="ja">アジア諸語用文字符号化</d:text>
2716    </d:cat>
2717    
2718    <d:cat name="Unicode charsets">
2719      <d:text xml:lang="en">Unicode character encodings</d:text>
2720      <d:text xml:lang="ja">Unicode 系文字符号化</d:text>
2721    </d:cat>
2722    
2723    <d:cat name="Document source to check">
2724      <d:text xml:lang="en">Document source to check</d:text>
2725      <d:text xml:lang="ja">検査する文書のソース</d:text>
2726    </d:cat>
2727    
2728    <d:cat name="Check">
2729      <d:text xml:lang="en">Check</d:text>
2730      <d:text xml:lang="ja">検査</d:text>
2731    </d:cat>
2732    
2733    <d:cat name="Setting innerHTML">
2734      <d:text xml:lang="en">Setting <code>innerHTML</code> of HTML element</d:text>
2735      <d:text xml:lang="ja"><code>innerHTML</code> に値を設定する HTML 要素</d:text>
2736    </d:cat>
2737    
2738    <d:cat name="Information">
2739      <d:text xml:lang="en">Information</d:text>
2740      <d:text xml:lang="ja">情報</d:text>
2741    </d:cat>
2742    
2743    <d:cat name="HTTP Header">
2744      <d:text xml:lang="en"><abbr title="Hypertext Transfer Protocol">HTTP</abbr>
2745          Header</d:text>
2746      <d:text xml:lang="ja"><abbr lang="en" title="Hypertext Transfer Protocol">HTTP</abbr>
2747          頭部</d:text>
2748    </d:cat>
2749    
2750    <d:cat name="Parse Errors Section">
2751      <d:text xml:lang="en">Parse Errors</d:text>
2752      <d:text xml:lang="ja">構文誤り</d:text>
2753    </d:cat>
2754    
2755    <d:cat name="Parse Errors">
2756      <d:text xml:lang="en">Parse Errors</d:text>
2757      <d:text xml:lang="ja">構文誤り</d:text>
2758    </d:cat>
2759    
2760    <d:cat name="Document Source">
2761      <d:text xml:lang="en">Document Source</d:text>
2762      <d:text xml:lang="ja">文書のソース</d:text>
2763    </d:cat>
2764    
2765    <d:cat name="Source">
2766      <d:text xml:lang="en">Source</d:text>
2767      <d:text xml:lang="ja">ソース</d:text>
2768    </d:cat>
2769    
2770    <d:cat name="Tables Section">
2771      <d:text xml:lang="en">Structure of Tables</d:text>
2772      <d:text xml:lang="ja">表の構造</d:text>
2773    </d:cat>
2774    
2775    <d:cat name="Tables">
2776      <d:text xml:lang="en">Tables</d:text>
2777      <d:text xml:lang="ja">表</d:text>
2778    </d:cat>
2779    
2780    <d:cat name="Document Tree">
2781      <d:text xml:lang="en">Document Tree</d:text>
2782      <d:text xml:lang="ja">文書木</d:text>
2783    </d:cat>
2784    
2785    <d:cat name="Tree">
2786      <d:text xml:lang="en">Tree</d:text>
2787      <d:text xml:lang="ja">木</d:text>
2788    </d:cat>
2789    
2790    <d:cat name="Document">
2791      <d:text xml:lang="en">Document</d:text>
2792      <d:text xml:lang="ja">文書</d:text>
2793    </d:cat>
2794    
2795    <d:cat name="Document Structure">
2796      <d:text xml:lang="en">Document Structure</d:text>
2797      <d:text xml:lang="ja">文書構造</d:text>
2798    </d:cat>
2799    
2800    <d:cat name="Structure">
2801      <d:text xml:lang="en">Structure</d:text>
2802      <d:text xml:lang="ja">構造</d:text>
2803    </d:cat>
2804    
2805    <d:cat name="Reformatted Document Source">
2806      <d:text xml:lang="en">Reformatted Document Source</d:text>
2807      <d:text xml:lang="ja">再整形した文書のソース</d:text>
2808    </d:cat>
2809    
2810    <d:cat name="Reformatted">
2811      <d:text xml:lang="en">Reformatted</d:text>
2812      <d:text xml:lang="ja">再整形</d:text>
2813    </d:cat>
2814    
2815    <d:cat name="Structural Errors">
2816      <d:text xml:lang="en">Structural Errors</d:text>
2817      <d:text xml:lang="ja">構造的誤り</d:text>
2818    </d:cat>
2819    
2820    <d:cat name="Struct. Errors">
2821      <d:text xml:lang="en">Struct. Errors</d:text>
2822      <d:text xml:lang="ja">構造誤り</d:text>
2823    </d:cat>
2824    
2825    <d:cat name="Transfer Errors">
2826      <d:text xml:lang="en">Transfer Errors</d:text>
2827      <d:text xml:lang="ja">転送誤り</d:text>
2828    </d:cat>
2829    
2830    <d:cat name="Trans. Errors">
2831      <d:text xml:lang="en">Trans. Errors</d:text>
2832      <d:text xml:lang="ja">転送誤り</d:text>
2833    </d:cat>
2834    
2835    <d:cat name="Result">
2836      <d:text xml:lang="en">Result</d:text>
2837      <d:text xml:lang="ja">結果</d:text>
2838    </d:cat>
2839    
2840    <d:cat name="manakaiCompatMode:quirks">
2841      <d:text xml:lang="en">Quirks Mode</d:text>
2842      <d:text xml:lang="ja">奇癖モード</d:text>
2843    </d:cat>
2844    
2845    <d:cat name="manakaiCompatMode:limited quirks">
2846      <d:text xml:lang="en">Limited Quirks Mode</d:text>
2847      <d:text xml:lang="ja">限定奇癖モード</d:text>
2848    </d:cat>
2849    
2850    <d:cat name="manakaiCompatMode:no quirks">
2851      <d:text xml:lang="en">No Quirks Mode</d:text>
2852      <d:text xml:lang="ja">無奇癖モード</d:text>
2853    </d:cat>
2854    
2855    <d:cat name="manakaiIsHTML:1">
2856      <d:text xml:lang="en">HTML Document</d:text>
2857      <d:text xml:lang="ja">HTML 文書</d:text>
2858    </d:cat>
2859    
2860    <d:cat name="manakaiIsHTML:0">
2861      <d:text xml:lang="en">XML Document</d:text>
2862      <d:text xml:lang="ja">XML 文書</d:text>
2863    </d:cat>
2864    
2865    <d:cat name="manakaiCharset">
2866      <d:text xml:lang="en"><code>charset</code> parameter</d:text>
2867      <d:text xml:lang="ja"><code lang="en">charset</code> 引数</d:text>
2868    </d:cat>
2869    
2870    <d:cat name="inputEncoding">
2871      <d:text xml:lang="en">Input character encoding</d:text>
2872      <d:text xml:lang="ja">入力に用いた文字符号化</d:text>
2873    </d:cat>
2874    
2875    <d:cat name="xmlVersion">
2876      <d:text xml:lang="en">XML <code>version</code></d:text>
2877      <d:text xml:lang="ja">XML <code lang="en">version</code></d:text>
2878    </d:cat>
2879    
2880    <d:cat name="xmlEncoding">
2881      <d:text xml:lang="en">XML <code>encoding</code></d:text>
2882      <d:text xml:lang="ja">XML <code lang="en">encoding</code></d:text>
2883    </d:cat>
2884    
2885    <d:cat name="xmlStandalone">
2886      <d:text xml:lang="en">XML <code>standalone</code></d:text>
2887      <d:text xml:lang="ja">XML <code lang="en">standalone</code></d:text>
2888    </d:cat>
2889    
2890    <d:cat name="... with BOM">
2891      <d:text xml:lang="en"> (with <code class="charname"><abbr title="BYTE ORDER MARK">BOM</abbr></code>)</d:text>
2892      <d:text xml:lang="ja"> (<code class="charname" lang="en"><abbr title="BYTE ORDER MARK">BOM</abbr></code> つき)</d:text>
2893    </d:cat>
2894    
2895    <d:cat name="URL">
2896      <d:text xml:lang="en"><abbr title="Uniform Resource Locator">URL</abbr></d:text>
2897      <d:text xml:lang="ja"><abbr title="統一資源所在子">URL</abbr></d:text>
2898    </d:cat>
2899    
2900    <d:cat name="URLs">
2901      <d:text xml:lang="en"><abbr title="Uniform Resource Locators">URLs</abbr></d:text>
2902      <d:text xml:lang="ja"><abbr title="統一資源所在子">URL</abbr></d:text>
2903    </d:cat>
2904    
2905    <d:cat name="Container Node">
2906      <d:text xml:lang="en">Container Node</d:text>
2907      <d:text xml:lang="ja">この文書を含む節点</d:text>
2908    </d:cat>
2909    
2910    <d:cat name="Table Element">
2911      <d:text xml:lang="en">Table Element</d:text>
2912      <d:text xml:lang="ja">表要素</d:text>
2913    </d:cat>
2914    
2915    <d:cat name="Base URL">
2916      <d:text xml:lang="en">Base URL</d:text>
2917      <d:text xml:lang="ja">基底 URL</d:text>
2918    </d:cat>
2919    
2920    <d:cat name="Internet Media Type">
2921      <d:text xml:lang="en">Internet Media Type</d:text>
2922      <d:text xml:lang="ja">インターネット媒体型</d:text>
2923    </d:cat>
2924    
2925    <d:cat name="Character Encoding">
2926      <d:text xml:lang="en">Character Encoding</d:text>
2927      <d:text xml:lang="ja">文字符号化</d:text>
2928    </d:cat>
2929    
2930    <d:cat name="Byte Length">
2931      <d:text xml:lang="en">Byte Length</d:text>
2932      <d:text xml:lang="ja">バイト長</d:text>
2933    </d:cat>
2934    
2935    <d:cat name="Character Length">
2936      <d:text xml:lang="en">Character Length</d:text>
2937      <d:text xml:lang="ja">文字長</d:text>
2938    </d:cat>
2939    
2940    <d:cat name="... overridden">
2941      <d:text xml:lang="en"> (<i>overridden</i>)</d:text>
2942      <d:text xml:lang="ja"> (<i>上書き</i>)</d:text>
2943    </d:cat>
2944    
2945    <d:cat name="... overridden, official type is #">
2946      <d:text xml:lang="en"> (<i>overridden</i>; official type is
2947          <code lang="en" class="MIME"><var>{text}</var></code>)</d:text>
2948      <d:text xml:lang="ja"> (<i>上書き</i>, 公式型は
2949          <code lang="en" class="MIME"><var>{text}</var></code>)</d:text>
2950    </d:cat>
2951    
2952    <d:cat name="... sniffed">
2953      <d:text xml:lang="en"> (<i>sniffed</i>)</d:text>
2954      <d:text xml:lang="ja"> (<i>探知結果</i>)</d:text>
2955    </d:cat>
2956    
2957    <d:cat name="byte">
2958      <d:text xml:lang="en">byte</d:text>
2959      <d:text xml:lang="ja">バイト</d:text>
2960    </d:cat>
2961    
2962    <d:cat name="bytes">
2963      <d:text xml:lang="en">bytes</d:text>
2964      <d:text xml:lang="ja">バイト</d:text>
2965    </d:cat>
2966    
2967    <d:cat name="character">
2968      <d:text xml:lang="en">character</d:text>
2969      <d:text xml:lang="ja">文字</d:text>
2970    </d:cat>
2971    
2972    <d:cat name="characters">
2973      <d:text xml:lang="en">characters</d:text>
2974      <d:text xml:lang="ja">文字</d:text>
2975    </d:cat>
2976    
2977    <d:cat name="Line #">
2978      <d:text xml:lang="en">Line <var>{text}</var></d:text>
2979      <d:text xml:lang="ja"><var>{text}</var> 行</d:text>
2980    </d:cat>
2981    
2982    <d:cat name="column #">
2983      <d:text xml:lang="en">column <var>{text}</var></d:text>
2984      <d:text xml:lang="ja"><var>{text}</var> 列</d:text>
2985    </d:cat>
2986    
2987    <d:cat name="Index #">
2988      <d:text xml:lang="en">Index <var>{text}</var></d:text>
2989      <d:text xml:lang="ja">索引 #<var>{text}</var></d:text>
2990    </d:cat>
2991    
2992    <d:cat name="Unknown location">
2993      <d:text xml:lang="en">Unknown location</d:text>
2994      <d:text xml:lang="ja">位置不明</d:text>
2995    </d:cat>
2996    
2997    <d:cat name="Table #">
2998      <d:text xml:lang="en">Structure of Table #<var>{text}</var></d:text>
2999      <d:text xml:lang="ja">表 #<var>{text}</var> の構造</d:text>
3000    </d:cat>
3001    
3002    <d:cat name="Subdocument #">
3003      <d:text xml:lang="en">Subdocument #<var>{text}</var></d:text>
3004      <d:text xml:lang="ja">部分文書 #<var>{text}</var></d:text>
3005    </d:cat>
3006    
3007    <d:cat name="Sub #">
3008      <d:text xml:lang="en">Sub #<var>{text}</var></d:text>
3009      <d:text xml:lang="ja">部分 #<var>{text}</var></d:text>
3010    </d:cat>
3011    
3012    <d:cat name="...">
3013      <d:text xml:lang="en">..</d:text><!-- TODO: figure hyphen? -->
3014      <d:text xml:lang="ja">〜</d:text>
3015    </d:cat>
3016    
3017    <d:cat name="Score">
3018      <d:text xml:lang="en">Score</d:text>
3019      <d:text xml:lang="ja">得点</d:text>
3020    </d:cat>
3021    
3022    <d:cat name="Subtotal">
3023      <d:text xml:lang="en">Subtotal</d:text>
3024      <d:text xml:lang="ja">小計</d:text>
3025    </d:cat>
3026    
3027    <d:cat name="Total">
3028      <d:text xml:lang="en">Total</d:text>
3029      <d:text xml:lang="ja">合計</d:text>
3030    </d:cat>
3031    
3032    <d:cat name="Main document">
3033      <d:text xml:lang="en">Main document</d:text>
3034      <d:text xml:lang="ja">主文書</d:text>
3035    </d:cat>
3036    
3037    <d:cat name="Subdocuments">
3038      <d:text xml:lang="en">Subdocuments</d:text>
3039      <d:text xml:lang="ja">部分文書</d:text>
3040    </d:cat>
3041    
3042    <d:cat name="Transfer L.">
3043      <d:text xml:lang="en"><abbr title="Transfer protocol">Transfer</abbr></d:text>
3044      <d:text xml:lang="ja"><abbr title="転送プロトコル">転送</abbr></d:text>
3045    </d:cat>
3046    
3047    <d:cat name="Encode L.">
3048      <d:text xml:lang="en"><abbr title="Character encoding">Encoding</abbr></d:text>
3049      <d:text xml:lang="ja"><abbr title="文字符号化">符号</abbr></d:text>
3050    </d:cat>
3051    
3052    <d:cat name="Char L.">
3053      <d:text xml:lang="en"><abbr title="Coded characters">Character</abbr></d:text>
3054      <d:text xml:lang="ja"><abbr title="符号化文字">文字</abbr></d:text>
3055    </d:cat>
3056    
3057    <d:cat name="Syntax L.">
3058      <d:text xml:lang="en">Syntax</d:text>
3059      <d:text xml:lang="ja">構文</d:text>
3060    </d:cat>
3061    
3062    <d:cat name="Structure L.">
3063      <d:text xml:lang="en">Structure</d:text>
3064      <d:text xml:lang="ja">構造</d:text>
3065    </d:cat>
3066    
3067    <d:cat name="Semantics L.">
3068      <d:text xml:lang="en">Semantics</d:text>
3069      <d:text xml:lang="ja">意味</d:text>
3070    </d:cat>
3071    
3072    <d:cat name="N/A">
3073      <d:text xml:lang="en">N/A</d:text>
3074      <d:text xml:lang="ja">−</d:text>
3075    </d:cat>
3076    
3077    <d:cat name="No error found.">
3078      <d:text xml:lang="en">No error found.</d:text>
3079      <d:text xml:lang="ja">誤りは見つかりませんでした。</d:text>
3080    </d:cat>
3081    
3082    <d:cat name="No transfer error found.">
3083      <d:text xml:lang="en">This document has no transfer protocol header error.</d:text>
3084      <d:text xml:lang="ja">転送プロトコルの頭部に誤りは見つかりませんでした。</d:text>
3085    </d:cat>
3086    
3087    <d:cat name="No parse error found.">
3088      <d:text xml:lang="en">This document has no parse error.</d:text>
3089      <d:text xml:lang="ja">構文解析中に誤りは見つかりませんでした。</d:text>
3090    </d:cat>
3091    
3092    <d:cat name="No structural error found.">
3093      <d:text xml:lang="en">This document has no structral error.</d:text>
3094      <d:text xml:lang="ja">構造上の誤りは見つかりませんでした。</d:text>
3095    </d:cat>
3096    
3097    <d:cat name="This checker is work in progress.">
3098      <d:text xml:lang="en">
3099        <p><strong>Important</strong>: This conformance checking service
3100        is <em>under development</em>.  The result above might be <em>wrong</em>.</p>
3101      </d:text>
3102      <d:text xml:lang="ja">
3103        <p><strong>重要</strong>: この適合性検査サービスは<em>開発中</em>です。
3104        この結果は<em>間違い</em>かもしれません。</p>
3105      </d:text>
3106    </d:cat>
3107    
3108    <d:cat name="Conformance is conforming">
3109      <d:text xml:lang="en">No conformance‐error is
3110          found in this document.</d:text>
3111      <d:text xml:lang="ja">この文書に適合性に関わる誤りは見つかりませんでした。</d:text>
3112    </d:cat>
3113    
3114    <d:cat name="Conformance is should-error">
3115      <d:text xml:lang="en">This document
3116            is <strong>likely <em>non</em>-conforming</strong>, but in rare case
3117            it might be conforming.  The checker cannot determine whether
3118            this document is in the rare case or not.</d:text>
3119      <d:text xml:lang="ja">この文書は<strong>おそらく<em>不</em>適合</strong>ですが、
3120          稀に適合している場合もあります。適合性検査器はこの文書が稀な場合に該当するかどうか判定できません。</d:text>
3121    </d:cat>
3122    
3123    <d:cat name="Conformance is non-conforming">
3124      <d:text xml:lang="en">This document is
3125            <strong><em>non</em>-conforming</strong>.</d:text>
3126      <d:text xml:lang="ja">この文書は<strong><em>不</em>適合</strong>です。</d:text>
3127    </d:cat>
3128    
3129    <d:cat name="Conformance is uncertain">
3130      <d:text xml:lang="en">The conformance
3131            checker cannot decide whether the document is conforming or
3132            not, since the document contains one or more unsupported
3133            features.  The document might or might not be conforming.</d:text>
3134      <d:text xml:lang="ja">適合性検査器はこの文書が適合するかどうか判定できませんでした。
3135          この文書は適合性検査器が対応していない機能を使っています。
3136          この文書は適合しているかもしれませんし、していないかもしれません。</d:text>
3137    </d:cat>
3138    
3139    <d:cat name="Error level m">
3140      <d:text xml:lang="en"><a href="../error-description#level-m"><em class="rfc2119">MUST</em>‐level
3141            error</a></d:text>
3142      <d:text xml:lang="ja"><a href="../error-description#level-m"><em class="rfc2119" title="REQUIRED">必須</em>級の誤り</a></d:text>
3143    </d:cat>
3144    
3145    <d:cat name="Error level s">
3146      <d:text xml:lang="en"><a href="../error-description#level-s"><em class="rfc2119">SHOULD</em>‐level
3147            error</a></d:text>
3148      <d:text xml:lang="ja"><a href="../error-description#level-s"><em class="rfc2119" title="RECOMMENDED">推奨</em>級の誤り</a></d:text>
3149    </d:cat>
3150    
3151    <d:cat name="Error level w">
3152      <d:text xml:lang="en"><a href="../error-description#level-w">Warning</a></d:text>
3153      <d:text xml:lang="ja"><a href="../error-description#level-w">警告</a></d:text>
3154    </d:cat>
3155    
3156    <d:cat name="Error level i">
3157      <d:text xml:lang="en"><a href="../error-description#level-i">Information</a></d:text>
3158      <d:text xml:lang="ja"><a href="../error-description#level-i">情報</a></d:text>
3159    </d:cat>
3160    
3161    <d:cat name="Error level u">
3162      <d:text xml:lang="en"><a href="../error-description#level-u">Not
3163          supported</a></d:text>
3164      <d:text xml:lang="ja"><a href="../error-description#level-u">未対応</a></d:text>
3165    </d:cat>
3166    
3167    <section id="levels">
3168    <h2>Error Levels</h2>
3169    
3170    <table id="levels-table">
3171    <thead>
3172    <tr><th scope="col">Level</th>
3173    <th scope="col">Conforming?</th>
3174    <th scope="col">Description</th>
3175    </tr>
3176    </thead>
3177    <tbody>
3178    <tr id="level-m" class="level-m">
3179    <th scope="row"><em class="rfc2119">MUST</em>‐level error</th>
3180    <td>Non‐conforming.</td>
3181    <td>A violation to a hard requirement of the specification.
3182    The document is non‐conforming.</td>
3183    </tr>
3184    <tr id="level-s" class="level-s">
3185    <th scope="row"><em class="rfc2119">SHOULD</em>‐level error</th>
3186    <td>Non‐conforming, but <em>in some case</em>
3187    conforming.</td>
3188    <td>A violation to a requirement of the specification.
3189    The violation might be legitimize in some case.  Otherwise,
3190    the document is non‐conforming.</td>
3191    </tr>
3192    <tr id="level-w" class="level-w">
3193    <th scope="row">Warning</th>
3194    <td>Conforming.</td>
3195    <td>A warning is an advice from the conformance checker to avoid
3196    to solve a problem in a confusing or possibly wrong way.
3197    It does not affect to the conformance of the document, and
3198    may sometimes be inappropriate.</td>
3199    </tr>
3200    <tr id="level-i" class="level-i">
3201    <th scope="row">Information</th>
3202    <td>Conforming.</td>
3203    <td>An informational message just provides an additional information
3204    on the feature used in the document or the status of the retrieval
3205    or so on.
3206    It does not affect to the conformance of the document.</td>
3207    </tr>
3208    <tr id="level-u" class="level-u">
3209    <th scope="row">Not supported</th>
3210    <td><em>Unknown</em>.</td>
3211    <td>Some feature that is not supported by the conformance checker
3212    is used in the document.</td>
3213    </tr>
3214    </tbody>
3215    </table>
3216    </section>
3217    
3218  <section id="license">  <section id="license">
3219  <h2>License of This Document</h2>  <h2>License of This Document</h2>
3220    
3221  <p>Copyright 2007 <a href="http://suika.fam.cx/~wakaba/who?">Wakaba</a></p>  <p>Copyright <time>2007</time>‐<time>2008</time>
3222  <p>This library is free software; you can redistribute it  <a href="http://suika.fam.cx/~wakaba/who?" rel="author" xml:lang="ja">Wakaba</a>
3223    <code class="mail">&lt;<a href="mailto:w@suika.fam.cx">w@suika.fam.cx</a>></code>.</p>
3224    
3225    <p>This document is free software; you can redistribute it
3226  and/or modify it under the same terms as Perl itself.</p>  and/or modify it under the same terms as Perl itself.</p>
3227  </section>  </section>
3228    

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24