ID: 26183 Updated by: [EMAIL PROTECTED] Reported By: andrew at operationaldynamics dot com -Status: Open +Status: Bogus Bug Type: XML related Operating System: Gentoo Linux PHP Version: 4.3.2 New Comment:
Sorry, but your problem does not imply a bug in PHP itself. For a list of more appropriate places to ask for help using PHP, please visit http://www.php.net/support.php as this bug system is not the appropriate forum for asking support questions. Thank you for your interest in PHP. This is a Sablotron issue, not a PHP one. Please report this bug to Sablotron developers. Previous Comments: ------------------------------------------------------------------------ [2003-11-09 02:34:04] andrew at operationaldynamics dot com Description: ------------ When using the Sablotron XSLT processor, it would not let me reference a SYSTEM DTD via http. I was using: <!DOCTYPE plan SYSTEM "plan.dtd"> just fine, but when I needed to make the reference not rely on my location on the filesystem, I switched to this: <!DOCTYPE plan SYSTEM "http://goals/plan.dtd"> which no longer worked. Error below. Reproduce code: --------------- Calling PHP code: xslt_process($xh, $srcfile, $xslfile, $outfile) Expected result: ---------------- http references should work in SYSTEM declarations! Actual result: -------------- Warning: Sablotron error on line 1: XML parser error 4: not well-formed (invalid token) in /home/andrew/Sites/local/goals/goalsDriver.php on line 115 WORKAROUND: By changing the DOCTYPE line to <!DOCTYPE plan PUBLIC "-" "http://goals/plan.dtd"> It worked exactly as expected. I looked around, and saw many W3C examples which used SYSTEM in conjunction with an http method. The PUBLIC specification is only supposed to be used when one has done the right thing in naming a public DTD (ie, "-" isn't really an appropriate name!) Methinks that this is an upstream bug in Sablotron. AfC ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=26183&edit=1
