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

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

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

revision 1.6 by wakaba, Sat Jul 21 04:58:17 2007 UTC revision 1.15 by wakaba, Wed Nov 7 12:20:44 2007 UTC
# Line 28  Web Document Conformance Checker (BETA)< Line 28  Web Document Conformance Checker (BETA)<
28    </d:desc>    </d:desc>
29  </d:item>  </d:item>
30    
31    <d:item name="after body"
32        class="parse-error">
33      <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
34      is not allowed after the end tag <code>&lt;/body></code>.</d:message>
35      <d:desc xml:lang="en">
36        <p>The start or end tag of an element appears after the
37        <code>body</code> element has been closed.  The document is
38        non-conforming.</p>
39    
40        <p>Any content of the document other than <code>head</code>
41        contents and comments must be put into the <code>body</code>
42        element.</p>
43      </d:desc>
44    </d:item>
45    
46  <d:item name="bare ero"  <d:item name="bare ero"
47      class="tokenize-error">      class="tokenize-error">
48    <d:message xml:lang="en">The <code>&amp;</code> character must    <d:message xml:lang="en">The <code>&amp;</code> character must
49    introduce a reference.</d:message>    introduce a reference.</d:message>
50    <d:desc xml:lang="en">    <d:desc xml:lang="en">
51      <p>An <code>&amp;</code> (<code>U+0026</code>      <p>An <code>&amp;</code> character which
     <code class="charname">AMPERSAND</code>) character which  
