RE: XSL processor wanted ...

Subject: RE: XSL processor wanted ...
From: Kay Michael <Michael.Kay@xxxxxxx>
Date: Tue, 16 Mar 1999 16:06:33 -0000
> I'm on the lookout for a Java XSL processor implemention
> (only tree construction required) with the following
> characteristics,

SAXON meets most of these conditions
> 
> 1. It can take an org.w3c.dom.Document as either or both 
>    of it's stylesheet and xml document input. It should
>    not modify those input DOM trees in any way.

SAXON doesn't modify these documents but it does allow the stylesheet to set
attributes in the source document if it wishes.
> 
> 2. It can take either or both of its stylesheet and xml 
>    doc from a SAX source.

SAXON will take the source document from SAX or DOM input but the stylesheet
must be a DOM tree. It can of course be a DOM implementation that sits on
top of SAX (e.g. Docuverse).
> 
> 3. It can produce an org.w3c.dom.Document as it's output 
>    (actually, given that there's no portable way of 
>    creating an empty doc, I guess one would have to be 
>    passed in to the processor as an out parameter).

SAXON produces the output as a serial file, you would have to parse it back
in to get a tree. SAXON does however implement a portability layer that
gives you a protable way of creating a document (you can write an additional
driver to support any new DOM implementation).
> 
> 4. It can produce output to a java.io.OutputStream using 
>    a configurable encoding.
>
SAXON writes to a PrintWriter only, it uses character entities for any
non-ASCII characters, this is not configurable.
 
> 5. There should *no* dependencies on particular parser 
>    or DOM implementations. That is, any DOM trees should 
>    *only* be manipulated via the interoperable 
>    interfaces defined in the org.w3c.dom package; and 
>    interactions between the processor and any parser 
>    should *only* be via the interoperable SAX 
>    interfaces.
> 
SAXON uses only the standard SAX or DOM interfaces, apart from the driver
module (which is tiny) to initialise each DOM. (Actually this is painful,
because there's no standard way to subclass Node or Element; it costs
heavily in performance and I've been wondering whether the price was worth
paying...)

Now tell us what you're trying to do...

SAXON is on http://home.iclweb.com/icl2/mhkay/saxon.html
Mike Kay


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread