<?xml version="1.0" standalone="no"?> <!-- * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. --> <!DOCTYPE s1 SYSTEM "sbk:/style/dtd/document.dtd"> <s1 title="Migration"> <s2 title="Migration Archive"> <p>For migration information on earlier versions of &XercesCName; 2 please refer to <link idref="migrate-archive-&XercesC3Series;">Migration Archive</link>.</p> </s2> <s2 title="Migrating from &XercesCName; 3.0.0 to &XercesCName; &XercesC3Version;"> <p>The following section is a discussion of the technical differences between &XercesCName; 3.0.0 and &XercesCName; &XercesC3Version;.</p> <p>Topics discussed are:</p> <ul> <li><link anchor="NewFeatures300">New features in &XercesCName; &XercesC3Version;</link></li> <li><link anchor="API300">Public API Changes</link></li> </ul> <anchor name="NewFeatures300"/> <s3 title="New features in &XercesCName; &XercesC3Version;"> <ul> <li>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.</li> <li>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.</li> <li>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.</li> <li>Improved performance and reduced memory footprint when validating with large maxOccurs values. If available, the SSE2 instructions are used to further speedup this case.</li> <li>Improved scalability of the XML Schema identity checking (key, keyref, and unique).</li> <li>Multiple XML Schema conformance fixes.</li> <li>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.</li> <li>Compilation of the ICU message loader resources no longer depends on the ICU implementation details.</li> </ul> </s3> <anchor name="API300"/> <s3 title="Public API Changes"> <p>&XercesCName; &XercesC3Version; is a minor release and does not include any public API changes that would preclude applications using the previous version of &XercesCName; from building successfully with this version.</p> </s3> </s2> </s1>