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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.30 - (hide annotations) (download) (as text)
Fri Aug 15 12:11:56 2008 UTC (16 years, 3 months ago) by wakaba
Branch: MAIN
Changes since 1.29: +670 -81 lines
File MIME type: text/xml
++ ChangeLog	15 Aug 2008 12:10:51 -0000
	* error-description-source.xml: Missing entries for
	Whatpm::ContentChecker and Whatpm::ContentChecker::HTML
	error types are added.  Error entries used by these
	modules are marked as such.

2008-08-15  Wakaba  <wakaba@suika.fam.cx>

++ html/WebHACC/Language/ChangeLog	15 Aug 2008 12:11:51 -0000
	* DOM.pm: Use error's own "layer" parameter, if any.

2008-08-15  Wakaba  <wakaba@suika.fam.cx>

++ html/WebHACC/ChangeLog	15 Aug 2008 12:11:25 -0000
	* Output.pm (nl_text): New rule, <var>{value}</var>,
	is implemented.

2008-08-15  Wakaba  <wakaba@suika.fam.cx>

1 wakaba 1.1 <!DOCTYPE html>
2     <html xmlns="http://www.w3.org/1999/xhtml"
3     xmlns:d="http://suika.fam.cx/~wakaba/archive/2007/wdcc-desc/"
4     id="error-description">
5     <head>
6     <title xml:lang="en">Description of Errors &#x2014;
7     Web Document Conformance Checker (BETA)</title>
8     <link rel="stylesheet" href="cc-style"/>
9     <link rel="license" href="#license"/>
10     </head>
11     <body>
12     <h1>Description of Errors</h1>
13    
14 wakaba 1.23 <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 wakaba 1.16 <section id="html5-character-encoding">
23     <h2>HTML5 Character Encoding Errors</h2>
24    
25 wakaba 1.30 <d:item name="disallowed character encoding"
26     modules="ContentChecker">
27     <d:message xml:lang="en">Character encoding <code><var>{text}</var></code>
28 wakaba 1.16 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 wakaba 1.30 <d:item name="bad character encoding"
36     modules="ContentChecker">
37     <d:message xml:lang="en">Character encoding <code><var>{text}</var></code>
38 wakaba 1.16 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 wakaba 1.30 <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 wakaba 1.16 <d:desc xml:lang="en">
51     <p>Use of UTF-8 as the character encoding of the document is encouraged,
52 wakaba 1.21 though the use of another character encoding is still conforming.</p>
53 wakaba 1.16 </d:desc>
54     </d:item>
55    
56 wakaba 1.30 <d:item name="character encoding unchecked"
57     modules="ContentChecker">
58 wakaba 1.17 <d:message xml:lang="en">Conformance for character encoding requirements
59 wakaba 1.30 cannot be checked, since the input is not a byte stream.</d:message>
60 wakaba 1.17 <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 wakaba 1.30 <d:item name="no character encoding declaration"
70     modules="ContentChecker">
71 wakaba 1.16 <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 wakaba 1.17 specified in lower‐level protocol, e.g. in <abbr>HTTP</abbr>,
77 wakaba 1.16 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 wakaba 1.30 <d:item name="non ascii superset"
91     modules="ContentChecker">
92 wakaba 1.16 <d:message xml:lang="en">No character encoding metadata is found
93 wakaba 1.17 in lower‐level protocol nor is there <abbr>BOM</abbr>, while
94 wakaba 1.30 character encoding <code><var>{text}</var></code>
95 wakaba 1.16 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 wakaba 1.17 in lower‐level protocol, e.g. in <abbr>HTTP</abbr>, and
99 wakaba 1.16 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 wakaba 1.29 <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 wakaba 1.16 <d:message xml:lang="en">While parsing the document as
162 wakaba 1.29 <code><var>{text}</var></code>, a character encoding declaration specifying
163     a different character encoding is found. The document
164 wakaba 1.16 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 wakaba 1.21 to detect the character encoding might be a result of non‐conformance
172 wakaba 1.16 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 wakaba 1.29
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 wakaba 1.16 </section>
203    
204 wakaba 1.2 <section id="html5-tokenize-error">
205     <h2>HTML5 Parse Errors in Tokenization Stage</h2>
206 wakaba 1.1
207 wakaba 1.3 <d:item name="after html"
208     class="parse-error">
209     <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
210     is not allowed after the end tag <code>&lt;/html></code>.</d:message>
211     <d:desc xml:lang="en">
212     <p>The start or end tag of an element appears after the
213     <code>html</code> element has been closed. The document is
214     non-conforming.</p>
215    
216     <p>Any content of the document other than comments
217     must be put into the <code>html</code> element.</p>
218     </d:desc>
219     </d:item>
220    
221 wakaba 1.7 <d:item name="after body"
222     class="parse-error">
223     <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
224     is not allowed after the end tag <code>&lt;/body></code>.</d:message>
225     <d:desc xml:lang="en">
226     <p>The start or end tag of an element appears after the
227     <code>body</code> element has been closed. The document is
228     non-conforming.</p>
229    
230     <p>Any content of the document other than <code>head</code>
231     contents and comments must be put into the <code>body</code>
232     element.</p>
233     </d:desc>
234     </d:item>
235    
236 wakaba 1.29 <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 wakaba 1.3 <d:item name="bare ero"
252 wakaba 1.29 class="tokenize-error"
253     modules="HTML::Parser">
254 wakaba 1.3 <d:message xml:lang="en">The <code>&amp;</code> character must
255 wakaba 1.22 be escaped as <code class="html example">&amp;amp;</code>.</d:message>
256 wakaba 1.3 <d:desc xml:lang="en">
257 wakaba 1.15 <p>An <code>&amp;</code> character which
258 wakaba 1.3 is not part of any reference appears in the input stream.
259 wakaba 1.15 The document is non‐conforming.</p>
260 wakaba 1.3
261 wakaba 1.15 <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 wakaba 1.9
264 wakaba 1.3 <p>The <code>&amp;</code> character must
265     be the first character of a reference:
266 wakaba 1.15 <dl class="switch">
267 wakaba 1.3 <dt>Named entity reference</dt>
268     <dd><pre class="html example"><code>&amp;<var>entity-name</var>;</code></pre>
269     where <var>entity-name</var> is the name of the
270     character entity to be referenced.</dd>
271     <dt>Numeric character reference</dt>
272     <dd><pre class="html example"><code>&amp;#<var>d</var>;</code></pre>
273     where <var>d</var> is the decimal representation of
274     the code position of the character to be referenced.</dd>
275     <dt>Hexadecimal character reference</dt>
276     <dd><pre class="html example"><code>&amp;#x<var>h</var>;</code></pre>
277     where <var>h</var> is the hexadecimal representation
278     of the code position of the character to be referenced.</dd>
279     </dl>
280     </p>
281    
282     <p>To represent <code>&amp;</code> as a data character, use
283     named entity reference:
284     <pre class="html example"><code>&amp;amp;</code></pre>
285     </p>
286     </d:desc>
287     </d:item>
288    
289 wakaba 1.7 <d:item name="bare etago"
290 wakaba 1.29 class="tokenize-error"
291     modules="HTML::Parser">
292 wakaba 1.7 <d:message xml:lang="en">A <code>&lt;/</code> string is not followed
293     by a tag name.</d:message><!-- </ EOF -->
294     <d:desc xml:lang="en">
295     <p>There is a <code>&lt;</code> (<code>U+003C</code>
296     <code class="charname">LESS-THAN SIGN</code>) character
297     immediately followed by a <code>/</code> (<code>U+005F</code>
298     <code>SOLIDUS</code>) character, which is not part
299     of any end tag, in the input stream. The document
300     is non-conforming.</p>
301    
302     <p>The <code>&lt;/</code> sequence immediately followed
303     by an <abbr title="End of file pseudo-character">EOF</abbr> is
304     interpreted as a string data of <code>&lt;/</code>.</p>
305    
306     <p>The <code>&lt;/</code> sequence as string data must
307     be escaped as:
308     <pre class="html example"><code>&amp;lt;/</code></pre>
309     </p>
310     </d:desc>
311     </d:item>
312    
313 wakaba 1.4 <d:item name="bare stago"
314 wakaba 1.29 class="tokenize-error"
315     modules="HTML::Parser">
316 wakaba 1.4 <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>
318     <d:desc xml:lang="en">
319 wakaba 1.6 <p>A <code>&lt;</code> (<code>U+003C</code>
320     <code class="charname">LESS-THAN SIGN</code>) character which is not part
321     of any markup appears in the input stream.</p>
322 wakaba 1.4
323     <p>The <code>&lt;</code> character as a data character must
324     be escaped as:
325 wakaba 1.6 <pre class="html example"><code>&amp;lt;</code></pre>
326 wakaba 1.4 </p>
327     </d:desc>
328     </d:item>
329    
330 wakaba 1.3 <d:item name="bare nero"
331 wakaba 1.29 class="tokenize-error"
332     modules="HTML::Parser">
333 wakaba 1.3 <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>
335     <d:desc xml:lang="en">
336     <p>An <code>&amp;</code> (<code>U+0026</code>
337     <code class="charname">AMPERSAND</code>) character immediately
338     followed by a <code>#</code> (<code>U+0023</code>
339     <code>NUMBER SIGN</code>) character which
340     is not part of any reference appears in the input stream.
341     The document is non-conforming.</p>
342    
343     <p>The string <code>&amp;#</code> must be the first two characters
344     of a reference:
345 wakaba 1.15 <dl class="switch">
346 wakaba 1.3 <dt>Numeric character reference</dt>
347     <dd><pre class="html example"><code>&amp;#<var>d</var>;</code></pre>
348     where <var>d</var> is the decimal representation of
349     the code point of the character to be referenced.</dd>
350     <dt>Hexadecimal character reference</dt>
351     <dd><pre class="html example"><code>&amp;#x<var>h</var>;</code></pre>
352     where <var>h</var> is the hexadecimal representation
353     of the code point of the character to be referenced.</dd>
354     </dl>
355     </p>
356    
357     <p>To represent <code>&amp;#</code> as data characters, use
358 wakaba 1.6 a named entity reference for the <code>&amp;</code> character:
359 wakaba 1.3 <pre class="html example"><code>&amp;amp;#</code></pre>
360     </p>
361     </d:desc>
362     </d:item>
363    
364     <d:item name="bare hcro"
365 wakaba 1.29 class="tokenize-error"
366     modules="HTML::Parser">
367 wakaba 1.3 <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>
369     <d:desc xml:lang="en">
370     <p>The string <code>&amp;#x</code> or <code>&amp;#X</code> which
371     is not part of any reference appears in the input stream.
372     The document is non-conforming.</p>
373    
374     <p>The string <code>&amp;#x</code> or <code>&amp;#X</code> must
375     be the first three characters of a hexadecimal reference:
376     <pre class="html example"><code>&amp;#x<var>h</var>;</code></pre>
377     where <var>h</var> is the hexadecimal representation
378     of the code point of the character to be referenced.</p>
379    
380     <p>To represent <code>&amp;#x</code> as data characters, use
381 wakaba 1.6 a named entity reference for the <code>&amp;</code> character:
382 wakaba 1.3 <pre class="html example"><code>&amp;amp;#x</code></pre>
383     </p>
384     </d:desc>
385     </d:item>
386    
387 wakaba 1.9 <d:item name="bogus comment"
388 wakaba 1.29 class="tokenize-error"
389     modules="HTML::Parser">
390 wakaba 1.9 <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 wakaba 1.15 <dd>In HTML document, comments must be introduced by
403     <code class="example">&lt;!--</code> (<code>&lt;!</code>
404     <em>immediately</em> followed
405 wakaba 1.9 by <em>two</em> <code>-</code>s) and must be terminated by
406 wakaba 1.15 <code class="example">--></code>.
407     Strings <code>&lt;!</code> not followed
408 wakaba 1.9 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 wakaba 1.15 <dd>Marked sections are not allowed in HTML document.</dd>
412 wakaba 1.9 <dt>Markup declarations</dt>
413 wakaba 1.15 <dd>Markup declarations, except for <code>DOCTYPE</code>
414     and comment declarations, are not allowed in HTML document.</dd>
415 wakaba 1.9 <dt>String <code>&lt;!</code></dt>
416     <dd>String <code>&lt;!</code> must be escaped as
417 wakaba 1.15 <code class="example">&amp;lt;!</code>.</dd>
418 wakaba 1.9 </dl>
419     </d:desc>
420     </d:item>
421    
422 wakaba 1.7 <d:item name="bogus end tag"
423 wakaba 1.29 class="tokenize-error"
424     modules="HTML::Parser">
425 wakaba 1.9 <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 wakaba 1.7 <d:desc xml:lang="en">
428     <p>There is a <code>&lt;</code> (<code>U+003C</code>
429     <code class="charname">LESS-THAN SIGN</code>) character
430     immediately followed by a <code>/</code> (<code>U+005F</code>
431     <code>SOLIDUS</code>) character, which is not part
432     of any end tag, in the input stream. The document
433     is non-conforming.</p>
434    
435     <p>The <code>&lt;/</code> sequence not followed by a
436     tag name is parsed as an opening of bogus comment.</p>
437    
438     <p>The <code>&lt;/</code> sequence as string data must
439     be escaped as:
440     <pre class="html example"><code>&amp;lt;/</code></pre>
441     </p>
442     </d:desc>
443     </d:item>
444    
445 wakaba 1.29 <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 wakaba 1.4 <d:item name="dash in comment"
461 wakaba 1.29 class="tokenize-error"
462     modules="HTML::Parser">
463 wakaba 1.4 <d:message xml:lang="en">There is a <code>--</code> sequence
464     in a comment.</d:message>
465     <d:desc xml:lang="en">
466     <p>There is a <code>-</code> (<code>U+002D</code>
467     <code class="charname">HYPHEN-MINUS</code>) character
468     at the end of the comment or a <code>--</code> sequence
469     in the comment. The document is non-conforming.</p>
470    
471     <p>Comments cannot contain a string <code>--</code>, as in XML.
472     Unlike SGML, there cannot be more than one comments
473     (where <i>comment</i> is an SGML term) in the comment
474     declaration.</p>
475     </d:desc>
476     </d:item>
477    
478 wakaba 1.1 <d:item name="duplicate attribute"
479 wakaba 1.29 class="tokenize-error"
480     modules="HTML::Parser">
481 wakaba 1.6 <d:message xml:lang="en">There are two attributes with name
482 wakaba 1.29 <code><var>{text}</var></code>.</d:message>
483 wakaba 1.1 <d:desc xml:lang="en">
484 wakaba 1.3 <p>There are more than one attributes with the same
485     name in a tag. The document is non-conforming.</p>
486 wakaba 1.1
487     <p>The <code>motion</code> attribute is not part of the HTML standard.
488     Use <code>img</code> element with animation GIF instead.</p>
489     </d:desc>
490     </d:item>
491    
492 wakaba 1.29 <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 wakaba 1.1 <d:item name="nestc"
520 wakaba 1.29 class="tokenize-error"
521     modules="HTML::Parser">
522 wakaba 1.10 <d:message xml:lang="en">Polytheistic slash (<code>/></code>) cannot be
523 wakaba 1.1 used for this element.</d:message>
524     <d:desc xml:lang="en">
525 wakaba 1.10 <p>Polytheistic slash (<code>/></code>) must not be used
526 wakaba 1.3 for the element. The document is non-conforming.</p>
527    
528 wakaba 1.10 <p>The polytheistic slash can only be
529 wakaba 1.1 used for <code>base</code>, <code>link</code>, <code>meta</code>,
530     <code>hr</code>, <code>br</code>, <code>img</code>,
531     <code>embed</code>, <code>param</code>, <code>area</code>,
532 wakaba 1.3 <code>col</code>, and <code>input</code> elements.</p>
533 wakaba 1.1
534 wakaba 1.12 <dl class="switch">
535 wakaba 1.9 <dt><code>&lt;script/></code></dt>
536 wakaba 1.10 <dd><p>The polytheistic slash cannot be used for <code>script</code>
537 wakaba 1.9 element. Even for an empty <code>script</code> element,
538 wakaba 1.15 there must be an explicit end tag
539     <code class="html example">&lt;/script></code>.</p>
540 wakaba 1.9
541     <p><strong>NOTE</strong>: Though some user agents interpret
542 wakaba 1.10 polytheistic slash for <code>script</code> element as the
543 wakaba 1.9 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 wakaba 1.12 <code>&lt;nest/></code>, or <code>&lt;source/></code></dt>
552 wakaba 1.9 <dd>Future revision of HTML5 parsing algorithm is expected
553 wakaba 1.10 to allow polytheistic slash for these elements.</dd>
554 wakaba 1.9 <dt><code>&lt;a/></code>, <code>&lt;p/></code></dt>
555     <dd>These elements are not always empty and therefore
556 wakaba 1.15 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 wakaba 1.9 </dl>
561    
562 wakaba 1.10 <p>Note that, unlike in XML, the polytheistic slash has
563 wakaba 1.1 no effect in HTML.</p>
564     </d:desc>
565     </d:item>
566    
567 wakaba 1.29 <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 wakaba 1.5
610     <d:item name="pio"
611 wakaba 1.29 class="tokenize-error"
612     modules="HTML::Parser">
613 wakaba 1.5 <d:message xml:lang="en">Processing instruction
614 wakaba 1.29 (<code>&lt;?<var>...</var>></code>) is not allowed in HTML
615     document.</d:message>
616 wakaba 1.5 <d:desc xml:lang="en">
617     <p>Processing instructions (<code>&lt;?<var>...</var>?></code>),
618     including XML declaration (<code>&lt;?xml <var>...</var>?></code>)
619     and XML style sheet <abbr title="processing instruction">PI</abbr>
620 wakaba 1.9 (<code>&lt;?xml-stylesheet <var>...</var>?></code>), are not allowed
621 wakaba 1.5 in the HTML syntax. The document is non-conforming.</p>
622    
623 wakaba 1.12 <dl class="switch">
624     <dt><code>&lt;?xbl?></code> (<abbr>XBL</abbr> Association)</dt>
625     <dd>An <abbr>XBL</abbr> binding cannot be associated by
626     <abbr title="processing instruction">PI</abbr> in <abbr>HTML</abbr>
627     document. Use <code>binding</code> property in <abbr>CSS</abbr>
628 wakaba 1.15 style sheet as:
629     <pre class="html example"><code>&lt;style>
630     p {
631     binding: url(binding.xbl);
632     }
633     &lt;/style></code></pre>
634     </dd>
635 wakaba 1.9 <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 wakaba 1.12 <abbr title="processing instruction">PI</abbr>)</dt>
639 wakaba 1.9 <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 wakaba 1.15 sheet).
643     <pre class="example html"><code>&lt;link rel=stylesheet href="path/to/stylesheet.css"></code></pre>
644     </dd>
645 wakaba 1.12 <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 wakaba 1.9 <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 wakaba 1.5
656     <p>Web browsers will parse processing instructions as bogus
657     comments. Some legacy Web browsers, such as IE:mac and
658 wakaba 1.9 some mobile Web browsers, will display processing instructions
659 wakaba 1.5 as string.</p>
660     </d:desc>
661     </d:item>
662    
663 wakaba 1.29 <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 wakaba 1.1 </section>
741    
742 wakaba 1.2 <section id="html5-parse-errors">
743     <h2>HTML5 Parse Errors in Tree Construction Stage</h2>
744    
745 wakaba 1.29 <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 wakaba 1.2 <d:item name="after head"
788     class="parse-error">
789 wakaba 1.29 <d:message xml:lang="en">The <code><var>{text}</var></code> element cannot be
790     inserted between <code>head</code> and <code>body</code>
791     elements.</d:message>
792 wakaba 1.2 <d:desc xml:lang="en">
793 wakaba 1.3 <p>A start tag appears after the <code>head</code> element is closed
794 wakaba 1.2 but before the <code>body</code> element is opened.
795     The document is non-conforming.</p>
796     </d:desc>
797     </d:item>
798    
799 wakaba 1.29 <d:item name="after html"
800     class="parse-error"
801     modules="HTML::Parser">
802     <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>></code> is
803     not allowed after the <code>html</code> is closed.</d:message>
804     </d:item>
805    
806     <d:item name="after html:/"
807     class="parse-error"
808     modules="HTML::Parser">
809     <d:message xml:lang="en">End tag <code>&lt;/<var>{text}</var>></code> is
810     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 wakaba 1.4 </d:item>
826    
827 wakaba 1.5 <d:item name="in a:a"
828 wakaba 1.29 class="parse-error"
829     modules="HTML::Parser">
830 wakaba 1.5 <d:message xml:lang="en">Anchor cannot be nested.</d:message>
831     <d:desc xml:lang="en">
832     <p>HTML <code>a</code> elements cannot be nested.
833     The document is non-conforming.</p>
834    
835     <p>In the HTML syntax, a start tag of the <code>a</code>
836     implies the end tag of any opening <code>a</code> element.</p>
837     </d:desc>
838     </d:item>
839    
840 wakaba 1.4 <d:item name="in body"
841 wakaba 1.29 class="parse-error"
842     modules="HTML::Parser">
843     <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>&gt;</code>
844 wakaba 1.9 is not allowed in the <code>body</code> element.</d:message>
845 wakaba 1.4 <d:desc xml:lang="en">
846     <p>The start or end tag of an element, which
847     cannot be a descendant of <code>body</code> element, appears
848     in the input stream while the <code>body</code> element has been opened.
849     The document is non-conforming.</p>
850     </d:desc>
851     </d:item>
852    
853 wakaba 1.29 <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 wakaba 1.5 <d:item name="in head:head"
903 wakaba 1.29 class="parse-error"
904     modules="HTML::Parser">
905 wakaba 1.9 <d:message xml:lang="en">Start tag <code>&lt;head&gt;</code>
906 wakaba 1.5 is not allowed in the <code>head</code> element.</d:message>
907     <d:desc xml:lang="en">
908     <p>There is a start tag <code>&lt;head></code> in the
909     <code>&lt;head></code> element. The document is non-conforming.</p>
910    
911     <p>In an HTML document there must not be more than
912     one <code>head</code> element, therefore no more than one
913     start tag <code>&lt;head></code> can appear in the input stream.</p>
914     </d:desc>
915     </d:item>
916    
917 wakaba 1.29 <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 wakaba 1.3 <d:item name="in table"
993 wakaba 1.29 class="parse-error"
994     modules="HTML::Parser">
995     <d:message xml:lang="en">Start tag <code>&lt;<var>{text}</var>&gt;</code>
996 wakaba 1.5 is not allowed in a <code>table</code> element.</d:message>
997 wakaba 1.3 <d:desc xml:lang="en">
998 wakaba 1.4 <p>The start or end tag of an element, which
999     cannot be a child of <code>table</code> element, appears
1000     in the input stream while the <code>table</code> element has been opened
1001     but no other element has been opened. The document is non-conforming.</p>
1002 wakaba 1.3
1003     <p>In <code>table</code>, only table related elements
1004     are allowed; any other element must be contained in
1005     <code>td</code> or <code>th</code> element to form
1006     a part of the table, or <code>caption</code> element to create
1007     a table caption.</p>
1008     </d:desc>
1009     </d:item>
1010    
1011 wakaba 1.29 <d:item name="in table:/"
1012     class="parse-error"
1013     modules="HTML::Parser">
1014     <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 wakaba 1.3 <d:desc xml:lang="en">
1024 wakaba 1.29 <p>A non‐white‐space character appears in <code>table</code>.
1025     The document is non-conforming.</p>
1026 wakaba 1.3
1027     <p>In <code>table</code>, only table related elements
1028     are allowed; any other element and data character must be contained in
1029     <code>td</code> or <code>th</code> element to form
1030     a part of the table, or <code>caption</code> element to create
1031     a table caption.</p>
1032     </d:desc>
1033     </d:item>
1034    
1035 wakaba 1.29 <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 wakaba 1.3 <d:item name="missing start tag:tr"
1043 wakaba 1.29 class="parse-error"
1044     modules="HTML::Parser">
1045 wakaba 1.3 <d:message xml:lang="en">Start tag of <code>tr</code>
1046     element is missing.</d:message>
1047     <d:desc>
1048     <p>Start tag of a <code>tr</code> element, which is <em>not</em>
1049     optional, is missing. The document is non-conforming.</p>
1050    
1051     <p>In a table section, a <code>&lt;tr></code> start tag
1052     must occur before any <code>&lt;td></code> or
1053     <code>&lt;th></code> start tag. Though the HTML5 parser
1054     implies the <code>&lt;tr></code> start tag before
1055     these start tags, it must be explicitly specified.</p>
1056     </d:desc>
1057     </d:item>
1058    
1059 wakaba 1.2 <d:item name="no DOCTYPE"
1060 wakaba 1.29 class="parse-error"
1061     modules="HTML::Parser">
1062 wakaba 1.6 <d:message xml:lang="en">This document does not start with a
1063 wakaba 1.3 <code>DOCTYPE</code>.</d:message>
1064     <d:desc>
1065     <p>The document does not start with a <code>DOCTYPE</code>.
1066     The document is non-conforming.</p>
1067    
1068     <p>An HTML document must start by a <code>DOCTYPE</code>:
1069     <pre class="html example"><code>&lt;!DOCTYPE HTML></code></pre>
1070     </p>
1071    
1072     <p>Only white space characters and comments are allowed
1073 wakaba 1.12 before the <code>DOCTYPE</code>. XML declaration is <em>not</em>
1074     allowed in HTML document.</p>
1075 wakaba 1.3 </d:desc>
1076 wakaba 1.2 </d:item>
1077    
1078     <d:item name="not closed"
1079 wakaba 1.29 class="parse-error"
1080     modules="HTML::Parser">
1081     <d:message xml:lang="en">Element <code><var>{text}</var></code> is not
1082 wakaba 1.2 closed.</d:message>
1083 wakaba 1.3 <d:desc>
1084     <p>End tag of an element is not found before, for example,
1085     an end tag of another element appears or
1086     the end of the document. The document is non-conforming.</p>
1087 wakaba 1.10
1088 wakaba 1.11 <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 wakaba 1.10 <code>ol</code>, <code>option</code>, <code>optgroup</code>,
1091 wakaba 1.11 <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 wakaba 1.10 For any element except for void element, there must be an explicit
1096     end tag.</p>
1097    
1098 wakaba 1.12 <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 wakaba 1.15 <code class="html example">&lt;/canvas></code>.</dd>
1104 wakaba 1.12 </dl>
1105    
1106 wakaba 1.10 <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 wakaba 1.3 </d:desc>
1110 wakaba 1.2 </d:item>
1111    
1112 wakaba 1.6 <d:item name="not first start tag"
1113 wakaba 1.29 class="parse-error"
1114     modules="HTML::Parser">
1115 wakaba 1.6 <d:message xml:lang="en">This <code>&lt;html></code> tag is not
1116     the first start tag.</d:message>
1117     <d:desc>
1118     <p>There is a start tag of the <code>html</code> element
1119     that it not the first start tag in the input stream.
1120     The document is non-conforming.</p>
1121    
1122     <p>In an HTML document, there cannot be more than one
1123     <code>html</code> element and therefore there cannot be
1124     more than one <code>&lt;html></code> tag. In addition,
1125     nothing can be placed before the <code>&lt;html></code> tag
1126     except a <code>DOCTYPE</code>, white space characters,
1127     and comments.</p>
1128     </d:desc>
1129     </d:item>
1130    
1131 wakaba 1.2 <d:item name="not HTML5"
1132 wakaba 1.29 class="parse-error"
1133     modules="HTML::Parser">
1134 wakaba 1.2 <d:message xml:lang="en">This document is written in an old version of
1135     HTML.</d:message>
1136 wakaba 1.3 <d:desc xml:lang="en">
1137     <p>The document contains a <code>DOCTYPE</code> declaration
1138 wakaba 1.6 that is different from HTML5 <code>DOCTYPE</code> (i.e.
1139 wakaba 1.15 <code class="example html">&lt;!DOCTYPE HTML&gt;</code>).
1140     The document is non‐conforming.</p>
1141 wakaba 1.3
1142     <p>The document might or might not be conformant to
1143     some version of HTML. However, conformance to any HTML
1144     specification other than HTML5 provides for no practical
1145     convenience, since Web borwsers will parse any
1146     HTML document (roughly) as defined in HTML5.</p>
1147     </d:desc>
1148 wakaba 1.2 </d:item>
1149    
1150 wakaba 1.29 <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 wakaba 1.2 <d:item name="unmatched end tag"
1158 wakaba 1.29 class="parse-error"
1159     modules="HTML::Parser">
1160     <d:message xml:lang="en">Element <code><var>{text}</var></code> is not
1161 wakaba 1.2 opened.</d:message>
1162 wakaba 1.4 <d:desc>
1163     <p>An end tag appears though no element with the same name
1164     has been opened. The document is non-conforming.</p>
1165    
1166     <p>For any end tag in HTML document, there must be a
1167     corresponding start tag.</p>
1168 wakaba 1.12
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 wakaba 1.4 </d:desc>
1182 wakaba 1.2 </d:item>
1183    
1184     </section>
1185    
1186 wakaba 1.1 <section id="element-content-model-errors">
1187     <h2>Element Content Model Errors</h2>
1188    
1189 wakaba 1.30 <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 wakaba 1.1 <d:item name="character not allowed"
1204 wakaba 1.30 modules="ContentChecker::HTML">
1205 wakaba 1.1 <d:message xml:lang="en">Data character is not allowed in this
1206     context.</d:message>
1207     <d:desc xml:lang="en">
1208 wakaba 1.3 <p>A data character appears where it is not allowed in this
1209 wakaba 1.1 context. The document is non-conforming.</p>
1210    
1211     <p>Possible causes:
1212 wakaba 1.6 <ul>
1213     <li><p>A data character cannot be a child
1214     of certain sectioning elements such as <code>body</code>,
1215     <code>section</code>, and <code>blockquote</code>.</p>
1216    
1217     <p>Any inline-level content must be put
1218     in e.g. paragraph element such as <code>p</code>.</p></li>
1219     <li><p>Though some elements such as <code>div</code>,
1220     <code>li</code>, and <code>td</code> allow
1221     <em>either one</em> of block-level or inline-level content
1222     is allowed. If there is a block-level content,
1223     any inline-level content must be put
1224     in e.g. paragraph element such as <code>p</code>.</p></li>
1225     </ul>
1226 wakaba 1.1 </p>
1227     </d:desc>
1228     </d:item>
1229    
1230 wakaba 1.30 <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 wakaba 1.1 <d:item name="child element missing"
1237 wakaba 1.30 modules="ContentChecker::HTML">
1238     <d:message xml:lang="en">There must be a <code><var>{text}</var></code>
1239 wakaba 1.1 element as a child of this element.</d:message>
1240     <d:desc xml:lang="en">
1241     <p>The content model of the element is so defined that it
1242     must contain a <code><var>$0</var></code> child element.
1243 wakaba 1.3 The document is non-conforming.</p>
1244 wakaba 1.1
1245 wakaba 1.12 <dl class="switch">
1246     <dt>HTML <code>head</code> element</dt>
1247     <dd>There must be a <code>title</code> child element.</dd>
1248     <dt>HTML <code>html</code> element</dt>
1249     <dd>There must be a <code>head</code> child element followed
1250     by a <code>body</code> element.</dd>
1251     <dt>HTML <code>tr</code> element</dt>
1252     <dd><a href="#child-element-missing:td%7Cth">There must be
1253     one or more <code>td</code> or <code>th</code> child element.</a></dd>
1254     </dl>
1255 wakaba 1.1 </d:desc>
1256     </d:item>
1257    
1258     <d:item name="child element missing:td|th"
1259     class="content-model-error">
1260     <d:message xml:lang="en">There must be a <code>td</code>
1261     or <code>th</code> element as a child of this element.</d:message>
1262     <d:desc xml:lang="en">
1263     <p>The <code>tr</code> element must contain at least one
1264 wakaba 1.3 <code>td</code> or <code>th</code> child element. The document
1265     is non-conforming.</p>
1266 wakaba 1.1 </d:desc>
1267     </d:item>
1268    
1269 wakaba 1.30 <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 wakaba 1.1 <d:item name="element not allowed"
1276     class="content-model-error">
1277     <d:message xml:lang="en">This element is not allowed in this
1278     context.</d:message>
1279     <d:desc xml:lang="en">
1280 wakaba 1.3 <p>An element appears where it is not allowed. The document
1281 wakaba 1.1 is non-conforming.</p>
1282    
1283     <p>Possible causes:
1284 wakaba 1.6 <dl class="switch">
1285     <dt>If the element with the error is an inline-level element,
1286     such as <code>a</code>, <code>progress</code>, or <code>img</code></dt>
1287 wakaba 1.1 <dd><p>An inline-level element cannot be a child
1288     of certain sectioning elements such as <code>body</code>,
1289     <code>section</code>, and <code>blockquote</code>.</p>
1290    
1291     <p>Any inline-level content must be put
1292     in e.g. paragraph element such as <code>p</code>.</p></dd>
1293 wakaba 1.9 <dt>If it is a block-level elements, such as <code>aside</code>,
1294     <code>div</code>, <code>h<var>n</var></code>,
1295     <code>p</code>, or <code>section</code></dt>
1296     <dd><dl class="switch">
1297     <dt>If the parent element is <code>div</code>,
1298     <code>li</code>, <code>td</code>, or <code>th</code></dt>
1299     <!-- @@ TODO: more... -->
1300     <!-- @@ TODO: <p><ul><li><p> -->
1301     <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 wakaba 1.15 <code class="html bad example">&lt;div>&lt;p>Hello!&lt;/p> World!&lt;/div></code>
1307 wakaba 1.9 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 wakaba 1.15 <pre class="html example"><code>&lt;div>&lt;p>Hello!&lt;/p> &lt;p>World!&lt;/p>&lt;/div></code></pre>
1311 wakaba 1.9 </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 wakaba 1.6 <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
1320     where a block-level or inline-level content is expected
1321     and in the <code>head</code> element.
1322     It cannot be used in e.g. <code>ul</code>, <code>table</code>,
1323     or <code>select</code>.</dd>
1324 wakaba 1.8 <dt>If the element with the error is <code>blink</code>,
1325     <code>center</code>, or <code>marquee</code> element</dt>
1326     <dd>These elements are not part of the HTML standard.
1327     Use CSS for styling control.</dd>
1328 wakaba 1.9
1329 wakaba 1.11 <dt><code>button</code>, <code>datalist</code>,
1330     <code>fieldset</code>, <code>form</code>,
1331 wakaba 1.9 <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 wakaba 1.1 </dl>
1339     </p>
1340     </d:desc>
1341     </d:item>
1342    
1343 wakaba 1.30 <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 wakaba 1.12 <d:item name="element not allowed:root"
1437 wakaba 1.30 modules="ContentChecker">
1438     <d:message xml:lang="en">This element is not allowed as the root
1439     element of a document.</d:message>
1440 wakaba 1.12 <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 wakaba 1.15 <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 wakaba 1.12 <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 wakaba 1.15 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 wakaba 1.12 <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 wakaba 1.30 <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 wakaba 1.6 <d:item name="ps element missing"
1508 wakaba 1.30 modules="ContentChecker::HTML">
1509     <d:message xml:lang="en">There is no <code><var>{text}</var></code>
1510 wakaba 1.6 element before this element.</d:message>
1511     <d:desc xml:lang="en">
1512     <p>There must be an element before another element, but there
1513     is not. The document is non-conforming.</p>
1514    
1515     <p>For example, there must be a <code>dt</code> element
1516     before any <code>dd</code> element.</p>
1517     </d:desc>
1518     </d:item>
1519    
1520 wakaba 1.30 <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 wakaba 1.2 </section>
1527    
1528 wakaba 1.3 <section id="attribute-errors">
1529     <h2>Attribute Errors</h2>
1530    
1531     <d:item name="attribute missing"
1532 wakaba 1.30 modules="ContentChecker::HTML">
1533     <d:message xml:lang="en">Required attribute <code><var>{text}</var></code>
1534 wakaba 1.3 is not specified.</d:message>
1535     <d:desc>
1536     <p>A required attribute is not specified. The document
1537     is non-conforming.</p>
1538    
1539     <p>Some attribute is defined as <i>required</i>.
1540     Without required attributes specified, user agents
1541 wakaba 1.9 cannot provide full functionality of the element to the user.</p>
1542    
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 wakaba 1.3 </d:desc>
1553     </d:item>
1554    
1555 wakaba 1.30 <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 wakaba 1.8 <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 wakaba 1.30 <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 wakaba 1.3 <d:item name="in HTML:xml:lang"
1614 wakaba 1.30 class="attribute-error"
1615     modules="ContentChecker::XML">
1616 wakaba 1.3 <d:message xml:lang="en">The <code>xml:lang</code> attribute is not
1617     allowed in HTML document.</d:message>
1618 wakaba 1.8 <d:desc xml:lang="en">
1619 wakaba 1.3 <p>The <code>xml:lang</code> attribute is not allowed in
1620     HTML document. The document is non-conforming.</p>
1621    
1622 wakaba 1.9 <p>Use of the <code>xml:lang</code> attribute is conforming
1623     <em>only</em> in XML documents.</p>
1624 wakaba 1.3
1625     <p>To specify natural language information in HTML document,
1626     use <code>lang</code> attribute instead.</p>
1627 wakaba 1.6
1628     <p>XHTML 1.0 Appendix C was encouraged to specify both
1629     <code>lang</code> and <code>xml:lang</code> attributes with
1630     the same value. Such a duplication has <em>no effect</em> in practice.
1631     Use only one of <code>lang</code> (in HTML) or <code>xml:lang</code> (in
1632     XML).</p>
1633    
1634 wakaba 1.3 <!-- @@ ISSUE: xml:lang in non-HTML element in DOM5 HTML created
1635     from an HTML document? -->
1636     </d:desc>
1637     </d:item>
1638    
1639     <d:item name="in XML:charset"
1640 wakaba 1.30 modules="ContentChecker::HTML">
1641 wakaba 1.3 <d:message xml:lang="en">The <code>charset</code> attribute is not
1642     allowed in XML document.</d:message>
1643     <d:desc>
1644     <p>The <code>charset</code> attribute of a
1645     <code>meta</code> element is not allowed in XML document.
1646     The document is non-conforming.</p>
1647    
1648     <p>To specify the character encoding used for serialization,
1649     if necessary, use XML declaration instead:
1650     <pre class="xml example"><code>&lt;?xml version="1.0" encoding="<var>encoding-name</var>"?></code></pre>
1651     </p>
1652     </d:desc>
1653     </d:item>
1654    
1655     <d:item name="in XML:lang"
1656 wakaba 1.30 modules="ContentChecker::HTML">
1657 wakaba 1.3 <d:message xml:lang="en">The <code>lang</code> attribute is not
1658     allowed in XML document.</d:message>
1659     <d:desc>
1660     <p>The HTML <code>lang</code> attribute is not allowed in
1661     XML document. The document is non-conforming.</p>
1662    
1663     <p>The <code>lang</code> attribute in <code>null</code>
1664 wakaba 1.9 namespace for HTML elements is conforming <em>only</em> in
1665     HTML documents.</p>
1666 wakaba 1.3
1667     <p>To specify natural language information in XML document,
1668     use <code>xml:lang</code> attribute instead.</p>
1669     </d:desc>
1670     </d:item>
1671    
1672 wakaba 1.30 <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 wakaba 1.3 <d:item name="in XML:xmlns"
1679 wakaba 1.30 modules="ContentChecker::HTML">
1680 wakaba 1.3 <d:message xml:lang="en">The <code>xmlns</code> attribute
1681     in the <code>null</code> namespace is not allowed in
1682     XHTML document. The document is non-conforming.</d:message>
1683     <d:desc>
1684     <p>The <code>xmlns</code> attribute in the <code>null</code>
1685     namespace is not allowed in XHTML document.</p>
1686    
1687 wakaba 1.8 <p>This error should not occur in conformance-checking of
1688 wakaba 1.3 static documents.</p>
1689     </d:desc>
1690     </d:item>
1691    
1692     </section>
1693    
1694 wakaba 1.2 <section id="attribute-value-errors">
1695     <h2>Attribute Value Errors</h2>
1696 wakaba 1.1
1697 wakaba 1.30 <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 wakaba 1.17 <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 wakaba 1.30 <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 wakaba 1.17 <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 wakaba 1.30 <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 wakaba 1.17 <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 wakaba 1.30 <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 wakaba 1.2 <d:item name="enumerated:invalid"
1903 wakaba 1.30 modules="ContentChecker::HTML">
1904 wakaba 1.2 <d:message xml:lang="en">This attribute only allow a limited set of
1905 wakaba 1.6 values and the specified value <code><var>{@}</var></code> is not one
1906     of them.</d:message>
1907 wakaba 1.8 <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 wakaba 1.15 <dd><p>Only values <code>Default-Style</code> and <code>Refresh</code>
1915     are allowed.</p>
1916 wakaba 1.8 <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 wakaba 1.2 </d:item>
1932    
1933 wakaba 1.14 <d:item name="enumerated:invalid:http-equiv:content-type"
1934     class="attribute-value-error">
1935 wakaba 1.16 <d:message xml:lang="en">Character encoding declaration syntax
1936 wakaba 1.15 <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"></code>
1937 wakaba 1.14 is obsolete.</d:message>
1938     <d:desc xml:lang="en">
1939 wakaba 1.16 <p>Old long character encoding declaration syntax
1940 wakaba 1.15 <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"></code>
1941 wakaba 1.14 is in use. The document is non‐conforming.</p>
1942    
1943 wakaba 1.16 <p>The new character encoding declaration syntax is:
1944 wakaba 1.15 <pre class="html example"><code>&lt;meta charset="<var>charset-name</var>"></code></pre>
1945 wakaba 1.14 </p>
1946     </d:desc>
1947     </d:item>
1948    
1949 wakaba 1.30 <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 wakaba 1.3 <d:item name="duplicate ID"
1962 wakaba 1.30 class="attribute-value-error"
1963     modules="ContentChecker::XML ContentChecker::HTML">
1964 wakaba 1.3 <d:message xml:lang="en">This identifier has already been
1965     assigned to another element.</d:message>
1966     <!-- @@ <id=a xml:id=a>? -->
1967     </d:item>
1968    
1969 wakaba 1.30 <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 wakaba 1.5 <d:item name="link type:bad context"
2021 wakaba 1.30 modules="ContentChecker::HTML">
2022     <d:message xml:lang="en">The link type <code><var>{value}</var></code>
2023 wakaba 1.4 cannot be specified for this element.</d:message>
2024     <d:desc xml:lang="en">
2025     <p>The specified link type cannot be used for the element.
2026     The document is non-conforming.</p>
2027    
2028     <p>Link types are associated with limited set of elements.
2029     They cannot be used with other elements.</p>
2030    
2031     <p>For example, link type <code>bookmark</code>
2032     can be used with <code>a</code> or <code>area</code> element,
2033     while it cannot be used with <code>link</code> element.</p>
2034     </d:desc>
2035     </d:item>
2036    
2037 wakaba 1.30 <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 wakaba 1.4 <d:item name="link type:non-conforming"
2051 wakaba 1.30 modules="ContentChecker::HTML">
2052     <d:message xml:lang="en">The link type <code><var>{value}</var></code>
2053 wakaba 1.4 is non-conforming.</d:message>
2054     <d:desc xml:lang="en">
2055 wakaba 1.6 <p>The specified link type is non-conforming, and therefore
2056     the document is non-conforming.</p>
2057 wakaba 1.4
2058 wakaba 1.12 <dl class="switch">
2059 wakaba 1.6 <dt>Link type <code>contents</code></dt>
2060     <dd>Use link type <code>index</code>.</dd>
2061     <dt>Link type <code>copyright</code></dt>
2062     <dd>Use link type <code>license</code>.</dd>
2063     <dt>Link type <code>home</code></dt>
2064     <dd>Use link type <code>index</code>.</dd>
2065 wakaba 1.12 <dt>Link type <code>previous</code></dt>
2066     <dd>Use link type <code>prev</code>.</dd>
2067 wakaba 1.6 <dt>Link type <code>start</code></dt>
2068     <dd>Use link type <code>first</code>.</dd>
2069 wakaba 1.12 <dt>Link type <code>toc</code> or <code>top</code></dt>
2070 wakaba 1.6 <dd>Use link type <code>index</code>.</dd>
2071     </dl>
2072 wakaba 1.4 </d:desc>
2073     </d:item>
2074    
2075 wakaba 1.30 <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 wakaba 1.17 <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 wakaba 1.30 <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 wakaba 1.3 <d:item name="reserved browsing context name"
2142     class="attribute-value-error">
2143 wakaba 1.6 <d:message xml:lang="en">Browsing context name
2144     <code><var>{@}</var></code> is reserved.</d:message>
2145     <d:desc xml:lang="en">
2146 wakaba 1.3 <p>The specified browsing context name is reserved.
2147     The document is non-conforming.</p>
2148    
2149     <p>Names of browsing contexts starting with <code>_</code>
2150     (<code>U+005F</code> <code class="charname">LOW LINE</code>)
2151     are reserved so that it must not be used.</p>
2152    
2153     <p>Old version of HTML, non-HTML markup languages, and
2154     Web browsers define or implements special reserved
2155     browsing context names <code>_blank</code>,
2156     <code>_main</code>, and <code>_replace</code>.
2157     However, they are <em>not</em> conforming attribute values.</p>
2158 wakaba 1.6 </d:desc>
2159 wakaba 1.3 </d:item>
2160    
2161 wakaba 1.30 <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 wakaba 1.2
2167 wakaba 1.30 <d:item name="Reserved Prefixes and Namespace Names:Prefix"
2168     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 wakaba 1.4
2173 wakaba 1.30 <d:item name="link type:proposed"
2174     modules="ContentChecker::HTML">
2175     <d:message xml:lang="en">Link type <code><var>{value}</var></code>
2176 wakaba 1.4 is proposed but not accepted yet; it <em>should not</em> be
2177     used until it has been accepted.</d:message>
2178     <d:desc>
2179     <p>The link type is in the <i>proposed</i> status; it
2180     <em>should not</em> be used until it has been
2181     accepted.</p>
2182    
2183     <p><strong>Warning</strong>: The data served to the
2184     conforming checker might be out of date; it might have already
2185 wakaba 1.12 been accepted or rejected. The document might or might not be
2186     conforming depending on the status. See WHATWG Wiki
2187 wakaba 1.4 for the latest information.</p>
2188     </d:desc>
2189     </d:item>
2190    
2191 wakaba 1.30 <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 wakaba 1.4 </section>
2227    
2228 wakaba 1.2 <section id="table-model-errors">
2229     <h2>Table Model Errors</h2>
2230    
2231 wakaba 1.3 <d:item name="table:colspan creates column with no anchored cell"
2232     class="table-model-error">
2233     <d:message xml:lang="en">This <code>colspan</code> attribute
2234     results in creating a table column that does not contain
2235     any cell anchored to it.</d:message>
2236     </d:item>
2237    
2238 wakaba 1.2 <d:item name="table:no cell in last row"
2239     class="table-model-error">
2240     <d:message xml:lang="en">The table has no cell (<code>td</code> or
2241     <code>th</code>) in the last row.</d:message>
2242     </d:item>
2243    
2244 wakaba 1.6 <d:item name="table:rowspan extends table"
2245     class="table-model-error">
2246     <d:message xml:lang="en">This <code>rowspan</code> attribute
2247     results in creating a table row that does not contain
2248     any cell anchored to it.</d:message>
2249     <d:desc xml:lang="en">
2250     <p>The <code>rowspan</code> attribute value of the cell
2251     is so specified that it extends a table in the row axis.
2252     However, the extended row does not contain any cell by itself.
2253     The document is non-conforming.</p>
2254    
2255     <p>For example, the table below is non-conforming:
2256 wakaba 1.15 <pre class="html bad example"><code>&lt;table>
2257 wakaba 1.6 &lt;tbody>
2258     &lt;tr>&lt;td rowspan=2>&lt;/td>&lt;/tr>
2259     &lt;/tbody>
2260     &lt;/table></code></pre>
2261 wakaba 1.9 ... since the second row contains only
2262     a cell that spans between first and second rows.</p>
2263 wakaba 1.6 </d:desc>
2264     </d:item>
2265    
2266 wakaba 1.2 </section>
2267    
2268     <section id="imt-warnings">
2269 wakaba 1.30 <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 wakaba 1.2
2277     <d:item name="IMT:obsolete subtype"
2278     class="should" level="s">
2279 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: An <em>obsolete</em>
2280     subtype is used.</d:message>
2281 wakaba 1.12 <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 wakaba 1.2 </d:item>
2299    
2300     <d:item name="IMT:private subtype"
2301     class="should" level="s">
2302 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: A private
2303     (<code>x-</code> or <code>x.</code>) subtype is used.</d:message>
2304 wakaba 1.2 </d:item>
2305    
2306     <d:item name="IMT:unregistered subtype"
2307     class="should" level="s">
2308 wakaba 1.6 <d:message xml:lang="en"><code><var>{@}</var></code>: The subtype is
2309     not registered to IANA.</d:message>
2310 wakaba 1.2 <!-- TODO: Unknown message?? -->
2311     </d:item>
2312    
2313     </section>
2314    
2315     <section id="uri-errors">
2316     <h2>URI (or IRI) Errors</h2>
2317    
2318     <d:item name="URI::syntax error"
2319     class="must" level="m">
2320 wakaba 1.6 <d:message xml:lang="en">The specified value is syntactically not an IRI
2321     reference.</d:message>
2322     <d:desc xml:lang="en">
2323     <p>The specified value does not satisfy the syntactical requirements
2324     for IRI references. The document is non-conforming.</p>
2325    
2326     <p>Possible causes:
2327     <ul>
2328     <li>The string might contain one or more white space characters.
2329     Especially, the <code> </code> (<code>U+0020</code>
2330     <code class="charname">SPACE</code>) character cannot be
2331     used in IRI references.</li>
2332     </ul>
2333     </p>
2334     </d:desc>
2335 wakaba 1.2 </d:item>
2336    
2337     </section>
2338    
2339 wakaba 1.9 <section id="uri-shoulds">
2340     <h2>URI (or IRI) Should-level Errors</h2>
2341 wakaba 1.3
2342     <d:item name="URI::dot-segment"
2343     class="should" level="s">
2344 wakaba 1.9 <d:message xml:lang="en">A dot-segment (<code>.</code> or
2345     <code>..</code>) occurs in an absolute reference.</d:message>
2346 wakaba 1.3 <d:desc>
2347     <p>Dot-segment (<code>.</code> or <code>..</code>) should
2348     not occur in an absolute reference.</p>
2349    
2350     <p>In relative references, dot-segments are used to represent
2351     the current (<code>.</code>) or the parent (<code>..</code>)
2352     hierarchy of the path. Though they are also allowed
2353     in absolute references, it should be resolved to the
2354     canonical form before it has been published.</p>
2355     </d:desc>
2356     </d:item>
2357 wakaba 1.2
2358     <d:item name="URI::empty path"
2359     class="should" level="s">
2360 wakaba 1.9 <d:message xml:lang="en">This IRI does not end with
2361     a <code>/</code>.</d:message>
2362 wakaba 1.12 <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 wakaba 1.2 </d:item>
2371 wakaba 1.1
2372 wakaba 1.4 <d:item name="URI::lowercase hexadecimal digit"
2373     class="should" level="s">
2374 wakaba 1.9 <d:message xml:lang="en">A lowercase hexadecimal digit is used
2375     in percent-encoding.</d:message>
2376 wakaba 1.4 <d:desc xml:lang="en">
2377     <p>The hexadecimal digit in percent-encoding string in the IRI
2378     is in lowercase. Though the IRI <em>is</em> conforming,
2379     it should be in uppercase.</p>
2380     </d:desc>
2381     </d:item>
2382    
2383     <d:item name="URI::percent-encoded unreserved"
2384     class="should" level="s">
2385     <d:message xml:lang="en">An unreserved character is
2386     percent-encoded.</d:message>
2387     <d:desc xml:lang="en">
2388     <p>An unreserved character is percent-encoded in the IRI.
2389     Though it <em>is</em> conforming, it should be in the
2390     decoded (or bare) form.</p>
2391     </d:desc>
2392     </d:item>
2393    
2394 wakaba 1.6 <d:item name="URI::uppercase scheme name"
2395     class="should" level="s">
2396     <d:message xml:lang="en">URI scheme name is in uppercase.</d:message>
2397     <d:desc xml:lang="en">
2398     <p>The scheme part of the IRI is written in uppercase letter.</p>
2399    
2400     <p>Uppercase scheme names are not required to be processed
2401     correctly.</p>
2402     <!-- @@
2403     RFC 3986 3.1.
2404     > Although schemes are case-
2405     insensitive, the canonical form is lowercase and documents that
2406     specify schemes must do so with lowercase letters.
2407    
2408     > An implementation ... should only produce lowercase scheme names for
2409     consistency.
2410     -->
2411     </d:desc>
2412     </d:item>
2413    
2414 wakaba 1.1 </section>
2415    
2416 wakaba 1.12 <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 wakaba 1.15 <code class="manifest example">CACHE MANIFEST</code>
2430     (exactly one space character between
2431 wakaba 1.12 <code>CACHE</code> and <code>MANIFEST</code>).</p>
2432     </d:desc>
2433     </d:item>
2434     </section>
2435    
2436 wakaba 1.19 <section id="information">
2437     <h2>Stability Information</h2>
2438    
2439 wakaba 1.30 <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 wakaba 1.19 <d:message xml:lang="en">This element is in the
2452 wakaba 1.21 <strong>call for implementation</strong> stage.</d:message>
2453 wakaba 1.19 <d:desc xml:lang="en">
2454 wakaba 1.21 <p>The element is in the call for implementation stage.</p>
2455 wakaba 1.19
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 wakaba 1.21 <p>Elements defined by Atom 1.0 (IETF Proposed Standard), and XBL 2.0
2462     (W3C Candidate Recommendation) belong to this class.</p>
2463 wakaba 1.19 </d:desc>
2464     </d:item>
2465    
2466 wakaba 1.30 <d:item name="status:lc:element"
2467     modules="ContentChecker">
2468 wakaba 1.19 <d:message xml:lang="en">This element is in the <strong>last
2469 wakaba 1.20 call for comments</strong> stage.</d:message>
2470 wakaba 1.19 <d:desc xml:lang="en">
2471 wakaba 1.20 <p>The element is in the last call for comments stage.</p>
2472 wakaba 1.19
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 wakaba 1.30 <d:item name="status:wd:element"
2485     modules="ContentChecker">
2486 wakaba 1.19 <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 wakaba 1.30 <d:item name="status:non-standard:element"
2501     modules="ContentChecker">
2502 wakaba 1.19 <d:message xml:lang="en">This element is <strong>not part of any
2503 wakaba 1.21 standard</strong> the conformance checker knows.</d:message>
2504 wakaba 1.19 <d:desc xml:lang="en">
2505 wakaba 1.21 <p>The element is not part of any standard or draft the conformance
2506     checker is aware of.</p>
2507 wakaba 1.19
2508 wakaba 1.21 <p>The element should not be used for any practical purpose unless
2509     there is really a standard that defines the element.</p>
2510 wakaba 1.19 </d:desc>
2511     </d:item>
2512 wakaba 1.30
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 wakaba 1.19 </section>
2569    
2570 wakaba 1.1 <section id="unsupported-messages">
2571     <h2><i>Unsupported</i> Messages</h2>
2572    
2573 wakaba 1.30 <d:item name="unknown element"
2574     modules="ContentChecker">
2575 wakaba 1.9 <d:message xml:lang="en">Conformance checking for element
2576     <code><var>{local-name}</var></code> is not supported; <em>it might or
2577     might not be conforming</em>.</d:message>
2578 wakaba 1.1 <d:desc xml:lang="en">
2579 wakaba 1.9 <p>The conformant checker does not support the element.
2580 wakaba 1.1 It cannot determine whether the document is conforming or not.</p>
2581     </d:desc>
2582     </d:item>
2583    
2584 wakaba 1.30 <d:item name="unknown attribute"
2585     modules="ContentChecker ContentChecker::HTML">
2586 wakaba 1.9 <d:message xml:lang="en">Conformance checking for attribute
2587     <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 wakaba 1.1 <d:desc xml:lang="en">
2591 wakaba 1.9 <p>The conformant checker does not support the attribute.
2592 wakaba 1.1 It cannot determine whether the document is conforming or not.</p>
2593     </d:desc>
2594     </d:item>
2595    
2596 wakaba 1.30 <d:item name="unknown link type"
2597     modules="ContentChecker::HTML">
2598     <d:message xml:lang="en">Link type <code><var>{value}</var></code> is not
2599 wakaba 1.4 standardized or registered at the time of the release of the conformance
2600 wakaba 1.9 checker; <em>it is non-conforming unless it now has been
2601 wakaba 1.4 registered</em>.</d:message>
2602 wakaba 1.1 <d:desc xml:lang="en">
2603     <p>The <code>rel</code> attribute is defined as a list of link types.
2604     Some common link types are defined in the HTML5 specification.
2605     Additional link types can be registered to the WHATWG Wiki.
2606     use of any other link type is non-conforming.</p>
2607    
2608     <p>The specified link type is not part of the standard or registry
2609     when the database used by the conformance cheker is created.
2610     The link type might have been added to the registry since then.
2611     In such case it might be conforming. Otherwise, the
2612     document is non-conforming.</p>
2613 wakaba 1.8
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 wakaba 1.1 </d:desc>
2620     </d:item>
2621    
2622 wakaba 1.4 <d:item name="event handler"
2623 wakaba 1.30 modules="ContentChecker::HTML">
2624 wakaba 1.4 <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>
2626     </d:item>
2627    
2628     <d:item name="media query"
2629 wakaba 1.30 modules="ContentChecker::HTML">
2630 wakaba 1.4 <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>
2632     </d:item>
2633    
2634 wakaba 1.30 <d:item name="XML script lang"
2635     modules="ContentChecker::HTML">
2636 wakaba 1.4 <d:message xml:lang="en">Conformance checking for script
2637 wakaba 1.30 language <code><var>{text}</var></code> is not supported;
2638 wakaba 1.4 <em>it might or might not be conforming.</em></d:message>
2639     </d:item>
2640    
2641 wakaba 1.30 <d:item name="XML style lang"
2642     modules="ContentChecker::HTML">
2643 wakaba 1.4 <d:message xml:lang="en">Conformance checking for style
2644 wakaba 1.30 language <code><var>{text}</var></code> is not supported;
2645 wakaba 1.4 <em>it might or might not be conforming.</em></d:message>
2646     </d:item>
2647    
2648 wakaba 1.1 </section>
2649    
2650 wakaba 1.24 <d:cat name="WebHACC:Title">
2651     <d:text xml:lang="en">WebHACC (β)</d:text>
2652     </d:cat>
2653    
2654     <d:cat name="WebHACC:Heading">
2655     <d:text xml:lang="en">
2656 wakaba 1.26 <a href="../cc-about"><abbr title="Web Hypertext Application Conformance Checker (β)"><img src="../icons/title" alt="WebHACC"/></abbr></a>
2657 wakaba 1.24 </d:text>
2658     <d:text xml:lang="ja">
2659 wakaba 1.26 <a href="../cc-about"><abbr title="Web ハイパーテキスト応用適合性検査器 (β)"><img src="../icons/title" alt="WebHACC"/></abbr></a>
2660 wakaba 1.24 </d:text>
2661     </d:cat>
2662    
2663 wakaba 1.28 <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 wakaba 1.24 <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 wakaba 1.27 <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 wakaba 1.28 <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 wakaba 1.24 <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 wakaba 1.25 <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 wakaba 1.24 </d:cat>
2899    
2900 wakaba 1.25 <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 wakaba 1.24 </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 wakaba 1.28 <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 wakaba 1.24 <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 wakaba 1.2
3012 wakaba 1.27 <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 wakaba 1.28 <d:cat name="Transfer L.">
3043 wakaba 1.27 <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 wakaba 1.28 <d:cat name="Encode L.">
3048 wakaba 1.27 <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 wakaba 1.28 <d:cat name="Char L.">
3053 wakaba 1.27 <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 wakaba 1.28 <d:cat name="Syntax L.">
3058 wakaba 1.27 <d:text xml:lang="en">Syntax</d:text>
3059     <d:text xml:lang="ja">構文</d:text>
3060     </d:cat>
3061    
3062 wakaba 1.28 <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 wakaba 1.27
3067 wakaba 1.28 <d:cat name="Semantics L.">
3068 wakaba 1.27 <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 wakaba 1.28 <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 wakaba 1.27 <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 wakaba 1.13 <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 wakaba 1.19 <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 wakaba 1.18 <tr id="level-u" class="level-u">
3209 wakaba 1.13 <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 wakaba 1.1 <section id="license">
3219     <h2>License of This Document</h2>
3220    
3221 wakaba 1.21 <p>Copyright <time>2007</time>‐<time>2008</time>
3222 wakaba 1.12 <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 wakaba 1.9 <p>This document is free software; you can redistribute it
3226 wakaba 1.1 and/or modify it under the same terms as Perl itself.</p>
3227     </section>
3228    
3229 wakaba 1.30 <!-- $Date: 2008/08/15 08:36:41 $ -->
3230 wakaba 1.1 </body>
3231     </html>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24