52      is not part of any reference appears in the input stream.      is not part of any reference appears in the input stream.
53      The document is non-conforming.</p>      The document is non‐conforming.</p>
54    
55        <p><em>Any <code>&amp;</code> character in URI (or IRI)
56        must be escaped as <code class="example">&amp;amp;</code>.</em></p>
57    
58      <p>The <code>&amp;</code> character must      <p>The <code>&amp;</code> character must
59      be the first character of a reference:      be the first character of a reference:
60        <dl>        <dl class="switch">
61        <dt>Named entity reference</dt>        <dt>Named entity reference</dt>
62            <dd><pre class="html example"><code>&amp;<var>entity-name</var>;</code></pre>            <dd><pre class="html example"><code>&amp;<var>entity-name</var>;</code></pre>
63            where <var>entity-name</var> is the name of the            where <var>entity-name</var> is the name of the
# Line 63  Web Document Conformance Checker (BETA)< Line 80  Web Document Conformance Checker (BETA)<
80    </d:desc>    </d:desc>
81  </d:item>  </d:item>
82    
83    <d:item name="bare etago"
84        class="tokenize-error">
85      <d:message xml:lang="en">A <code>&lt;/</code> string is not followed
86      by a tag name.</d:message><!-- </ EOF -->
87      <d:desc xml:lang="en">
88        <p>There is a <code>&lt;</code> (<code>U+003C</code>
89        <code class="charname">LESS-THAN SIGN</code>) character
90        immediately followed by a <code>/</code> (<code>U+005F</code>
91        <code>SOLIDUS</code>) character, which is not part
92        of any end tag, in the input stream.  The document
93        is non-conforming.</p>
94    
95        <p>The <code>&lt;/</code> sequence immediately followed
96        by an <abbr title="End of file pseudo-character">EOF</abbr> is
97        interpreted as a string data of <code>&lt;/</code>.</p>
98    
99        <p>The <code>&lt;/</code> sequence as string data must
100        be escaped as:
101        <pre class="html example"><code>&amp;lt;/</code></pre>
102        </p>
103      </d:desc>
104    </d:item>
105    
106  <d:item name="bare stago"  <d:item name="bare stago"
107      class="tokenize-error">      class="tokenize-error">
108    <d:message xml:lang="en">A <code>&lt;</code> character is not followed    <d:message xml:lang="en">A <code>&lt;</code> character is not followed
# Line 93  Web Document Conformance Checker (BETA)< Line 133  Web Document Conformance Checker (BETA)<
133    
134      <p>The string <code>&amp;#</code> must be the first two characters      <p>The string <code>&amp;#</code> must be the first two characters
135      of a reference:      of a reference:
136        <dl>        <dl class="switch">
137        <dt>Numeric character reference</dt>        <dt>Numeric character reference</dt>
138            <dd><pre class="html example"><code>&amp;#<var>d</var>;</code></pre>            <dd><pre class="html example"><code>&amp;#<var>d</var>;</code></pre>
139            where <var>d</var> is the decimal representation of            where <var>d</var> is the decimal representation of
# Line 134  Web Document Conformance Checker (BETA)< Line 174  Web Document Conformance Checker (BETA)<
174    </d:desc>    </d:desc>
175  </d:item>  </d:item>
176    
177    <d:item name="bogus comment"
178        class="tokenize-error">
179      <d:message xml:lang="en">String <code>&lt;!</code> is not followed
180      by <code>--</code>.</d:message>
181      <d:desc xml:lang="en">
182        <p>There is a <code>&lt;</code> (<code>U+003C</code>
183        <code class="charname">LESS-THAN SIGN</code>) character
184        followed by a <code>!</code> (<code>U+0021</code>
185        <code class="charname">EXCLAMATION MARK</code>) character,
186        which is not followed by a <code>--</code> or
187        <code>!DOCTYPE</code>.  The document is non-conforming.</p>
188    
189        <dl class="switch">
190        <dt>Comments</dt>
191          <dd>In HTML document, comments must be introduced by
192          <code class="example">&lt;!--</code> (<code>&lt;!</code>
193          <em>immediately</em> followed
194          by <em>two</em> <code>-</code>s) and must be terminated by
195          <code class="example">--></code>.
196          Strings <code>&lt;!</code> not followed
197          by <code>--</code> and <code>&lt;!-</code> not followed by
198          <code>-</code> are not valid open delimiters for comments.</dd>
199        <dt>Marked sections, including <code>CDATA</code> sections</dt>
200          <dd>Marked sections are not allowed in HTML document.</dd>
201        <dt>Markup declarations</dt>
202          <dd>Markup declarations, except for <code>DOCTYPE</code>
203          and comment declarations, are not allowed in HTML document.</dd>
204        <dt>String <code>&lt;!</code></dt>
205          <dd>String <code>&lt;!</code> must be escaped as
206          <code class="example">&amp;lt;!</code>.</dd>
207        </dl>
208      </d:desc>
209    </d:item>
210    
211    <d:item name="bogus end tag"
212        class="tokenize-error">
213      <d:message xml:lang="en">String <code>&lt;/</code> is not followed
214      by tag name.</d:message><!-- </ non-name-start-char-non-EOF -->
215      <d:desc xml:lang="en">
216        <p>There is a <code>&lt;</code> (<code>U+003C</code>
217        <code class="charname">LESS-THAN SIGN</code>) character
218        immediately followed by a <code>/</code> (<code>U+005F</code>
219        <code>SOLIDUS</code>) character, which is not part
220        of any end tag, in the input stream.  The document
221        is non-conforming.</p>
222    
223        <p>The <code>&lt;/</code> sequence not followed by a
224        tag name is parsed as an opening of bogus comment.</p>
225    
226        <p>The <code>&lt;/</code> sequence as string data must
227        be escaped as:
228        <pre class="html example"><code>&amp;lt;/</code></pre>
229        </p>
230      </d:desc>
231    </d:item>
232    
233  <d:item name="dash in comment"  <d:item name="dash in comment"
234      class="tokenize-error">      class="tokenize-error">
235    <d:message xml:lang="en">There is a <code>--</code> sequence    <d:message xml:lang="en">There is a <code>--</code> sequence
# Line 166  Web Document Conformance Checker (BETA)< Line 262  Web Document Conformance Checker (BETA)<
262    
263  <d:item name="nestc"  <d:item name="nestc"
264      class="tokenize-error">      class="tokenize-error">
265    <d:message xml:lang="en">Void element syntax (<code>/></code>) cannot be    <d:message xml:lang="en">Polytheistic slash (<code>/></code>) cannot be
266    used for this element.</d:message>    used for this element.</d:message>
267    <d:desc xml:lang="en">    <d:desc xml:lang="en">
268      <p>Void element syntax (<code>/></code>) must not be used      <p>Polytheistic slash (<code>/></code>) must not be used
269      for the element.  The document is non-conforming.</p>      for the element.  The document is non-conforming.</p>
270    
271      <p>The void element syntax can only be      <p>The polytheistic slash can only be
272      used for <code>base</code>, <code>link</code>, <code>meta</code>,      used for <code>base</code>, <code>link</code>, <code>meta</code>,
273      <code>hr</code>, <code>br</code>, <code>img</code>,      <code>hr</code>, <code>br</code>, <code>img</code>,
274      <code>embed</code>, <code>param</code>, <code>area</code>,      <code>embed</code>, <code>param</code>, <code>area</code>,
275      <code>col</code>, and <code>input</code> elements.</p>      <code>col</code>, and <code>input</code> elements.</p>
276    
277      <p>Note that, unlike in XML, the void element syntax has      <dl class="switch">
278        <dt><code>&lt;script/></code></dt>
279            <dd><p>The polytheistic slash cannot be used for <code>script</code>
280            element.  Even for an empty <code>script</code> element,
281            there must be an explicit end tag
282            <code class="html example">&lt;/script></code>.</p>
283    
284            <p><strong>NOTE</strong>: Though some user agents interpret
285            polytheistic slash for <code>script</code> element as the
286            closing of the element, such usage is not allowed under
287            the current standard.</p></dd>
288        <dt><code>&lt;basefont/></code>, <code>&lt;bgsound/></code>,
289        <code>&lt;frame/></code>, <code>&lt;keygen/></code>,
290        <code>&lt;spacer/></code>, <code>&lt;wbr/></code></dt>
291            <dd>These elements are themselves non-conforming.</dd>
292        <!-- isindex, image -->
293        <dt><code>&lt;command/></code>, <code>&lt;event-source/></code>,
294        <code>&lt;nest/></code>, or <code>&lt;source/></code></dt>
295            <dd>Future revision of HTML5 parsing algorithm is expected
296            to allow polytheistic slash for these elements.</dd>
297        <dt><code>&lt;a/></code>, <code>&lt;p/></code></dt>
298            <dd>These elements are not always empty and therefore
299            polytheistic slash is not allowed.  Use explicit end tag
300            to represent empty element as:
301              <pre class="example html"><code>&lt;p>&lt;/p></code></pre>
302            </dd>
303        </dl>
304    
305        <p>Note that, unlike in XML, the polytheistic slash has
306      no effect in HTML.</p>      no effect in HTML.</p>
307    </d:desc>    </d:desc>
308  </d:item>  </d:item>
# Line 187  Web Document Conformance Checker (BETA)< Line 311  Web Document Conformance Checker (BETA)<
311  <d:item name="pio"  <d:item name="pio"
312      class="tokenize-error">      class="tokenize-error">
313    <d:message xml:lang="en">Processing instruction    <d:message xml:lang="en">Processing instruction
314    (<code>&lt;?<var>...</var>?></code>) cannot be used.</d:message>    (<code>&lt;?<var>...</var>></code>) cannot be used.</d:message>
315    <d:desc xml:lang="en">    <d:desc xml:lang="en">
316      <p>Processing instructions (<code>&lt;?<var>...</var>?></code>),      <p>Processing instructions (<code>&lt;?<var>...</var>?></code>),
317      including XML declaration (<code>&lt;?xml <var>...</var>?></code>)      including XML declaration (<code>&lt;?xml <var>...</var>?></code>)
318      and XML style sheet <abbr title="processing instruction">PI</abbr>      and XML style sheet <abbr title="processing instruction">PI</abbr>
319      (<code>&lt;xml-stylesheet <var>...</var>?></code>), are not allowed      (<code>&lt;?xml-stylesheet <var>...</var>?></code>), are not allowed
320      in the HTML syntax.  The document is non-conforming.</p>      in the HTML syntax.  The document is non-conforming.</p>
321    
322      <p>If it is necessary to embed a processing instruction      <dl class="switch">
323      in the HTML document, you must use the XML syntax instead.</p>      <dt><code>&lt;?xbl?></code> (<abbr>XBL</abbr> Association)</dt>
324          <dd>An <abbr>XBL</abbr> binding cannot be associated by
325      <p>In the HTML syntax, XML declaration is not necessary.</p>        <abbr title="processing instruction">PI</abbr> in <abbr>HTML</abbr>
326          document.  Use <code>binding</code> property in <abbr>CSS</abbr>
327      <p>Instead of XML style sheet,        style sheet as:
328      <abbr title="processing instruction">PI</abbr>s, you must          <pre class="html example"><code>&lt;style>
329      use the HTML <code>link</code> element whose <code>rel</code>  p {
330      attribute is set to <code>stylesheet</code> (or    binding: url(binding.xbl);
331      <code>alternate stylesheet</code> for an aleternate style sheet).</p>  }
332    &lt;/style></code></pre>
333          </dd>
334        <dt><code>&lt;?xml?&gt;</code> (XML declaration)</dt>
335            <dd>XML declaration is unnecessary for HTML documents.</dd>
336        <dt><code>&lt;?xml-stylesheet?></code> (XML style sheet
337        <abbr title="processing instruction">PI</abbr>)</dt>
338            <dd>Use HTML <code>link</code> element with <code>rel</code>
339            attribute set to <code>stylesheet</code> (or,
340            <code>alternate stylesheet</code> for an alternate style
341            sheet).
342              <pre class="example html"><code>&lt;link rel=stylesheet href="path/to/stylesheet.css"></code></pre>
343            </dd>
344        <dt><code>&lt;?php?&gt;</code> or
345        <code>&lt;? <var>... <abbr>PHP</abbr> code ...</var> ?&gt;</code>
346        (<abbr>PHP</abbr> code)</dt>
347            <dd>The conformance checker does <em>not</em> support
348            checking for PHP source documents.</dd>
349        <dt>Other processing instructions</dt>
350            <dd>Processing instructions cannot be inserted in an HTML
351            document.  Use XML document or insert
352            <code>ProcessingInstruction</code> node by scripting.</dd>
353        </dl>
354    
355      <p>Web browsers will parse processing instructions as bogus      <p>Web browsers will parse processing instructions as bogus
356      comments.  Some legacy Web browsers, such as IE:mac and      comments.  Some legacy Web browsers, such as IE:mac and
357      some mobile browsers, will display processing instructions      some mobile Web browsers, will display processing instructions
358      as string.</p>      as string.</p>
359    </d:desc>    </d:desc>
360  </d:item>  </d:item>
# Line 258  Web Document Conformance Checker (BETA)< Line 404  Web Document Conformance Checker (BETA)<
404  <d:item name="in body"  <d:item name="in body"
405      class="parse-error">      class="parse-error">
406    <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>    <d:message xml:lang="en">Tag <code>&lt;<var>$0</var>&gt;</code>
407    is not allowed in a <code>body</code> element.</d:message>    is not allowed in the <code>body</code> element.</d:message>
408    <d:desc xml:lang="en">    <d:desc xml:lang="en">
409      <p>The start or end tag of an element, which      <p>The start or end tag of an element, which
410      cannot be a descendant of <code>body</code> element, appears      cannot be a descendant of <code>body</code> element, appears
# Line 269  Web Document Conformance Checker (BETA)< Line 415  Web Document Conformance Checker (BETA)<
415    
416  <d:item name="in head:head"  <d:item name="in head:head"
417      class="parse-error">      class="parse-error">
418    <d:message xml:lang="en">Start tag <code>&lt;<var>head</var>&gt;</code>    <d:message xml:lang="en">Start tag <code>&lt;head&gt;</code>
419    is not allowed in the <code>head</code> element.</d:message>    is not allowed in the <code>head</code> element.</d:message>
420    <d:desc xml:lang="en">    <d:desc xml:lang="en">
421      <p>There is a start tag <code>&lt;head></code> in the      <p>There is a start tag <code>&lt;head></code> in the
# Line 344  Web Document Conformance Checker (BETA)< Line 490  Web Document Conformance Checker (BETA)<
490      </p>      </p>
491    
492      <p>Only white space characters and comments are allowed      <p>Only white space characters and comments are allowed
493      before the <code>DOCTYPE</code>.</p>      before the <code>DOCTYPE</code>.  XML declaration is <em>not</em>
494        allowed in HTML document.</p>
495    </d:desc>    </d:desc>
496  </d:item>  </d:item>
497    
# Line 356  Web Document Conformance Checker (BETA)< Line 503  Web Document Conformance Checker (BETA)<
503      <p>End tag of an element is not found before, for example,      <p>End tag of an element is not found before, for example,
504      an end tag of another element appears or      an end tag of another element appears or
505      the end of the document.  The document is non-conforming.</p>      the end of the document.  The document is non-conforming.</p>
506    
507        <p>Only <code>body</code>, <code>colgroup</code>, <code>dd</code>,
508        <code>dt</code>, <code>head</code>, <code>html</code>, <code>li</code>,
509        <code>ol</code>, <code>option</code>, <code>optgroup</code>,
510        <code>p</code>, <code>rb</code>, <code>rp</code>, <code>rt</code>,
511        <code>tbody</code>, <code>td</code>, <code>tfoot</code>,
512        <code>th</code>, <code>thead</code>, <code>tr</code>,
513        <code>ul</code> end tag can be omitted in HTML documents.
514        For any element except for void element, there must be an explicit
515        end tag.</p>
516    
517        <dl class="switch">
518        <dt>HTML <code>canvas</code> element</dt>
519          <dd>Though the element is void in earlier versions of Safari,
520          the <code>canvas</code> element is <em>no</em> longer
521          defined as empty.  There must be an end tag
522          <code class="html example">&lt;/canvas></code>.</dd>
523        </dl>
524    
525        <p>Note that misnesting tags, such as
526        <code class="bad example">&lt;a>&lt;b>&lt;/a>&lt;/b></code>, are not
527        allowed and they also cause this error.</p>
528    </d:desc>    </d:desc>
529  </d:item>  </d:item>
530    
# Line 384  Web Document Conformance Checker (BETA)< Line 553  Web Document Conformance Checker (BETA)<
553    <d:desc xml:lang="en">    <d:desc xml:lang="en">
554      <p>The document contains a <code>DOCTYPE</code> declaration      <p>The document contains a <code>DOCTYPE</code> declaration
555      that is different from HTML5 <code>DOCTYPE</code> (i.e.      that is different from HTML5 <code>DOCTYPE</code> (i.e.
556      <code>&lt;!DOCTYPE HTML&gt;</code>).  The document is non-conforming.</p>      <code class="example html">&lt;!DOCTYPE HTML&gt;</code>).
557        The document is non‐conforming.</p>
558    
559      <p>The document might or might not be conformant to      <p>The document might or might not be conformant to
560      some version of HTML.  However, conformance to any HTML      some version of HTML.  However, conformance to any HTML
# Line 404  Web Document Conformance Checker (BETA)< Line 574  Web Document Conformance Checker (BETA)<
574    
575      <p>For any end tag in HTML document, there must be a      <p>For any end tag in HTML document, there must be a
576      corresponding start tag.</p>      corresponding start tag.</p>
577    
578        <dl class="switch">
579        <dt>HTML <code>base</code>, <code>basefont</code>,
580        <code>bgsound</code>, <code>br</code>, <code>col</code>,
581        <code>embed</code>, <code>frame</code>, <code>hr</code>,
582        <code>image</code>, <code>img</code>, <code>input</code>,
583        <code>isindex</code>, <code>link</code>, <code>meta</code>,
584        <code>param</code>, <code>spacer</code>, or <code>wbr</code> element</dt>
585          <dd>End tag is not allowed for these elements, since
586          those content must always be empty.  Remove end tag.</dd>
587        <!-- keygen -->
588        <!-- command, event-source, nest, source -->
589        </dl>
590    </d:desc>    </d:desc>
591  </d:item>  </d:item>
592    
# Line 448  Web Document Conformance Checker (BETA)< Line 631  Web Document Conformance Checker (BETA)<
631      must contain a <code><var>$0</var></code> child element.      must contain a <code><var>$0</var></code> child element.
632      The document is non-conforming.</p>      The document is non-conforming.</p>
633    
634      <p>For example:      <dl class="switch">
635        <ul>      <dt>HTML <code>head</code> element</dt>
636        <li>The <code>head</code> element must contain exactly one        <dd>There must be a <code>title</code> child element.</dd>
637        <code>title</code> child element.</li>      <dt>HTML <code>html</code> element</dt>
638        <li><a href="#child-element-missing:td%7Cth">The <code>tr</code>        <dd>There must be a <code>head</code> child element followed
639        element must contain one or more <code>td</code> or <code>th</code>        by a <code>body</code> element.</dd>
640        child element.</a></li>      <dt>HTML <code>tr</code> element</dt>
641        </ul>        <dd><a href="#child-element-missing:td%7Cth">There must be
642      </p>        one or more <code>td</code> or <code>th</code> child element.</a></dd>
643        </dl>
644    </d:desc>    </d:desc>
645  </d:item>  </d:item>
646    
# Line 479  Web Document Conformance Checker (BETA)< Line 663  Web Document Conformance Checker (BETA)<
663      <p>An element appears where it is not allowed.  The document      <p>An element appears where it is not allowed.  The document
664      is non-conforming.</p>      is non-conforming.</p>
665    
     <p><strong>Note</strong>: The conformance checker does  
     <em>not</em> support form elements yet.</p>  
   
