Nightmares... Anyone to come and chase them away?
Please...? ;)
One thing to keep in mind, although I'm unsure of its relevance to this discussion, is we use Xalan only through JAXP--so if I'm not mistaken, the user is welcome to replace that with another JAXP-compatible XSLT processor such as Saxon. So we not can assume the xml->xsl->fo processing was had via Xalan--and even if it were so, it also could have been done via its translets (compiled XSLT) feature.
Glen