Thanks Martijn, Mario and Sean for the comments and Alan for the explanation.

The Xerces implementation has forked mainly in the following areas:

1. integration
The JDK StAX implementation shared the same scanner with that of SAX/DOM parsers. This part of code has been significantly modified.

2. JDK specific requirement
As Alan already commented, the original Xerces implementation was not designed to be on the boot class path. There are therefore changes that are specific to meet the JDK's requirement. We do share the improvement, but the eventual changes in Xerces were made by the Xerces team and may be different.

3. JDK support
Yes, Xerces still supports JDK 1.4. JAXP and JAXP in JDK however no longer supported JDK 1.4 since 2009, that allowed us to have introduced changes that used features from JDK 5.

JAXP 1.6/JDK8 and later are now at source level JDK 6 and above since the ServiceLoader was introduced in JDK 6.


It is desirable to get the sources in sync. As Alan said, this update is a good step towards that goal. JAXP 1.6/JEP 162 and JDK9 provide opportunity for us to look further. We shall keep in this in mind in any future changes.

Thanks,
Joe

On 2/3/2014 2:08 PM, Sean Mullan wrote:
On 02/03/2014 02:19 PM, huizhe wang wrote:
The JDK contains an older Xerces implementation, version 2.7.1. Although there were updates in JDK 7 to bring in some changes, we did not bring it completely up to date to any later release. The goal of this JEP is to complete the update and bring the JDK
to Xerces' latest release, 2.11.0.

Xerces 2.11.0 supports JDK 1.4.2 (!) and up. I am curious if you intend to avoid using newer language features or APIs in the JDK implementation so that you can stay closely in-sync and integrate future updates more easily?

--Sean

Reply via email to