666      <p>Possible causes:      <p>Possible causes:
667        <dl class="switch">        <dl class="switch">
668        <dt>If the element with the error is an inline-level element,        <dt>If the element with the error is an inline-level element,
# Line 492  Web Document Conformance Checker (BETA)< Line 673  Web Document Conformance Checker (BETA)<
673    
674            <p>Any inline-level content must be put            <p>Any inline-level content must be put
675            in e.g. paragraph element such as <code>p</code>.</p></dd>            in e.g. paragraph element such as <code>p</code>.</p></dd>
676        <dt>If the element with the error is a block-level element,        <dt>If it is a block-level elements, such as <code>aside</code>,
677        such as <code>div</code>, <code>h<var>n</var></code>, or        <code>div</code>, <code>h<var>n</var></code>,
678        <code>section</code></dt>        <code>p</code>, or <code>section</code></dt>
679            <dd><p>Though some elements such as <code>div</code>,            <dd><dl class="switch">
680            <code>li</code>, and <code>td</code> allow                <dt>If the parent element is <code>div</code>,
681            <em>either one</em> of block-level or inline-level content                <code>li</code>, <code>td</code>, or <code>th</code></dt>
682            is allowed.  If there is a block-level content,                <!-- @@ TODO: more... -->
683            any inline-level content must be put                    <!-- @@ TODO: <p><ul><li><p> -->
684            in e.g. paragraph element such as <code>p</code>.</p></dd>                    <dd><p>The parent element allows <em>either</em>
685                      block-level or inline-level content.  If there is a
686                      block-level content, any inline-level content must be
687                      put in e.g. paragraph element such as <code>p</code>.</p>
688                      <p>For example, an HTML document fragment
689                      <code class="html bad example">&lt;div>&lt;p>Hello!&lt;/p> World!&lt;/div></code>
690                      is non-conforming, since a word <q>World!</q> does not belong
691                      to any paragraph.  (If not part of any paragraph, what is
692                      it!?)  A conforming example would be:
693                        <pre class="html example"><code>&lt;div>&lt;p>Hello!&lt;/p> &lt;p>World!&lt;/p>&lt;/div></code></pre>
694                      </p></dd>
695                  <dt>If the parent element does <em>not</em> allow
696                  block-level elements as content</dt>
697                      <dd>The element is not allowed to be inserted here.
698                      For example, a <code>div</code> element cannot be
699                      a child of an <code>h1</code> element.</dd>
700              </dl></dd>
701        <dt>If the element with the error is a <code>noscript</code> element</dt>        <dt>If the element with the error is a <code>noscript</code> element</dt>
702            <dd>The <code>noscript</code> element is allowed only in the context            <dd>The <code>noscript</code> element is allowed only in the context
703            where a block-level or inline-level content is expected            where a block-level or inline-level content is expected
704            and in the <code>head</code> element.            and in the <code>head</code> element.
705            It cannot be used in e.g. <code>ul</code>, <code>table</code>,            It cannot be used in e.g. <code>ul</code>, <code>table</code>,
706            or <code>select</code>.</dd>            or <code>select</code>.</dd>
707        <dt>If the element with the error is the <code>html</code> element        <dt>If the element with the error is <code>blink</code>,
708        that is the root element of an XHTML document</dt>        <code>center</code>, or <code>marquee</code> element</dt>
709            <dd><p>In an XHTML document, the root <code>html</code>            <dd>These elements are not part of the HTML standard.
710            element must have an <code>xmlns</code> attribute            Use CSS for styling control.</dd>
711            whose value is set to  
712            <code>http://www.w3.org/1999/xhtml</code>.</p></dd>        <dt><code>button</code>, <code>datalist</code>,
713          <code>fieldset</code>, <code>form</code>,
714          <code>input</code>, <code>label</code>,
715          <code>optgroup</code>, <code>option</code>, <code>output</code>,
716          <code>rb</code>, <code>rp</code>, <code>rt</code>, <code>ruby</code>,
717          <code>textarea</code>, or <code>textarea</code> element</dt>
718          <!-- rbc, rtc ? -->
719              <dd>These elements are intentionally not supported by the conformance
720              checker <em>yet</em>.</dd>
721        </dl>        </dl>
722      </p>      </p>
723    </d:desc>    </d:desc>
724  </d:item>  </d:item>
725    
726    <d:item name="element not allowed:root"
727        class="content-model-error">
728      <d:message xml:lang="en">This element is not allowed as a root
729      element.</d:message>
730      <d:desc xml:lang="en">
731        <p>An element that is not allowed as the root element
732        is used as the root element of the document.  The document is
733        non-conforming, as far as the conformance checker can tell.</p>
734    
735        <dl class="switch">
736        <dt><code>html</code> element in an XHTML document</dt>
737            <dd><p>In <abbr>XHTML</abbr> document, the root <code>html</code>
738            element must have an <code>xmlns</code> attribute as:
739              <pre class="xml example"><code>&lt;html xmlns="http://www.w3.org/1999/xhtml"></code></pre></p></dd>
740        <dt><code>rss</code> element</dt>
741            <dd><p>The document is written in some version of RSS.</p>
742            <p>The conformance checker does not support any version
743            of RSS.  Use Atom 1.0 for feed documents.</p></dd>
744        <dt><code>feed</code> element</dt>
745            <dd><p>The Atom <code>feed</code> element must be
746            in the <code>http://www.w3.org/2005/Atom</code>
747            namespace as:
748              <pre class="xml example"><code>&lt;feed xmlns="http://www.w3.org/2005/Atom"></code></pre>
749            </p>
750            <p>The conformance checker does not support Atom 0.3.
751            Use Atom 1.0 for feed documents.</p></dd>
752        </dl>
753      </d:desc>
754    </d:item>
755    
756  <d:item name="ps element missing"  <d:item name="ps element missing"
757      class="content-model-error">      class="content-model-error">
758    <d:message xml:lang="en">There is no <code><var>$0</var></code>    <d:message xml:lang="en">There is no <code><var>$0</var></code>
# Line 545  Web Document Conformance Checker (BETA)< Line 780  Web Document Conformance Checker (BETA)<
780      is non-conforming.</p>      is non-conforming.</p>
781    
782      <p>Some attribute is defined as <i>required</i>.      <p>Some attribute is defined as <i>required</i>.
     For example, any <code>img</code> element must have  
     <code>alt</code> and <code>src</code> attributes specified.  
