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

Xerces-C++ 3.0.0
Readme
Installation
Build Instructions

Programming
Samples
FAQs

API Reference
DOM C++ Binding
Migration Guide

Migration Archive
 

For migration information to Xerces-C++ 2 series or earlier, please refer to Migration Archive.


Migrating from Xerces-C++ 2 series to Xerces-C++ 3.0.0
 

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

Topics discussed are:

New features in Xerces-C++ 3.0.0
 
  • Autotools-based build system for the UNIX/Linux/Mac OS X platforms
  • Project files for VC++ 9
  • Support for the ICU transcoder in VC++ 7.1, 8, and 9 project files
  • libcurl-based net accessor
  • Support for XInclude in DOM
  • Support for both XPath 1 and XPath 2 models in the DOM XPath interface
  • Support for the XML Schema subset of XPath 1 in DOM
  • Conformance to the final DOM Level 3 interface specification
  • Ability to provide custom DOM memory manager as well as tune the global DOM heap parameters
  • All public and widely used interfaces as well as a large portion of the implementation were converted to be 64-bit safe.
  • Various XML Schema fixes including the fix for the large maxOccurs and minOccurs bug as well as for the changed ##other interpretation
  • Reviewed and cleaned up diagnostics messages
  • Optimizations for SAX/SAX2 and DOM parsing as well as XML Schema validation

Public API Changes
 

Xerces-C++ 3.0.0 is a major release and includes a number of application-breaking interface changes compared to Xerces-C++ 2 series. The following sub-sections provide an overview of the public API changes between Xerces-C++ 2 series and this release.

New Public APIs
 
  • XMLGrammarPoolImpl implementation has been moved to framework/ and is now publicly accessible
  • DOM XPath interfaces now support XPath 2 model
  • A number of DOM interfaces (DOMLSInput, DOMLSOuput, DOMLSParser, DOMLSSerializer, DOMConfiguration, etc.) were added as part of the the final DOM Level 3 specification conformance work

Modified Public APIs
 

A large number of public APIs have been modified. Consult individual interface documentation for details. The following list gives an overview of major changes:

  • Several DOM interfaces have been adjusted to conform to the final DOM Level 3 specification
  • DOM XPath interfaces have been adjusted to support both XPath 1 and XPath 2
  • Many public interfaces that used int/long types to represent memory-related sizes, counts, indexes, etc., have been modified to use the 64-bit safe XMLSize_t type instead

Deprecated/Removed Public APIs
 

All APIs marked as deprecated in Xerces-C++ 2 series have been removed in this release. In particular deprecated DOM (depdom) as well as COM support have been removed.

Furthermore, a number of DOM interfaces (DOMBuilder, DOMWriter, DOMInputSource, etc.) were replaced as part of the the final DOM Level 3 specification conformance work.





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