David Bertoni wrote:
John Snelson wrote:
It seems to me that the SGXMLScanner is at fault here, since XQilla
works fine with the IGXMLScanner.
The problem seems to be caused because the IGXMLScanner uses a method
called processSchemaLocation() to parse the schema location string,
where as the SGXMLScanner uses XMLString::tokenizeString().
This points out the maintenance nightmare of the various scanners. I'd
bet the vast majority of users never use DGXMLScanner or SGXMLScanner,
and I've never seen a single test that proves their performance is any
better than that of IGXMLScanner. Perhaps we should consider
deprecating them so we can avoid the overhead?
SGXMLScanner is not specification conformant either - it won't flag up
well-formed errors in an internal DTD subset, and it won't perform
entity replacement for entities defined in the internal DTD subset, to
name a couple of reasons.
John
--
John Snelson, Oracle Corporation http://snelson.org.uk/john
Berkeley DB XML: http://www.oracle.com/database/berkeley-db/xml
XQilla: http://xqilla.sourceforge.net