783      Without required attributes specified, user agents      Without required attributes specified, user agents
784      cannot provide the full functionality of the element      cannot provide full functionality of the element to the user.</p>
785      to the user.</p>  
786        <dl class="switch">
787        <dt>HTML <code>img</code> element</dt>
788            <dd>The <code>src</code> attribute must be specified.
789            Additionally, the <code>alt</code> attribute must be specified
790            in many cases.</dd>
791        <dt>HTML <code>link</code> element</dt>
792            <dd>The <code>rel</code> attribute must be specified.
793            Note that the <code>rev</code> attribute is obsolete.</dd>
794        </dl>
795      </d:desc>
796    </d:item>
797    
798    <d:item name="attribute not allowed" class="attribute-error">
799      <d:message xml:lang="en">Attribute
800      <code><var>{local-name}</var></code> is not allowed for
801      <code><var>{element-local-name}</var></code> element.</d:message>
802      <d:desc xml:lang="en">
803        <p>An attribute is specified where it is not allowed.
804        The document is non-conforming.</p>
805    
806        <dl>
807        <dt>HTML <code>meta</code> element</dt>
808            <dd>For HTML <code>meta</code> element, <em>only one</em> of
809            <code>name</code>, <code>http-equiv</code>, or <code>charset</code>
810            attribute is allowed.</dd>
811        </dl>
812    </d:desc>    </d:desc>
813  </d:item>  </d:item>
814    
# Line 557  Web Document Conformance Checker (BETA)< Line 816  Web Document Conformance Checker (BETA)<
816      class="attribute-error">      class="attribute-error">
817    <d:message xml:lang="en">The <code>xml:lang</code> attribute is not    <d:message xml:lang="en">The <code>xml:lang</code> attribute is not
818    allowed in HTML document.</d:message>    allowed in HTML document.</d:message>
819    <d:desc>    <d:desc xml:lang="en">
820      <p>The <code>xml:lang</code> attribute is not allowed in      <p>The <code>xml:lang</code> attribute is not allowed in
821      HTML document.  The document is non-conforming.</p>      HTML document.  The document is non-conforming.</p>
822    
823      <p>The <code>lang</code> attribute in the <code>null</code>      <p>Use of the <code>xml:lang</code> attribute is conforming
824      namespace for HTML elements is defined as conforming <em>only</em> for      <em>only</em> in XML documents.</p>
     XML document.</p>  
