Hi, I need to unsubscribe from this list but do not see the usual unsubscribe info trailer. Any help would be appreciated.
Thanks, John -----Original Message----- From: Joseph Kesselman/CAM/Lotus [mailto:[EMAIL PROTECTED]] Sent: Wednesday, May 01, 2002 9:45 AM To: [EMAIL PROTECTED] Subject: Re: org.apache.xalan.xslt.Process -VALIDATE (was: "Xalan phone home" from xalan-j-users) On Wednesday, 05/01/2002 at 01:52 ZE4, "Ushakov, Sergey N" <[EMAIL PROTECTED]> wrote: > Wow, I would never guess... Then something is wrong with it. Took a quick look. You're right, validation is not currently optional. For example, the Xerces support is hard-coded to always enable DTD validation. We could consider re-introducing that feature, though it's not entirely clear we should do so given XSLT's assumptions. Note, however, that turning off DTD validation does _NOT_ necessarily mean the parser will not retrieve the external subset. DTD information may still be used to identify ID attributes, to provide default values for attributes, and to define entities and notations. In fact, Xerces has no "don't even try to get the DTD" mode; the only way to obtain that behavior is to install an EntityResolver which notices that you're fetching the DTD and returns an empty entity instead. Xalan does let you install a user-written entity resolver (Process does have a command-line switch for that), though I haven't tried using this feature in a VERY long time so I'm not sure it still works. It might be worth providing a pre-written entity resolver that blocks DTD files and documenting that or providing a separate option which installs it. Problem: How do we recognize only DTD requests? I don't think the EntityResolver knows the context of the request, and an external subset is _not_ necessarily named *.dtd. We could block all requests via http://, but that might keep you from accessing remote documents you _do_ want to use; not a problem in your offline case, but not a really general solution. Another solution, of course, is to set up your own front-end to Xalan rather than using Process. This would let you instantiate your own parser, configure it the way you want it, and then wrap a SAXSource around it and let us process from that.