[jdom-interest] Planning for JDOM 2.1.x

Rolf Lear jdom at tuis.net
Mon Apr 29 05:37:54 PDT 2013

Hi all.

An update to the JDOM 2.1.x process is as follows...
JDOM 2.0.x has been branched off from the master branch in GitHub (it 
has been branched for a while). Essentially JDOM 2.0.x versions are now 
in maintenance mode (fully supported still, but no new features).
The 'master' branch in GitHub contains the work going in to the future 
JDOM 2.1.x release stream.

Currently the list of items scheduled for inclusion to JDOM 2.1.x are:
  - improved StAX support
  - extended XPath API that allows for 'indexed' JDOM Documents that in 
turn will allow for improved XPath performance
  - use Iterable<...> inputs to many of the bulk methods ( like 
addAll(Iterable<? extends Content> content) ) which makes JDOM more 
friendly in some cases
  - NamespaceStack has been updated with some new query methods, and one 
new 'push' method.
  - native support for Saxon 9.5 HE (just released) -> faster XPAths, as 
well as faster XSLT and extended support for XPath 2.0, etc.

These items are all already committed to the master branch, or are in a 
partially implemented state.

I expect to be releasing a Beta version of 2.1.x in a few weeks, but I 
am looking for people to test the code too.

If anyone has an interest in being more involved in the planning and 
implementation of these items, please speak up.



On 08/01/2013 9:17 AM, Rolf Lear wrote:
> 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<? extends Content>) could rather be 
> Element.addAll(Iterable<? extends Content>)
>  - 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
> _______________________________________________
> To control your jdom-interest membership:
> http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com

More information about the jdom-interest mailing list