825    
826      <p>To specify natural language information in HTML document,      <p>To specify natural language information in HTML document,
827      use <code>lang</code> attribute instead.</p>      use <code>lang</code> attribute instead.</p>
# Line 604  Web Document Conformance Checker (BETA)< Line 862  Web Document Conformance Checker (BETA)<
862      XML document.  The document is non-conforming.</p>      XML document.  The document is non-conforming.</p>
863    
864      <p>The <code>lang</code> attribute in <code>null</code>      <p>The <code>lang</code> attribute in <code>null</code>
865      namespace for HTML elements is defined as conforming <em>only</em> for      namespace for HTML elements is conforming <em>only</em> in
866      HTML document.</p>      HTML documents.</p>
867    
868      <p>To specify natural language information in XML document,      <p>To specify natural language information in XML document,
869      use <code>xml:lang</code> attribute instead.</p>      use <code>xml:lang</code> attribute instead.</p>
# Line 621  Web Document Conformance Checker (BETA)< Line 879  Web Document Conformance Checker (BETA)<
879      <p>The <code>xmlns</code> attribute in the <code>null</code>      <p>The <code>xmlns</code> attribute in the <code>null</code>
880      namespace is not allowed in XHTML document.</p>      namespace is not allowed in XHTML document.</p>
881    
882      <p>This error should not occur in conformance-checking      <p>This error should not occur in conformance-checking of
883      static documents.</p>      static documents.</p>
884    </d:desc>    </d:desc>
885  </d:item>  </d:item>
# Line 636  Web Document Conformance Checker (BETA)< Line 894  Web Document Conformance Checker (BETA)<
894    <d:message xml:lang="en">This attribute only allow a limited set of    <d:message xml:lang="en">This attribute only allow a limited set of
895    values and the specified value <code><var>{@}</var></code> is not one    values and the specified value <code><var>{@}</var></code> is not one
896    of them.</d:message>    of them.</d:message>
897      <d:desc xml:lang="en">
898        <p>For this attribute only several values are allowed and the
899        value of the attribute is not one of them.  The document
900        is non-conforming.</p>
901    
902        <dl>
903        <dt>HTML <code>meta</code> element, <code>http-equiv</code> attribute</dt>
904            <dd><p>Only values <code>Default-Style</code> and <code>Refresh</code>
905            are allowed.</p>
906            <p>Value <code>Content-Type</code> is obsolete; for charset
907            declaration, the <code>charset</code> attribute can be used as:
908            <pre class="html example"><code>&lt;meta charset="<var>charset-name</var>"></code></pre>
909            ... where <var>charset-name</var> is a name of the character encoding
910            of the document, such as <code>utf-8</code>.</p>
911            <p>Values <code>Content-Style-Type</code> and
912            <code>Content-Script-Type</code> are currently not allowed.</p>
913            <p>Value <code>Keywords</code> is not allowed.  Use
914            <code>name</code> attribute instead of <code>http-equiv</code>
915            attribute.</p>
916            <p>Values <code>Expires</code>, <code>Pragma</code>,
917            and <code>Cache-Control</code> are not allowed;
918            use <em>real</em> HTTP header fields for cache control.</p></dd>
919        </dl>
920      </d:desc>
921    </d:item>
922    
923    <d:item name="enumerated:invalid:http-equiv:content-type"
924        class="attribute-value-error">
925      <d:message xml:lang="en">Charset declaration syntax
926      <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"></code>
927      is obsolete.</d:message>
928      <d:desc xml:lang="en">
929        <p>Old long charset declaration syntax
930        <code class="html bad example">&lt;meta http-equiv="Content-Type" content="text/html; charset=<var>charset-name</var>"></code>
931        is in use.  The document is non‐conforming.</p>
932    
933        <p>The new charset declaration syntax is:
934          <pre class="html example"><code>&lt;meta charset="<var>charset-name</var>"></code></pre>
935        </p>
936      </d:desc>
937  </d:item>  </d:item>
938    
939  <d:item name="duplicate ID"  <d:item name="duplicate ID"
# Line 670  Web Document Conformance Checker (BETA)< Line 968  Web Document Conformance Checker (BETA)<
968      <p>The specified link type is non-conforming, and therefore      <p>The specified link type is non-conforming, and therefore
969      the document is non-conforming.</p>      the document is non-conforming.</p>
970    
971      <dl>      <dl class="switch">
972      <dt>Link type <code>contents</code></dt>      <dt>Link type <code>contents</code></dt>
973        <dd>Use link type <code>index</code>.</dd>        <dd>Use link type <code>index</code>.</dd>
974      <dt>Link type <code>copyright</code></dt>      <dt>Link type <code>copyright</code></dt>
975        <dd>Use link type <code>license</code>.</dd>        <dd>Use link type <code>license</code>.</dd>
976      <dt>Link type <code>home</code></dt>      <dt>Link type <code>home</code></dt>
977        <dd>Use link type <code>index</code>.</dd>        <dd>Use link type <code>index</code>.</dd>
978        <dt>Link type <code>previous</code></dt>
979          <dd>Use link type <code>prev</code>.</dd>
980      <dt>Link type <code>start</code></dt>      <dt>Link type <code>start</code></dt>
981        <dd>Use link type <code>first</code>.</dd>        <dd>Use link type <code>first</code>.</dd>
982      <dt>Link type <code>toc</code></dt>      <dt>Link type <code>toc</code> or <code>top</code></dt>
983        <dd>Use link type <code>index</code>.</dd>        <dd>Use link type <code>index</code>.</dd>
984      </dl>      </dl>
985    </d:desc>    </d:desc>
# Line 722  Web Document Conformance Checker (BETA)< Line 1022  Web Document Conformance Checker (BETA)<
1022    
1023      <p><strong>Warning</strong>: The data served to the      <p><strong>Warning</strong>: The data served to the
1024      conforming checker might be out of date; it might have already      conforming checker might be out of date; it might have already
1025      been accepted or rejected, depending on which the document      been accepted or rejected.  The document might or might not be
1026      might be conforming or non-conforming.  See WHATWG Wiki      conforming depending on the status.  See WHATWG Wiki
1027      for the latest information.</p>      for the latest information.</p>
1028    </d:desc>    </d:desc>
1029  </d:item>  </d:item>
# Line 758  Web Document Conformance Checker (BETA)< Line 1058  Web Document Conformance Checker (BETA)<
1058      The document is non-conforming.</p>      The document is non-conforming.</p>
1059    
1060      <p>For example, the table below is non-conforming:      <p>For example, the table below is non-conforming:
1061        <pre class="html non-conforming example"><code>&lt;table>        <pre class="html bad example"><code>&lt;table>
1062  &lt;tbody>  &lt;tbody>
1063  &lt;tr>&lt;td rowspan=2>&lt;/td>&lt;/tr>  &lt;tr>&lt;td rowspan=2>&lt;/td>&lt;/tr>
1064  &lt;/tbody>  &lt;/tbody>
1065  &lt;/table></code></pre>  &lt;/table></code></pre>
1066      ... is non-conforming, since the second row contains only      ... since the second row contains only
1067      a cell that spans the first and the second rows.</p>      a cell that spans between first and second rows.</p>
1068    </d:desc>    </d:desc>
1069  </d:item>  </d:item>
1070    
# Line 777  Web Document Conformance Checker (BETA)< Line 1077  Web Document Conformance Checker (BETA)<
1077      class="should" level="s">      class="should" level="s">
1078    <d:message xml:lang="en"><code><var>{@}</var></code>: An <em>obsolete</em>    <d:message xml:lang="en"><code><var>{@}</var></code>: An <em>obsolete</em>
1079    subtype is used.</d:message>    subtype is used.</d:message>
1080      <d:item xml:lang="en">
1081        <p>The specified Internet Media Type is registered with status
1082        of <i>OBSOLETE</i>.</p><!-- @@ SHOULD NOT? -->
1083        
1084        <dl class="swtich">
1085        <dt>Media type <code>text/ecmascript</code></dt>
1086          <dd>Media type <code>text/ecmascript</code> is obsoleted in
1087          favor of <code>application/ecmascript</code>.  Note that
1088          <code>text/javascript</code> would be better alternative
1089          for many cases.</dd>
1090        <dt>Media type <code>text/javascript</code></dt>
1091          <dd>Media type <code>text/javascript</code> is obsoleted by
1092          <abbr>IETF</abbr> with backward incompatible alternate
1093          <code>application/javascript</code> for architectural
1094          purity.<!-- @@ ref? -->  Realist may ignore this warning.</dd>
1095        </dl>
1096      </d:item>
1097  </d:item>  </d:item>
1098    
1099  <d:item name="IMT:private subtype"  <d:item name="IMT:private subtype"
# Line 818  Web Document Conformance Checker (BETA)< Line 1135  Web Document Conformance Checker (BETA)<
1135    
1136  </section>  </section>
1137    
1138  <section id="uri-warnings">  <section id="uri-shoulds">
1139  <h2>URI (or IRI) Warnings</h2>  <h2>URI (or IRI) Should-level Errors</h2>
1140    
1141  <d:item name="URI::dot-segment"  <d:item name="URI::dot-segment"
1142      class="should" level="s">      class="should" level="s">
1143    <d:message xml:lang="en">Dot-segment (<code>.</code> or    <d:message xml:lang="en">A dot-segment (<code>.</code> or
1144    <code>..</code>) should not occur in an absolute reference.</d:message>    <code>..</code>) occurs in an absolute reference.</d:message>
1145    <d:desc>    <d:desc>
1146      <p>Dot-segment (<code>.</code> or <code>..</code>) should      <p>Dot-segment (<code>.</code> or <code>..</code>) should
1147      not occur in an absolute reference.</p>      not occur in an absolute reference.</p>
# Line 839  Web Document Conformance Checker (BETA)< Line 1156  Web Document Conformance Checker (BETA)<
1156    
1157  <d:item name="URI::empty path"  <d:item name="URI::empty path"
1158      class="should" level="s">      class="should" level="s">
1159    <d:message xml:lang="en">This IRI should explicitly end with    <d:message xml:lang="en">This IRI does not end with
1160    <code>/</code>.</d:message>    a <code>/</code>.</d:message>
1161      <d:item xml:lang="en">
1162        <p>The IRI does not end with a <code>/</code>.  If there is an
1163        authority component in an IRI, a <code>/</code> should be present
1164        instead of empty path component.</p>
1165    
1166        <p>For example, <code>http://www.example.com<strong>/</strong></code>
1167        is preferred to <code>http://www.example.com</code>.</p>
1168      </d:item>
1169  </d:item>  </d:item>
1170    
1171  <d:item name="URI::lowercase hexadecimal digit"  <d:item name="URI::lowercase hexadecimal digit"
1172      class="should" level="s">      class="should" level="s">
1173    <d:message xml:lang="en">Hexadecimal digit in percent-encoding    <d:message xml:lang="en">A lowercase hexadecimal digit is used
1174    should be in lowercase.</d:message>    in percent-encoding.</d:message>
1175    <d:desc xml:lang="en">    <d:desc xml:lang="en">
1176      <p>The hexadecimal digit in percent-encoding string in the IRI      <p>The hexadecimal digit in percent-encoding string in the IRI
1177      is in lowercase.  Though the IRI <em>is</em> conforming,      is in lowercase.  Though the IRI <em>is</em> conforming,
# Line 887  Web Document Conformance Checker (BETA)< Line 1212  Web Document Conformance Checker (BETA)<
1212    
1213  </section>  </section>
1214    
1215    <section id="cache-manifest-errors">
1216    <h2>Cache Manifest Errors</h2>
1217    
1218    <d:item name="not manifest" class="must" level="m">
1219      <d:message xml:lang="en">This document is not a cache manifest.</d:message>
1220      <d:desc xml:lang="en">
1221        <p>The specified document is <em>not</em> a cache manifest.
1222        The document is non-conforming.</p>
1223    
1224        <p>An entity labeled as Internet media type
1225        <code>text/cache-manifest</code> must contain a cache manifest.</p>
1226    
1227        <p>A cache manifest must start with a line whose content is
1228        <code class="manifest example">CACHE MANIFEST</code>
1229        (exactly one space character between
1230        <code>CACHE</code> and <code>MANIFEST</code>).</p>
1231      </d:desc>
1232    </d:item>
1233    </section>
1234    
1235  <section id="unsupported-messages">  <section id="unsupported-messages">
1236  <h2><i>Unsupported</i> Messages</h2>  <h2><i>Unsupported</i> Messages</h2>
1237    
1238  <d:item name="attribute"  <d:item name="element"
1239      class="unsupported" level="unsupported">      class="unsupported" level="unsupported">
1240    <d:message xml:lang="en">This attribute is not supported by the    <d:message xml:lang="en">Conformance checking for element
1241    conformance checker; <em>it might or might not be conforming</em>.</d:message>    <code><var>{local-name}</var></code> is not supported; <em>it might or
1242      might not be conforming</em>.</d:message>
1243    <d:desc xml:lang="en">    <d:desc xml:lang="en">
1244      <p>The conformant checker does not support the attribute.      <p>The conformant checker does not support the element.
1245      It cannot determine whether the document is conforming or not.</p>      It cannot determine whether the document is conforming or not.</p>
1246    </d:desc>    </d:desc>
1247  </d:item>  </d:item>
1248    
1249  <d:item name="element"  <d:item name="attribute"
1250      class="unsupported" level="unsupported">      class="unsupported" level="unsupported">
1251    <d:message xml:lang="en">This element is not supported by the    <d:message xml:lang="en">Conformance checking for attribute
1252    conformance checker; <em>it might or might not be conforming</em>.</d:message>    <code><var>{local-name}</var></code> of element
1253      <code><var>{element-local-name}</var></code> is not supported;
1254      <em>it might or might not be conforming</em>.</d:message>
1255    <d:desc xml:lang="en">    <d:desc xml:lang="en">
1256      <p>The conformant checker does not support the element.      <p>The conformant checker does not support the attribute.
1257      It cannot determine whether the document is conforming or not.</p>      It cannot determine whether the document is conforming or not.</p>
1258    </d:desc>    </d:desc>
1259  </d:item>  </d:item>
1260    
1261  <d:item name="link type"  <d:item name="link type"
1262      class="unsupported" level="unsupported">      class="unsupported" level="unsupported">
1263    <d:message xml:lang="en">The link type <code><var>$0</var></code> is not    <d:message xml:lang="en">Link type <code><var>$0</var></code> is not
1264    standardized or registered at the time of the release of the conformance    standardized or registered at the time of the release of the conformance
1265    checker; <em>it is non-conforming unless it has now been    checker; <em>it is non-conforming unless it now has been
1266    registered</em>.</d:message>    registered</em>.</d:message>
1267    <d:desc xml:lang="en">    <d:desc xml:lang="en">
1268      <p>The <code>rel</code> attribute is defined as a list of link types.      <p>The <code>rel</code> attribute is defined as a list of link types.
# Line 927  Web Document Conformance Checker (BETA)< Line 1275  Web Document Conformance Checker (BETA)<
1275      The link type might have been added to the registry since then.      The link type might have been added to the registry since then.
1276      In such case it might be conforming.  Otherwise, the      In such case it might be conforming.  Otherwise, the
1277      document is non-conforming.</p>      document is non-conforming.</p>
1278    
1279        <dl>
1280        <dt>Link types <code>shortcut icon</code></dt>
1281            <dd>Link type <code>shortcut</code> is not registered.
1282            Use only <code>icon</code> for linking to so-called favicon.</dd>
1283        </dl>
1284    </d:desc>    </d:desc>
1285  </d:item>  </d:item>
1286    
# Line 936  Web Document Conformance Checker (BETA)< Line 1290  Web Document Conformance Checker (BETA)<
1290    is not supported; <em>it might or might not be conforming.</em></d:message>    is not supported; <em>it might or might not be conforming.</em></d:message>
1291  </d:item>  </d:item>
1292    
 <d:item name="language tag"  
     class="unsupported" level="unsupported">  
   <d:message xml:lang="en">Conformance checking for language tag  
   is not supported; <em>it might or might not be conforming.</em></d:message>  
 </d:item>  
   
