- From: Dave Raggett <dsr@w3.org>
- Date: Fri, 24 Mar 2000 11:47:14 -0600
- To: "J. David Bryan" <jdbryan@acm.org>
- Cc: HTML Tidy List <html-tidy@w3.org>
On Wed, 23 Feb 2000, J. David Bryan wrote:
> This report is for the Tidy version of 13th January 2000.
>
> When Tidy is asked to supply a DOCTYPE (e.g., with the configuration
option
> "doctype: strict"), it will supply one for HTML 4.0, which is obsolete.
> The error is in lexer.c, lines 51-67):
>
> struct _vers
> {
> char *name;
> char *voyager_name;
> char *profile;
> int code;
> } W3C_Version[] =
> {
> {"HTML 2.0", "XHTML 1.0 Strict", voyager_strict, VERS_HTML20},
> {"HTML 3.2", "XHTML 1.0 Transitional", voyager_loose, VERS_HTML32},
> {"HTML 4.0", "XHTML 1.0 Strict", voyager_strict,
VERS_HTML40_STRICT},
> {"HTML 4.0 Transitional", "XHTML 1.0 Transitional", voyager_loose,
VERS_HTML40_LOOSE},
> {"HTML 4.0 Frameset", "XHTML 1.0 Frameset", voyager_frameset,
VERS_FRAMES},
> {"HTML 4.01", "XHTML 1.0 Strict", voyager_strict,
VERS_HTML40_STRICT},
> {"HTML 4.01 Transitional", "XHTML 1.0 Transitional", voyager_loose,
VERS_HTML40_LOOSE},
> {"HTML 4.01 Frameset", "XHTML 1.0 Frameset", voyager_frameset,
VERS_FRAMES}
> };
>
> Because the HTML 4.0 and 4.01 DOCTYPE strings carry the same internal
> version flags (e.g., VERS_HTML40_STRICT), Tidy uses the first string
> encountered with the desired version flag when generating the requested
> DOCTYPE. As the HTML 4.0 strings are first, they are used in preference
to
> the 4.01 strings. Placing the 4.01 strings ahead of the 4.0 strings
solves
> the problem.
Thanks for spotting this. I will reverse the order of the entries in
this table to correct this. I plan to make a new release within the
next 2 weeks.
Regards,
-- Dave Raggett <dsr@w3.org> http://www.w3.org/People/Raggett
tel/fax: +44 122 578 3011 (or 2521) +44 385 320 444 (mobile)
World Wide Web Consortium (on assignment from HP Labs)
Received on Friday, 24 March 2000 13:13:06 UTC