| Migration Archive |
| For migration information to Xerces-C++ 2.5.0 or earlier, please refer to Migration Archive.
| Migrating from Xerces-C++ 2.5.0 to Xerces-C++ 2.6.0 |
| The following section is a discussion of the technical differences between Xerces-C++ 2.5.0 code base and the Xerces-C++ 2.6.0. Topics discussed are: New features in Xerces-C++ 2.6.0 Public API Changes New Public API Modified Public API Deprecated/Removed Public API Please note the following source code incompatibility: Rename VALUE_CONSTRAINT enumeration values in XSConstants.hpp due to conflict with system header. New values are VALUE_CONSTRAINT_NONE, VALUE_CONSTRAINT_DEFAULT and VALUE_CONSTRAINT_FIXED. Old values are VC_NONE, VC_DEFAULT and VC_FIXED. Also note that if you have implemented your own XMLGrammarPool implementation, that the original getXSModel has been marked deprecated and a new method, of the same name, that takes a bool parameter has been added. This new getXSModel needs to always return an XSModel.
| New features in Xerces-C++ 2.6.0 |
| Reduce footprint of DLL by building the deprecated DOM as a separate library Improve packaging scripts Enable ID's to work on all kinds of schema components Add messages to DOMExceptions along with the error code Improve annotation error-reporting capabilities Make grammar caching work with DTD internal subsets Bring parser up to the XML 1.0 3rd Edition Update to the XML 1.1 recommendation Add new method to DOMDocument so that DOM level-2 style DOMDocumentTypes (which have a DOMDocument to own them) can be created Feature for disabling identity constraints Update schema errata Provide means to get actual values out of PSVI/schema component model Synthesize annotation components for non-schema attributes Expose partial PSVIElement information at the start element call Externalize validation, actual/canonical value production for arbitrary strings Laxly validate schema annotations Upgrade to ICU 3.0 Handle elements with a large number of attributes more efficiently
| Public API Changes |
| The following lists the public API changes between the Xerces-C++ 2.5.0; and the Xerces-C++ 2.6.0 releases of the parser.
| New Public API |
| XSValue IdentityConstraintHandler XMLBufferFullHandler XMLString: removeChar, isValidNOTATION XMLUri: normalizeUri PSVIHandler: handlePartialElementPSVI RefHash family of classes: getHashModulus XSAnnotation: setline/col and systemid XMLReader: handeEOL XMLChar: isValidNmToken XMLBigDecimal: parseDecimal, getIntVal HexBin: getCanonicalRepresentation, decode Base64: getCanonicalRepresentation, decode XMLBigInteger: compareValues XMLAbstractDoubleFloat: isDataConverted, getValue, isDataOverFlowed PSVIItem: getActualValue XSSimpleTypeDefinition: getDatatypeValidator RefHash2KeysTableOf: transferElement XMLGrammarPool: getXSModel
| Modified Public API |
| XSerializeEngine constructor MACUnicodeConverters
| Deprecated/Removed Public API |
| XSerializeEngine constructor DTDAttDef: getDOMTypeInfoName, getDOMTypeInfoUri DTDElementDecl: getDOMTypeInfoName, getDOMTypeInfoUri SchemaAttDef: setAnyDatatypeValidator UnionDatatypeValidator: getMemberTypeName, getMemberTypeUri, getMemberTypeAnonymous, getMemberTypeValidator XMLAttr: getValidatingTypeURI, getValidatingTypeName, setDatatypeValidator, setSchemaValidated ComplexTypeInfo: setContentModel XMLGrammarPool: getXSModel SAXParser, mark this class deprecated

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