Re: Re: XSLT failing when DOCTYPE declaration present
| From: | Chris Wesley | Date: | Thu, 05 Dec 2002 00:32:53 +0000 |
| Subject: | Re: Re: XSLT failing when DOCTYPE declaration present | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-127069@lists.php.net to get a copy of this message | ||
On Wed, 4 Dec 2002, Dave wrote:
Whoah ... was this reply sent several weeks ago when I sent the original
message and I'm just getting it now, or was it sent just recently?
> without seeing the specifics, and assuming that PHP is never wrong (in the 4
> years i've used it, it hasn't been!)... your xml doc doesn't conform to
> the DTD. if you think this isn't the case, well, double check. if you
Re-read my original message, and it's painfully obvious that I did
check, and that the XML did in fact conform to the DTD I used.
(The XSLT was fine when the DTD was referenced locally, rather than
remotely.)
> still feel it is an error, you may want to email a bug issue to the
> sablotron people (i'm assuming that's what you're using).
Yes, I used the Sablotron extension to PHP 4.2.2. Thanks for the
insightful advice ....
~Chris
> "Chris Wesley" <cwwesley@udlug.org> wrote in message
>
> news:Pine.LNX.4.44.0211071639470.19349-100000@leftcoast.thebackrow.net...
> > I'm using the xslt capabilities in PHP 4.2.2 and running into an odd
> > problem. I'm transforming an XML document which has a DOCTYPE
> > declaration referencing an external DTD.
> >
> > <!DOCTYPE RootNode SYSTEM
> > "http://my.host.org/foo.dtd">
> >
> > When I have xslt_process() attempt to transform the XML document, with an
> > XSL document I provide, it fails. These are the errors I get back from
> > xslt_error() & xslt_errno.
> > error: XML parser error 4: not well-formed (invalid token).
> > errno: 2
> >
> > If I remove the DOCTYPE declaration from the XML, xslt_process() has no
> > problem transforming the XML.
> >
> > If I change the DOCTYPE declaration to:
> > <!DOCTYPE RootNode SYSTEM "file:///path/to/docroot/foo.dtd">
> > then xslt_process() has no problem transfoming the XML.
> >
> > However, I need to make this work with the external DTD reference being to
> > some other host (http://other.my.host.org/foo.dtd).
> > Has anyone gotten this to work properly, have any insight into the error
> > information above, or know what I might have to do differently?