This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [Re: Java API for XSLT]


I've uploaded the preview release of OpenLib/J 0.1 with the proposed SAX/T
interfaces to the OpenLib/J project page on SourceForge.net
(https://sourceforge.net/project/?group_id=3837); the direct link is
http://download.sourceforge.net/openlibj/openlibj-0.1.zip. 

I also set up a forum called SAX/T 1.0 Proposal Discussion
(https://sourceforge.net/forum/forum.php?forum_id=14258&et=0). 

Once our DSL line is up (which I hope will be just a day or two more), I'll be
able to populate the CVS repository and put browsable Javadocs on-line, and
get the project rolling as a full open source endeavor. However, in the
interim, the download package includes all Javadocs for both the SAX/T
interfaces and the SAX/T example drivers in amberarcher.xsl.

I've done a lot of looking to see if anyone has done any prior art like this,
and aside from application-specific classes, there's nothing like SAX/T out
there; please correct me if there's a standardization effort out there I don't
know about. I'd be very interested to hear people's opinions on the idea of
having this API at all, as well as comments on the design choices made for the
interface. My prejudice was toward the familiar (keeping it like SAX 1.0 as
much as possible, since people know that API well), and hewing to patterns
adopted by existing API's, so driver authoring would not be hard.

I'd also be interested to know if Michael Kay, the Oracle team, the Xalan team
and Jim Clark (is everyone on this list?) would be interested enough in this
project to provide your own driver implementations. We're planning on
providing Saxon and Oracle drivers in absence of such interest, but obviously
it would be better if the driver implementations were in lock-step with your
own releases rather than OpenLib/J playing catch-up with API changes. :-) 

You can look at amberarcher.xsl.Stylus in the distribution for an example of
using SAX/T. To use it, you will need to put all of the contents of
lib/share/*.jar in your CLASSPATH.

regards,
kd


Kyle Downey <kyle.downey@amberarcher.com> wrote:
> Amber Archer Consulting is very close to releasing OpenLib/J, a GNU class
> library meant for J2EE and XML developers. It includes a package,
> org.xml.sax.transform, called SAX/T, modeled very closing after the SAX API
> from Megginson. We include drivers for Xalan/J and XT. It provides a very
> minimal, common-denominator implementation that provides a 
> 
> * common StylesheetCompiler interface
> * common Stylesheet interface
> * common factory
> * common "output object"-equivalent (parallel to InputSource)
> 
> What's not covered, but could be covered:
> 
> * setting parameters
> * defining extensions
> 
> The latter might be a "fast track" way around the current extension
situation.
> I have waited on announcing this because I wanted to see if (a) Sun was
going
> to release the JAXP 1.1 with XSLT support anytime soon and (b) if I could
> think of a good way to do extensions.
> 
> Instead, I'd rather open this up for discussion. Is this useful? Or does it
> just confuse matters, what with JAXP 1.1 on the horizon and possible
standards
> work from W3C? I'll post the implementation source and docs this weekend
for
> people to take a look; unfortunately I can't do it tonight. 
> 
> Amber Archer Consulting plans to release the SAX/T interfaces (in
> org.xml.sax.transform) into the public domain, just like SAX. We'd prefer
not
> to stay the maintainers of things like the Xalan and XT drivers (better
that
> the implementors track it if SAX/T proves popular), but for discussion
> purposes it helps to have at least two implementations of any proposed
common
> API.
> 
> regards,
> kd
> 


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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]