http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Xerces-C++ 3.1.0
Readme
Installation
Build Instructions

Programming
Samples
FAQs

API Reference
DOM C++ Binding
Migration Guide

Migration Archive
 

For migration information on earlier versions of Xerces-C++ 2 please refer to Migration Archive.


Migrating from Xerces-C++ 3.0.0 to Xerces-C++ 3.1.0
 

The following section is a discussion of the technical differences between Xerces-C++ 3.0.0 and Xerces-C++ 3.1.0.

Topics discussed are:

New features in Xerces-C++ 3.1.0
 
  • Working multi-import support. The support for handling multiple import declarations with the same target namespaces has been improved and thoroughly tested. Furthermore, the same logic was extended to loadGrammar and the schemaLocation attributes so that you can load several schemas with the same namespace and/or "add" more declarations with the schemaLocation attributes. To enable this feature, set the XMLUni::fgXercesHandleMultipleImports feature/parameter to true. Starting with this release all the tests and examples have multi-import support enabled by default.
  • New property, XMLUni::fgXercesLowWaterMark, allows to configure the parser buffer low water mark. In particular, setting this value to 0 disables data caching in the parser which can be useful if you want the SAX events to be dispatched as soon as the data is available.
  • DOMLSParser::parseWithContext implementation. In particular, this functionality allows one to parse a document fragment with missing namespace declarations as long as the context document provides them.
  • Improved performance and reduced memory footprint when validating with large maxOccurs values. If available, the SSE2 instructions are used to further speedup this case.
  • Improved scalability of the XML Schema identity checking (key, keyref, and unique).
  • Multiple XML Schema conformance fixes.
  • More robust external library detection (libcurl and ICU). In particular, the build system no longer tries to inject any additional paths such as /usr or /usr/local.
  • Compilation of the ICU message loader resources no longer depends on the ICU implementation details.

Public API Changes
 

Xerces-C++ 3.1.0 is a minor release and does not include any public API changes that would preclude applications using the previous version of Xerces-C++ from building successfully with this version.




Copyright © 1999-2008 The Apache Software Foundation. All Rights Reserved.