1293  <d:item name="media query"  <d:item name="media query"
1294      class="unsupported" level="unsupported">      class="unsupported" level="unsupported">
1295    <d:message xml:lang="en">Conformance checking for media query    <d:message xml:lang="en">Conformance checking for media query
# Line 973  manakaiIsHTML:1;;HTML Document Line 1321  manakaiIsHTML:1;;HTML Document
1321  manakaiIsHTML:0;;XML Document  manakaiIsHTML:0;;XML Document
1322  </d:catalog>  </d:catalog>
1323    
1324    <section id="levels">
1325    <h2>Error Levels</h2>
1326    
1327    <table id="levels-table">
1328    <thead>
1329    <tr><th scope="col">Level</th>
1330    <th scope="col">Conforming?</th>
1331    <th scope="col">Description</th>
1332    </tr>
1333    </thead>
1334    <tbody>
1335    <tr id="level-m" class="level-m">
1336    <th scope="row"><em class="rfc2119">MUST</em>‐level error</th>
1337    <td>Non‐conforming.</td>
1338    <td>A violation to a hard requirement of the specification.
1339    The document is non‐conforming.</td>
1340    </tr>
1341    <tr id="level-s" class="level-s">
1342    <th scope="row"><em class="rfc2119">SHOULD</em>‐level error</th>
1343    <td>Non‐conforming, but <em>in some case</em>
1344    conforming.</td>
1345    <td>A violation to a requirement of the specification.
1346    The violation might be legitimize in some case.  Otherwise,
1347    the document is non‐conforming.</td>
1348    </tr>
1349    <tr id="level-w" class="level-w">
1350    <th scope="row">Warning</th>
1351    <td>Conforming.</td>
1352    <td>A warning is an advice from the conformance checker to avoid
1353    to solve a problem in a confusing or possibly wrong way.
1354    It does not affect to the conformance of the document, and
1355    may sometimes be inappropriate.</td>
1356    </tr>
1357    <tr id="level-unsupported" class="level-unsupported">
1358    <th scope="row">Not supported</th>
1359    <td><em>Unknown</em>.</td>
1360    <td>Some feature that is not supported by the conformance checker
1361    is used in the document.</td>
1362    </tr>
1363    </tbody>
1364    </table>
1365    </section>
1366    
1367  <section id="license">  <section id="license">
1368  <h2>License of This Document</h2>  <h2>License of This Document</h2>
1369    
1370  <p>Copyright 2007 <a href="http://suika.fam.cx/~wakaba/who?">Wakaba</a></p>  <p>Copyright <time>2007</time>
1371  <p>This library is free software; you can redistribute it  <a href="http://suika.fam.cx/~wakaba/who?" rel="author" xml:lang="ja">Wakaba</a>
1372    <code class="mail">&lt;<a href="mailto:w@suika.fam.cx">w@suika.fam.cx</a>></code>.</p>
1373    
1374    <p>This document is free software; you can redistribute it
1375  and/or modify it under the same terms as Perl itself.</p>  and/or modify it under the same terms as Perl itself.</p>
1376  </section>  </section>
1377    

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.15

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24