Menu

#6 bugwork-around: !DOCTYPE not parsed correctly

open
nobody
None
5
2003-11-21
2003-11-21
No

XML::Mini 1.2.8
This is a bug report and work-around

The XML::Mini parser expects the !DOCTYPE declaration
to be in the following format:

<!DOCTYPE (.*) [(.*)?]>

However the CDATA that is put in [] is optional. This
according to W3C XML 1.0 standards documentation.
XML::Mini does not allow the [] to be optional though.

So a work around to this bug is the following:
Say you have this declaration:

<!DOCTYPE SERVER PUBLIC "-//Me Inc.//DTD//EN"
"dtdfile.dtd">

This will not get parsed, yet end up being thrown out
when you parse it with something like
$xmlDoc->fromString().
The work-around is to change your declaration as follows:

<!DOCTYPE SERVER PUBLIC "-//Me Inc.//DTD//EN"
"dtdfile.dtd" []>

This will allow your DOCTYPE to get parsed instead of
thrown out.

-RG

Discussion


Log in to post a comment.