[jdom-interest] XSLT id() function doesnt work when using JDOMSource

Laurent Bihanic laurent.bihanic at atosorigin.com
Wed Aug 22 08:10:25 PDT 2001


John Caron wrote:

> Using jdom (b7) and xalan 2.2 D9, the XPath id() function doesnt work 
> when using JDOMSource, but it does work when using StreamSource. [ I 
> think in the previous xalan 2.2 D6 release id() did not work correctly]
> 


When using JDOMSource, the Xalan can't process the id() pattern as it misses 
the DTD that defines the attribute ID of <server> is an ID.

There are three causes to your problem:
  1. SAXOutputter (on which JDOMSource relies) only supports LexicalHandlers 
to report comments but does not fire any DTD related events. That could be fixed.
  2. JDOMSource does not propagate LexicalHandler registrations to 
SAXOutputter. That could be fixed too.
  3. Xalan expects the SAX parser to parse the DTD and report DTD information 
through the DeclHandler interface.

Point #3 is the tough part as JDOM has no implementation of a DTD parsing tool 
nor support for DTDHandlers and DeclHandler.

But support of DTD/DeclHandlers is item #1 on the JDOM to-do list.
Jason, what are the news from that front?

Laurent





More information about the jdom-interest mailing list