From jdom at tuis.net Tue Jan 8 06:17:52 2013 From: jdom at tuis.net (Rolf Lear) Date: Tue, 08 Jan 2013 09:17:52 -0500 Subject: [jdom-interest] Planning for JDOM 2.1.x Message-ID: <50EC2A90.9090607@tuis.net> Hi all. There are a few new features for JDOM that should be pushed to a 2.1.x version. These items include: - an extension to the XPathFactory API that allows for an implementation to reuse a 'compiled' or 'preprocessed' version of the JDOMDocument for the XPath lookups. - additional XMLStream* implementations (StAX) to output/build JDOM content that would allow JDOM to be a natural storage target for the native Java JAXB processes. - let JDOM Core classes accept Iterable<...> instances (for example, Element.addAll(Collection) could rather be Element.addAll(Iterable) - Saxon is anticipating a new version soon, and it would be great to formalize support for using Saxon for XSLT transformation and XPath evaluation. - I have some extensions I would like to make to the NamespaceStack class to facilitate easier access to Namespace logic. - for Depending on other factors, I think it would be reasonable to target a 2.1.0 release around April Fool's day. That gives some time for some beta versions for some field testing. Also, hopefully the 9.5 Saxon release will be out by then. I have been working with Saxon to integrate their API for XPath evaluation in JDOM, but there are a couple of technical issues in JDOM and the way that existing XPath evaluation is done that make it slightly incompatible with the Saxon (and XPath) API. There is a lot of common ground though, and using native Saxon for JDOM/XSLT makes sense, but will need some tweaks for use with JDOM XPath evaluation. I have also been working with Gordon Burgett on the new StAX Support based on his code submission on GitHub, and I also have code ready for the extensions to the XPath API. The Iterable changes would be relatively easy to implement, and the NamespaceStack class would be a simple extension with no existing logic changes (and the work is mostly done). I am looking for input on any other features or updates that you would like included in a 2.1 version. For example, is anyone using any code from the contrib area, and should that contrib code be 'productionized'? Thanks Rolf