summaryrefslogtreecommitdiffstats
path: root/htdocs
diff options
context:
space:
mode:
Diffstat (limited to 'htdocs')
-rwxr-xr-xhtdocs/about.html24
-rw-r--r--htdocs/base.css39
-rw-r--r--htdocs/config/charset.cfg3
-rw-r--r--htdocs/config/checklink.conf18
-rw-r--r--htdocs/config/fpis.cfg7
-rw-r--r--htdocs/config/frag.cfg87
-rw-r--r--htdocs/config/tips.cfg6
-rwxr-xr-xhtdocs/detailed.html94
-rwxr-xr-xhtdocs/dev/tests/colons.html28
-rwxr-xr-xhtdocs/dev/tests/index.html15
-rwxr-xr-xhtdocs/docs/checklink.html12
-rwxr-xr-xhtdocs/docs/devel.html28
-rwxr-xr-xhtdocs/docs/errors.html1377
-rwxr-xr-xhtdocs/docs/help.html60
-rwxr-xr-xhtdocs/docs/sgml.html12
-rwxr-xr-xhtdocs/docs/users.html67
-rwxr-xr-xhtdocs/favelets.html61
-rwxr-xr-xhtdocs/feedback.html16
-rwxr-xr-xhtdocs/file-upload.html8
-rwxr-xr-xhtdocs/footer.html18
-rwxr-xr-xhtdocs/header.html3
-rwxr-xr-xhtdocs/index.html64
-rw-r--r--htdocs/results.css11
-rw-r--r--htdocs/sgml-lib/sgml.dcl2
-rw-r--r--htdocs/sgml-lib/sgml.soc4
-rw-r--r--htdocs/sgml-lib/xml.soc4
-rwxr-xr-xhtdocs/source/index.html62
-rwxr-xr-xhtdocs/whatsnew.html18
28 files changed, 1034 insertions, 1114 deletions
diff --git a/htdocs/about.html b/htdocs/about.html
index f1c8947..e1adc4e 100755
--- a/htdocs/about.html
+++ b/htdocs/about.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: about.html,v 1.22 2003-02-24 23:33:18 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:18 $"
+<!--#set var="revision" value="\$Id: about.html,v 1.23 2003-05-24 20:32:45 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:45 $"
--><!--#set var="title" value="About the W3C Markup Validation Service"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
@@ -103,12 +103,21 @@
<div id="credits">
<h2>Credits</h2>
<p>
+ The
+ <a href="http://lists.w3.org/Archives/Public/www-html/1994Jul/0015">first
+ online <acronym title="HyperText Markup Language">HTML</acronym> validation
+ service</a> was created by
+ <a href="http://www.w3.org/People/Connolly/">Dan Connolly</a> and
+ <a href="http://www.markgaither.com/">Mark Gaither</a>.
+ </p>
+ <p>
The <acronym title="World Wide Web Consortium">W3C</acronym>
Markup Validation Service was created and maintained by
<a title="Gerald Oskoboiny's Home Page"
href="http://www.w3.org/People/Gerald/">Gerald Oskoboiny</a>.
In a previous incarnation it was known as "The Kinder, Gentler,
- <acronym title="HyperText Markup Language">HTML</acronym> Validator",
+ <acronym title="HyperText Markup Language">HTML</acronym> Validator"
+ ("Kinder, Gentler" than Dan and Mark's original),
but has since found a new home at <acronym
title="the World Wide Web Consortium">W3C</acronym>, and is now maintained
under the auspices of the <a href="http://www.w3.org/QA/">Quality Assurance</a>
@@ -168,15 +177,6 @@
</ul>
</div>
- <p>
- The
- <a href="http://lists.w3.org/Archives/Public/www-html/1994Jul/0015">first
- online <acronym title="HyperText Markup Language">HTML</acronym> validation
- service</a> was created by
- <a href="http://www.w3.org/People/Connolly/">Dan Connolly</a> and
- <a href="http://www.markgaither.com/">Mark Gaither</a>.
- </p>
-
<!--#include virtual="footer.html" -->
</body>
</html>
diff --git a/htdocs/base.css b/htdocs/base.css
index 8345a1c..5f78685 100644
--- a/htdocs/base.css
+++ b/htdocs/base.css
@@ -4,7 +4,7 @@
Copyright 2000 W3C (MIT, INRIA, Keio). All Rights Reserved.
See http://www.w3.org/Consortium/Legal/ipr-notice.html#Copyright
- $Id: base.css,v 1.30 2003-02-24 23:33:18 ville Exp $
+ $Id: base.css,v 1.31 2003-05-24 20:32:45 link Exp $
*/
@import url(results.css); /* CSS for validation results. */
@@ -16,10 +16,7 @@ body {
color: black;
background: white;
font-weight: normal;
- word-spacing: normal;
- letter-spacing: normal;
- text-transform: none;
- font-family: sans-serif;
+ font-family: "Bitstream Vera Sans", sans-serif;
font-style: normal;
text-decoration: none;
}
@@ -104,6 +101,18 @@ address {
clear: right;
}
+p.copyright {
+ margin-top: 5em;
+ padding-top: .5em;
+ font-size: xx-small;
+ max-width: 75ex;
+ text-align: justify;
+ text-transform: uppercase;
+ margin-left: auto;
+ margin-right: auto;
+ font-family: monospace;
+}
+
p.jumpbar {
text-align: left;
text-decoration: none;
@@ -143,10 +152,6 @@ h1 {
font-weight: bold;
font-style: normal;
text-decoration: none;
- word-spacing: normal;
- letter-spacing: normal;
- text-transform: none;
- /* color: #005A9C; */
color: #053188
}
@@ -157,9 +162,6 @@ h2 {
font-weight: 500;
font-style: normal;
text-decoration: none;
- word-spacing: normal;
- letter-spacing: normal;
- text-transform: none;
}
h3 {
@@ -169,9 +171,6 @@ h3 {
font-weight: 500;
font-style: italic;
text-decoration: none;
- word-spacing: normal;
- letter-spacing: normal;
- text-transform: none;
}
h4 {
@@ -181,9 +180,6 @@ h4 {
font-weight: 500;
font-style: normal;
text-decoration: none;
- word-spacing: normal;
- letter-spacing: normal;
- text-transform: none;
}
h5, dt {
@@ -193,9 +189,6 @@ h5, dt {
font-weight: 500;
font-style: normal;
text-decoration: none;
- word-spacing: normal;
- letter-spacing: normal;
- text-transform: none;
margin-top: 1em;
}
@@ -206,9 +199,6 @@ h6 {
font-weight: 500;
font-style: normal;
text-decoration: none;
- word-spacing: normal;
- letter-spacing: normal;
- text-transform: none;
}
/* documentation - table of contents */
@@ -273,3 +263,4 @@ table.config tr td.subtable {
background: white;
border: none;
}
+
diff --git a/htdocs/config/charset.cfg b/htdocs/config/charset.cfg
index 7745c93..5cb4486 100644
--- a/htdocs/config/charset.cfg
+++ b/htdocs/config/charset.cfg
@@ -1,7 +1,7 @@
#
# Mapping of 'charset' or 'encoding' parameter to conversion parameter
#
-# $Id: charset.cfg,v 1.7 2002-11-26 21:40:19 ville Exp $
+# $Id: charset.cfg,v 1.8 2003-05-24 20:32:46 link Exp $
#
# this version for glibc iconv 2.1; change for other versions
#
@@ -37,6 +37,7 @@ iso-8859-10 = I iso-8859-10
iso-8859-13 = I iso-8859-13
iso-8859-14 = I iso-8859-14
iso-8859-15 = I iso-8859-15
+iso-8859-16 = I iso-8859-16
us-ascii = I us-ascii
iso-2022-jp = I iso-2022-jp
shift_jis = I shift_jis
diff --git a/htdocs/config/checklink.conf b/htdocs/config/checklink.conf
new file mode 100644
index 0000000..f7903c5
--- /dev/null
+++ b/htdocs/config/checklink.conf
@@ -0,0 +1,18 @@
+#
+# Configuration file for the W3C Link Checker
+# $Id: checklink.conf,v 1.2 2003-05-24 20:32:46 link Exp $
+#
+# See Config::General(3) for the syntax; 'SplitPolicy' is 'equalsign' here.
+#
+
+#
+# Regular expression for matching "trusted" domains. This is used to
+# restrict the domains where HTTP basic authentication will be sent.
+# This is matched case insensitively against resoures' hostnames.
+#
+# Not specifying a value here means that the basic authentication will only
+# be sent to the same host where the authentication was requested from.
+#
+# For example, the following would allow sending the authentication to any
+# host in the w3.org domain (and *only* there):
+# Trusted = \.w3\.org$
diff --git a/htdocs/config/fpis.cfg b/htdocs/config/fpis.cfg
index 152baf2..94e6eb6 100644
--- a/htdocs/config/fpis.cfg
+++ b/htdocs/config/fpis.cfg
@@ -1,7 +1,7 @@
#
# Mapping of FPIs to plain text version strings.
#
-# $Id: fpis.cfg,v 1.18 2002-12-01 13:40:32 link Exp $
+# $Id: fpis.cfg,v 1.19 2003-05-24 20:32:46 link Exp $
-//IETF//DTD HTML Level 0//EN//2.0 = \
HTML 2.0 Level 0
@@ -24,6 +24,11 @@
-//IETF//DTD HTML 2.1E//EN = \
HTML 2.1E
+-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN <a href=http://www.w3.org/TR/XHTMLplusMathMLplusSVG/">XHTML 1.1 + MathML 2.0 + SVG 1.1</a>
+
+-//W3C//DTD SMIL 1.0//EN <a href="http://www.w3.org/TR/1998/REC-smil-19980615/">SMIL 1.0</a>
+-//W3C//DTD SMIL 2.0//EN <a href="http://www.w3.org/TR/2001/PR-smil20-20010605/">SMIL 2.0</a>
+
-//AS//DTD HTML 3.0 asWedit + extensions//EN = \
HTML 3.0 (AdvaSoft version)
diff --git a/htdocs/config/frag.cfg b/htdocs/config/frag.cfg
index dffae37..b454ddd 100644
--- a/htdocs/config/frag.cfg
+++ b/htdocs/config/frag.cfg
@@ -1,7 +1,7 @@
#
# Mapping of error message to URI fragment for the explanations.
#
-# $Id: frag.cfg,v 1.6 2002-11-26 21:40:19 ville Exp $
+# $Id: frag.cfg,v 1.7 2003-05-24 20:32:46 link Exp $
#
# Original SP version.
@@ -74,88 +74,3 @@ ID FOO already defined = \
ID FOO first defined here = \
dup-id
-
-#
-# Horribly verbose versions from lq-nsgmls.
-#
-
-document type does not allow element FOO here = \
- not-allowed-contained
-
-there is no attribute FOO for this element in this HTML version = \
- attr-undef
-
-an attribute value must be quoted if it contains any character other than \
- letters AZaz digits hyphens and periods use quotes if in doubt = \
- attr-quoted
-
-element FOO not allowed here possible cause is an inline element containing a \
- blocklevel element = \
- not-allowed
-
-element FOO not allowed here check which elements this element may be \
- contained within = \
- not-allowed
-
-missing a required subelement of FOO = \
- missing-subel
-
-unknown entity FOO = \
- bad-entity
-
-end tag for FOO omitted possible causes include a missing end tag improper \
- nesting of elements or use of an element where it is not allowed = \
- no-end-tag
-
-start tag was here = \
- start-tag
-
-end tag for element FOO which is not open try removing the end tag or check \
- for improper nesting of elements = \
- floating-close
-
-element FOO not defined in this HTML version = \
- undef-tag
-
-required attribute FOO not specified = \
- attr-missing
-
-text is not allowed here try wrapping the text in a more descriptive \
- container = \
- text-not-allowed
-
-value of attribute FOO cannot be FOO must be one of FOO = \
- unkn-att-val
-
-character FOO not allowed in attribute specification list possibly caused by \
- a missing quotation mark ending a previous attribute value = \
- no-attr-end
-
-reference to nonSGML character = \
- bad-char
-
-duplicate specification of attribute FOO = \
- dup-attr
-
-an attribute specification must start with a name or name token = \
- attr-spec-nmtoken
-
-invalid comment declaration check your comment syntax = \
- inval-comment
-
-comment declaration started here = \
- inval-comment
-
-element FOO not allowed here assuming missing FOO starttag = \
- assuming-missing-starttag
-
-#
-# Reported but not yet explained...
-
-FOO not finished but containing element ended
-
-#
-# Doesn't work for some reason..?
-
-invalid attribute value = \
- invalid-attr-val
diff --git a/htdocs/config/tips.cfg b/htdocs/config/tips.cfg
index e2dd75f..08b7617 100644
--- a/htdocs/config/tips.cfg
+++ b/htdocs/config/tips.cfg
@@ -5,7 +5,7 @@
# the link to it. Will appear in Validation Results pages. To disable
# just comment out or delete all lines in this file.
#
-# $Id: tips.cfg,v 1.4 2002-11-26 21:40:19 ville Exp $
+# $Id: tips.cfg,v 1.5 2003-05-24 20:32:46 link Exp $
#
http://www.w3.org/2001/06tips/good-titles = \
@@ -26,3 +26,7 @@ http://www.w3.org/2001/06tips/Doctype = \
http://www.w3.org/Provider/Style/URI = \
Cool URIs don't change!
+
+http://www.w3.org/2001/06tips/altAttribute = \
+ Use the <code>alt</code> attribute
+
diff --git a/htdocs/detailed.html b/htdocs/detailed.html
index 682c5bc..3f27ac1 100755
--- a/htdocs/detailed.html
+++ b/htdocs/detailed.html
@@ -1,98 +1,24 @@
-<!--#set var="revision" value="\$Id: detailed.html,v 1.15 2003-02-24 23:33:18 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:18 $"
+<!--#set var="revision" value="\$Id: detailed.html,v 1.16 2003-05-24 20:32:45 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:45 $"
--><!--#set var="title" value="The W3C Markup Validation Service"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
<p id="skip">
This form allows you to enter a <acronym
- title="Universal Resource Identifier">URI</acronym> or upload files from
- your computer and have them validated.
+ title="Universal Resource Identifier">URI</acronym>
+ and have it validated. If you want to validate a file on
+ your computer, you can use the <a href="file-upload.html">File
+ Upload Interface</a>.
</p>
<div>
- <form method="post" enctype="multipart/form-data" action="check">
+ <form method="get" action="check">
<table>
<tr><th><label title="Address of page to Validate"
for="uri">Address:</label></th><td colspan="2"><input id="uri"
- name="uri" size="50" /> or...</td></tr>
- <tr><th><label for="uploaded_file">Local File:</label></th><td
- colspan="2"><input type="file" id="uploaded_file"
- name="uploaded_file" size="50" /></td></tr>
- <tr>
- <th><label for="charset">Encoding:</label></th>
- <td colspan="2">
- <select id="charset" name="charset">
- <option value="(detect automatically)">(detect automatically)</option>
- <option value="utf-8 (Unicode, worldwide)">utf-8 (Unicode, worldwide)</option>
- <option value="utf-16 (Unicode, worldwide)">utf-16 (Unicode, worldwide)</option>
- <option value="iso-8859-1 (Western Europe)">iso-8859-1 (Western Europe)</option>
- <option value="iso-8859-2 (Central Europe)">iso-8859-2 (Central Europe)</option>
- <option value="iso-8859-3 (Southern Europe)">iso-8859-3 (Southern Europe)</option>
- <option value="iso-8859-4 (Baltic Rim)">iso-8859-4 (Baltic Rim)</option>
- <option value="iso-8859-5 (Cyrillic)">iso-8859-5 (Cyrillic)</option>
- <option value="iso-8859-6-i (Arabic)">iso-8859-6-i (Arabic)</option>
- <option value="iso-8859-7 (Greek)">iso-8859-7 (Greek)</option>
- <option value="iso-8859-8-i (Hebrew)">iso-8859-8-i (Hebrew)</option>
- <option value="iso-8859-9 (Turkish)">iso-8859-9 (Turkish)</option>
- <option value="iso-8859-10 (Latin 6)">iso-8859-10 (Latin 6)</option>
- <option value="iso-8859-13 (Latin 7)">iso-8859-13 (Latin 7)</option>
- <option value="iso-8859-14 (Celtic)">iso-8859-14 (Celtic)</option>
- <option value="iso-8859-15 (Latin 9)">iso-8859-15 (Latin 9)</option>
- <option value="us-ascii (basic English)">us-ascii (basic English)</option>
- <option value="euc-jp (Japanese, Unix)">euc-jp (Japanese, Unix)</option>
- <option value="shift_jis (Japanese, Win/Mac)">shift_jis (Japanese, Win/Mac)</option>
- <option value="iso-2022-jp (Japanese, email)">iso-2022-jp (Japanese, email)</option>
- <option value="euc-kr (Korean)">euc-kr (Korean)</option>
- <option value="gb2312 (Chinese, simplified)">gb2312 (Chinese, simplified)</option>
- <option value="gb18030 (Chinese, simplified)">gb18030 (Chinese, simplified)</option>
- <option value="big5 (Chinese, traditional)">big5 (Chinese, traditional)</option>
- <option value="tis-620 (Thai)">tis-620 (Thai)</option>
- <option value="koi8-r (Russian)">koi8-r (Russian)</option>
- <option value="koi8-u (Ukrainian)">koi8-u (Ukrainian)</option>
- <option value="macintosh (MacRoman)">macintosh (MacRoman)</option>
- <option value="windows-1250 (Central Europe)">windows-1250 (Central Europe)</option>
- <option value="windows-1251 (Cyrillic)">windows-1251 (Cyrillic)</option>
- <option value="windows-1252 (Western Europe)">windows-1252 (Western Europe)</option>
- <option value="windows-1253 (Greek)">windows-1253 (Greek)</option>
- <option value="windows-1254 (Turkish)">windows-1254 (Turkish)</option>
- <option value="windows-1255 (Hebrew)">windows-1255 (Hebrew)</option>
- <option value="windows-1256 (Arabic)">windows-1256 (Arabic)</option>
- <option value="windows-1257 (Baltic Rim)">windows-1257 (Baltic Rim)</option>
- </select>
- </td>
- </tr>
- <tr>
- <th><label for="doctype">Type:</label></th>
- <td colspan="2">
- <select id="doctype" name="doctype">
- <option value="Inline">(detect automatically)</option>
- <option>XHTML 1.1</option>
- <option>XHTML Basic 1.0</option>
- <option>XHTML 1.0 Strict</option>
- <option>XHTML 1.0 Transitional</option>
- <option>XHTML 1.0 Frameset</option>
- <option>HTML 4.01 Strict</option>
- <option>HTML 4.01 Transitional</option>
- <option>HTML 4.01 Frameset</option>
- <option>HTML 3.2</option>
- <option>HTML 2.0</option>
- </select>
- </td>
- </tr>
- <tr>
- <th rowspan="3">Options:</th>
- <td><label for="ss"><input id="ss" name="ss" type="checkbox" value="1" /> Show Source</label></td>
- <td><label for="outline"><input id="outline" name="outline" type="checkbox" value="1" /> Show Outline</label></td>
- </tr>
- <tr>
- <td><label for="sp"><input id="sp" name="sp" type="checkbox" value="1" /> Show Parse Tree</label></td>
- <td><label for="noatt"><input id="noatt" name="noatt" type="checkbox" value="1" /> ...no attributes</label></td>
- </tr>
- <tr>
- <td><label for="No200"><input id="No200" name="No200" type="checkbox" value="1" /> Validate error pages</label></td>
- <td><label for="verbose"><input id="verbose" name="verbose" type="checkbox" value="1" checked="checked" /> Verbose Output</label></td>
- </tr>
- <tr>
+ name="uri" size="50" /></td></tr>
+ <!--#include virtual="detailed-form.html" -->
+ <tr>
<td></td>
<td><input type="submit" value="Validate this page" /></td>
<td></td>
diff --git a/htdocs/dev/tests/colons.html b/htdocs/dev/tests/colons.html
new file mode 100755
index 0000000..5a0d58a
--- /dev/null
+++ b/htdocs/dev/tests/colons.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>XHTML 1.0 Strict with chars in the range 0x80-0x9B</title>
+ <link rev="made" href="mailto:gerald@w3.org" />
+ <link rel="stylesheet" type="text/css" href="/base.css" />
+ <meta name="revision" content="$Id: colons.html,v 1.2 2003-05-24 20:32:46 link Exp $" />
+ <meta name="modified" content="$Date: 2003-05-24 20:32:46 $" />
+ </head>
+
+ <body>
+ <h1><a href="http://www.w3.org/"><img height="48" alt="W3C"
+ src="http://www.w3.org/Icons/WWW/w3c_home" /></a> HTML Validator</h1>
+
+ <none:p>This element uses an undeclared namespace prefix.</none:p>
+ <p>This element uses an undeclared namespace prefix on only the end tag.</none:p>
+ <none:p>This element uses an undeclared namespace prefix on only the start tag.</p>
+ <address>
+ <a href="http://validator.w3.org/check/referer"><img
+ src="http://validator.w3.org/images/vxhtml10" height="31" width="88"
+ alt="Valid XHTML 1.0!" /></a>
+ <a href="/feedback.html">Webmaster</a><br />
+ $Date: 2003-05-24 20:32:46 $
+ </address>
+
+ </body>
+</html>
diff --git a/htdocs/dev/tests/index.html b/htdocs/dev/tests/index.html
index 494b86f..5b8cce1 100755
--- a/htdocs/dev/tests/index.html
+++ b/htdocs/dev/tests/index.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: index.html,v 1.43 2003-02-24 23:33:18 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:18 $"
+<!--#set var="revision" value="\$Id: index.html,v 1.44 2003-05-24 20:32:46 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:46 $"
--><!--#set var="title" value="The W3C Markup Validation Service: Tests"
--><!--#set var="relroot" value="../../"
--><!--#include virtual="../../header.html" -->
@@ -30,12 +30,9 @@
<li><a href="../../check?uri=http://validator.w3.org/dev/tests/xhtml-mathml2-fpi.html;ss">XHTML/MathML2 w/FPI</a></li>
<li><a href="../../check?uri=http://validator.w3.org/dev/tests/mathml2.html;ss">MathML 2.0</a> (minimal test document)</li>
<li><a href="../../check?uri=http://validator.w3.org:8001/dev/tests/application-xhtml_xml.xhtml">application/xhtml+xml</a></li>
- <li><a href="../../check?uri=http://www.w3.org/TR/2001/PR-SVG-20010719/images/struct/StandAlone01.svg">SVG 1.0 from 20010719 PR</a></li>
- <li>@@ application/smil</li>
<li>SMIL 1.0 <a href="../../check?uri=http://validator.w3.org/dev/tests/smil10-minimal.smi">Minimal Document</a> w/DOCTYPE.</li>
<li>SMIL 2.0 <a href="../../check?uri=http://validator.w3.org/dev/tests/smil20-profile-doctype.smi">Testcase (wrong Namespace?)</a> w/DOCTYPE.</li>
- <li><a href="../../check?uri=http://www.w3.org/1999/08/WD-xpath-19990813.xml;ss">WD-xpath-19990813.xml</a></li>
- <li><a href="../../check?uri=http://www.w3.org/TR/XHTMLplusMathMLplusSVG/sample.xhtml">Sample XHTML + MathML + SVG document (from the 9 August 2002 WD)</a></li>
+ <li><a href="../../check?uri=http://www.w3.org/TR/XHTMLplusMathMLplusSVG/sample.xhtml">Sample XHTML + MathML + SVG document</a> (from the 9 August 2002 WD)</li>
</ul>
</div>
@@ -109,11 +106,13 @@
<div id="regress">
<h2>Bugs and Regression Tests</h2>
<ul>
- <li><a href="../../check?uri=http://validator.w3.org/dev/tests/long-lines.html">Long Lines (cause a core)</a></li>
- <li><a href="../../check?uri=http://validator.w3.org/dev/tests/trailing-nul.html">A trailing ASCII NUL character (trips up HTML::Parser)</a></li>
+ <li><a href="../../check?uri=http://validator.w3.org/dev/tests/long-lines.html">Long Lines</a> (cause a core)</li>
+ <li><a href="../../check?uri=http://validator.w3.org/dev/tests/trailing-nul.html">A trailing ASCII NUL character</a> (trips up HTML::Parser (not really))</li>
+ <li><a href="../../check?uri=http://validator.w3.org/dev/tests/colons.html">Undeclared namespace prefixes</a> (colons ":" in element names (trips up parsing of onsgmls output))</li>
</ul>
</div>
<!--#include virtual="../../footer.html" -->
</body>
</html>
+
diff --git a/htdocs/docs/checklink.html b/htdocs/docs/checklink.html
index 08d264f..bf6ddb8 100755
--- a/htdocs/docs/checklink.html
+++ b/htdocs/docs/checklink.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: checklink.html,v 1.5 2002-11-19 21:43:31 ville Exp $"
---><!--#set var="date" value="\$Date: 2002-11-19 21:43:31 $"
+<!--#set var="revision" value="\$Id: checklink.html,v 1.6 2003-05-24 20:32:46 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:46 $"
--><!--#set var="title" value="W3C Link Checker documentation"
--><!--#set var="relroot" value="../"
--><!--#include virtual="../header.html" -->
@@ -103,6 +103,7 @@
<li><a href="http://search.cpan.org/dist/CGI.pm/">CGI.pm</a></li>
<li><a href="http://search.cpan.org/dist/URI/">URI</a></li>
<li><a href="http://search.cpan.org/dist/Time-HiRes/">Time-HiRes</a></li>
+ <li><a href="http://search.cpan.org/dist/Config-General/">Config-General</a> (version 2.06 or newer)</li>
<li><a href="http://search.cpan.org/dist/TermReadKey/">TermReadKey</a> (optional but recommended for all platforms; required for password input in command line mode for systems that don't have the <code>stty</code> command, eg. Windows)</li>
</ul>
</li>
@@ -110,6 +111,13 @@
Download the link checker from
<a href="http://dev.w3.org/cvsweb/validator/httpd/cgi-bin/checklink.pl">CVS</a>.
</li>
+ <li>
+ Download the configuration file from
+ <a href="http://dev.w3.org/cvsweb/validator/htdocs/config/checklink.conf">CVS</a>
+ and install it to <code>/etc/w3c/checklink.conf</code> or set the
+ <code>W3C_CHECKLINK_CFG</code> environment variable to the location
+ where you installed it.
+ </li>
</ol>
<p>
diff --git a/htdocs/docs/devel.html b/htdocs/docs/devel.html
index f4b430c..cb0cd2d 100755
--- a/htdocs/docs/devel.html
+++ b/htdocs/docs/devel.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: devel.html,v 1.14 2003-02-24 23:33:18 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:18 $"
+<!--#set var="revision" value="\$Id: devel.html,v 1.15 2003-05-24 20:32:46 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:46 $"
--><!--#set var="title" value="Developer Documentation for The W3C Markup Validation Service"
--><!--#set var="relroot" value="../"
--><!--#include virtual="../header.html" -->
@@ -36,7 +36,7 @@
can be found on <a href="http://www.cpan.org/">CPAN</a> (minimum
versions in parenthesis after the name). The following
list was complete when CVS spit out:
- <code>$Date: 2003-02-24 23:33:18 $</code>. <tt>:-)</tt>
+ <code>$Date: 2003-05-24 20:32:46 $</code>. <tt>:-)</tt>
</p>
<dl>
<dt><code>CGI (2.81)</code></dt>
@@ -178,6 +178,17 @@
Maps error messages to an URI fragment identifier where an
explanation of that error can be found.
</dd>
+ <dt>type.cfg</dt>
+ <dd>
+ Maps MIME/HTTP Content-Types to an internal "document type" which
+ is used for treating HTML, XML, and XHTML in different ways.
+ </dd>
+ <dt>validator.conf</dt>
+ <dd>
+ Main configuration file. Gives various parameters (such as the
+ address of the maintainer and the URL for the "Home Page") and
+ the locations of the other configuration files and mapping tables.
+ </dd>
</dl>
</div>
<div id="todo" class="stb">
@@ -200,7 +211,18 @@
shouldn't dilute the value of the validator as an objective check.
</p>
</div>
+ <div id="bugzilla" class="stb">
+ <h2>Bugs and Issue Tracking</h2>
+ <p>
+ Bug and Issue Tracking for the Validator happens in the <a
+ href="http://www.w3.org/Bugs/Public/">W3C Public Bugzilla</a>
+ instance. Developers should feel free to set up an account
+ and report bugs, enhancement requests, patches, etc. directly there
+ (end users should continue to send stuff to the mailinglist).
+ </p>
+ </div>
<!--#include virtual="../footer.html" -->
</body>
</html>
+
diff --git a/htdocs/docs/errors.html b/htdocs/docs/errors.html
index 00b751c..b819f13 100755
--- a/htdocs/docs/errors.html
+++ b/htdocs/docs/errors.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: errors.html,v 1.25 2003-02-24 23:33:19 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:19 $"
+<!--#set var="revision" value="\$Id: errors.html,v 1.26 2003-05-24 20:32:46 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:46 $"
--><!--#set var="title" value="Error Explanations for The W3C Markup Validation Service"
--><!--#set var="relroot" value="../"
--><!--#include virtual="../header.html" -->
@@ -9,770 +9,617 @@
and are used here with his permission.
</p>
-<div id="toc">
-<h2 id="TableOfContents">Table of Contents</h2>
-<ul>
-
-<li><a href="#undef-id">
-&ldquo;ID &lsquo;<var>FOO</var>&rsquo; already defined&rdquo;
-</a></li>
-
-<li><a href="#unterm-comment-1">
-&ldquo;entity end not allowed in comment&rdquo;
-</a></li>
-
-<li><a href="#unterm-comment-2">
-&ldquo;name start character invalid: only s and comment allowed in comment declaration&rdquo;
-</a></li>
-
-<li><a href="#bad-comment">
-&ldquo;unknown declaration type &lsquo;<var>FOO</var>&rsquo;&rdquo;
-</a></li>
-
-<li><a href="#attr-quoted">
-&ldquo;an attribute value must be a literal unless it contains only name characters&rdquo;
-</a></li>
-
-<li><a href="#attr-char">
-&ldquo;character `X' not allowed in attribute specification list&rdquo;
-</a></li>
-
-<li><a href="#name-length">
-&ldquo;length of attribute value must not exceed LITLEN less NORMSEP (1022)&rdquo;
-</a></li>
-
-<li><a href="#undef-tag">
-&ldquo;element &lsquo;<var>FOO</var>&rsquo; undefined&rdquo;
-</a></li>
-
-<li><a href="#not-allowed">
-&ldquo;document type does not allow element &lsquo;<var>FOO</var>&rsquo; here&rdquo;
-</a></li>
-
-<li><a href="#not-contained">
-&ldquo;document type does not allow element &lsquo;<var>FOO</var>&rsquo; here; assuming missing &lsquo;<var>BAR</var>&rsquo; start-tag&rdquo;
-</a></li>
-
-<li><a href="#attr-undef">
-&ldquo;there is no attribute &lsquo;<var>FOO</var>&rsquo; for this element (in this HTML version)&rdquo;
-</a></li>
-
-<li><a href="#undef-attr-val">
-&ldquo;&lsquo;<var>FOO</var>&rsquo; is not a member of the group specified in the declared value of this attribute&rdquo;
-</a></li>
-
-<li><a href="#bad-attr-char">
-&ldquo;syntax of attribute value does not conform to declared value&rdquo;
-</a></li>
-
-<li><a href="#attr-bad-name">
-&ldquo;value of attribute &lsquo;<var>FOO</var>&rsquo; invalid: "#" cannot start a name&rdquo;
-</a></li>
-
-<li><a href="#bad-abbrev-attr">
-&ldquo;&lsquo;<var>FOO</var>&rsquo; is not a member of a group specified for any attribute&rdquo;
-</a></li>
-
-<li><a href="#attr-missing">
-&ldquo;required attribute &lsquo;<var>FOO</var>&rsquo; not specified&rdquo;
-</a></li>
-
-<li><a href="#no-end-tag">
-&ldquo;end tag for &lsquo;<var>FOO</var>&rsquo; omitted, but its declaration does not permit this&rdquo;
-</a></li>
-
-<li><a href="#floating-close">
-&ldquo;end tag for element &lsquo;<var>FOO</var>&rsquo; which is not open&rdquo;
-</a></li>
-
-<li><a href="#omitted-content">
-&ldquo;end tag for &lsquo;<var>FOO</var>&rsquo; which is not finished&rdquo;
-</a></li>
-
-<li><a href="#no-start-tag">
-&ldquo;start tag for &lsquo;<var>FOO</var>&rsquo; omitted, but its declaration does not permit this&rdquo;
-</a></li>
-
-<li><a href="#bad-entity">
-&ldquo;unknown entity &lsquo;<var>FOO</var>&rsquo;&rdquo;
-</a></li>
-
-<li><a href="#bad-char">
-&ldquo;non SGML character number ###&rdquo;
-</a></li>
-
-<li><a href="#unicode-char">
-&ldquo;`####' is not a valid character number&rdquo;
-</a></li>
-
-<li><a href="#bad-pub-id">
-&ldquo;cannot generate system identifier for entity `HTML'&rdquo;
-</a></li>
-
-<li><a href="#missing-subel">
-&ldquo;missing a required sub-element of &lsquo;<var>FOO</var>&rsquo;&rdquo;
-</a></li>
-
-<li><a href="#start-tag">
-&ldquo;start tag was here&rdquo;
-</a></li>
-
-<li><a href="#utf8-bom">
-&ldquo;UTF-8 'BOM' detected and removed&rdquo;
-</a></li>
-
-<li><a href="#text-not-allowed">
-&ldquo; text is not allowed here; try wrapping the text in a more descriptive container&rdquo;
-</a></li>
-
-<li><a href="#unkn-att-val">
-&ldquo; value of attribute &lsquo;<var>FOO</var>&rsquo; cannot be &lsquo;<var>BAR</var>&rsquo;; must be one of &lsquo;<var>FOO</var>&rsquo;, &lsquo;<var>BAR</var>&rsquo;, &lsquo;<var>BAZ</var>&rsquo;&rdquo;
-</a></li>
-
-<li><a href="#no-attr-end">
-&ldquo;character &lsquo;<var>FOO</var>&rsquo; not allowed in attribute specification list possibly caused by a missing quotation mark ending a previous attribute value&rdquo;
-</a></li>
-
-<li><a href="#dup-attr">
-&ldquo;duplicate specification of attribute &lsquo;<var>FOO</var>&rsquo;&rdquo;
-</a></li>
-
-<li><a href="#invalid-attr-val">
-&ldquo;invalid attribute value&rdquo;
-</a></li>
-
-<li><a href="#attr-spec-nmtoken">
-&ldquo;an attribute specification must start with a name or name token&rdquo;
-</a></li>
-
-<li><a href="#inval-comment">
-&ldquo;invalid comment declaration; check your comment syntax&rdquo;
-</a></li>
-
-<li><a href="#assuming-missing-starttag">
-&ldquo;element &lsquo;<var>FOO</var>&rsquo; not allowed here; assuming missing &lsquo;<var>BAR</var>&rsquo; start-tag&rdquo;</a>
-</li>
-</ul>
-</div>
-
-
-<h2>Listing of errors and their explanation</h2>
-
- <dl>
- <dt><a id="undef-id" name="dup-id">&ldquo;<code>ID &lsquo;<var>FOO</var>&rsquo; already defined</code>&rdquo;</a></dt>
- <dd>
- <p>
- You have defined the id/name &lsquo;<var>FOO</var>&rsquo; more then once. You will also get
- a message telling you where it was first defined. Be aware that this
- message may be the result of an ambiguity in the specification.
- While user-agents must treat values of the id attribute
- as case-sensitive, they must still be case-insensitive unique in the
- document. See
- <a href="http://www.w3.org/TR/html4/struct/links.html#h-12.2.1">Section
- 12.2.1 Syntax of anchor names</a> in the HTML 4.01 Recommendation
- for further information.
- </p>
- </dd>
- <dt><a id="unterm-comment-1" name="unterm-comment-1">&ldquo;<code>entity end not allowed in comment</code>&rdquo;</a></dt>
- <dd>
- <p>
- Unterminated comment. The position indicator points to the very end of
- the file, where the problem was detected; to find the beginning of the
- comment, try searching for the last occurrence of
- `<code>&lt;!--</code>' in the document.
- </p>
- </dd>
- <dt><a id="unterm-comment-2" name="unterm-comment-2">&ldquo;<code>name start character invalid: only s and comment allowed in comment declaration</code>&rdquo;</a></dt>
- <dd>
- <p>
- Unterminated comments again. This time, you have a case like:
- </p>
- <pre>
- &lt;!-- This is the first unterminated comment &gt;
- &lt;!-- This is the second one &gt;
- </pre>
- <p>
- The validator (correctly) interprets the `<code>--</code>' in the
- second comment as terminating the first comment, and then interprets
- the text of the second comment as text between comments, which is not
- allowed.
- </p>
- </dd>
- <dt><a id="bad-comment" name="bad-comment">&ldquo;<code>unknown declaration type &lsquo;<var>FOO</var>&rsquo;</code>&rdquo;</a></dt>
- <dd>
- <p>
- Most likely an invalid comment of the form <code>&lt;!invalid
- comment&gt;</code>; the validator is (correctly) attempting to
- interpret it as an <a href="sgml.html#sgml">SGML</a> markup
- declaration.
- </p>
- </dd>
- <dt><a id="attr-quoted" name="attr-quoted">&ldquo;<code>an attribute value must be a literal unless it contains only name characters</code>&rdquo;</a></dt>
- <dd>
- <p>
- You have an attribute whose value needs to be in quotes. If an
- attribute value contains any character other than letters, digits,
- hyphens and periods, it must be enclosed in double quotes (single
- quotes would also be OK from an <a href="sgml.html#sgml">SGML</a>
- standpoint, but some browsers don't recognize them).
- </p>
- </dd>
- <dt><a id="attr-char" name="attr-char">&ldquo;<code>character `X' not allowed in attribute specification list</code>&rdquo;</a></dt>
- <dd>
- <p>
- The validator has found a character inside an HTML tag that isn't
- allowed there. This usually means you didn't put an attribute value in
- quotes when necessary. It also probably means that the character in
- question is not allowed in the value of the attribute at all, or you
- would have received the <a href="#attr-quoted">previous error</a>
- instead. See <a href="#bad-attr-char">below</a> for more information.
- </p>
- <p>
- You can also get in trouble by forgetting the closing quote on an
- attribute. For instance:
- </p>
- <pre>
- &lt;IMG SRC="http://foo.com/fred.gif&gt;
- &lt;IMG SRC="http://foo.com/joe.gif&gt;
- </pre>
- <p>
- The validator will (correctly) interpret this as a SRC value of
- <code>"http://foo.com/fred.gif&gt; &lt;IMG SRC="</code>, and then
- choke on the following `:'. In this case, the position indicator in
- the error message may be several lines below the line with the missing
- quote.
- </p>
- </dd>
- <dt><a id="name-length" name="name-length">&ldquo;<code>length of attribute value must not exceed LITLEN less NORMSEP (1022)</code>&rdquo;</a></dt>
- <dd>
- <p>
- This usually occurs in conjunction with the
- <a href="#attr-char">previous error</a>. It almost always means that
- you've forgotten a closing quote on an attribute value. For instance,
- in:
- </p>
- <pre>
- &lt;IMG SRC="fred.gif&gt;
- &lt;!-- 50 lines of stuff --&gt;
- &lt;IMG SRC="joe.gif"&gt;
- </pre>
- <p>
- The SRC value for the first <code>&lt;IMG&gt;</code> is the entire
- fifty lines of stuff up to the next double quote, which probably
- exceeds the <a href="sgml.html#sgml">SGML</a>-defined length limit for
- HTML string literals. Note that the position indicator in the error
- message points to where the attribute value <em>ended</em> &mdash; in
- this case, the <code>"joe.gif"</code> line.
- </p>
- </dd>
- <dt><a id="undef-tag" name="undef-tag">&ldquo;<code>element &lsquo;<var>FOO</var>&rsquo; undefined</code>&rdquo;</a></dt>
- <dd>
- <p>
- You've used an unknown tag (represented here by &lsquo;<var>FOO</var>&rsquo;). Make sure the
- DTD indicated by your DOCTYPE actually includes this element.
- </p>
- <p>
- If the tag in question is a frame-related tag you must use the
- "Frameset" DTD, and if you use (deprecated) physical markup ("FONT"
- and friends) you must use the "Transitional" DTD.
- </p>
- </dd>
- <dt><a id="not-allowed" name="not-allowed">&ldquo;<code>document type does not allow element &lsquo;<var>FOO</var>&rsquo; here</code>&rdquo;</a></dt>
- <dd>
- <p>
- Straightforward, but not terribly informative. There are a
- <em>lot</em> of different errors that will generate this error
- message:
- </p>
- <ul>
- <li>
- Using an unknown tag. In this case, the next error will be
- <a href="#undef-tag">&ldquo;element &lsquo;<var>FOO</var>&rsquo; undefined"</a>.
- </li>
- <li>
- Using a tag in the wrong place. For instance,
- <code>&lt;TABLE&gt;&lt;TD&gt;blah&lt;/TABLE&gt;</code> will cause
- this error. The trick here is that <code>&lt;TABLE&gt;</code> cannot
- <em>directly</em> contain <code>&lt;TD&gt;</code>'s; it contains
- <code>&lt;TR&gt;</code>'s which contain <code>&lt;TD&gt;</code>'s.
- The above example should be
- <code>&lt;TABLE&gt;&lt;TR&gt;&lt;TD&gt;blah&lt;/TABLE&gt;</code>.
- </li>
- </ul>
- </dd>
- <dt><a id="not-contained" name="not-contained">&ldquo;document type does not allow element &lsquo;<var>FOO</var>&rsquo; here; assuming missing &lsquo;<var>BAR</var>&rsquo; start-tag</a>&rsquo;</dt>
- <dd>
- <p>
- Similar to the <a href="#not-allowed">previous error</a>, but more
- specific: in this case, you have a &lsquo;<var>FOO</var>&rsquo; element that is not contained
- in a &lsquo;<var>BAR</var>&rsquo; element when &lsquo;<var>FOO</var>&rsquo; is not allowed outside of &lsquo;<var>BAR</var>&rsquo;. Some of the
- most common causes of this error are:
- </p>
- <ul>
- <li>
- Using the <code>DD</code> element as a fake paragraph indent.
- <code>DD</code> is not allowed outside of a <code>DL</code> element.
- </li>
- <li>
- Improper construction of a nested list. An inner UL or OL in a
- nested list may not appear directly within an outer UL/OL, but only
- within an LI of the outer UL/OL, as in the following example:
- <pre>
- &lt;OL&gt;
- &lt;LI&gt;Obtain the following items:
- &lt;UL&gt;
- &lt;LI&gt;Ham&lt;/LI&gt;
- &lt;LI&gt;Bread; one of:
- &lt;UL&gt;
- &lt;LI&gt;White&lt;/LI&gt;
- &lt;LI&gt;Rye&lt;/LI&gt;
- &lt;LI&gt;Whole wheat&lt;/LI&gt;
- &lt;/UL&gt;
- &lt;/LI&gt; &lt;!-- End of the "Bread" &lt;LI&gt; --&gt;
- &lt;LI&gt;Cheese&lt;/LI&gt;
- &lt;/UL&gt;
- &lt;/LI&gt; &lt;!-- End of the "Obtain" &lt;LI&gt; --&gt;
- &lt;LI&gt;Place ham and cheese between two slices of bread&lt;/LI&gt;
- &lt;LI&gt;Consume the resulting ham-and-cheese sandwich&lt;/LI&gt;
- &lt;/OL&gt;
- </pre>
- <p>
- The <code>&lt;/LI&gt;</code> end tags are optional and are only
- included above to emphasize how the structure of the nested list
- is arranged; if you omit them, the parser will infer their
- presence in the locations shown above.
- </p>
- </li>
- </ul>
- <p>
- The validator has inserted a &lsquo;<var>BAR</var>&rsquo; start tag where it thinks there needs
- to be one; it will probably complain later on that <a href="#no-end-tag">the
- corresponding end tag is also missing</a>.
- </p>
- </dd>
- <dt><a id="attr-undef" name="attr-undef">&ldquo;<code>there is no attribute &lsquo;<var>FOO</var>&rsquo; for this element (in this HTML version)</code>&rdquo;</a></dt>
- <dd>
- <p>
- You have used an attribute with an element that is defined not to have
- that attribute. This is most commonly caused by using
- vendor-specific attributes without setting the document type
- appropriately.
- </p>
- </dd>
- <dt><a id="undef-attr-val" name="undef-attr-val">&ldquo;<code>&lsquo;<var>FOO</var>&rsquo; is not a member of the group specified in the declared value of this attribute</code>&rdquo;</a></dt>
- <dd>
- <p>
- Similar to the <a href="#attr-undef">previous error</a>; this time,
- you're using an attribute that is defined for the element, but with a
- value that isn't defined for the attribute. For instance, the Netscape
- extension <code>&lt;IMG ALIGN=ABSMIDDLE&gt;</code> will cause this
- error; ABSMIDDLE isn't one of the allowed values for the ALIGN
- attribute of <code>&lt;IMG&gt;</code> (unless, of course, you provided
- a Netscape document type).
- </p>
- <p>
- If you're using the Netscape document type, the BORDER attribute of
- <code>&lt;TABLE&gt;</code> can cause this error.
- </p>
- <p>
- This error can also be caused, oddly enough, by missing close quotes
- on attribute values. For instance, given:
- </p>
- <pre>
- &lt;IMG SRC="fred.gif&gt; &lt;IMG SRC="joe.gif&gt;
- </pre>
- <p>
- The validator will (correctly) see a SRC attribute of
- <code>"fred.gif&gt; &lt;IMG SRC="</code>, and then try to interpret
- JOE.GIF as an attribute of <code>&lt;IMG&gt;</code>.
- </p>
- </dd>
- <dt><a id="bad-attr-char" name="bad-attr-char">&ldquo;<code>syntax of attribute value does not conform to declared value</code>&rdquo;</a></dt>
- <dd>
- <p>
- Yet another attribute error; this time, the attribute in question was
- defined to take a numeric value, or an <a
- href="sgml.html#sgml">SGML</a> identifier value, and you used a
- character that doesn't match what it was expecting.
- </p>
- <p>
- One potentially annoying source of this error is the <code>TD
- WIDTH</code> attribute. Whether intentionally or by oversight, the
- HTML 3.2 DTD defines this attribute to have a value type of NUMBER,
- which means that <code>&lt;TD WIDTH="50%"&gt;</code> is not allowed.
- </p>
- </dd>
- <dt><a id="attr-bad-name" name="attr-bad-name">&ldquo;<code>value of attribute &lsquo;<var>FOO</var>&rsquo; invalid: "#" cannot start a name</code>&rdquo;</a></dt>
- <dd>
- <p>
- A special case of <a href="#bad-attr-char">the previous error</a>; the
- attribute in question is defined to take as value an SGML name token,
- which must begin with a letter.
- </p>
- </dd>
- <dt><a id="bad-abbrev-attr" name="bad-abbrev-attr">&ldquo;<code>&lsquo;<var>FOO</var>&rsquo; is not a member of a group specified for any attribute</code>&rdquo;</a></dt>
- <dd>
- <p>
- Another attribute error, this time referring to an "abbreviated"
- attribute. <a href="sgml.html#sgml">SGML</a> allows you to omit the
- name of an attribute if the attribute value is unambiguous. For
- instance, <code>&lt;IMG ISMAP&gt;</code> is actually an abbreviation
- of <code>&lt;IMG ISMAP=ISMAP&gt;</code>. (Technically, this also means
- that e.g. <code>&lt;P ALIGN=CENTER&gt;</code> could be abbreviated to
- <code>&lt;P CENTER&gt;</code>, but it is unlikely that current
- browsers will get this right.) The validator has found something that
- looks like an abbreviated attribute but doesn't match the value of any
- attribute for this element. For instance, a typo like <code>&lt;IMG
- ISNAP&gt;</code> would produce this error.
- </p>
- <p>
- A missing close quote on a previous attribute value can also trigger
- this error if the next quote it finds is followed by something that
- looks like an abbreviated attribute; for instance, <code>&lt;IMG
- SRC="fred.gif&gt;&lt;IMG SRC="joe.gif&gt;</code> would produce this
- error, referring to the "attribute value" <code>JOE.GIF</code>.
- </p>
- </dd>
- <dt><a id="attr-missing" name="attr-missing">&ldquo;<code>required attribute &lsquo;<var>FOO</var>&rsquo; not specified</code>&rdquo;</a></dt>
- <dd>
- <p>
- You left off a required attribute of the indicated element. The most
- common such omitted attribute is the <code>ALT</code> attribute of the
- <code>AREA</code> or <code>IMG</code> element; browsers will typically
- use these to build a menu equivalent to your client-side image map if
- the user has disabled image loading, so you'll want to use a
- meaningful value here.
- </p>
- </dd>
- <dt><a id="no-end-tag" name="no-end-tag">&ldquo;<code>end tag for &lsquo;<var>FOO</var>&rsquo; omitted, but its declaration does not permit this</code>&rdquo;</a></dt>
- <dd>
- <p>
- You forgot to close something. &lsquo;<var>FOO</var>&rsquo; is the element you forgot to close
- (and the next message, `start tag was here' points to the particular
- instance of &lsquo;<var>FOO</var>&rsquo; in question); the positional indicator points to where
- the validator expected you to close the element. There are a few
- common ways that this can happen:
- </p>
- <ul>
- <li>
- You've put something inside the &lsquo;<var>FOO</var>&rsquo; element that isn't allowed
- there. For instance, <code>&lt;UL&gt;&lt;LI&gt;&lt;H4&gt;fake font
- change&lt;/H4&gt;&lt;/UL&gt;</code> will cause this error, since
- headers aren't allowed inside <code>&lt;UL&gt;</code>'s; the
- validator assumes that you meant to close the
- <code>&lt;UL&gt;</code> before opening the <code>&lt;H4&gt;</code>.
- </li>
- <li>
- Interlocked elements. For instance,
- <code>&lt;B&gt;&lt;I&gt;nope&lt;/B&gt;&lt;/I&gt;</code> will cause
- this error. HTML requires that you close elements &ldquo;inside-out&rdquo;
- &mdash; that is, the last element you opened is the first element you should
- close. In this example, you'd have to close the
- <code>&lt;I&gt;</code> before the <code>&lt;B&gt;</code>.
- </li>
- <li>
- Unclosed <code>&lt;A&gt;</code> tags. Yes, even <code>&lt;A
- NAME="foo"&gt;</code> has to have a corresponding
- <code>&lt;/A&gt;</code>. Note that an empty <code>&lt;A
- NAME&gt;</code> element won't be recognized by some browsers; be
- sure to put at least a word or two inside the
- <code>&lt;A&gt;</code>.
- </li>
- <li>
- Having unadorned text where the validator was expecting a
- sub-element of &lsquo;<var>FOO</var>&rsquo;. For instance, <code>&lt;DL&gt;fake
- indent&lt;/DL&gt;</code> will produce this error, since inside a
- <code>&lt;DL&gt;</code>, the validator only expects to see
- <code>&lt;DT&gt;</code>'s and <code>&lt;DD&gt;</code>'s.
- </li>
- <li>
- A tag of the form <code>&lt;TABLE WIDTH=100%&gt;</code>. The
- previous error should have been that the `%' was <a
- href="#attr-char">"not allowed in attribute specification list"</a>.
- What's happening here is that, in trying to get past the `%', the
- validator has become confused and thinks the `%' is <em>inside</em>
- the <code>&lt;TABLE&gt;...&lt;/TABLE&gt;</code>, thus triggering the
- error message for the previous reason. This error will likely be
- followed by mistaken complaints that your <code>&lt;TR&gt;</code>'s
- are <a href="#not-allowed">"not allowed here"</a>, plus a complaint
- about your <code>&lt;/TABLE&gt;</code> end tag. The solution is to
- put the attribute value in quotes; ie. <code>&lt;TABLE
- WIDTH="100%"&gt;</code>.
- </li>
- </ul>
- <p>
- In general, you should always explicitly close all elements and
- quote all attribute values.
- </p>
- </dd>
- <dt><a id="floating-close" name="floating-close">&ldquo;<code>end tag for element &lsquo;<var>FOO</var>&rsquo; which is not open</code>&rdquo;</a></dt>
- <dd>
- <p>
- The validator found an end tag, represented here by &lsquo;<var>FOO</var>&rsquo;, without a
- corresponding start tag. This frequently occurs in conjunction with
- the <a href="#no-end-tag">previous error</a>. For instance, given
- <code>&lt;B&gt;&lt;I&gt;nope&lt;/B&gt;&lt;/I&gt;</code>, the validator
- will insert a <code>&lt;/I&gt;</code> before the
- <code>&lt;/B&gt;</code>, and then will find the
- <code>&lt;/I&gt;</code> after the <code>&lt;/B&gt;</code> and will
- have nothing to match it with.
- </p>
- <p>
- A subtle variation of this is <code>&lt;P&gt;&lt;H4&gt;fake font
- change&lt;/H4&gt;&lt;/P&gt;</code>. <code>&lt;H4&gt;</code>'s aren't
- allowed inside <code>&lt;P&gt;</code>'s, but since HTML allows you to
- omit the <code>&lt;/P&gt;</code> end tag for paragraphs, the validator
- assumes that you meant <code>&lt;P&gt;&lt;/P&gt;&lt;H4&gt;fake font
- change&lt;/H4&gt;&lt;/P&gt;</code>, in which case the final
- <code>&lt;/P&gt;</code> is indeed superfluous.
- </p>
- <p>
- This error can also be caused by incorrectly supplying an end tag for
- "empty" elements like <code>&lt;HR&gt;</code>, <code>&lt;BR&gt;</code>
- or <code>&lt;IMG&gt;</code>.
- </p>
- </dd>
- <dt><a id="omitted-content" name="omitted-content">&ldquo;<code>end tag for &lsquo;<var>FOO</var>&rsquo; which is not finished</code>&rdquo;</a></dt>
- <dd>
- <p>
- You have a &lsquo;<var>FOO</var>&rsquo; element, but you have omitted some required sub-element
- of it. For instance, a <code>TABLE</code> with no <code>TR</code>'s
- would cause this error.
- </p>
- </dd>
- <dt><a id="no-start-tag" name="no-start-tag">&ldquo;<code>start tag for &lsquo;<var>FOO</var>&rsquo; omitted, but its declaration does not permit this</code>&rdquo;</a></dt>
- <dd>
- <p>
- The validator expected you to start a &lsquo;<var>FOO</var>&rsquo; element at the indicated
- point. This probably means you've put unadorned text somewhere it
- isn't allowed; for instance, <code>&lt;UL&gt;fake
- indent&lt;/UL&gt;</code> will cause this error.
- </p>
- </dd>
- <dt><a id="bad-entity" name="bad-entity">&ldquo;<code>unknown entity &lsquo;<var>FOO</var>&rsquo;</code>&rdquo;</a></dt>
- <dd>
- <p>
- The validator has found an entity (something like
- <code>&amp;this;</code>) that it doesn't recognize. There are a few
- possibilities:
- </p>
- <ul>
- <li>
- <p>
- A reference to a URI that uses <code>&amp;</code> as a separator
- between parameters, such as
- "<code>http://example.org/prog?x=1&amp;y=2</code>".
- </p>
- <p>
- To solve this problem, simply replace all the <code>&amp;</code>'s
- in attribute values with <code>&amp;amp;</code> (user agents will
- convert them back before following the links.)
- </p>
- <p>
- Another way to get around this problem is for the author of the CGI
- program to allow a different value to be used between arguments,
- like ';' or '|', which would allow the link to be coded as e.g.
- <code>&lt;a href="http://example.org/prog?x=1;y=2"&gt;</code>
- </p>
- </li>
- <li>
- An unterminated entity; for instance, <code>this&amp;ampthat</code>
- for "this&amp;that", which the validator (correctly) interprets as a
- request for the entity <code>&amp;ampthat;</code>. Technically, any
- non-alphanumeric character (such as a space) will suffice to
- terminate the entity, but some browsers get this wrong; the safest
- thing to do is to terminate all entities with a semicolon, turning
- our example into <code>this&amp;amp;that</code>.
- </li>
- <li>
- The entity <code>&amp;quot;</code> in conjunction with the HTML 3.2
- <code>DOCTYPE</code>. This entity was <a
- href="http://lists.w3.org/Archives/Public/www-html/1997Mar/0003.html">accidentally
- omitted</a> from the most recent version of the HTML 3.2 DTD. You
- should be able to ignore this error safely, though if you wish, you
- can replace <code>&amp;quot;</code> with the equivalent character
- entity <code>&amp;#34;</code>.
- </li>
- </ul>
- </dd>
- <dt><a id="bad-char" name="bad-char">&ldquo;<code>non SGML character number ###</code>&rdquo;</a></dt>
- <dd>
- <p>
- You've used an illegal character in your text. HTML uses the standard
- ISO8859-1 character encoding, and ISO8859-1 leaves undefined 65
- character codes (0 to 31 inclusive and 127 to 159 inclusive); the
- validator has found one of these undefined characters in your
- document. The character may appear on your browser as a curly quote,
- or a trademark symbol, or some other fancy glyph; on a different
- computer, however, it will likely appear as a completely different
- character, or nothing at all.
- </p>
- <p>
- Your best bet is to replace the character with the nearest equivalent
- ASCII character, or to use an appropriate <a
- href="http://www.w3.org/hypertext/WWW/MarkUp/html3/latin1.html">character
- entity</a>. For more information on ISO8859-1, see <a
- href="http://ppewww.ph.gla.ac.uk/%7Eflavell/aflavell.html">Alan
- Flavell</a>'s excellent <a
- href="http://ppewww.ph.gla.ac.uk/%7Eflavell/iso8859/">ISO8859-1/HTML
- reference</a>.
- </p>
- <p>
- This error can also be triggered by formatting characters embedded in
- documents by some word processors. If you use a word processor to edit
- your HTML documents, be sure to use the "Save as ASCII" or similar
- command to save the document without formatting information.
- </p>
- </dd>
- <dt><a id="unicode-char" name="unicode-char">&ldquo;<code>`####' is not a valid character number</code>&rdquo;</a></dt>
- <dd>
- <p>
- You'll get several occurrences of this error if you use the Cougar
- DTD. Cougar uses the 16-bit UCS-4 (a.k.a. "Unicode") character set
- instead of the 8-bit ISO8859-1 character set used by HTML 2.0 and HTML
- 3.2. It also defines mnemonic entities for various Unicode characters;
- for instance, the entity <code>&amp;trade;</code> is defined as the
- character entity <code>&amp;#8482;</code>, which is the Unicode
- trademark character. Unfortunately, the <code>nsgmls</code> executable
- used by the validator does not appear to have 16-bit character support
- compiled in, and so it chokes on these 16-bit character entities.
- </p>
- <p>
- These errors are not produced by anything in your document and should
- not otherwise affect the validation of your document, so you can
- pretty much ignore them.
- </p>
- </dd>
- <dt><a id="bad-pub-id" name="bad-pub-id">&ldquo;<code>cannot generate system identifier for entity `HTML'</code>&rdquo;</a></dt>
- <dd>
- <p>
- Your <code>DOCTYPE</code> declaration contains a public identifier
- that the validator doesn't recognize. See the <a
- href="sgml.html#doctype">discussion of <code>DOCTYPE</code></a> for an
- explanation of what's happening, and what public identifiers the
- validator recognizes.
- </p>
- <p>
- Note that all of the rest of the errors you received are meaningless;
- the validator was unable to find a <a href="sgml.html#dtd">DTD</a> to
- work from, and thus could not validate your document.
- </p>
- </dd>
- <dt><a id="missing-subel" name="missing-subel">&ldquo;<code>missing a required sub-element of &lsquo;<var>FOO</var>&rsquo;</code>&rdquo;</a></dt>
- <dd>
- <p>
- The element &lsquo;<var>FOO</var>&rsquo; is defined to <em>require</em> one or more
- sub-elements. One example is TR which requires one or more TD or TH
- elements.
- </p>
- </dd>
- <dt><a id="start-tag" name="start-tag">&ldquo;<code>start tag was here</code>&rdquo;</a></dt>
- <dd>
- <p>
- Not an error, but rather a pointer to the start tag of the element
- the previous error referred to.
- </p>
- </dd>
- <dt><a id="utf8-bom" name="utf8-bom">&ldquo;<code>UTF-8 'BOM' detected and removed</code>&rdquo;</a></dt>
- <dd>
- <p>
- The document contained an UTF-8 encoded Unicode Byte Order Mark (BOM)
- as the first character and we have removed it before parsing.
- Many XML Processors fail to recognize it (although it's perfectly
- valid). To be on the safe side you may want to avoid using the
- BOM in UTF-8 encoded documents until browsers are updated to support it.
- </p>
- <p>
- Note that the BOM in <em>UTF-16</em> encoded documents
- is required and handled by all conforming XML Processors.
- </p>
- </dd>
- <dt><a id="text-not-allowed" name="text-not-allowed">&ldquo;<code> text is not allowed here; try wrapping the text in a more descriptive container</code>&rdquo;</a></dt>
- <dd>
- <p>
- The document contained bare text where an element was expected.
- For instance, you must wrap text in <code>&lt;p&gt;</code> if it
- appears directly inside the <code>&lt;body&gt;</code>.
- </p>
- <p>
- This error may also indicate an unquoted attribute value containing
- a reserved character (such as "<samp>/</samp>") which terminates the
- attribute. The net effect is that the rest of the attribute value
- appears to be plain text, outside any element, to an SGML parser.
- </p>
- </dd>
- <dt><a id="unkn-att-val" name="unkn-att-val">&ldquo;<code> value of attribute &lsquo;<var>FOO</var>&rsquo; cannot be &lsquo;<var>BAR</var>&rsquo;; must be one of &lsquo;<var>FOO</var>&rsquo;, &lsquo;<var>BAR</var>&rsquo;, &lsquo;<var>BAZ</var>&rsquo;</code>&rdquo;</a></dt>
- <dd>
- <p>
- An attribute was specified to contain one of a set of predefined
- values and you have used a value that is not in that set. The error
- message tells which attribute value was unknown and the possible
- legal values for this attribute.
- </p>
- </dd>
- <dt><a id="no-attr-end" name="no-attr-end">&ldquo;<code>character &lsquo;<var>FOO</var>&rsquo; not allowed in attribute specification list possibly caused by a missing quotation mark ending a previous attribute value</code>&rdquo;</a></dt>
- <dd>
- <p>
- A character that is illegal in the attribute list for a particular
- attribute was encountered. It's is likely that this is a result of
- a missing quote character on a previous attribute value.
- </p>
- </dd>
- <dt><a id="dup-attr" name="dup-attr">&ldquo;<code>duplicate specification of attribute &lsquo;<var>FOO</var>&rsquo;</code>&rdquo;</a></dt>
- <dd>
- <p>
- You have specified an attribute more than once. For instance, you've
- used the "height" attribute on the "img" element twice on the same
- "img" tag.
- </p>
- </dd>
- <dt><a id="invalid-attr-val" name="invalid-attr-val">&ldquo;<code>invalid attribute value</code>&rdquo;</a></dt>
- <dd>
- <p>
- The value of this attribute is not a legal value for attributes. For
- instance, the attribute cannot be the empty string. This is distinct
- from errors related to illegal values for a specific attribute.
- </p>
- </dd>
- <dt><a id="attr-spec-nmtoken" name="attr-spec-nmtoken">&ldquo;<code>an attribute specification must start with a name or name token</code>&rdquo;</a></dt>
- <dd>
- <p>
- An attribute name (and some attribute values) must start with one of
- a restricted set of characters. This error usually indicates that
- you have failed to add a closing quotation mark on a previous
- attribute value (so the attribute value looks like the start of a
- new attribute) or have used an attribute that is not defined
- (usually a typo in a common attribute name).
- </p>
- </dd>
- <dt><a id="inval-comment" name="inval-comment">&ldquo;<code>invalid comment declaration; check your comment syntax</code>&rdquo;</a></dt>
- <dd>
- <p>
- There is a syntax error in an SGML Comment Declaration. This may be
- caused by too many or too few hyphens "-" or that you have included
- an invalid character in the comment. The next message will be
- "comment declaration started here".
- </p>
- </dd>
- <dt><a id="assuming-missing-starttag" name="assuming-missing-starttag">&ldquo;<code>element &lsquo;<var>FOO</var>&rsquo; not allowed here; assuming missing &lsquo;<var>BAR</var>&rsquo; start-tag</code>&rdquo;</a></dt>
- <dd>
- <p>
- The referenced element &lsquo;<var>FOO</var>&rsquo; isn't allowed in the context it occurs
- in, but it would be if it was wrapped in a &lsquo;<var>BAR</var>&rsquo; element. The
- Validator has assumed that you have forgotten to add a &lsquo;<var>BAR</var>&rsquo;
- start tag and continued validation as if it was there. You should
- check if this is the case and insert the proper tag.
- </p>
- </dd>
-<!--
- <dt><a id="" name="">""</a></dt>
- <dd>
- <p>
- </p>
- </dd>
--->
+ <div id="toc">
+ <h2 id="TableOfContents">Table of Contents</h2>
+ <ul>
+ <li><a href="#undef-id">ID "<var>FOO</var>" already defined</a></li>
+ <li><a href="#unterm-comment-1">entity end not allowed in comment</a></li>
+ <li><a href="#unterm-comment-2">name start character invalid: only s and comment allowed in comment declaration</a></li>
+ <li><a href="#bad-comment">unknown declaration type "<var>FOO</var>"</a></li>
+ <li><a href="#attr-quoted">an attribute value must be a literal unless it contains only name characters</a></li>
+ <li><a href="#attr-char">character `X' not allowed in attribute specification list</a></li>
+ <li><a href="#name-length">length of attribute value must not exceed LITLEN less NORMSEP (1022)</a></li>
+ <li><a href="#undef-tag">element "<var>FOO</var>" undefined</a></li>
+ <li><a href="#not-allowed">document type does not allow element "<var>FOO</var>" here</a></li>
+ <li><a href="#not-contained">document type does not allow element "<var>FOO</var>" here; assuming missing "<var>BAR</var>" start-tag</a></li>
+ <li><a href="#attr-undef">there is no attribute "<var>FOO</var>" for this element (in this HTML version)</a></li>
+ <li><a href="#undef-attr-val">"<var>FOO</var>" is not a member of the group specified in the declared value of this attribute</a></li>
+ <li><a href="#bad-attr-char">syntax of attribute value does not conform to declared value</a></li>
+ <li><a href="#attr-bad-name">value of attribute "<var>FOO</var>" invalid: "#" cannot start a name</a></li>
+ <li><a href="#bad-abbrev-attr">"<var>FOO</var>" is not a member of a group specified for any attribute</a></li>
+ <li><a href="#attr-missing">required attribute "<var>FOO</var>" not specified</a></li>
+ <li><a href="#no-end-tag">end tag for "<var>FOO</var>" omitted, but its declaration does not permit this</a></li>
+ <li><a href="#floating-close">end tag for element "<var>FOO</var>" which is not open</a></li>
+ <li><a href="#omitted-content">end tag for "<var>FOO</var>" which is not finished</a></li>
+ <li><a href="#no-start-tag">start tag for "<var>FOO</var>" omitted, but its declaration does not permit this</a></li>
+ <li><a href="#bad-entity">unknown entity "<var>FOO</var>"</a></li>
+ <li><a href="#bad-char">non SGML character number ###</a></li>
+ <li><a href="#bad-pub-id">cannot generate system identifier for entity `HTML'</a></li>
+ <li><a href="#missing-subel">missing a required sub-element of "<var>FOO</var>"</a></li>
+ <li><a href="#start-tag">start tag was here</a></li>
+ <li><a href="#text-not-allowed"> text is not allowed here; try wrapping the text in a more descriptive container</a></li>
+ <li><a href="#unkn-att-val"> value of attribute "<var>FOO</var>" cannot be "<var>BAR</var>"; must be one of "<var>FOO</var>", "<var>BAR</var>", "<var>BAZ</var>"</a></li>
+ <li><a href="#no-attr-end">character "<var>FOO</var>" not allowed in attribute specification list possibly caused by a missing quotation mark ending a previous attribute value</a></li>
+ <li><a href="#dup-attr">duplicate specification of attribute "<var>FOO</var>"</a></li>
+ <li><a href="#invalid-attr-val">invalid attribute value</a></li>
+ <li><a href="#attr-spec-nmtoken">an attribute specification must start with a name or name token</a></li>
+ <li><a href="#inval-comment">invalid comment declaration; check your comment syntax</a></li>
+ <li><a href="#assuming-missing-starttag">element "<var>FOO</var>" not allowed here; assuming missing "<var>BAR</var>" start-tag</a></li>
+ </ul>
+ </div>
+
+ <div>
+ <h2>Listing of errors and their explanation</h2>
+ <dl>
+ <dt id="undef-id"><code>ID "<var>FOO</var>" already defined</code></dt>
+ <dd>
+ <p>
+ You have defined the id/name "<var>FOO</var>" more
+ then once. You will also get a message telling you where it was
+ first defined. Be aware that this message may be the result of an
+ ambiguity in the specification. While user-agents must treat
+ values of the id attribute as case-sensitive, they must still be
+ case-insensitive unique in the document. See
+ <a href="http://www.w3.org/TR/html4/struct/links.html#h-12.2.1">Section
+ 12.2.1 Syntax of anchor names</a> in the HTML 4.01 Recommendation
+ for further information.
+ </p>
+ </dd>
+ <dt id="unterm-comment-1"><code>entity end not allowed in comment</code></dt>
+ <dd>
+ <p>
+ Unterminated comment. The position indicator points to the very end of
+ the file, where the problem was detected; to find the beginning of the
+ comment, try searching for the last occurrence of
+ `<code>&lt;!--</code>' in the document.
+ </p>
+ </dd>
+ <dt id="unterm-comment-2"><code>name start character invalid: only s and comment allowed in comment declaration</code></dt>
+ <dd>
+ <p>
+ Unterminated comments again. This time, you have a case like:
+ </p>
+ <pre>
+ &lt;!-- This is the first unterminated comment &gt;
+ &lt;!-- This is the second one &gt;
+ </pre>
+ <p>
+ The validator (correctly) interprets the `<code>--</code>' in the
+ second comment as terminating the first comment, and then interprets
+ the text of the second comment as text between comments, which is not
+ allowed.
+ </p>
+ </dd>
+ <dt id="bad-comment"><code>unknown declaration type "<var>FOO</var>"</code></dt>
+ <dd>
+ <p>
+ Most likely an invalid comment of the form
+ <code>&lt;!invalid comment&gt;</code>; the validator is (correctly)
+ attempting to interpret it as an <a href="sgml.html#sgml">SGML</a>
+ markup declaration.
+ </p>
+ </dd>
+ <dt id="attr-quoted"><code>an attribute value must be a literal unless it contains only name characters</code></dt>
+ <dd>
+ <p>
+ You have an attribute whose value needs to be in quotes. If an
+ attribute value contains any character other than letters, digits,
+ hyphens and periods, it must be enclosed in double quotes (single
+ quotes would also be OK from an <a href="sgml.html#sgml">SGML</a>
+ standpoint, but some browsers don't recognize them).
+ </p>
+ </dd>
+ <dt id="attr-char"><code>character "X" not allowed in attribute specification list</code></dt>
+ <dd>
+ <p>
+ The validator has found a character inside an HTML tag that isn't
+ allowed there. This usually means you didn't put an attribute value in
+ quotes when necessary. It also probably means that the character in
+ question is not allowed in the value of the attribute at all, or you
+ would have received the <a href="#attr-quoted">previous error</a>
+ instead. See <a href="#bad-attr-char">below</a> for more information.
+ </p>
+ <p>
+ You can also get in trouble by forgetting the closing quote on an
+ attribute. For instance:
+ </p>
+ <pre>
+ &lt;IMG SRC="http://foo.com/fred.gif&gt;
+ &lt;IMG SRC="http://foo.com/joe.gif&gt;
+ </pre>
+ <p>
+ The validator will (correctly) interpret this as a SRC value of
+ <code>"http://foo.com/fred.gif&gt; &lt;IMG SRC="</code>, and then
+ choke on the following `:'. In this case, the position indicator in
+ the error message may be several lines below the line with the missing
+ quote.
+ </p>
+ </dd>
+ <dt id="name-length"><code>length of attribute value must not exceed LITLEN less NORMSEP (1022)</code></dt>
+ <dd>
+ <p>
+ This usually occurs in conjunction with the
+ <a href="#attr-char">previous error</a>. It almost always means that
+ you've forgotten a closing quote on an attribute value. For instance,
+ in:
+ </p>
+ <pre>
+ &lt;IMG SRC="fred.gif&gt;
+ &lt;!-- 50 lines of stuff --&gt;
+ &lt;IMG SRC="joe.gif"&gt;
+ </pre>
+ <p>
+ The SRC value for the first <code>&lt;IMG&gt;</code> is the entire
+ fifty lines of stuff up to the next double quote, which probably
+ exceeds the <a href="sgml.html#sgml">SGML</a>-defined length limit for
+ HTML string literals. Note that the position indicator in the error
+ message points to where the attribute value <em>ended</em> &mdash; in
+ this case, the <code>"joe.gif"</code> line.
+ </p>
+ </dd>
+ <dt id="undef-tag"><code>element "<var>FOO</var>" undefined</code></dt>
+ <dd>
+ <p>
+ You've used an unknown tag (represented here by "<var>FOO</var>"). Make sure the
+ DTD indicated by your DOCTYPE actually includes this element.
+ </p>
+ <p>
+ If the tag in question is a frame-related tag you must use the
+ "Frameset" DTD, and if you use (deprecated) physical markup ("FONT"
+ and friends) you must use the "Transitional" DTD.
+ </p>
+ </dd>
+ <dt id="not-allowed"><code>document type does not allow element "<var>FOO</var>" here</code></dt>
+ <dd>
+ <p>
+ Straightforward, but not terribly informative. There are a
+ <em>lot</em> of different errors that will generate this error
+ message:
+ </p>
+ <ul>
+ <li>
+ Using an unknown tag. In this case, the next error will be
+ <a href="#undef-tag">element "<var>FOO</var>" undefined"</a>.
+ </li>
+ <li>
+ Using a tag in the wrong place. For instance,
+ <code>&lt;TABLE&gt;&lt;TD&gt;blah&lt;/TABLE&gt;</code> will cause
+ this error. The trick here is that <code>&lt;TABLE&gt;</code> cannot
+ <em>directly</em> contain <code>&lt;TD&gt;</code>'s; it contains
+ <code>&lt;TR&gt;</code>'s which contain <code>&lt;TD&gt;</code>'s.
+ The above example should be
+ <code>&lt;TABLE&gt;&lt;TR&gt;&lt;TD&gt;blah&lt;/TABLE&gt;</code>.
+ </li>
+ </ul>
+ </dd>
+ <dt><a id="not-contained" name="not-contained">document type does not allow element "<var>FOO</var>" here; assuming missing "<var>BAR</var>" start-tag</a>"</dt>
+ <dd>
+ <p>
+ Similar to the <a href="#not-allowed">previous error</a>, but more
+ specific: in this case, you have a "<var>FOO</var>" element that is not contained
+ in a "<var>BAR</var>" element when "<var>FOO</var>" is not allowed outside of "<var>BAR</var>". Some of the
+ most common causes of this error are:
+ </p>
+ <ul>
+ <li>
+ Using the <code>DD</code> element as a fake paragraph indent.
+ <code>DD</code> is not allowed outside of a <code>DL</code> element.
+ </li>
+ <li>
+ Improper construction of a nested list. An inner UL or OL in a
+ nested list may not appear directly within an outer UL/OL, but only
+ within an LI of the outer UL/OL, as in the following example:
+ <pre>
+ &lt;OL&gt;
+ &lt;LI&gt;Obtain the following items:
+ &lt;UL&gt;
+ &lt;LI&gt;Ham&lt;/LI&gt;
+ &lt;LI&gt;Bread; one of:
+ &lt;UL&gt;
+ &lt;LI&gt;White&lt;/LI&gt;
+ &lt;LI&gt;Rye&lt;/LI&gt;
+ &lt;LI&gt;Whole wheat&lt;/LI&gt;
+ &lt;/UL&gt;
+ &lt;/LI&gt; &lt;!-- End of the "Bread" &lt;LI&gt; --&gt;
+ &lt;LI&gt;Cheese&lt;/LI&gt;
+ &lt;/UL&gt;
+ &lt;/LI&gt; &lt;!-- End of the "Obtain" &lt;LI&gt; --&gt;
+ &lt;LI&gt;Place ham and cheese between two slices of bread&lt;/LI&gt;
+ &lt;LI&gt;Consume the resulting ham-and-cheese sandwich&lt;/LI&gt;
+ &lt;/OL&gt;
+ </pre>
+ <p>
+ The <code>&lt;/LI&gt;</code> end tags are optional and are only
+ included above to emphasize how the structure of the nested list
+ is arranged; if you omit them, the parser will infer their
+ presence in the locations shown above.
+ </p>
+ </li>
+ </ul>
+ <p>
+ The validator has inserted a "<var>BAR</var>" start tag where it thinks there needs
+ to be one; it will probably complain later on that <a href="#no-end-tag">the
+ corresponding end tag is also missing</a>.
+ </p>
+ </dd>
+ <dt id="attr-undef"><code>there is no attribute "<var>FOO</var>" for this element (in this HTML version)</code></dt>
+ <dd>
+ <p>
+ You have used an attribute with an element that is defined not to have
+ that attribute. This is most commonly caused by using
+ vendor-specific attributes without setting the document type
+ appropriately.
+ </p>
+ </dd>
+ <dt id="undef-attr-val"><code>"<var>FOO</var>" is not a member of the group specified in the declared value of this attribute</code></dt>
+ <dd>
+ <p>
+ Similar to the <a href="#attr-undef">previous error</a>; this time,
+ you're using an attribute that is defined for the element, but with a
+ value that isn't defined for the attribute. For instance, the Netscape
+ extension <code>&lt;IMG ALIGN=ABSMIDDLE&gt;</code> will cause this
+ error; ABSMIDDLE isn't one of the allowed values for the ALIGN
+ attribute of <code>&lt;IMG&gt;</code> (unless, of course, you provided
+ a Netscape document type).
+ </p>
+ <p>
+ If you're using the Netscape document type, the BORDER attribute of
+ <code>&lt;TABLE&gt;</code> can cause this error.
+ </p>
+ <p>
+ This error can also be caused, oddly enough, by missing close quotes
+ on attribute values. For instance, given:
+ </p>
+ <pre>
+ &lt;IMG SRC="fred.gif&gt; &lt;IMG SRC="joe.gif&gt;
+ </pre>
+ <p>
+ The validator will (correctly) see a SRC attribute of
+ <code>"fred.gif&gt; &lt;IMG SRC="</code>, and then try to interpret
+ JOE.GIF as an attribute of <code>&lt;IMG&gt;</code>.
+ </p>
+ </dd>
+ <dt id="bad-attr-char"><code>syntax of attribute value does not conform to declared value</code></dt>
+ <dd>
+ <p>
+ Yet another attribute error; this time, the attribute in question was
+ defined to take a numeric value, or an <a
+ href="sgml.html#sgml">SGML</a> identifier value, and you used a
+ character that doesn't match what it was expecting.
+ </p>
+ <p>
+ One potentially annoying source of this error is the
+ <code>TD WIDTH</code> attribute. Whether intentionally or by oversight,
+ the HTML 3.2 DTD defines this attribute to have a value type of NUMBER,
+ which means that <code>&lt;TD WIDTH="50%"&gt;</code> is not allowed.
+ </p>
+ </dd>
+ <dt id="attr-bad-name"><code>value of attribute "<var>FOO</var>" invalid: "#" cannot start a name</code></dt>
+ <dd>
+ <p>
+ A special case of <a href="#bad-attr-char">the previous error</a>; the
+ attribute in question is defined to take as value an SGML name token,
+ which must begin with a letter.
+ </p>
+ </dd>
+ <dt id="bad-abbrev-attr"><code>"<var>FOO</var>" is not a member of a group specified for any attribute</code></dt>
+ <dd>
+ <p>
+ Another attribute error, this time referring to an "abbreviated"
+ attribute. <a href="sgml.html#sgml">SGML</a> allows you to omit the
+ name of an attribute if the attribute value is unambiguous. For
+ instance, <code>&lt;IMG ISMAP&gt;</code> is actually an abbreviation
+ of <code>&lt;IMG ISMAP=ISMAP&gt;</code>. (Technically, this also means
+ that e.g. <code>&lt;P ALIGN=CENTER&gt;</code> could be abbreviated to
+ <code>&lt;P CENTER&gt;</code>, but it is unlikely that current
+ browsers will get this right.) The validator has found something that
+ looks like an abbreviated attribute but doesn't match the value of any
+ attribute for this element. For instance, a typo like
+ <code>&lt;IMG ISNAP&gt;</code> would produce this error.
+ </p>
+ <p>
+ A missing close quote on a previous attribute value can also trigger
+ this error if the next quote it finds is followed by something that
+ looks like an abbreviated attribute; for instance,
+ <code>&lt;IMG SRC="fred.gif&gt;&lt;IMG SRC="joe.gif&gt;</code> would
+ produce this error, referring to the "attribute value" <code>JOE.GIF</code>.
+ </p>
+ </dd>
+ <dt id="attr-missing"><code>required attribute "<var>FOO</var>" not specified</code></dt>
+ <dd>
+ <p>
+ You left off a required attribute of the indicated element. The most
+ common such omitted attribute is the <code>ALT</code> attribute of the
+ <code>AREA</code> or <code>IMG</code> element; browsers will typically
+ use these to build a menu equivalent to your client-side image map if
+ the user has disabled image loading, so you'll want to use a
+ meaningful value here.
+ </p>
+ </dd>
+ <dt id="no-end-tag"><code>end tag for "<var>FOO</var>" omitted, but its declaration does not permit this</code></dt>
+ <dd>
+ <p>
+ You forgot to close something. "<var>FOO</var>" is the element you forgot to close
+ (and the next message, `start tag was here' points to the particular
+ instance of "<var>FOO</var>" in question); the positional indicator points to where
+ the validator expected you to close the element. There are a few
+ common ways that this can happen:
+ </p>
+ <ul>
+ <li>
+ You've put something inside the "<var>FOO</var>" element that isn't allowed
+ there. For instance,
+ <code>&lt;UL&gt;&lt;LI&gt;&lt;H4&gt;fake font change&lt;/H4&gt;&lt;/UL&gt;</code>
+ will cause this error, since headers aren't allowed inside <code>&lt;UL&gt;</code>'s; the
+ validator assumes that you meant to close the
+ <code>&lt;UL&gt;</code> before opening the <code>&lt;H4&gt;</code>.
+ </li>
+ <li>
+ Interlocked elements. For instance,
+ <code>&lt;B&gt;&lt;I&gt;nope&lt;/B&gt;&lt;/I&gt;</code> will cause
+ this error. HTML requires that you close elements inside-out
+ &mdash; that is, the last element you opened is the first element you should
+ close. In this example, you'd have to close the
+ <code>&lt;I&gt;</code> before the <code>&lt;B&gt;</code>.
+ </li>
+ <li>
+ Unclosed <code>&lt;A&gt;</code> tags. Yes, even
+ <code>&lt;A NAME="foo"&gt;</code> has to have a corresponding
+ <code>&lt;/A&gt;</code>. Note that an empty
+ <code>&lt;A NAME&gt;</code> element won't be recognized by some browsers; be
+ sure to put at least a word or two inside the
+ <code>&lt;A&gt;</code>.
+ </li>
+ <li>
+ Having unadorned text where the validator was expecting a
+ sub-element of "<var>FOO</var>". For instance,
+ <code>&lt;DL&gt;fake indent&lt;/DL&gt;</code> will produce this error,
+ since inside a
+ <code>&lt;DL&gt;</code>, the validator only expects to see
+ <code>&lt;DT&gt;</code>'s and <code>&lt;DD&gt;</code>'s.
+ </li>
+ <li>
+ A tag of the form <code>&lt;TABLE WIDTH=100%&gt;</code>. The
+ previous error should have been that the `%' was <a
+ href="#attr-char">"not allowed in attribute specification list"</a>.
+ What's happening here is that, in trying to get past the `%', the
+ validator has become confused and thinks the `%' is <em>inside</em>
+ the <code>&lt;TABLE&gt;...&lt;/TABLE&gt;</code>, thus triggering the
+ error message for the previous reason. This error will likely be
+ followed by mistaken complaints that your <code>&lt;TR&gt;</code>'s
+ are <a href="#not-allowed">"not allowed here"</a>, plus a complaint
+ about your <code>&lt;/TABLE&gt;</code> end tag. The solution is to
+ put the attribute value in quotes; ie. <code>&lt;TABLE
+ WIDTH="100%"&gt;</code>.
+ </li>
+ </ul>
+ <p>
+ In general, you should always explicitly close all elements and
+ quote all attribute values.
+ </p>
+ </dd>
+ <dt id="floating-close"><code>end tag for element "<var>FOO</var>" which is not open</code></dt>
+ <dd>
+ <p>
+ The validator found an end tag, represented here by "<var>FOO</var>", without a
+ corresponding start tag. This frequently occurs in conjunction with
+ the <a href="#no-end-tag">previous error</a>. For instance, given
+ <code>&lt;B&gt;&lt;I&gt;nope&lt;/B&gt;&lt;/I&gt;</code>, the validator
+ will insert a <code>&lt;/I&gt;</code> before the
+ <code>&lt;/B&gt;</code>, and then will find the
+ <code>&lt;/I&gt;</code> after the <code>&lt;/B&gt;</code> and will
+ have nothing to match it with.
+ </p>
+ <p>
+ A subtle variation of this is <code>&lt;P&gt;&lt;H4&gt;fake font
+ change&lt;/H4&gt;&lt;/P&gt;</code>. <code>&lt;H4&gt;</code>'s aren't
+ allowed inside <code>&lt;P&gt;</code>'s, but since HTML allows you to
+ omit the <code>&lt;/P&gt;</code> end tag for paragraphs, the validator
+ assumes that you meant <code>&lt;P&gt;&lt;/P&gt;&lt;H4&gt;fake font
+ change&lt;/H4&gt;&lt;/P&gt;</code>, in which case the final
+ <code>&lt;/P&gt;</code> is indeed superfluous.
+ </p>
+ <p>
+ This error can also be caused by incorrectly supplying an end tag for
+ "empty" elements like <code>&lt;HR&gt;</code>, <code>&lt;BR&gt;</code>
+ or <code>&lt;IMG&gt;</code>.
+ </p>
+ </dd>
+ <dt id="omitted-content"><code>end tag for "<var>FOO</var>" which is not finished</code></dt>
+ <dd>
+ <p>
+ You have a "<var>FOO</var>" element, but you have omitted some required sub-element
+ of it. For instance, a <code>TABLE</code> with no <code>TR</code>'s
+ would cause this error.
+ </p>
+ </dd>
+ <dt id="no-start-tag"><code>start tag for "<var>FOO</var>" omitted, but its declaration does not permit this</code></dt>
+ <dd>
+ <p>
+ The validator expected you to start a "<var>FOO</var>" element at the indicated
+ point. This probably means you've put unadorned text somewhere it
+ isn't allowed; for instance, <code>&lt;UL&gt;fake
+ indent&lt;/UL&gt;</code> will cause this error.
+ </p>
+ </dd>
+ <dt id="bad-entity"><code>unknown entity "<var>FOO</var>"</code></dt>
+ <dd>
+ <p>
+ The validator has found an entity (something like
+ <code>&amp;this;</code>) that it doesn't recognize. There are a few
+ possibilities:
+ </p>
+ <ul>
+ <li>
+ <p>
+ A reference to a URI that uses <code>&amp;</code> as a separator
+ between parameters, such as
+ "<code>http://example.org/prog?x=1&amp;y=2</code>".
+ </p>
+ <p>
+ To solve this problem, simply replace all the <code>&amp;</code>'s
+ in attribute values with <code>&amp;amp;</code> (user agents will
+ convert them back before following the links.)
+ </p>
+ <p>
+ Another way to get around this problem is for the author of the CGI
+ program to allow a different value to be used between arguments,
+ like ';' or '|', which would allow the link to be coded as e.g.
+ <code>&lt;a href="http://example.org/prog?x=1;y=2"&gt;</code>
+ </p>
+ </li>
+ <li>
+ An unterminated entity; for instance, <code>this&amp;ampthat</code>
+ for "this&amp;that", which the validator (correctly) interprets as a
+ request for the entity <code>&amp;ampthat;</code>. Technically, any
+ non-alphanumeric character (such as a space) will suffice to
+ terminate the entity, but some browsers get this wrong; the safest
+ thing to do is to terminate all entities with a semicolon, turning
+ our example into <code>this&amp;amp;that</code>.
+ </li>
+ <li>
+ The entity <code>&amp;quot;</code> in conjunction with the HTML 3.2
+ <code>DOCTYPE</code>. This entity was <a
+ href="http://lists.w3.org/Archives/Public/www-html/1997Mar/0003.html">accidentally
+ omitted</a> from the most recent version of the HTML 3.2 DTD. You
+ should be able to ignore this error safely, though if you wish, you
+ can replace <code>&amp;quot;</code> with the equivalent character
+ entity <code>&amp;#34;</code>.
+ </li>
+ </ul>
+ </dd>
+ <dt id="bad-char"><code>non SGML character number ###</code></dt>
+ <dd>
+ <p>
+ You've used an illegal character in your text. HTML uses the standard
+ ISO8859-1 character encoding, and ISO8859-1 leaves undefined 65
+ character codes (0 to 31 inclusive and 127 to 159 inclusive); the
+ validator has found one of these undefined characters in your
+ document. The character may appear on your browser as a curly quote,
+ or a trademark symbol, or some other fancy glyph; on a different
+ computer, however, it will likely appear as a completely different
+ character, or nothing at all.
+ </p>
+ <p>
+ Your best bet is to replace the character with the nearest equivalent
+ ASCII character, or to use an appropriate <a
+ href="http://www.w3.org/hypertext/WWW/MarkUp/html3/latin1.html">character
+ entity</a>. For more information on ISO8859-1, see <a
+ href="http://ppewww.ph.gla.ac.uk/%7Eflavell/aflavell.html">Alan
+ Flavell</a>'s excellent <a
+ href="http://ppewww.ph.gla.ac.uk/%7Eflavell/iso8859/">ISO8859-1/HTML
+ reference</a>.
+ </p>
+ <p>
+ This error can also be triggered by formatting characters embedded in
+ documents by some word processors. If you use a word processor to edit
+ your HTML documents, be sure to use the "Save as ASCII" or similar
+ command to save the document without formatting information.
+ </p>
+ </dd>
+ <dt id="bad-pub-id"><code>cannot generate system identifier for entity "HTML"</code></dt>
+ <dd>
+ <p>
+ Your <code>DOCTYPE</code> declaration contains a public identifier
+ that the validator doesn't recognize. See the <a
+ href="sgml.html#doctype">discussion of <code>DOCTYPE</code></a> for an
+ explanation of what's happening, and what public identifiers the
+ validator recognizes.
+ </p>
+ </dd>
+ <dt id="missing-subel"><code>missing a required sub-element of "<var>FOO</var>"</code></dt>
+ <dd>
+ <p>
+ The element "<var>FOO</var>" is defined to <em>require</em> one or more
+ sub-elements. One example is TR which requires one or more TD or TH
+ elements.
+ </p>
+ </dd>
+ <dt id="start-tag"><code>start tag was here</code></dt>
+ <dd>
+ <p>
+ Not an error, but rather a pointer to the start tag of the element
+ the previous error referred to.
+ </p>
+ </dd>
+ <dt id="text-not-allowed"><code> text is not allowed here; try wrapping the text in a more descriptive container</code></dt>
+ <dd>
+ <p>
+ The document contained bare text where an element was expected.
+ For instance, you must wrap text in <code>&lt;p&gt;</code> if it
+ appears directly inside the <code>&lt;body&gt;</code>.
+ </p>
+ <p>
+ This error may also indicate an unquoted attribute value containing
+ a reserved character (such as "<samp>/</samp>") which terminates the
+ attribute. The net effect is that the rest of the attribute value
+ appears to be plain text, outside any element, to an SGML parser.
+ </p>
+ </dd>
+ <dt id="unkn-att-val"><code> value of attribute "<var>FOO</var>" cannot be "<var>BAR</var>"; must be one of "<var>FOO</var>", "<var>BAR</var>", "<var>BAZ</var>"</code></dt>
+ <dd>
+ <p>
+ An attribute was specified to contain one of a set of predefined
+ values and you have used a value that is not in that set. The error
+ message tells which attribute value was unknown and the possible
+ legal values for this attribute.
+ </p>
+ </dd>
+ <dt id="no-attr-end"><code>character "<var>FOO</var>" not allowed in attribute specification list possibly caused by a missing quotation mark ending a previous attribute value</code></dt>
+ <dd>
+ <p>
+ A character that is illegal in the attribute list for a particular
+ attribute was encountered. It's is likely that this is a result of
+ a missing quote character on a previous attribute value.
+ </p>
+ </dd>
+ <dt id="dup-attr"><code>duplicate specification of attribute "<var>FOO</var>"</code></dt>
+ <dd>
+ <p>
+ You have specified an attribute more than once. For instance, you've
+ used the "height" attribute on the "img" element twice on the same
+ "img" tag.
+ </p>
+ </dd>
+ <dt id="invalid-attr-val"><code>invalid attribute value</code></dt>
+ <dd>
+ <p>
+ The value of this attribute is not a legal value for attributes. For
+ instance, the attribute cannot be the empty string. This is distinct
+ from errors related to illegal values for a specific attribute.
+ </p>
+ </dd>
+ <dt id="attr-spec-nmtoken"><code>an attribute specification must start with a name or name token</code></dt>
+ <dd>
+ <p>
+ An attribute name (and some attribute values) must start with one of
+ a restricted set of characters. This error usually indicates that
+ you have failed to add a closing quotation mark on a previous
+ attribute value (so the attribute value looks like the start of a
+ new attribute) or have used an attribute that is not defined
+ (usually a typo in a common attribute name).
+ </p>
+ </dd>
+ <dt id="inval-comment"><code>invalid comment declaration; check your comment syntax</code></dt>
+ <dd>
+ <p>
+ There is a syntax error in an SGML Comment Declaration. This may be
+ caused by too many or too few hyphens "-" or that you have included
+ an invalid character in the comment. The next message will be
+ "comment declaration started here".
+ </p>
+ </dd>
+ <dt id="assuming-missing-starttag"><code>element "<var>FOO</var>" not allowed here; assuming missing "<var>BAR</var>" start-tag</code></dt>
+ <dd>
+ <p>
+ The referenced element "<var>FOO</var>" isn't allowed in the context it occurs
+ in, but it would be if it was wrapped in a "<var>BAR</var>" element. The
+ Validator has assumed that you have forgotten to add a "<var>BAR</var>"
+ start tag and continued validation as if it was there. You should
+ check if this is the case and insert the proper tag.
+ </p>
+ </dd>
</dl>
-
<!--#include virtual="../footer.html" -->
</body>
</html>
diff --git a/htdocs/docs/help.html b/htdocs/docs/help.html
index 1db1a25..19f2050 100755
--- a/htdocs/docs/help.html
+++ b/htdocs/docs/help.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: help.html,v 1.13 2003-02-24 23:33:19 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:19 $"
+<!--#set var="revision" value="\$Id: help.html,v 1.14 2003-05-24 20:32:46 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:46 $"
--><!--#set var="title" value="Help for The W3C Markup Validation Service"
--><!--#set var="relroot" value="../"
--><!--#include virtual="../header.html" -->
@@ -49,6 +49,13 @@
<li>Miscellaneous (Very) Frequently Asked Questions
<ul>
<li>
+ <a href="#faq-doctype">No DOCTYPE Declaration Found!</a>
+ </li>
+ <li>
+ <a href="#faq-charset">The validator is <q>not able to extract
+ a character encoding</q></a>
+ </li>
+ <li>
<a href="#faq-ampersand">The validator complains about "&amp;" in my URLs!</a>
</li>
<li>
@@ -196,6 +203,55 @@
<div>
<h2 id="very-faq">Miscellaneous (Very) Frequently Asked Questions</h2>
+<h3 id="faq-doctype">No DOCTYPE Declaration Found!</h3>
+ <p>
+ A DOCTYPE Declaration is mandatory for most current markup languages
+ and without one it is impossible to reliably validate a document.
+ </p>
+
+ <p>
+ One should place a DOCTYPE declaration as the very first thing in an
+ HTML document. For example, for a typical <a
+ href="http://www.w3.org/TR/xhtml1/">XHTML 1.0</a> document:
+ </p>
+ <pre>
+ &lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;
+ &lt;html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"&gt;
+ &lt;head&gt;
+
+ &lt;title&gt;Title&lt;/title&gt;
+ &lt;/head&gt;
+
+ &lt;body&gt;
+ &lt;!-- ... body of document ... --&gt;
+ &lt;/body&gt;
+
+ &lt;/html&gt;
+ </pre>
+ <p>
+ For XML documents, you may also wish to include an "XML Declaration"
+ even before the DOCTYPE Declaration, but this is not well supported
+ in older browsers. More information about this can be found in the
+ <a href="http://www.w3.org/TR/xhtml1/">XHTML 1.0</a> Recommendation.
+ </p>
+ <p>
+ The W3C QA Activity maintains a <a
+ href="http://www.w3.org/QA/2002/04/valid-dtd-list.html">List of
+ Valid Doctypes</a> that you can choose from, and the <acronym
+ title="Web Design Group">WDG</acronym> maintains a document on
+ "<a href="http://htmlhelp.com/tools/validator/doctype.html">Choosing
+ a DOCTYPE</a>".
+ </p>
+<h3 id="faq-charset">The validator is <q>not able to extract
+a character encoding</q></h3>
+
+<p>An HTML document should be served along with its character encoding.</p>
+<p>WDG has some good documentation on
+<a href="http://www.htmlhelp.com/tools/validator/charset.html">using
+character encodings</a> that will help you fix your document or the way it is served
+by adding the proper character encoding information.</p>
+
<h3 id="faq-ampersand">The validator complains about "&amp;" in my URLs!</h3>
<p>Most probably, you should read the <a
href="http://www.htmlhelp.com/tools/validator/problems.html#amp">ampersand section</a>
diff --git a/htdocs/docs/sgml.html b/htdocs/docs/sgml.html
index 83c1958..3a40ae7 100755
--- a/htdocs/docs/sgml.html
+++ b/htdocs/docs/sgml.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: sgml.html,v 1.13 2003-02-24 23:33:19 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:19 $"
+<!--#set var="revision" value="\$Id: sgml.html,v 1.14 2003-05-24 20:32:46 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:46 $"
--><!--#set var="title" value="Introduction To SGML for The W3C Markup Validation Service"
--><!--#set var="relroot" value="../"
--><!--#include virtual="../header.html" -->
@@ -16,10 +16,10 @@
You don't actually have to know much about SGML to use The Validator
successfully. If you're interested, though, I recommend TEI's
<a href="http://etext.virginia.edu/tei-tocs1.html">"A Gentle
- Introduction to SGML"</a> as a good starting point. An additional SGML
- resource can be found on
- <a href="http://www.oasis-open.org/cover/sgml-xml.html">SIL's SGML
- Web Page</a>.
+ Introduction to SGML"</a> as a good starting point. For in-depth
+ treatment of <acronym title="Standard Generalized Markup Language">SGML</acronym>
+ and <acronym title="HyperText Markup Language">HTML</acronym> I recommend
+ Martin Bryan's "<a href="http://www.sgml.u-net.com/book/">Web SGML and HTML 4.0 Explained</a>".
</p>
</div>
diff --git a/htdocs/docs/users.html b/htdocs/docs/users.html
index 32d3c2b..ae5ecf6 100755
--- a/htdocs/docs/users.html
+++ b/htdocs/docs/users.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: users.html,v 1.16 2003-02-24 23:33:19 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:19 $"
+<!--#set var="revision" value="\$Id: users.html,v 1.17 2003-05-24 20:32:46 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:46 $"
--><!--#set var="title" value="User Documentation for The W3C Markup Validation Service"
--><!--#set var="relroot" value="../"
--><!--#include virtual="../header.html" -->
@@ -60,31 +60,78 @@
<p>
In addition to the text field where you enter an URL -- or the file
selection field if you are uploading files -- there are a few
- checkboxes that alter the behaviour of the validator. The options are:
+ checkboxes that alter the behaviour of the validator.</p>
+ <p>
+ These options are:
</p>
<dl>
- <dt>Show source input (<code>ss</code>)</dt>
+ <dt id="option-charset">Encoding</dt>
+ <dd>
+ This allows you to <strong>override</strong> the character encoding
+ information about your document. You may use this option for test
+ purposes, but you will eventually have to serve your document with the
+ correct character encoding, or the validator will <a href="help#faq-charset">complain</a>
+ about it and you document will not be valid.
+ </dd>
+ <dt id="option-fbc">Use Fallback instead of Override (Encoding) (<code>fbc</code>)</dt>
+ <dd>
+ Uses the <a href="#option-charset">character encoding override</a> mechanism
+ described above, but only does it as a fall back mechanism if the actual document
+ is not served with character encoding information. Think of this as a gentler
+ override mechanism.
+ </dd>
+ <dt id="option-doctype">Type</dt>
+ <dd>
+ This allows you to <strong>override</strong> the DOCTYPE declaration for you
+ document. You may use this option for test
+ purposes, but you will eventually have to serve your document with the
+ correct character encoding, or the validator will <a href="help#faq-doctype">complain</a>
+ about it and you document will not be valid.
+ </dd>
+ <dt id="option-fbc">Use Fallback instead of Override (Type) (<code>fbd</code>)</dt>
+ <dd>
+ Uses the <a href="#option-doctype">Doctype override</a> mechanism
+ described above, but only does it as a fall back mechanism if the actual document
+ does not have a Doctype declaration. Think of this as a gentler override mechanism.
+ </dd>
+
+
+ <dt id="option-ss">Show source input (<code>ss</code>)</dt>
<dd>
Displays the HTML source of the document you validated and links
error messages directly to lines in this output. Makes it easy to
see what's wrong.
</dd>
- <dt>Show an outline of this document (<code>outline</code>)</dt>
+ <dt id="option-outline">Show an outline of this document (<code>outline</code>)</dt>
<dd>
Will generate an outline of your document from the H1 - H6 elements.
For a properly formed document, this will be a nicely nested tree
structure. The visualization of your document's structure makes it
easier to see where you've skipped a heading.
</dd>
- <dt>Show parse tree (<code>sp</code>)</dt>
+ <dt id="option-sp">Show parse tree (<code>sp</code>)</dt>
<dd>
Shows you exactly how the SGML Parser read your document. Probably
best used only by advanced users as it deals with low-level SGML
constructs.
</dd>
- <dt>exclude attributes from the parse tree (<code>noatt</code>)</dt>
- <dd>Suppress attributes from the parse tree to make it more readable.</dd>
+ <dt id="option-noatt">exclude attributes from the parse tree (<code>noatt</code>)</dt>
+ <dd>Suppress attributes from the <a href="#option-sp">parse tree</a> to make it
+ more readable.</dd>
+ <dt id="option-no200">Validate error pages</dt>
+ <dd>The Markup Validator will usually tell you if the page you tried to validate
+ could not be retrieved (for example, if the server gave a "404 not found" message.
+ In some circumstances you may want to be able to validate the error page sent by
+ the server. This is the option to use then.
+ </dd>
+ <dt id="option-verbose">Verbose Output</dt>
+ <dd>This option triggers verbose output. By default the validator will only output
+ the validity result if the document is valid, but you may want to have the rest of
+ the information (outline, etc.). This is the option to use then.
+ </dd>
+
+
</dl>
</div>
@@ -141,7 +188,7 @@
We're working on ways to make the error messages more friendly, but for now,
if the <a href="errors.html">errors explanation page</a> doesn't work for you,
feel free to email the
- (<a href="http://lists.w3.org/Archives/Public/www-validator">publicly archived</a>)
+ (<a href="http://lists.w3.org/Archives/Public/www-validator/">publicly archived</a>)
<a href="mailto:www-validator@w3.org">www-validator@w3.org</a>
mailing list if you need help interpreting the results. This will have
the added benefit of letting us know which error messages are causing
@@ -301,7 +348,7 @@
A plain text version of the page.
</td>
<td class="comma-tool">
- <a href="/Web/Tools/html2txt">HTML2Text</a>
+ <a href="http://www.w3.org/Web/Tools/html2txt">HTML2Text</a>
</td>
<td class="comma-shortcut">
,text
diff --git a/htdocs/favelets.html b/htdocs/favelets.html
index b17c5fd..a047583 100755
--- a/htdocs/favelets.html
+++ b/htdocs/favelets.html
@@ -1,54 +1,9 @@
-<!--#set var="revision" value="\$Id: favelets.html,v 1.4 2003-04-11 08:59:21 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-04-11 08:59:21 $"
+<!--#set var="revision" value="\$Id: favelets.html,v 1.5 2003-05-24 20:32:45 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:45 $"
--><!--#set var="title" value="Favelets For The W3C Markup Validation Service"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
- <script type="text/javascript">
-<!--
- var xmlhttp
- /*@cc_on @*/
- /*@if (@_jscript_version >= 5)
- try {
- xmlhttp=new ActiveXObject("Msxml2.XMLHTTP")
- } catch (e) {
- try {
- xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
- } catch (E) {
- xmlhttp=false
- }
- }
- @else
- xmlhttp=false
- @end @*/
- if (!xmlhttp) {
- try {
- xmlhttp = new XMLHttpRequest()
- } catch (e) {
- xmlhttp=false
- }
- }
- if (xmlhttp && window.location.hash && window.location.hash.substr) {
- var hsh=window.location.hash.substr(1)
- if (hsh.indexOf('http://')==0) {
- url="http://validator.w3.org/check?uri="+escape(hsh)+";output=xml";
- xmlhttp.open("HEAD",url,true);
- xmlhttp.onreadystatechange=function() {
- if (xmlhttp.readyState==4) {
- if (xmlhttp.getResponseHeader('X-W3C-Validator-Status')!='') {
- alert(hsh+' is '+xmlhttp.getResponseHeader('X-W3C-Validator-Status')+'\nErrors: '+xmlhttp.getResponseHeader('X-W3C-Validator-Errors'));
- } else {
- alert("Validation result not found, this may be for a number of reasons, including url not being available, or a character coding not detected.")
- }
- }
- }
- xmlhttp.setRequestHeader('User-Agent','Validator+Favlet');
- xmlhttp.send("")
- }
- }
-// -->
- </script>
-
<div id="skip">
<h2><a href="http://favelets.com/">Favelets</a>
For The Validator</h2>
@@ -119,18 +74,6 @@
<dd>Same as above but shows results in a new window.</dd>
<dt>"<a href="javascript:_is=document.createElement('iframe');_is.setAttribute('src','http://validator.w3.org/favelets.html#'+window.location.href);_is.setAttribute('height','0');_is.setAttribute('width','0');_is.setAttribute('style','border:0;');document.body.appendChild(_is);void 0"
title="Is This Page Valid?">Is <em>This</em> Page Valid?</a>"</dt>
- <dd>
- From the Head Of The "JavaScript Juju" Department,
- <a href="http://jibbering.com/">Jim Ley</a>, comes this gem.
- When invoked, this <a href="http://favelets.com/">Favelet</a> will
- submit the
- <acronym title="Universal Resource Identifier">URL</acronym>
- for the current page to the Validator for processing and pop up
- a dialog that shows whether the page is Valid and how many errors
- where found in the page. As with all Jim does, this Black Magic is
- so deep I'm <em>afraid</em> to ask him how it works.
- <q>Here There Be Dragons!</q>
- </dd>
</dl>
</div>
</div>
diff --git a/htdocs/feedback.html b/htdocs/feedback.html
index 9d08102..3e3bd32 100755
--- a/htdocs/feedback.html
+++ b/htdocs/feedback.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: feedback.html,v 1.17 2003-02-24 23:33:18 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:18 $"
+<!--#set var="revision" value="\$Id: feedback.html,v 1.18 2003-05-24 20:32:45 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:45 $"
--><!--#set var="title" value="How To Provide Feedback for The W3C Markup Validation Service"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
@@ -73,6 +73,18 @@
href="mailto:www-validator@w3.org">send it directly to the list</a>.
</p>
</dd>
+ <dt>If you want to report a bug or log a feature request.</dt>
+ <dd>
+ <p>
+ The W3C Maintains a public bug tracking database known as <a
+ href="http://www.w3.org/Bugs/Public/">Bugzilla</a> where developers
+ and other technical users can log bug reports and feature suggestions
+ directly. If you are not familiar with issue tracking systems in general
+ or the Bugzilla bug tracker, send your feedback to the mailing list
+ and someone on the W3C Validator Team will take care of logging your
+ issue as appropriate.
+ </p>
+ </dd>
</dl>
<!--#include virtual="footer.html" -->
diff --git a/htdocs/file-upload.html b/htdocs/file-upload.html
index 6e8fc57..155863b 100755
--- a/htdocs/file-upload.html
+++ b/htdocs/file-upload.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: file-upload.html,v 1.16 2003-02-24 23:33:18 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:18 $"
+<!--#set var="revision" value="\$Id: file-upload.html,v 1.17 2003-05-24 20:32:45 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:45 $"
--><!--#set var="title" value="W3C Markup Validation Service: Upload Files"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
@@ -24,8 +24,8 @@
</div>
<p>
- If your document is on the Web, you can validate
- it by <a title="Validate files by URI" href="./">entering its address</a> instead.
+ If your document is on the Web, you can validate it with the same advanced options
+ by <a title="Validate files by URI" href="detailed.html">entering its address</a> instead.
</p>
<!--#include virtual="footer.html" -->
diff --git a/htdocs/footer.html b/htdocs/footer.html
index d815c7a..6876bb3 100755
--- a/htdocs/footer.html
+++ b/htdocs/footer.html
@@ -5,5 +5,21 @@
<a title="Send Feedback for the W3C Markup Validation Service"
href="<!--#echo var="relroot" -->feedback.html">The W3C Validator Team</a><br />
<!--#echo var="date" -->
- <!-- SSI Template Version: $Id: footer.html,v 1.7 2003-02-24 23:33:18 ville Exp $ -->
+ <!-- SSI Template Version: $Id: footer.html,v 1.8 2003-05-24 20:32:45 link Exp $ -->
</address>
+ <p class="copyright">
+ <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 1994-2003
+ <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a>&reg;
+ (<a href="http://www.lcs.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+ <a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+ <a href="http://www.keio.ac.jp/">Keio</a>),
+ All Rights Reserved.
+ W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+ <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+ <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a>
+ and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software licensing</a>
+ rules apply. Your interactions with this site are in accordance
+ with our <a href="http://www.w3.org/Consortium/Legal/privacy-statement#Public">public</a> and
+ <a href="http://www.w3.org/Consortium/Legal/privacy-statement#Members">Member</a> privacy
+ statements.
+ </p>
diff --git a/htdocs/header.html b/htdocs/header.html
index 27cc73a..7285509 100755
--- a/htdocs/header.html
+++ b/htdocs/header.html
@@ -12,7 +12,7 @@
<meta name="description" content="W3C's easy-to-use
HTML validation service, based on an SGML parser." />
<meta name="revision" content="<!--#echo var="revision" -->" />
- <!-- SSI Template Version: $Id: header.html,v 1.22 2003-02-24 23:33:18 ville Exp $ -->
+ <!-- SSI Template Version: $Id: header.html,v 1.23 2003-05-24 20:32:45 link Exp $ -->
</head>
<body>
@@ -74,4 +74,3 @@
</ul>
</dd>
</dl>
-
diff --git a/htdocs/index.html b/htdocs/index.html
index 08d2b35..8d3c263 100755
--- a/htdocs/index.html
+++ b/htdocs/index.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: index.html,v 1.57 2003-02-24 23:33:18 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:18 $"
+<!--#set var="revision" value="\$Id: index.html,v 1.58 2003-05-24 20:32:45 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:45 $"
--><!--#set var="title" value="The W3C Markup Validation Service"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
@@ -11,28 +11,40 @@
and other standards.
</p>
</div>
+
<div>
<h2>Validate Files</h2>
<p>
- You can enter a URI in the <code>Address</code> field below, or choose
- a file to upload. There is also an <a title="Extended Interface to the
- W3C Markup Validation Service" href="detailed.html">Extended
- Interface</a> available if you want to set any advanced options.
+ You can enter a URI in the <code>Address</code> field below,
+ and have the page validated:
</p>
- <form method="post" enctype="multipart/form-data" action="check">
+ <form method="get" action="check">
+ <p>
+ <label title="Address of page to Validate" for="uri">Address:
+ <input id="uri" name="uri" size="40" /></label>
+ <label title="Submit URI for validation">
+ <input type="submit" value="Validate URI..." /></label>
+ </p>
+ </form>
<p>
- <label title="Address of page to Validate" for="uri">Address:
- <input id="uri" name="uri" size="40" /></label>
- </p>
- <p>
- <label title="Choose a Local File to Upload and Validate" for="uploaded_file">Local File:
- <input type="file" id="uploaded_file" name="uploaded_file" size="40" /></label>
+ If you want to upload a file from your computer and have it validated,
+ you can use this form:
</p>
+ <form method="post" enctype="multipart/form-data" action="check">
+ <p>
+ <label title="Choose a Local File to Upload and Validate" for="uploaded_file">Local File: <input type="file" id="uploaded_file" name="uploaded_file" size="30" /></label>
+ <label title="Submit file for validation"><input type="submit" value="Validate File" /></label>
+ </p>
+ </form>
<p>
- <label title="Reset fields to default values"><input class="reset" type="reset" value="Reset Form" /></label>
- <label title="Submit file for validation"><input class="default" type="submit" value="Validate File" /></label>
+ There is also an <a
+ title="Extended Interface to the W3C Markup Validation Service"
+ href="detailed.html">Extended Interface</a> available if you want
+ to set any advanced options, and a <a
+ title="File Upload Interface to the W3C Markup Validation Service"
+ href="file-upload.html">Extended File Upload Interface</a> if you
+ want to validate uploaded files with advanced options.
</p>
- </form>
</div>
<div id="recent">
@@ -41,17 +53,21 @@
These are the most recent major changes to this service. See
"<a href="whatsnew.html">What's&nbsp;New</a>" for more details.
</p>
- <dl>
- <dt><a href="whatsnew.html#2002-12-01">December 01, 2002</a></dt>
- <dd>Maintenance release to fix minor bugs.</dd>
- <dt><a href="whatsnew.html#2002-11-26">November 26, 2002</a></dt>
- <dd>Internal restructuring and new DTDs added. Bug fixes.</dd>
- <dt><a href="whatsnew.html#2001-10-06">October 06, 2001</a></dt>
- <dd>Finished web site redesign and added Tip-of-the-Day.</dd>
- </dl>
+ <dl>
+ <dt><a href="whatsnew.html#2003-05-01">May 01, 2003 (TBC)</a></dt>
+ <dd>
+ Released version 0.6.2 of the Markup Validator; a maintenance
+ release to address various minor issues.
+ </dd>
+ <dt><a href="whatsnew.html#2002-12-01">December 01, 2002</a></dt>
+ <dd>Maintenance release to fix minor bugs.</dd>
+ <dt><a href="whatsnew.html#2002-11-26">November 26, 2002</a></dt>
+ <dd>Internal restructuring and new DTDs added. Bug fixes.</dd>
+ </dl>
</div>
<!--#include virtual="footer.html" -->
+
</body>
</html>
diff --git a/htdocs/results.css b/htdocs/results.css
index 6a31076..791ef2d 100644
--- a/htdocs/results.css
+++ b/htdocs/results.css
@@ -1,5 +1,5 @@
/* style sheet for the validator's results page */
-/* $Id: results.css,v 1.16 2002-12-02 02:52:54 link Exp $ */
+/* $Id: results.css,v 1.17 2003-05-24 20:32:45 link Exp $ */
.markup {
color: red;
@@ -17,6 +17,13 @@ fieldset {
background-color: #eeeeee;
}
+fieldset legend {
+ background-color: #eee;
+ border-right: 1px solid grey;
+ border-bottom: 1px solid grey;
+ font-weight: bold;
+}
+
ul#Warnings {
clear: left;
padding-top: 1ex;
@@ -121,7 +128,7 @@ h2.invalid {
}
.invalid a {
- color: blue;
+ color: #0099ff;
}
.invalid a:visited {
diff --git a/htdocs/sgml-lib/sgml.dcl b/htdocs/sgml-lib/sgml.dcl
index 9b78f18..7bf1992 100644
--- a/htdocs/sgml-lib/sgml.dcl
+++ b/htdocs/sgml-lib/sgml.dcl
@@ -78,4 +78,4 @@ FEATURES
SUBDOC NO
FORMAL YES
APPINFO NONE
-> \ No newline at end of file
+>
diff --git a/htdocs/sgml-lib/sgml.soc b/htdocs/sgml-lib/sgml.soc
index 2bcb5e2..a5aaca8 100644
--- a/htdocs/sgml-lib/sgml.soc
+++ b/htdocs/sgml-lib/sgml.soc
@@ -1,6 +1,6 @@
-- SGML catalog for the W3C Markup Validation Service --
- -- $Id: sgml.soc,v 1.4 2003-02-24 23:33:19 ville Exp $ --
+ -- $Id: sgml.soc,v 1.5 2003-05-24 20:32:46 link Exp $ --
OVERRIDE YES -- prefer public identifiers to system identifiers --
SGMLDECL sgml.dcl
@@ -151,3 +151,5 @@ PUBLIC "-//W3C//ENTITIES Symbolic//EN//HTML" REC-html401-19991224/HTMLsymbol.ent
PUBLIC "-//bebop.net//DTD HTML Apple Help 1.0//EN" AppleHelp1.0.dtd
+ -- Fallback for HTML documents if no FPI is given. --
+DOCTYPE html REC-html401-19991224/loose.dtd
diff --git a/htdocs/sgml-lib/xml.soc b/htdocs/sgml-lib/xml.soc
index c288d6b..c38330c 100644
--- a/htdocs/sgml-lib/xml.soc
+++ b/htdocs/sgml-lib/xml.soc
@@ -84,3 +84,7 @@ PUBLIC "-//W3C//ELEMENTS SMIL 2.0 Timing//EN" PR-smil20-20010605/SMIL-timing.m
PUBLIC "-//W3C//ELEMENTS SMIL 2.0 Transition//EN" PR-smil20-20010605/SMIL-transition.mod
PUBLIC "-//W3C//ELEMENTS SMIL 2.0 Integration//EN" PR-smil20-20010605/SMIL-integrate.mod
+
+ -- Fallback if no FPI is given. --
+DOCTYPE html "REC-xhtml1-20020801/xhtml1-transitional.dtd"
+
diff --git a/htdocs/source/index.html b/htdocs/source/index.html
index 6f8dcb9..12cbacb 100755
--- a/htdocs/source/index.html
+++ b/htdocs/source/index.html
@@ -1,22 +1,26 @@
-<!--#set var="revision" value="\$Id: index.html,v 1.28 2003-02-24 23:33:19 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:19 $"
+<!--#set var="revision" value="\$Id: index.html,v 1.29 2003-05-24 20:32:46 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:46 $"
--><!--#set var="title" value="Source Code Availability for The W3C Markup Validation Service"
--><!--#set var="relroot" value="../"
--><!--#include virtual="../header.html" -->
<p id="skip">
The source code for the <a
- href="../">W3C Markup Validation Service</a> is available under the
+ href="../"><acronym title="World Wide Web Consortium">W3C</acronym>
+ Markup Validation Service</a> is available under the
terms of the <a
- href="http://www.w3.org/Consortium/Legal/copyright-software">W3C
- Software Copyright</a>.
+ href="http://www.w3.org/Consortium/Legal/copyright-software"><acronym
+ title="World Wide Web Consortium">W3C</acronym>
+ Software Copyright</a>. Tarballs of the source, and available binary
+ distributions, of the latest production version is always available at
+ &lt;<a href="http://validator.w3.org/dist/">http://validator.w3.org/dist/</a>&gt;.
+ Development code is only available from CVS.
</p>
<p>
The purpose of making the source code available is partly to allow
others to set up mirrors of the service (either publicly or within
an intranet behind a firewall), but also to allow us to collaborate
- on making the service better -- there are <a
- href="../todo.html">many ways the service could be improved</a>!
+ on making the service better!
</p>
<div id="getting">
@@ -42,9 +46,37 @@
</li>
<li>
<p>
- If you want a copy of all the files that make up the
- service, you can <a href="../validator.tar.gz">grab a tar
- ball</a> (~2.8MB).
+ If you want a copy of all the files that make up the service, you
+ can download a tarball of <a href="../validator.tar.gz">the code</a>
+ (~161kB) and the <a href="../sgml-lib.tar.gz">the <acronym
+ title="Document Type Definitions">DTDs</acronym></a> (~2.6MB).
+ </p>
+ </li>
+ <li id="rpm">
+ <p>
+ Experimental RPMs are available, courtesy of Ville Skytt&auml;, at
+ &lt;<a href="http://cachalot.ods.org/">http://cachalot.ods.org/</a>&gt;.
+ </p>
+ <p>
+ The RPMs have only been tested on <a href="http://www.redhat.com/">Red
+ Hat</a> 8.0, but should be adaptable to other RPM based systems.
+ </p>
+ <p>
+ Note that the Validator RPMs have several dependencies so you will
+ have to get at least the following RPMs:
+ </p>
+ <ul>
+ <li>w3c-validator</li>
+ <li>w3c-validator-libs</li>
+ <li>perl-Set-IntSpan</li>
+ <li>perl-Text-Iconv</li>
+ <li>opensp</li>
+ </ul>
+ <p>
+ In addition, each of these may have further dependencies that must
+ be satisfied. All the necessary RPMs should be either in Red Hat 8.0
+ or available from
+ &lt;<a href="http://cachalot.ods.org/">http://cachalot.ods.org/</a>&gt;.
</p>
</li>
<li id="CVS">
@@ -67,12 +99,20 @@
bash$ <kbd>cvs login</kbd>
(Logging in to anonymous@dev.w3.org)
CVS password: <kbd>anonymous</kbd>
- bash$ <kbd>cvs get validator</kbd>
+ bash$ <kbd>cvs get -r validator-0_6_2-release validator</kbd>
cvs server: Updating validator
cvs server: Updating validator/htdocs
U validator/htdocs/about.html
...
</pre>
+ <p>
+ This will get you the current release version. For intermediate
+ updates, use the <code>validator-0_6_0-branch</code> branch tag
+ instead. Major new development is done in <code>HEAD</code> and
+ the trunk is more or less guaranteed to be in a state of greater
+ or lesser breakage at any given point in time. <em>Approach with
+ caution!</em>
+ </p>
</li>
</ul>
</div>
diff --git a/htdocs/whatsnew.html b/htdocs/whatsnew.html
index 652d310..c8b6fed 100755
--- a/htdocs/whatsnew.html
+++ b/htdocs/whatsnew.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: whatsnew.html,v 1.37 2003-02-24 23:33:18 ville Exp $"
---><!--#set var="date" value="\$Date: 2003-02-24 23:33:18 $"
+<!--#set var="revision" value="\$Id: whatsnew.html,v 1.38 2003-05-24 20:32:45 link Exp $"
+--><!--#set var="date" value="\$Date: 2003-05-24 20:32:45 $"
--><!--#set var="title" value="What's New at The W3C Markup Validation Service"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
@@ -14,6 +14,20 @@
</p>
</div>
<dl>
+ <dt id="2003-05-01">May 01, 2003 (TBC):</dt>
+ <dd>
+ <p>
+ Released version 0.6.2 of the Markup Validator; a maintenance
+ release to address various minor issues. Changes include:
+ </p>
+ <ul>
+ <li>Stylesheets updated to work around browser issues.</li>
+ <li>Added a pointer to contributed <a href="source/#rpm">RPMs</a>
+ courtesy of <a href="http://www.iki.fi/scop/">Ville Skytt&auml;</a>.</li>
+ <li>Fixed broken links in Copyright statement.</li>
+ <li>Added current version number in page headings.</li>
+ </ul>
+ </dd>
<dt><a name="2002-12-01">December 01, 2002</a>:</dt>
<dd>
Maintenance release to fix various minor issues reported against the