blob: 1e648c1ef5499b4dfc6f5de63da5381454df5bd7 [file] [log] [blame]
<?xml version="1.0" encoding="iso-8859-1" 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="Releases Archive">
<s2 title="Release Information for earlier releases">
<ul>
<li><link anchor="Release322">Release Information for &XercesCName; 3.2.2</link></li>
<li><link anchor="Release321">Release Information for &XercesCName; 3.2.1</link></li>
<li><link anchor="Release320">Release Information for &XercesCName; 3.2.0</link></li>
<li><link anchor="Release314">Release Information for &XercesCName; 3.1.4</link></li>
<li><link anchor="Release313">Release Information for &XercesCName; 3.1.3</link></li>
<li><link anchor="Release312">Release Information for &XercesCName; 3.1.2</link></li>
<li><link anchor="Release311">Release Information for &XercesCName; 3.1.1</link></li>
<li><link anchor="Release310">Release Information for &XercesCName; 3.1.0</link></li>
<li><link anchor="Release301">Release Information for &XercesCName; 3.0.1</link></li>
<li><link anchor="Release300">Release Information for &XercesCName; 3.0.0</link></li>
<li><link anchor="Release280">Release Information for &XercesCName; 2.8.0</link></li>
<li><link anchor="Release270">Release Information for &XercesCName; 2.7.0</link></li>
<li><link anchor="Release260">Release Information for &XercesCName; 2.6.0</link></li>
<li><link anchor="Release250">Release Information for &XercesCName; 2.5.0</link></li>
<li><link anchor="Release240">Release Information for &XercesCName; 2.4.0</link></li>
<li><link anchor="Release230">Release Information for &XercesCName; 2.3.0</link></li>
<li><link anchor="Release220">Release Information for &XercesCName; 2.2.0</link></li>
<li><link anchor="Release210">Release Information for &XercesCName; 2.1.0</link></li>
<li><link anchor="Release200">Release Information for &XercesCName; 2.0.0</link></li>
<li><link anchor="Release170">Release Information for &XercesCName; 1.7.0</link></li>
<li><link anchor="Release160">Release Information for &XercesCName; 1.6.0</link></li>
<li><link anchor="Release152">Release Information for &XercesCName; 1.5.2</link></li>
<li><link anchor="Release151">Release Information for &XercesCName; 1.5.1</link></li>
<li><link anchor="Release150">Release Information for &XercesCName; 1.5.0</link></li>
<li><link anchor="Release140">Release Information for &XercesCName; 1.4.0</link></li>
<li><link anchor="Release130">Release Information for &XercesCName; 1.3.0</link></li>
<li><link anchor="Release120">Release Information for &XercesCName; 1.2.0</link></li>
<li><link anchor="Release110">Release Information for &XercesCName; 1.1.0</link></li>
<li><link anchor="Release101">Release Information for &XercesCName; 1.0.1</link></li>
<li><link anchor="Release100">Release Information for &XercesCName; 1.0.0</link></li>
<li><link anchor="ReleaseBETA">Release Information for &XercesCName; BETA</link></li>
</ul>
</s2>
<anchor name="Release322"/>
<s2 title="Release Information for &XercesCName; 3.2.2">
<p>For a list of bug fixes in &XercesCName; 3.2.2, see the
<jump href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12342890&amp;projectId=10510">Release Notes</jump>
</p>
</s2>
<anchor name="Release321"/>
<s2 title="Release Information for &XercesCName; 3.2.1">
<p>For a list of bug fixes in &XercesCName; 3.2.1, see the
<jump href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12341423&amp;projectId=10510">Release Notes</jump>
</p>
</s2>
<anchor name="Release320"/>
<s2 title="Release Information for &XercesCName; 3.2.0">
<p>For a list of bug fixes in &XercesCName; 3.2.0, see the
<jump href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12314395&amp;projectId=10510">Release Notes</jump>
</p>
</s2>
<anchor name="Release314"/>
<s2 title="Release Information for &XercesCName; 3.1.4">
<p>For a list of bug fixes in &XercesCName; 3.1.4, see the
<jump href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=10510&amp;version=12336069">Release Notes</jump>
</p>
</s2>
<anchor name="Release313"/>
<s2 title="Release Information for &XercesCName; 3.1.3">
<p>For a list of bug fixes in &XercesCName; 3.1.3, see the
<jump href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=10510&amp;version=12332290">Release Notes</jump>
</p>
</s2>
<anchor name="Release312"/>
<s2 title="Release Information for &XercesCName; 3.1.2">
<p>For a list of bug fixes in &XercesCName; 3.1.2, see the
<jump href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=10510&amp;version=12315014">Release Notes</jump>
</p>
</s2>
<anchor name="Release311"/>
<s2 title="Release Information for &XercesCName; 3.1.1">
<p>The following new features and bug fixes have been implemented in
&XercesCName; 3.1.1:</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr><td>2010-04-21</td><td>Boris Kolpackov</td><td>Check that we have non-NULL host before trying to connect (XERCESC-1920).</td></tr>
<tr><td>2010-04-18</td><td>Boris Kolpackov</td><td>Recover from the mismatching start/end even count which may happen when we continue parsing an invalid document (XERCESC-1919).</td></tr>
<tr><td>2010-04-16</td><td>Boris Kolpackov</td><td>Add Visual Studio 2010 projects and solution.</td></tr>
<tr><td>2010-04-16</td><td>Boris Kolpackov</td><td>Use proper VC++ version in PDB file name.</td></tr>
<tr><td>2010-04-13</td><td>Alberto Massari</td><td>If the transcoder doesn't process any input, throw an exception (XERCESC-1916).</td></tr>
<tr><td>2010-04-12</td><td>Alberto Massari</td><td>Delay the recursive expansion of includes until the document fragment has been placed in the final location (XERCESC-1918).</td></tr>
<tr><td>2010-04-12</td><td>Alberto Massari</td><td>The code formatting a content model was skipping the cardinality indicators (*, +, ?) (XERCESC-1914).</td></tr>
<tr><td>2010-04-11</td><td>Boris Kolpackov</td><td>Fix a few bugs and memory leaks in XInclude code.</td></tr>
<tr><td>2010-04-11</td><td>Boris Kolpackov</td><td>Give proper name to 64-bit PDB file in static build (XERCESC-1907).</td></tr>
<tr><td>2010-04-11</td><td>Boris Kolpackov</td><td>Spelling fixes (XERCESC-1911).</td></tr>
<tr><td>2010-04-11</td><td>Boris Kolpackov</td><td>Don't include cpuid.h if we are using intrin.h (XERCESC-1912).</td></tr>
<tr><td>2010-04-07</td><td>Boris Kolpackov</td><td>Fix socket leak.</td></tr>
<tr><td>2010-03-19</td><td>Boris Kolpackov</td><td>Set scanner object on validation context. Needed during QName validation. Don't re-validate default/fixed values in preContentValidation when called from loadGrammar. This values are already validated in TraverseSchema.</td></tr>
<tr><td>2010-02-17</td><td>Boris Kolpackov</td><td>Remove explicit setting of prefix for cloned elements and attributes since it is done properly by the create*() functions (XERCESC-1913).</td></tr>
</table>
</s2>
<anchor name="Release310"/>
<s2 title="Release Information for &XercesCName; 3.1.0">
<p>The following new features and bug fixes have been implemented in
&XercesCName; 3.1.0:</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr><td>2010-01-26</td><td>Boris Kolpackov</td><td>Remove the "experimental" marker from the loadGrammar API.</td></tr>
<tr><td>2010-01-20</td><td>John Snelson</td><td>Fix an infinite loop bug in XML 1.1 NCName parsing.</td></tr>
<tr><td>2010-01-20</td><td>Boris Kolpackov</td><td>Get rid of warnings uncovered with g++ -W -Wall.</td></tr>
<tr><td>2009-11-24</td><td>Boris Kolpackov</td><td>Don't call u_init in ICU 3.6 and later.</td></tr>
<tr><td>2009-11-23</td><td>Boris Kolpackov</td><td>Store the anonymous type count in the SchemaGrammar object.</td></tr>
<tr><td>2009-11-23</td><td>Boris Kolpackov</td><td>Save the scope count to the grammar object in case we will be adding to this schema (multi-import case).</td></tr>
<tr><td>2009-11-23</td><td>Boris Kolpackov</td><td>Mark schema DOM representation as unavailable after the call to TraverseSchema.</td></tr>
<tr><td>2009-11-23</td><td>Alberto Massari</td><td>Don't use intrinsics in VS.NET 2003 since they are not available.</td></tr>
<tr><td>2009-11-23</td><td>Boris Kolpackov</td><td>Redo libcurl check to avoid liking to the library when we don't use it. Also update the make pretty-printing code.</td></tr>
<tr><td>2009-11-20</td><td>Boris Kolpackov</td><td>Fix a bug in the new LocalFileFormatTarget buffering implementation.</td></tr>
<tr><td>2009-11-20</td><td>Boris Kolpackov</td><td>Clear the cached GrammarInfo list when calling resedCachedGrammarPool.</td></tr>
<tr><td>2009-11-20</td><td>Boris Kolpackov</td><td>Limit the buffer growth in LocalFileFormatTarget to 64Kb. Optimize MemBufFormatTarget.</td></tr>
<tr><td>2009-11-20</td><td>Boris Kolpackov</td><td>Make sure that imported schemas, as well as those loaded with loadGrammar or via the schemaLocation attributes get taken into account when we decide whether the schema in question has already been loaded.</td></tr>
<tr><td>2009-11-19</td><td>Boris Kolpackov</td><td>Implement loading of multiple schemas with the same namespace in loadGrammar() when multi-import is enabled.</td></tr>
<tr><td>2009-11-19</td><td>Boris Kolpackov</td><td>Extend multi-import support to schemas provided with the schemaLocation attributes (XERCESC-1659).</td></tr>
<tr><td>2009-11-18</td><td>Boris Kolpackov</td><td>Try to switch to the XML Schema mode if we see xsi:type or xsi:nill (XERCESC-1263).</td></tr>
<tr><td>2009-11-18</td><td>Boris Kolpackov</td><td>Provide a more descriptive error message for empty date-time type values (XERCESC-1703).</td></tr>
<tr><td>2009-11-18</td><td>Boris Kolpackov</td><td>Skip the character that we just unescaped when searching for the next percent sign (XERCESC-1826).</td></tr>
<tr><td>2009-11-18</td><td>Boris Kolpackov</td><td>Recognize a register-based authority in URI (XERCESC-1748, XERCESC-1747).</td></tr>
<tr><td>2009-11-18</td><td>Boris Kolpackov</td><td>Commit a partial fix for XERCESC-1866 by David Bertoni.</td></tr>
<tr><td>2009-11-18</td><td>Boris Kolpackov</td><td>Load schemas specified with the external schema location properties even if the load-schema property is set to false (XERCESC-1713).</td></tr>
<tr><td>2009-11-17</td><td>Boris Kolpackov</td><td>Catch and ignore exceptions in destructors (XERCESC-1898).</td></tr>
<tr><td>2009-11-13</td><td>John Snelson</td><td>Fixed DOMDocumentImpl::importNode() to copy the prefix of element and attribute nodes.</td></tr>
<tr><td>2009-11-13</td><td>Alberto Massari</td><td>Add a variant to test for XERCESC-1893.</td></tr>
<tr><td>2009-11-13</td><td>Boris Kolpackov</td><td>Call getDatatypeValidator before checking whether the schema has been imported.</td></tr>
<tr><td>2009-11-12</td><td>Boris Kolpackov</td><td>Rework the way we search for and detect the ICU and libcurl libraries (XERCESC-1892).</td></tr>
<tr><td>2009-11-11</td><td>Boris Kolpackov</td><td>Rework the binToText implementation and usage so that we don't need the XERCES_SIZEOF_* macros. This should allow using the same set of headers for 32 and 64-bit builds (XERCESC-1874).</td></tr>
<tr><td>2009-11-11</td><td>Boris Kolpackov</td><td>Fix ICU message loader makefile to handle dist properly.</td></tr>
<tr><td>2009-11-10</td><td>Alberto Massari</td><td>As we now generate source files for the ICU message loader, use standard automake code.</td></tr>
<tr><td>2009-11-10</td><td>Boris Kolpackov</td><td>Rework compilation of ICU message loader resources (XERCESC-1882).</td></tr>
<tr><td>2009-11-10</td><td>Boris Kolpackov</td><td>Do not complain that the XSD namespace is not imported (XERCESC-1896).</td></tr>
<tr><td>2009-11-05</td><td>Boris Kolpackov</td><td>Enable multiple import handling in examples and test.</td></tr>
<tr><td>2009-11-05</td><td>Boris Kolpackov</td><td>Allow the user to change the low water mark used by the parsers (XERCESC-1607).</td></tr>
<tr><td>2009-11-04</td><td>Boris Kolpackov</td><td>Free resources if we throw from c-tors (XERCESC-1480).</td></tr>
<tr><td>2009-11-04</td><td>Boris Kolpackov</td><td>Remove mentioning of XMLString::release (XERCESC-1847).</td></tr>
<tr><td>2009-11-04</td><td>Boris Kolpackov</td><td>Use US-ASCII instead of USASCII.</td></tr>
<tr><td>2009-11-04</td><td>Boris Kolpackov</td><td>Expand setNewLine() documentation (XERCESC-1507).</td></tr>
<tr><td>2009-11-04</td><td>Boris Kolpackov</td><td>Disable throwing of an exception from the DOMLSParser::parse*() functions (XERCESC-1894).</td></tr>
<tr><td>2009-10-30</td><td>Alberto Massari</td><td>Export PDB also for static builds (XERCESC-1759).</td></tr>
<tr><td>2009-10-28</td><td>Alberto Massari</td><td>Implemented DOMLSParser::parseWithContext.</td></tr>
<tr><td>2009-10-28</td><td>Alberto Massari</td><td>When the base type for a complex type cannot be found in an imported schema that has already been processed, check if a simple type with the same name exists (XERCESC-1893).</td></tr>
<tr><td>2009-10-27</td><td>Boris Kolpackov</td><td>Check if glibtoolize exist. Otherwise call libtoolize.</td></tr>
<tr><td>2009-10-20</td><td>James Berry</td><td>For builds with curl, use curl-config to get appropriate compiler and linker flags (XERCESC-1892).</td></tr>
<tr><td>2009-10-06</td><td>Alberto Massari</td><td>Place the creation of token in the main function to avoid misalignments.</td></tr>
<tr><td>2009-09-04</td><td>Alberto Massari</td><td>When releasing an element, remove and release also its attributes (XERCESC-646).</td></tr>
<tr><td>2009-09-04</td><td>Alberto Massari</td><td>Improve support for DOMLSParserFilter: (1) if startElement() returned REJECT it was treated like SKIP, and it was changing the current parent node one time too much; (2) the acceptNode() callback was invoked on text nodes every time some data was added to them, potentially removing it many times; (3) the nodes rejected by the callback were not recycled, leading to the same memory footprint as they were accepted.</td></tr>
<tr><td>2009-09-02</td><td>Alberto Massari</td><td>Performance improvements.</td></tr>
<tr><td>2009-08-28</td><td>Alberto Massari</td><td>The test to detect if the CPU was SSE2-enabled using __get_cpuid was reversed; configure.ac was testing for the presence of emmintrin.h before detecting which compiler option turned on SSE2, and the header cannot be used until that switch has been set.</td></tr>
<tr><td>2009-08-28</td><td>Alberto Massari</td><td>If a minOccurs/maxOccurs cannot be parsed in a valid integer because it's too big, assume it is 500.</td></tr>
<tr><td>2009-08-26</td><td>Alberto Massari</td><td>Use SSE2 instructions to speed up bit operations used in schema validation with large maxOccurs.</td></tr>
<tr><td>2009-08-26</td><td>Alberto Massari</td><td>The invalid xs:float is now e-46, not e-39.</td></tr>
<tr><td>2009-08-25</td><td>Alberto Massari</td><td>Updated documentation to reflect the change in limits for xs:float datatype.</td></tr>
<tr><td>2009-08-25</td><td>Alberto Massari</td><td>Fixed memory leak; added optimization to the bitfield enumerator.</td></tr>
<tr><td>2009-08-24</td><td>Alberto Massari</td><td>Improved performance and reduced memory footprint of schema validation involving large maxOccurs: (1) the CMStateSet uses a sparsely allocated matrix to store the bits, resulting in less memory usage and faster bitwise operations (when analyzing an unallocated chunk, no operations are done); also, having moved the dynamic buffer data members into a separate structure, the space used by two pointers has been added to the cached bit fields, that is now 128 bits; (2) the DFA builder chooses the faster algorithm depending on the data being analyzed. The regression test for XERCESC-1051 now completes in 30 seconds instead of 80.</td></tr>
<tr><td>2009-08-21</td><td>Alberto Massari</td><td>When testing for simple type blocked substitutions, allow list and unions when base type is anySimpleType.</td></tr>
<tr><td>2009-08-21</td><td>Alberto Massari</td><td>When testing for blocked substitutions, check the entire inheritance chain.</td></tr>
<tr><td>2009-08-21</td><td>Alberto Massari</td><td>Added optimizations forgotten in previous commit, plus tests.</td></tr>
<tr><td>2009-08-20</td><td>Alberto Massari</td><td>When retrieving an attribute of a schema declaration, specify its type so that the proper whitespace collapse operation can be performed.</td></tr>
<tr><td>2009-08-20</td><td>Alberto Massari</td><td>Improved validation of xsi:nil.</td></tr>
<tr><td>2009-08-14</td><td>Alberto Massari</td><td>Move the list with the imported targetNamespace in TraverseSchema, so that a schema can "see" what an imported schema imports (XERCESC-1249).</td></tr>
<tr><td>2009-08-14</td><td>Alberto Massari</td><td>When matching an XPath expression, don't accept a node only if it's the first branch of an union that matches. The XPath parser takes care of removing identical branches (XERCESC-809).</td></tr>
<tr><td>2009-08-14</td><td>Alberto Massari</td><td>Ignore the lax directive if an element has an xsi:type directive (XERCESC-1707).</td></tr>
<tr><td>2009-08-14</td><td>Alberto Massari</td><td>When storing a default/fixed value, use the canonical representation.</td></tr>
<tr><td>2009-08-14</td><td>Alberto Massari</td><td>Use an entity resolver to feed the grammar for the XML namespace.</td></tr>
<tr><td>2009-08-14</td><td>Alberto Massari</td><td>When building the key for identity constraints, use the topmost validator.</td></tr>
<tr><td>2009-08-13</td><td>Alberto Massari</td><td>Name and reference to names should be whitespace collapsed.</td></tr>
<tr><td>2009-08-13</td><td>Alberto Massari</td><td>Don't manipulate the XPath expression to ensure it starts with "./" before parsing; add the proper token after the scanner phase.</td></tr>
<tr><td>2009-08-13</td><td>Alberto Massari</td><td>Complain if an identity constraint has an empty name.</td></tr>
<tr><td>2009-08-13</td><td>Alberto Massari</td><td>When placing a value in the identity constraint map, store the actual validator used, instead of the official one.</td></tr>
<tr><td>2009-08-13</td><td>Alberto Massari</td><td>Instead of using the FLT_MIN and FLT_MAX macros, use the XMLSchema definition of minimum and maximum value for a xs:float (XERCESC-1833).</td></tr>
<tr><td>2009-08-13</td><td>Alberto Massari</td><td>When the xsi:type attribute is present, don't emit validation errors complaining of a missing declaration (XERCESC-1481).</td></tr>
<tr><td>2009-08-13</td><td>Alberto Massari</td><td>Attributes in the xsi namespace were not whitespace-normalized.</td></tr>
<tr><td>2009-08-12</td><td>Alberto Massari</td><td>Blocked substitution was not checked when defined on a complex type (XERCESC-1568): (1) Blocked substitution should not be checked when xsi:type names the same original type; (2) Blocked substitution didn't check the bit of the restriction/extension, but it performed an equality check.</td></tr>
<tr><td>2009-08-12</td><td>Alberto Massari</td><td>When parsing a "block" attribute, an empty value means an empty set, not "use blockDefault".</td></tr>
<tr><td>2009-08-12</td><td>Alberto Massari</td><td>When parsing a "final" attribute, an empty value means an empty set, not "use finalDefault" (XERCESC-1716).</td></tr>
<tr><td>2009-08-12</td><td>Alberto Massari</td><td>When an identity constraint involves a QName, store the value using its Clark name so that values using different prefixes can be matched.</td></tr>
<tr><td>2009-08-11</td><td>Alberto Massari</td><td>When validating an annotation, report the location of the error in the source schema, not inside the annotation itself.</td></tr>
<tr><td>2009-08-10</td><td>Alberto Massari</td><td>Test that runs a few parse operations with an input stream that splits the source in bad locations.</td></tr>
<tr><td>2009-08-10</td><td>Alberto Massari</td><td>Before assuming that a complex type has a simple type as base type simply because it has a data type validator, inspect the base type definition (XERCESC-697).</td></tr>
<tr><td>2009-08-10</td><td>Alberto Massari</td><td>Before processing a schema location, remove the 0xFFFF characters present in the non-normalized attribute value (XERCESC-1831).</td></tr>
<tr><td>2009-08-10</td><td>Alberto Massari</td><td>If a derived attribute is prohibited, don't check type substitution and fixed facet (XERCESC-961).</td></tr>
<tr><td>2009-08-10</td><td>Alberto Massari</td><td>Deprecate two symbols because of a typo in the name; added a version with the correct spelling.</td></tr>
<tr><td>2009-08-10</td><td>Alberto Massari</td><td>Add check for NULL (XERCESC-1863).</td></tr>
<tr><td>2009-08-10</td><td>Alberto Massari</td><td>Don't report repetitions in the block/final schema attributes as errors. If a derived attribute is prohibited, don't check type substitution and fixed facet (XERCESC-961).</td></tr>
<tr><td>2009-08-05</td><td>Alberto Massari</td><td>On Linux, iconv requires char*; on Solaris, const char*. Use autoconf to pick the correct code.</td></tr>
<tr><td>2009-08-05</td><td>Alberto Massari</td><td>Allow GNUiconv to be compiled on Solaris (XERCESC-1856).</td></tr>
<tr><td>2009-08-04</td><td>Alberto Massari</td><td>Allow platform with machine/endian.h to select the GNUiconv transcoder.</td></tr>
<tr><td>2009-08-04</td><td>Alberto Massari</td><td>Add an autoconf test to verify if the compiler supports the matching operator delete (XERCESC-1380).</td></tr>
<tr><td>2009-07-30</td><td>Alberto Massari</td><td>Before complaining that there are not enough child nodes, test the existing ones to be correct (XERCESC-1246).</td></tr>
<tr><td>2009-07-29</td><td>Alberto Massari</td><td>Fix end position for fixed string pattern matching (XERCESC-1021).</td></tr>
<tr><td>2009-07-29</td><td>Alberto Massari</td><td>Report an error if more than one anyAttribute declaration is found, or if it is not the last declaration (XERCESC-1717).</td></tr>
<tr><td>2009-07-29</td><td>Alberto Massari</td><td>If an imported schema had a keyref definition, all the others keyref definition ended up in that schema, and would not be enforced (XERCESC-1583).</td></tr>
<tr><td>2009-07-29</td><td>Alberto Massari</td><td>If there is no complex type in the stack, fallback to the schema element definition, like it is done a few lines earlier (XERCESC-1808).</td></tr>
<tr><td>2009-07-29</td><td>Alberto Massari</td><td>When copying a context object, allocate new memory for fMatch and fOffsets only if the size of the data being copied is different, so that a user-provided fMatch object can be properly filled (XERCESC-1870).</td></tr>
<tr><td>2009-07-28</td><td>Alberto Massari</td><td>Improve scalability of identity checking by using a hash table whose hash value is computed on the canonical values of the values (XERCESC-1878).</td></tr>
<tr><td>2009-07-08</td><td>Alberto Massari</td><td>Added methods defined in the Element Traversal specification (http://www.w3.org/TR/2008/REC-ElementTraversal-20081222/).</td></tr>
<tr><td>2009-06-30</td><td>Alberto Massari</td><td>Include system-dependent files only if the appropriate macro is defined (XERCESC-1852).</td></tr>
<tr><td>2009-06-30</td><td>Alberto Massari</td><td>Fix warning (XERCESC-1872).</td></tr>
<tr><td>2009-06-03</td><td>Alberto Massari</td><td>Avoid recursion when parsing simply nested DTD structures. This issue is referenced in the following document: CVE-2009-1885 (http://nvd.nist.gov/nvd.cfm?cvename=CVE-2009-1885). Thanks to Jukka Taimisto, Tero Rontti and Rauli Kaksonen from the CROSS project at Codenomicon Ltd. and CERT-FI for bringing this issue to our attention.</td></tr>
<tr><td>2009-06-03</td><td>Alberto Massari</td><td>Improve XSTSHarness to also run the XML Test Suite.</td></tr>
<tr><td>2009-05-28</td><td>Alberto Massari</td><td>Add quotes around path in custom build command (XERCESC-1868).</td></tr>
<tr><td>2009-05-28</td><td>Alberto Massari</td><td>The PDB file for VC 9.0 used "vc80" (XERCESC-1869).</td></tr>
<tr><td>2009-05-26</td><td>Boris Kolpackov</td><td>Check return value of getaddrinfo for non-zero instead of less-than-zero (XERCESC-1871).</td></tr>
<tr><td>2009-04-27</td><td>Alberto Massari</td><td>The implementation of some methods didn't match exactly the signature (XERCESC-1867).</td></tr>
<tr><td>2009-04-23</td><td>Boris Kolpackov</td><td>Save the scope count value in the SchemaGrammar object. This is necessary for the multiple import option to function correctly.</td></tr>
<tr><td>2009-03-30</td><td>John Snelson</td><td>Initializing unitialized variables in TranscodeToStr and TranscodeFromStr (#XERCESC-1858).</td></tr>
<tr><td>2009-03-27</td><td>John Snelson</td><td>Fixed a bug when transcoding small strings using TranscodeToStr (XERCESC-1858).</td></tr>
<tr><td>2009-03-12</td><td>Alberto Massari</td><td>When the DOMLSInput contains a stringData buffer, the encoding of the source is XMLCh.</td></tr>
</table>
</s2>
<anchor name="Release301"/>
<s2 title="Release Information for &XercesCName; 3.0.1">
<p>The following bugs have been fixed in &XercesCName; 3.0.1:</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr><td>2009-02-12</td><td>Boris Kolpackov</td><td>More robust handling of leading/trailing whitespaces (XERCESC-1838).</td></tr>
<tr><td>2009-02-12</td><td>Boris Kolpackov</td><td>Minor documentation updates, including a fix for XERCESC-1848.</td></tr>
<tr><td>2009-02-10</td><td>Boris Kolpackov</td><td>Add --disable-rpath configure option.</td></tr>
<tr><td>2009-01-29</td><td>Alberto Massari</td><td>Remove class name from method declaration (XERCESC-1850).</td></tr>
<tr><td>2009-01-16</td><td>John Snelson</td><td>Fix a bug in the socket and winsock net accessors when a redirection response does not contain a "Location" header.</td></tr>
<tr><td>2009-01-16</td><td>John Snelson</td><td>Make XMLMutex use the correct MemoryManager when it closes it's mutex.</td></tr>
<tr><td>2008-11-12</td><td>Boris Kolpackov</td><td>Documentation fixes (XERCESC-1841).</td></tr>
<tr><td>2008-10-30</td><td>Alberto Massari</td><td>Backport fixes for memory leaks.</td></tr>
<tr><td>2008-10-29</td><td>Alberto Massari</td><td>Force Borland projects to use CRLF EOL.</td></tr>
<tr><td>2008-10-39</td><td>Alberto Massari</td><td>The wrong constructor was called, causing a memory leak (XERCESC-1840).</td></tr>
<tr><td>2008-10-23</td><td>Alberto Massari</td><td>Fix memory leak (XERCESC-1834).</td></tr>
<tr><td>2008-10-21</td><td>Boris Kolpackov</td><td>Update URLs in source code to point to the new pages.</td></tr>
</table>
</s2>
<anchor name="Release300"/>
<s2 title="Release Information for &XercesCName; 3.0.0">
<p>The following new features and bug fixes have been implemented in
&XercesCName; 3.0.0:</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr><td>2008-09-22</td><td>Vitaly Prapirny</td><td>Create Borland project for NetAccessor test.</td></tr>
<tr><td>2008-09-22</td><td>Boris Kolpackov</td><td>Allow use of the Windows transcoder and net accessor on Cygwin but only if the user explicitly asks for it.</td></tr>
<tr><td>2008-09-19</td><td>Alberto Massari</td><td>Avoid DOMDocument definition from Windows SDK (XERCESC-1830).</td></tr>
<tr><td>2008-09-17</td><td>Boris Kolpackov</td><td>Pass raw names to start/endElement if namespaces are disabled. Patch by David Bertoni.</td></tr>
<tr><td>2008-09-17</td><td>Boris Kolpackov</td><td>Reimplement skippedString logic to handle "short" and "long" strings separately.</td></tr>
<tr><td>2008-09-17</td><td>David Bertoni</td><td>Temporary fix for XERCESC-1827 along with sanity test case.</td></tr>
<tr><td>2008-09-16</td><td>Boris Kolpackov</td><td>Avoid pretty-printing comments only in text-only nodes.</td></tr>
<tr><td>2008-09-16</td><td>Boris Kolpackov</td><td>Do not add any whitespaces around CDATA sections and comments since they might be non-ignorable (XERCESC-1823).</td></tr>
<tr><td>2008-09-16</td><td>Boris Kolpackov</td><td>Add support for generating pkgconfig file. Patch by Jay Berkenbilt (XERCESC-1824).</td></tr>
<tr><td>2008-09-16</td><td>Boris Kolpackov</td><td>Pass proper memory manager to mutex.</td></tr>
<tr><td>2008-09-15</td><td>Boris Kolpackov</td><td>Allow changing global DOMDocument heap parameters via overloaded Initialize().</td></tr>
<tr><td>2008-07-24</td><td>Alberto Massari</td><td>Include winnt.h from the Platform SDK instead of winres.h from MFC.</td></tr>
<tr><td>2008-07-23</td><td>Alberto Massari</td><td>Performance improvement.</td></tr>
<tr><td>2008-07-22</td><td>Alberto Massari</td><td>Remove the PCRE-like regular expression engine, and replace it with a XPath 2.0-compatible one (XERCESC-1816). Original patch by John Snelson, modified to fix an exception thrown when expressions negating a character class (e.g. [^\s]) were used.</td></tr>
<tr><td>2008-07-22</td><td>Boris Kolpackov</td><td>XML to DOM parsing optimizations.</td></tr>
<tr><td>2008-07-21</td><td>Boris Kolpackov</td><td>Various optimizations.</td></tr>
<tr><td>2008-07-21</td><td>Boris Kolpackov</td><td>Remove repetitive calls to the getOwnerDocument() virtual function and in some cases use the data member directly. Put DOMStringPool functionality directly into DOMDocumentImpl, make getPooledString() inline.</td></tr>
<tr><td>2008-07-19</td><td>Boris Kolpackov</td><td>Get rid of unused MemoryManager argument in hash functions.</td></tr>
<tr><td>2008-07-17</td><td>Alberto Massari</td><td>Fixed regression in determining lax/skip/strict processing of an xsd:any preceded by another xsd:any represented using compact syntax (XERCESC-1822).</td></tr>
<tr><td>2008-07-17</td><td>Alberto Massari</td><td>The XSTS schema allows multiple schema files to be loaded before a test.</td></tr>
<tr><td>2008-07-17</td><td>Alberto Massari</td><td>When comparing two unions, use the validator that correctly parses both instances.</td></tr>
<tr><td>2008-07-17</td><td>Alberto Massari</td><td>If an element cannot be found in the schema for its namespace, it is also searched in the empty namespace to see if the user mistakenly forgot about undefining the default namespace; in this case a better error report is generated and (if schema processing is allowed to continue) the empty namespace definition is taken. However, even if the empty namespace definition didn't pass a few checks, we ended up silently using it -> we changed the namespace of the element without notifying the user (XERCESC-1819).</td></tr>
<tr><td>2008-07-16</td><td>Alberto Massari</td><td>Build a compact tree also for xsd:any nodes (XERCESC-1051). Reduce the memory required to build a DFA by creating a shallow CMNode hierarchy. Avoid stack overflow when analyzing non-compact model trees. Optimized the building of the DFA state table by avoiding linear searches.</td></tr>
<tr><td>2008-07-15</td><td>Boris Kolpackov</td><td>Cygwin is a POSIX emulation layer so use POSIX file manager, transcoder, path delimiter, and net accessor. Still using Windows mutex manager because of the problem in Cygwin pthread emulation.</td></tr>
<tr><td>2008-07-15</td><td>Boris Kolpackov</td><td>Require the exact match for the schema loader and storer version.</td></tr>
<tr><td>2008-07-15</td><td>David Bertoni</td><td>Fix for XERCESC-1806.</td></tr>
<tr><td>2008-07-15</td><td>David Bertoni</td><td>More cleanup for unsigned int/XMLSize_t changes and various compiler warnings.</td></tr>
<tr><td>2008-07-15</td><td>David Bertoni</td><td>Fix for XERCESC-1818.</td></tr>
<tr><td>2008-07-13</td><td>Alberto Massari</td><td>Backported fix for XERCESJ-773: build a representation of large minOccurs/maxOccurs in constant time and memory (which uses a counter during validation) for element and wildcard particles when each model group particle in the content model: has minOccurs/maxOccurs == 1 or contains only one element/wildcard particle with minOccurs/maxOccurs == 1. (XERCESC-1051).</td></tr>
<tr><td>2008-07-13</td><td>Boris Kolpackov</td><td>Use mutex to synchronize access to global document. Fixes XERCESC-1652.</td></tr>
<tr><td>2008-07-12</td><td>Boris Kolpackov</td><td>Disable automatic selection of ICU message loader when ICU is available (XERCESC-1769).</td></tr>
<tr><td>2008-07-11</td><td>Boris Kolpackov</td><td>Review, cleanup and make consistent all error messages.</td></tr>
<tr><td>2008-07-09</td><td>Boris Kolpackov</td><td>Use the ISO8859-1 encoding in net accessors. Add support for httpInfo in the curl net accessor. Patch by John Snelson (XERCESC-1805).</td></tr>
<tr><td>2008-07-09</td><td>Alberto Massari</td><td>Added more checks to the XSD syntax.</td></tr>
<tr><td>2008-07-04</td><td>Boris Kolpackov</td><td>Increment XERCES_GRAMMAR_SERIALIZATION_LEVEL since the size of line/column fields has changed.</td></tr>
<tr><td>2008-07-04</td><td>Boris Kolpackov</td><td>Cleanup interfaces in parsers/ to use XMLSize_t.</td></tr>
<tr><td>2008-07-03</td><td>Boris Kolpackov</td><td>Cleanup public interfaces in framework/ to use XMLSize_t.</td></tr>
<tr><td>2008-07-02</td><td>Alberto Massari</td><td>Use the _wcsupr naming instead of wcsupr (only Visual C++ defines both, Borland only defines the version prefixed by the underscore).</td></tr>
<tr><td>2008-06-29</td><td>Boris Kolpackov</td><td>Add 64-bit support.</td></tr>
<tr><td>2008-06-28</td><td>David Bertoni</td><td>Fix for XERCESC-1813.</td></tr>
<tr><td>2008-06-27</td><td>Boris Kolpackov</td><td>Use XMLFileLoc consistently to represent line/column. Clean up the SAX interface to use XMLSize_t instead of int/long.</td></tr>
<tr><td>2008-06-27</td><td>Boris Kolpackov</td><td>Add XMLFileLoc type (64-bit) that represents location in a file (line/column). Use it in DOM interfaces.</td></tr>
<tr><td>2008-06-26</td><td>Alberto Massari</td><td>Added missing "Is" in front of the "MusicalSymbols" regex group.</td></tr>
<tr><td>2008-06-26</td><td>Boris Kolpackov</td><td>Use XMLSize_t instead of int/long for indexes and sizes in DOM interfaces. Use enum types instead of short.</td></tr>
<tr><td>2008-06-26</td><td>Alberto Massari</td><td>Define regular expression category \w as defined by the XMLSchema specs (XERCESC-541).</td></tr>
<tr><td>2008-06-25</td><td>Boris Kolpackov</td><td>Provide a way to disable automatic loading of schemas specified in XML documents. Patch by Wouter Coene.</td></tr>
<tr><td>2008-06-25</td><td>Boris Kolpackov</td><td>Move XMLGrammarPoolImpl from internal/ to framework/ so that it can be instantiated directly by the use.</td></tr>
<tr><td>2008-06-24</td><td>Alberto Massari</td><td>XSTSHarness now handles the 2006 version of the test suite.</td></tr>
<tr><td>2008-06-24</td><td>Boris Kolpackov</td><td>Implement the revised interpretation of ##other in which unqualified names are not matched. Fixes XERCESC-1758, XERCESC-1655.</td></tr>
<tr><td>2008-06-22</td><td>Boris Kolpackov</td><td>Add getContentType function to the BinInputStream to allow stream to report out-of-band content type. Implement it in various streams. Factor out and cleanup common code from Socket and WinSock net accessors. Fix a number of bugs. Patch by John Snelson (XERCESC-1805).</td></tr>
<tr><td>2008-06-20</td><td>Boris Kolpackov</td><td>Change the DOMXPathResult interface to accommodate both XPath 1 and 2 models. Return DOMXPathResult* instead of void* from evaluate. Add basic auto pointer operations to JanitorMemFunCall class template.</td></tr>
<tr><td>2008-06-19</td><td>Boris Kolpackov</td><td>Make regular expressions thread-safe and use runtime memory manager when executing. Add new allMatches() function for advanced use-cases. Patch by John Snelson (XERCESC-1803).</td></tr>
<tr><td>2008-06-19</td><td>Boris Kolpackov</td><td>DOM XPath support: Support for resolving default namespace. Support for removing namespace-prefix bindings. Additional documentation.</td></tr>
<tr><td>2008-05-21</td><td>Alberto Massari</td><td>Avoid that an external entity having an empty SYSTEM id is treated as internal (XERCESC-1763).</td></tr>
<tr><td>2008-05-20</td><td>David Cargill</td><td>Schema fixes for e1-16 errata and full schema checking of any choice restricted by any.</td></tr>
<tr><td>2008-05-13</td><td>Alberto Massari</td><td>Add addNamespaceBinding() and release() APIs to XPathNSResolver class (XERCESC-1802) - patch by John Snelson.</td></tr>
<tr><td>2008-05-13</td><td>Alberto Massari</td><td>Don't blindly subtract a number from an unsigned int, it could overflow (XERCESC-1804).</td></tr>
<tr><td>2008-05-01</td><td>Alberto Massari</td><td>Rewrite the storage mechanism to avoid cast (XERCESC-1678).</td></tr>
<tr><td>2008-04-07</td><td>Alberto Massari</td><td>Avoid error messages where English words are specified at runtime.</td></tr>
<tr><td>2008-04-02</td><td>Alberto Massari</td><td>Replace copyrighted schema with a simple test case (XERCESC-1791).</td></tr>
<tr><td>2008-03-22</td><td>Boris Kolpackov</td><td>Fix XERCESC-1790. Other error messages cleanups.</td></tr>
<tr><td>2008-03-14</td><td>Alberto Massari</td><td>DOMPrint now shows how to run an XPath query on a DOM tree (XERCESC-1786).</td></tr>
<tr><td>2008-03-14</td><td>Alberto Massari</td><td>If the XPath parser returns 'false', it means the XPath is invalid. (XERCESC-1787).</td></tr>
<tr><td>2008-03-14</td><td>Alberto Massari</td><td>Identity constraints on xs:anySimpleType instances are enforced by comparing their lexical values (XERCESC-1393).</td></tr>
<tr><td>2008-03-11</td><td>Boris Kolpackov</td><td>Lock the mutex when performing cleanup in the WinSock net accessor.</td></tr>
<tr><td>2008-03-11</td><td>Alberto Massari</td><td>When looking for the best encoding, match both char size and endianness.</td></tr>
<tr><td>2008-03-11</td><td>Alberto Massari</td><td>Add UTF16-LE and UTF16-BE to the list of encodings tested by GNUiconv (XERCESC-1663).</td></tr>
<tr><td>2008-03-10</td><td>Boris Kolpackov</td><td>Get rid of lazy initialization that relied on double-checked locking. Now every static object is initialized in Initialize() and released in Terminate() via XMLInitializer.</td></tr>
<tr><td>2008-03-09</td><td>Boris Kolpackov</td><td>Get rid of atomic operations.</td></tr>
<tr><td>2008-03-07</td><td>Boris Kolpackov</td><td>New RPM spec by Scott Cantor.</td></tr>
<tr><td>2008-03-03</td><td>Boris Kolpackov</td><td>Apply the fast DOM child append patch (XERCESC-1735).</td></tr>
<tr><td>2008-03-03</td><td>Boris Kolpackov</td><td>Adjust DOM heap allocation parameters to be the same as in 2.8.0 which appears to give the best overall performance.</td></tr>
<tr><td>2008-02-26</td><td>Alberto Massari</td><td>Add VC9 target, remove references to deprecated DOM.</td></tr>
<tr><td>2008-02-25</td><td>Alberto Massari</td><td>Validate the attributes of a simple type definition before trusting its content (XERCESC-1718).</td></tr>
<tr><td>2008-02-25</td><td>Alberto Massari</td><td>Report an error when a grammar or a type is not found (XERCESC-1745).</td></tr>
<tr><td>2008-02-21</td><td>Alberto Massari</td><td>Added configuration to VC9 project files to build Xerces with the ICU transcoder.</td></tr>
<tr><td>2008-02-21</td><td>Alberto Massari</td><td>Added configuration to VC8 project files to build Xerces with the ICU transcoder.</td></tr>
<tr><td>2008-02-21</td><td>Alberto Massari</td><td>Added configuration to VC7.1 project files to build Xerces with the ICU transcoder.</td></tr>
<tr><td>2008-02-20</td><td>Alberto Massari</td><td>Check for the callback pointer to be valid before each call, as a callback could be resetting it (XERCESC-1781).</td></tr>
<tr><td>2008-02-13</td><td>Boris Kolpackov</td><td>Make sure the base type was provided when trying to resolve the schema grammar (addition to the previous fix) (XERCESC-1777).</td></tr>
<tr><td>2008-02-12</td><td>Boris Kolpackov</td><td>In restriction checking, when looking for a declaration of a base element, use the schema grammar corresponding to the type this element is declared in (XERCESC-1777).</td></tr>
<tr><td>2008-01-22</td><td>Alberto Massari</td><td>Update gMaxProtoLen to reflect the addition of "https" (XERCESC-1698).</td></tr>
<tr><td>2008-01-22</td><td>Alberto Massari</td><td>Use the same code as in the fopen.c sample from libcurl (XERCESC-1756).</td></tr>
<tr><td>2008-01-22</td><td>Alberto Massari</td><td>Show how to release a transcoded string (XERCESC-1767).</td></tr>
<tr><td>2008-01-22</td><td>Alberto Massari</td><td>Fixed 64 bit issue (XERCESC-1768).</td></tr>
<tr><td>2007-11-21</td><td>Alberto Massari</td><td>Add project files for Visual Studio 2008.</td></tr>
<tr><td>2007-10-08</td><td>David Cargill</td><td>Encode characters for anyURI using xlink 5.4 algorithm. Patch from Gilbert Chan.</td></tr>
<tr><td>2007-08-30</td><td>Alberto Massari</td><td>- Don't allocate a stack unless the string to be matched is longer than 256 characters. Don't use backtracking if the regex pattern doesn't have ambiguities (XERCESC-1242).</td></tr>
<tr><td>2007-08-28</td><td>Alberto Massari</td><td>- SrcOffset is a XMLFilePos (64 bit). MsgLoader and Transcode API needed some more XMLSize_t (XERCESC-1531).</td></tr>
<tr><td>2007-08-24</td><td>Alberto Massari</td><td>Avoid recursion when checking for closures. Patch by Vitaly Prapirny (XERCESC-1242).</td></tr>
<tr><td>2007-07-30</td><td>Alberto Massari</td><td>The GroupContentRestricted error is used for both 'sequence' and 'choice' models, so get the model at runtime (XERCESC-1724).</td></tr>
<tr><td>2007-07-18</td><td>Alberto Massari</td><td>Parser interfaces now use XMLSize_t for characters, comment, ignorableWhitespace, docCharacters, doctypeWhitespace (XERCESC-1531).</td></tr>
<tr><td>2007-07-18</td><td>Alberto Massari</td><td>Fixed signed/unsigned conversions (XERCESC-1531).</td></tr>
<tr><td>2007-07-18</td><td>Alberto Massari</td><td>Send the NODE_CLONED notification for each node in the tree when cloning the entire DOMDocument (XERCESC-1722).</td></tr>
<tr><td>2007-07-17</td><td>Alberto Massari</td><td>GNUIconv should not look at APP_NO_THREADS, and look at where endian.h is located (XERCESC-1709).</td></tr>
<tr><td>2007-07-11</td><td>Alberto Massari</td><td>Line numbers should use unsigned long (XERCESC-1531).</td></tr>
<tr><td>2007-07-11</td><td>Alberto Massari</td><td>XMLString, XMLBuffer and Base64 should use XMLSize_t (XERCESC-1531).</td></tr>
<tr><td>2007-07-10</td><td>Alberto Massari</td><td>XMLTransService should use XMLSize_t (XERCESC-1531).</td></tr>
<tr><td>2007-07-09</td><td>Alberto Massari</td><td>XSerializeEngine should use XMLSize_t (XERCESC-1531).</td></tr>
<tr><td>2007-07-06</td><td>Alberto Massari</td><td>All lists and vectors should use unsigned int to report size and access items (XERCESC-1531).</td></tr>
<tr><td>2007-07-06</td><td>Alberto Massari</td><td>Changed MemBufInputSource to use XMLSize_t (XERCESC-1531).</td></tr>
<tr><td>2007-07-06</td><td>Alberto Massari</td><td>Changed XMLFormatTarget interface to have writeChars use XMLSize_t (XERCESC-1531).</td></tr>
<tr><td>2007-07-06</td><td>Alberto Massari</td><td>Changed XMLTransService interface to have transcodeFrom and transcodeTo use XMLSize_t (XERCESC-1531).</td></tr>
<tr><td>2007-07-06</td><td>Alberto Massari</td><td>Changed BinOutputStream interface to have curPos return a 64-bit integer, and use XMLSize_t in writeBytes (XERCESC-1531).</td></tr>
<tr><td>2007-07-06</td><td>Alberto Massari</td><td>Changed BinInputStream interface to have curPos return a 64-bit integer, and use XMLSize_t in readBytes (XERCESC-1531).</td></tr>
<tr><td>2007-06-09</td><td>David Cargill</td><td>Apply base whitespace facet to enumeration values. Patch from Gilbert Chan.</td></tr>
<tr><td>2007-06-09</td><td>David Cargill</td><td>Suppress DTD error message for attribute referring to unknown entity when attribute not used. Patch from John Kim.</td></tr>
<tr><td>2007-05-21</td><td>Alberto Massari</td><td>In the fix for XERCESC-1592, code to set xmlns="" that was moved from retrieveNamespaceMappping to preprocessSchema was not executed for imported schemas.</td></tr>
<tr><td>2007-05-15</td><td>Alberto Massari</td><td>mblen returns 0 when given an empty string; rewrote code to only use mbstowcs (XERCESC-1702).</td></tr>
<tr><td>2007-05-08</td><td>Alberto Massari</td><td>Add https to the list of valid protocols for XMLURL (XERCESC-1698).</td></tr>
<tr><td>2007-04-25</td><td>Alberto Massari</td><td>Add x64 target to VC8 project files.</td></tr>
<tr><td>2007-04-17</td><td>Alberto Massari</td><td>Fix for XERCESC-1092.</td></tr>
<tr><td>2007-04-10</td><td>Alberto Massari</td><td>Make the header guards less obvious (XERCESC-1693).</td></tr>
<tr><td>2007-04-06</td><td>Alberto Massari</td><td>Fix for XERCESC-1592.</td></tr>
<tr><td>2007-03-08</td><td>Alberto Massari</td><td>Fixed infinite loop when an XPath expression contained an unexpected character (XERCESC-1682).</td></tr>
<tr><td>2007-03-06</td><td>Alberto Massari</td><td>IconvGNU and IconvFBSD transcoders override application-set locale, XERCESC-1660 (patch by Boris Kolpackov).</td></tr>
<tr><td>2007-03-02</td><td>Alberto Massari</td><td>Initial commit of XInclude support (by Simon Rowland).</td></tr>
<tr><td>2007-02-07</td><td>Alberto Massari</td><td>Even if the XSTS suite thinks differently, the XMLSchema 1.1 clarifies that two values derived from the same value space should be treated as equals; so find out the common ancestor and use it to perform the comparison.</td></tr>
<tr><td>2007-02-02</td><td>Alberto Massari</td><td>Implemented the DOML3 XPath interfaces, reusing the XPath processor used inside the XMLSchema validation; this means it understands only a limited subset of the XPath syntax, and can only return DOMElement nodes. However, it could be useful for simple navigations, or maybe be later expanded.</td></tr>
<tr><td>2007-01-30</td><td>Alberto Massari</td><td>Allow 'list' and 'union' in the finalDefault attribute of a schema (XERCESC-1633).</td></tr>
<tr><td>2007-01-30</td><td>Alberto Massari</td><td>Fix backport of XERCESC-1237.</td></tr>
<tr><td>2007-01-30</td><td>Alberto Massari</td><td>Only xs:key should complain if not all the fields of an identity constraint are not found in the XML instance (XERCESC-1237).</td></tr>
<tr><td>2007-01-02</td><td>Alberto Massari</td><td>When calling getAttributeNodeNS, ensure we are providing a localName (XERCESC-1473).</td></tr>
<tr><td>2006-12-18</td><td>Alberto Massari</td><td>The 'dst' argument in the DOMUserDataHandler::handle callback is non-const, in order to let the application modify the newly created node (XERCESC-783).</td></tr>
<tr><td>2006-12-11</td><td>Alberto Massari</td><td>Performance improvement: allocate memory only when the data inside the XMLElementDecl cannot be reused.</td></tr>
<tr><td>2006-12-01</td><td>Alberto Massari</td><td>Use the algorithm from http://unicode.org/unicode/faq/utf_bom.html#35 to encode/decode surrogate pairs (XERCESC-1654).</td></tr>
<tr><td>2006-10-20</td><td>Alberto Massari</td><td>Enable IPv6 addresses by using getaddrinfo when available [based on a patch by Ramanjaneyulu Malisetti].</td></tr>
<tr><td>2006-10-20</td><td>Alberto Massari</td><td>Handle both IPv4 and IPv6 on Windows (to be enabled via a macro, as it is only available starting with Windows XP) [based on a patch by Ramanjaneyulu Malisetti].</td></tr>
<tr><td>2006-10-20</td><td>Alberto Massari</td><td>Report the correct error when the XML PI has 'XML' instead of 'xml' (XERCESC-1641).</td></tr>
<tr><td>2006-10-16</td><td>Alberto Massari</td><td>Allow the user to specify the memory manager used by LSSerializer::writeToString.</td></tr>
<tr><td>2006-09-26</td><td>Alberto Massari</td><td>Removed warnings (XERCESC-1619).</td></tr>
<tr><td>2006-09-26</td><td>Alberto Massari</td><td>Make some methods const (XERCESC-1628).</td></tr>
<tr><td>2006-09-26</td><td>Alberto Massari</td><td>When checking for a valid restriction, take into account substitution groups (XERCESC-1281).</td></tr>
<tr><td>2006-08-30</td><td>Alberto Massari</td><td>Don't crash if an external parameter entity has no SYSTEM id (XERCESC-1536).</td></tr>
<tr><td>2006-08-28</td><td>Alberto Massari</td><td>IconvGNU transcoder now works on big endian machines.</td></tr>
<tr><td>2006-08-23</td><td>Alberto Massari</td><td>Default or fixed attribute values should be whitespace normalized, if the datatype requires it, before being validated.</td></tr>
<tr><td>2006-08-23</td><td>Alberto Massari</td><td>DOMLSParserImpl::loadGrammar should not release the previously loaded DOMDocument (XERCESC-1626).</td></tr>
<tr><td>2006-07-25</td><td>Alberto Massari</td><td>Reduce the number of allocations needed by text and attribute nodes (XERCESC-1585).</td></tr>
<tr><td>2006-07-25</td><td>Alberto Massari</td><td>Remove support for building Xerces with VC7.</td></tr>
<tr><td>2006-07-04</td><td>Alberto Massari</td><td>Removed usage of MB_CUR_MAX from iconv transcoder; if the block-oriented APIs are available, use them (XERCESC-1444, patch by Axel Weiss).</td></tr>
<tr><td>2006-06-12</td><td>Alberto Massari</td><td>Added parameter space-first-level-elements to DOMLSSerializer to let the user control whether the children of the document root should have an extra line feed between them (XERCESC- 1561).</td></tr>
<tr><td>2006-05-30</td><td>Alberto Massari</td><td>SAX2XMLReader should use the prefix reported by the reader, not the one stored in the element declaration (XERCESC-1598).</td></tr>
<tr><td>2006-05-30</td><td>Alberto Massari</td><td>DGXMLScanner was treating predefined entities inside attribute values as if they were in the element content (XERCESC-1597).</td></tr>
<tr><td>2006-05-23</td><td>James Berry</td><td>Fix for XERCESC-1595.</td></tr>
<tr><td>2006-05-12</td><td>Alberto Massari</td><td>Allow spaces in anyURIs, as they are 'legal but highly discouraged' (XERCESC-1581).</td></tr>
<tr><td>2006-03-19</td><td>Alberto Massari</td><td>Factory method is no more inline to avoid including an internal header in a public one (XERCESC-1579).</td></tr>
<tr><td>2006-02-28</td><td>Alberto Massari</td><td>Remove BOM-detection code inside refreshCharBuffer: the fix for XERCESC-1284 makes it unnecessary, and the UTF-8 part was updating the wrong index (XERCESC-1385).</td></tr>
<tr><td>2006-02-18</td><td>Alberto Massari</td><td>When serializing attribute values, escape also carriage returns and tabs (XERCESC-1547).</td></tr>
<tr><td>2006-02-18</td><td>Alberto Massari</td><td>If an encoding has been forced on a InputSource, ignore a compatible BOM found in the stream (XERCESC-1284).</td></tr>
<tr><td>2006-02-06</td><td>David Bertoni</td><td>Patch from Tobias Schuette for XERCESC-1491.</td></tr>
<tr><td>2006-01-21</td><td>David Bertoni</td><td>Fix for XERCESC-1555 from Mark Weaver.</td></tr>
<tr><td>2006-01-21</td><td>David Bertoni</td><td>Fixes for XERCESC-1548.</td></tr>
<tr><td>2006-01-16</td><td>David Cargill</td><td>Fix for XERCESC-1546. Canonical value of list was putting in an extra null character.</td></tr>
<tr><td>2006-01-16</td><td>Alberto Massari</td><td>When evaluating a union in a regular expression, take the branch that matches the longest part of the input string (XERCESC-1521).</td></tr>
<tr><td>2005-12-27</td><td>Alberto Massari</td><td>Improve validation performances when dealing with schemas with lots of top level definitions (XERCESC-1542).</td></tr>
<tr><td>2005-12-26</td><td>Alberto Massari</td><td>Fix for XERCESC-1533 (default attributes in the definition for an element that is not validated because of errors would be added to the list of attributes even if already present).</td></tr>
<tr><td>2005-12-20</td><td>Alberto Massari</td><td>Expose the memory allocation functionalities of DOMDocumentImpl through the DOMMemoryManager interface; this removes dangerous casts in the operator new and allows to tune the size of the memory chunks (XERCESC-1475).</td></tr>
<tr><td>2005-12-14</td><td>Alberto Massari</td><td>When cloning or importing a node, also copy the type information (XERCESC- 1517).</td></tr>
<tr><td>2005-12-01</td><td>Alberto Massari</td><td>Added projects for Visual Studio 2005.</td></tr>
<tr><td>2005-10-25</td><td>Alberto Massari</td><td>Nodes that implement getFeature should also implement isSupported (XERCESC-1479).</td></tr>
<tr><td>2005-10-15</td><td>David Cargill</td><td>Message update for qname fix and XERCESC-1515.</td></tr>
<tr><td>2005-09-28</td><td>Alberto Massari</td><td>closesocket should be dynamically bound (XERCESC-1467).</td></tr>
<tr><td>2005-08-26</td><td>David Cargill</td><td>Fix for XERCESC-1240.</td></tr>
<tr><td>2005-08-26</td><td>David Cargill</td><td>Fix for XERCESC-896.</td></tr>
<tr><td>2005-08-25</td><td>David Cargill</td><td>Fix for XERCESC-896.</td></tr>
<tr><td>2005-08-15</td><td>David Cargill</td><td>Schema errata e2-67 fix, ported from java to allow [^+-].</td></tr>
<tr><td>2005-08-10</td><td>David Cargill</td><td>Remove references to nonexist DOMSystemException. XERCESC-1400.</td></tr>
<tr><td>2005-08-10</td><td>Alberto Massari</td><td>Documentation for Base64::decode now state how whitespace is treated (XERCESC-974).</td></tr>
<tr><td>2005-08-09</td><td>Alberto Massari</td><td>Close the socket even in case of exceptions being thrown (XERCESC-1467).</td></tr>
<tr><td>2005-08-08</td><td>gareth</td><td>Added comment to state the namespace info wont work with this parser. XERCESC-1377.</td></tr>
<tr><td>2005-07-28</td><td>David Cargill</td><td>Follow-up fix to XERCESC-990. Allow lookup for imported schema with no namespace.</td></tr>
<tr><td>2005-07-27</td><td>David Bertoni</td><td>Fixes for XERCESC-1463.</td></tr>
<tr><td>2005-07-27</td><td>David Cargill</td><td>Schema errata E2-27: don't have negative sign in front of zero.</td></tr>
<tr><td>2005-07-26</td><td>Alberto Massari</td><td>Reset the flag used to signal a trailing space if the chunk doesn't end with a space (XERCESC-1239).</td></tr>
<tr><td>2005-07-25</td><td>Alberto Massari</td><td>After looking for the DOM element defining the required type we should use the registry to perform the lookup instead of assuming the one we just parsed is the right one (XERCESC-990).</td></tr>
<tr><td>2005-07-25</td><td>David Cargill</td><td>Fix problem where incorrect xsmodel was generated for UseCachedGrammarInParse.</td></tr>
<tr><td>2005-07-25</td><td>David Cargill</td><td>Fix various schema date time problems.</td></tr>
<tr><td>2005-07-20</td><td>David Cargill</td><td>Update XMLDateTime to correctly test for timezone.</td></tr>
<tr><td>2005-07-20</td><td>David Cargill</td><td>Empty content for Base64Binary &amp; HexBinary should be allowed.</td></tr>
<tr><td>2005-06-29</td><td>Alberto Massari</td><td>Added getter methods for flags (XERCESC-1450).</td></tr>
<tr><td>2005-06-29</td><td>Alberto Massari</td><td>Fix for XERCESC-1449.</td></tr>
<tr><td>2005-06-28</td><td>Alberto Massari</td><td>Schema errata E2-67: allow unescaped '-' at the beginning and end of a regex.</td></tr>
<tr><td>2005-06-17</td><td>James Berry</td><td>Add const qualifier to getDocumentLocations to match interface (patch to 191040 for bug XERCESC-1153).</td></tr>
<tr><td>2005-06-17</td><td>Alberto Massari</td><td>XMLSchemaDescriptionImpl::getLocationHints() returns a const pointer (XERCESC-1153).</td></tr>
<tr><td>2005-06-17</td><td>Alberto Massari</td><td>DOMDocument::importNode accepts a const pointer (XERCESC-1223).</td></tr>
<tr><td>2005-06-11</td><td>James Berry</td><td>Resolve bug XERCESC-1436. Header and implementation of OpFactory used inconsistent function signature. Thanks to Axel Weiss.</td></tr>
<tr><td>2005-06-08</td><td>David Bertoni</td><td>Fixes for XERCESC-1409.</td></tr>
<tr><td>2005-06-08</td><td>David Cargill</td><td>Fix for XERCESC-1423 from Christian.</td></tr>
<tr><td>2005-06-06</td><td>David Bertoni</td><td>Fixes for XERCESC-1368.</td></tr>
<tr><td>2005-06-04</td><td>David Bertoni</td><td>Patch for XERCESC-1420.</td></tr>
<tr><td>2005-06-03</td><td>David Bertoni</td><td>Fixes for XERCESC-1348.</td></tr>
<tr><td>2005-06-03</td><td>David Cargill</td><td>Fix for XERCESC-1115. Allow zero length content.</td></tr>
<tr><td>2005-06-03</td><td>David Bertoni</td><td>Fixes for XERCESC-1417.</td></tr>
<tr><td>2005-06-02</td><td>David Cargill</td><td>Don't treat characters 0x2028 and 0x85 as plain characters in XML 1.1.</td></tr>
<tr><td>2005-06-02</td><td>David Cargill</td><td>Schema errata update. Ignore length, minLength and maxLength facets for qname and notation.</td></tr>
</table>
</s2>
<anchor name="Release280"/>
<s2 title="Release Information for &XercesCName; 2.8.0">
<p>The following new features and bug fixes have been implemented in
&XercesCName; 2.8.0:</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr><td>2007-08-23</td><td>Scott Cantor</td><td>RPM spec file update to support 64 bit builds (XERCESC-1740)</td></tr>
<tr><td>2007-08-22</td><td>Boris Kolpackov</td><td>Remove option to explicitly link against libc.</td></tr>
<tr><td>2007-08-22</td><td>Alberto Massari</td><td>Rename afxres.h to winres.h (XERCESC-1737).</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Static build option.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Exponential growth for DOM heap.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Add HTTPS scheme to URI.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>64 bit Windows build (XERCESC-1531).</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Explicit type conversion to get rid of a warning.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Auto-detect HP aCC3 vs aCC6 compiler versions.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Verbose mode (add VERBOSE=1 to the gmake command line).</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Support for g++ on AIX and HP-UX.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Change optimization level on GNU/Linux from -O to -O2.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>Add appendChildFast and call it in parser. Performance patch.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>64 bit compile/link options auto-detection for Solaris.</td></tr>
<tr><td>2007-08-21</td><td>Boris Kolpackov</td><td>VC8 projects.</td></tr>
<tr><td>2007-07-30</td><td>Alberto Massari</td><td>The GroupContentRestricted error is used for both 'sequence' and 'choice' models, so get the model at runtime (XERCESC-1724).</td></tr>
<tr><td>2007-07-26</td><td>Alberto Massari</td><td>XSWildcard was always getting a 'strict' processContent when the namespace list contained more than 2 elements.</td></tr>
<tr><td>2007-07-23</td><td>Christian Will</td><td>Performance patch for XERCESC-1657.</td></tr>
<tr><td>2007-07-23</td><td>Anton Nikolaevsky</td><td> Patch for XERCESC-1591.</td></tr>
<tr><td>2007-07-18</td><td>Alberto Massari</td><td>Send the NODE_CLONED notification for each node in the tree when cloning the entire DOMDocument (XERCESC-1722).</td></tr>
<tr><td>2007-06-15</td><td>David Bertoni</td><td>Fix for null pointer dereference in the case where the expression is empty and the case-insensitive option is specified.</td></tr>
<tr><td>2007-06-09</td><td>Gilbert Chan</td><td>Apply base whitespace facet to enumeration values.</td></tr>
<tr><td>2007-06-09</td><td>John Kim</td><td>Suppress DTD error message for attribute referring to unknown entity when attribute not used.</td></tr>
<tr><td>2007-06-08</td><td>Alberto Massari</td><td>Add missing include for MinGW (XERCESC-1617)</td></tr>
<tr><td>2007-06-01</td><td>David Cargill</td><td>Schema fixes for anonymous type with mixed and substitution with bock.</td></tr>
<tr><td>2007-05-22</td><td>David Cargill</td><td>For enumeration only check base as per spec.</td></tr>
<tr><td>2007-05-22</td><td>David Cargill</td><td>Only complain when NOTATION is in schema namespace.</td></tr>
<tr><td>2007-05-15</td><td>Alberto Massari</td><td>mblen returns 0 when given an empty string; rewrote code to only use mbstowcs (XERCESC-1702).</td></tr>
<tr><td>2007-04-17</td><td>Alberto Massari</td><td>In the Windows registry, the code page for an encoding is stored in @InternetEncoding, not in @Codepage (XERCESC-1092).</td></tr>
<tr><td>2007-03-28</td><td>David Cargill</td><td>Various schema fixes.</td></tr>
<tr><td>2007-03-27</td><td>Alberto Massari</td><td>Performance improvements.</td></tr>
<tr><td>2007-03-27</td><td>Alberto Massari</td><td>A decimal value of 0.0 was treated as a positive number, so it was different from 0.</td></tr>
<tr><td>2007-03-08</td><td>Alberto Massari</td><td>Fixed infinite loop when an XPath expression contained an unexpected character (XERCESC-1682).</td></tr>
<tr><td>2007-03-06</td><td>Boris Kolpackov</td><td>IconvGNU and IconvFBSD transcoders override application-set locale (XERCESC-1660).</td></tr>
<tr><td>2007-02-07</td><td>Alberto Massari</td><td>Even if the XSTS suite thinks differently, the XMLSchema 1.1 clarifies that two values derived from the same value space should be treated as equals; so find out the common ancestor and use it to perform the comparison.</td></tr>
<tr><td>2007-02-06</td><td>Alberto Massari</td><td>When invoking the userData handlers, first build a snapshot of the map, so that the callbacks can update it safely.</td></tr>
<tr><td>2007-01-31</td><td>Alberto Massari</td><td>Equal lexical values of unrelated types must be treated as different.</td></tr>
<tr><td>2007-01-31</td><td>Alberto Massari</td><td>Handle escaped characters in schemaLocation attributes.</td></tr>
<tr><td>2007-01-31</td><td>Alberto Massari</td><td>Before using a local memory manager, check that we have a valid pointer.</td></tr>
<tr><td>2007-01-30</td><td>Alberto Massari</td><td>Allow 'list' and 'union' in the finalDefault attribute of a schema (XERCESC-1633).</td></tr>
<tr><td>2007-01-30</td><td>Alberto Massari</td><td>Only xs:key should complain if not all the fields of an identity constraint are not found in the XML instance (XERCESC-1237).</td></tr>
<tr><td>2007-01-29</td><td>David Cargill</td><td>Complex type restriction with substation group fix.</td></tr>
<tr><td>2007-01-25</td><td>David Cargill</td><td>Schema and UTF32 fixes.</td></tr>
<tr><td>2007-01-02</td><td>Alberto Massari</td><td>When calling getAttributeNodeNS, ensure we are providing a localName (XERCESC-1473).</td></tr>
<tr><td>2006-12-30</td><td>Charles McLouth</td><td>Added support for WinSock and Windows Transcoder on Mingw/msys platform (XERCESC-1617).</td></tr>
<tr><td>2006-12-27</td><td>Alberto Massari</td><td>Detect open() failures (XERCESC-1658).</td></tr>
<tr><td>2006-12-11</td><td>Alberto Massari</td><td>Performance improvement: allocate memory only when the data inside the XMLElementDecl cannot be reused.</td></tr>
<tr><td>2006-12-03</td><td>David Cargill</td><td>Schema derivation fixes.</td></tr>
<tr><td>2006-12-03</td><td>David Cargill</td><td>Case insensitive regular expression fixes.</td></tr>
<tr><td>2006-12-03</td><td>David Cargill</td><td>Static initialization fix.</td></tr>
<tr><td>2006-10-20</td><td>Alberto Massari</td><td>Report the correct error when the XML PI has 'XML' instead of 'xml' (XERCESC-1641).</td></tr>
<tr><td>2006-10-10</td><td>Alberto Massari</td><td>Allow whitespace-only nodes to be added as children of a DOMDocument.</td></tr>
<tr><td>2006-10-05</td><td>David Cargill</td><td>Handle anonymous types properly.</td></tr>
<tr><td>2006-10-05</td><td>David Cargill</td><td>Don't add extra whitespace when validating datatypes.</td></tr>
<tr><td>2006-10-05</td><td>David Cargill</td><td>Treat "." as invalid double/float.</td></tr>
<tr><td>2006-09-29</td><td>David Bertoni</td><td>Removed unnecessary transcoding of file names, that resulted in round-trip transcoding. Moved calls to initializer list to avoid initializing to a default value.</td></tr>
<tr><td>2006-09-27</td><td>David Bertoni</td><td>Fixed some bugs where the literal 0 was being used as the value of an invalid file handle. This affects platforms like Solaris, which use open/close, etc., instead of fopen/fclose, etc.</td></tr>
<tr><td>2006-09-26</td><td>Boris Kolpackov</td><td>When checking for a valid restriction, take into account substitution groups (XERCESC-1281).</td></tr>
<tr><td>2006-09-11</td><td>Alberto Massari</td><td>Don't crash if an external parameter entity has no SYSTEM id (XERCESC-1536).</td></tr>
<tr><td>2006-08-23</td><td>Alberto Massari</td><td>Default or fixed attribute values should be whitespace normalized, if the datatype requires it, before being validated.</td></tr>
<tr><td>2006-08-23</td><td>Alberto Massari</td><td>DOMLSParserImpl::loadGrammar should not release the previously loaded DOMDocument (XERCESC-1626).</td></tr>
<tr><td>2006-08-10</td><td>Alberto Massari</td><td>Fix memory leak (XERCESC-1624).</td></tr>
<tr><td>2006-07-07</td><td>Jay Hansen</td><td>OS400 fixes.</td></tr>
<tr><td>2006-07-06</td><td>David Cargill</td><td>Fix crashes that can occur when a non-default memory manager tries to clean up after running out of memory.</td></tr>
<tr><td>2006-05-30</td><td>Alberto Massari</td><td>SAX2XMLReader should use the prefix reported by the reader, not the one stored in the element declaration (XERCESC-1598)</td></tr>
<tr><td>2006-05-30</td><td>Alberto Massari</td><td>DGXMLScanner was treating predefined entities inside attribute values as if they were in the element content (XERCESC-1597)</td></tr>
<tr><td>2006-05-08</td><td>David Cargill</td><td>Documentation update. Default validation is never, not auto.</td></tr>
<tr><td>2006-04-29</td><td>David Cargill</td><td>Better message for invalid boolean datatype.</td></tr>
<tr><td>2006-04-28</td><td>David Cargill</td><td>Performance fix, don't use QName as colon location is already available.</td></tr>
<tr><td>2006-04-28</td><td>David Cargill</td><td>Use ln -fs instead of ln -f to avoid error message during Unix build.</td></tr>
<tr><td>2006-04-19</td><td>Alberto Massari</td><td>Fix an error that manifested itself when a DTD defined a general entity using a parameter entity for specifying the name.</td></tr>
<tr><td>2006-04-18</td><td>Alberto Massari</td><td>setEncoding was relying on XMLRecognizer::encodingForName to return OtherEncoding when presented with a endian-neutral UTF16/UTF32 encoding, but it doesn't do it anymore.</td></tr>
<tr><td>2006-04-18</td><td>David Cargill</td><td>Put xmlns attributes in registry to avoid errors when checking for required attributes.</td></tr>
<tr><td>2006-04-18</td><td>David Cargill</td><td>Ensure decimal is valid on getActualValue call when toValidate is true.</td></tr>
<tr><td>2006-04-18</td><td>David Cargill</td><td>Thread safety fix, don't do lazy evaluation of patterns.</td></tr>
<tr><td>2006-03-27</td><td>Alberto Massari</td><td>Allow whitespace at the beginning and after the union operator in XPath expressions of identity constraints.</td></tr>
<tr><td>2006-03-23</td><td>David Cargill</td><td>Make getCanonical for float and double have consistent behaviour with getActual.</td></tr>
<tr><td>2006-03-21</td><td>Alberto Massari</td><td>If "entities" feature is set to TRUE, entities reference inside attribute values should be serialized as "&amp;ent;"</td></tr>
<tr><td>2006-03-19</td><td>Alberto Massari</td><td>Factory method is no more inline to avoid including an internal header in a public one (XERCESC-1579).</td></tr>
<tr><td>2006-03-17</td><td>David Cargill</td><td>Display actual errorCode when reporting an error.</td></tr>
<tr><td>2006-03-05</td><td>Alberto Massari</td><td>Allow non-standard names for the C++ compiler.</td></tr>
<tr><td>2006-03-03</td><td>Alberto Massari</td><td>Updated Borland C++ 6 projects.</td></tr>
<tr><td>2006-02-28</td><td>Alberto Massari</td><td>Remove BOM-detection code inside refreshCharBuffer: the fix for XERCESC-1284 makes it unnecessary, and the UTF-8 part was updating the wrong index (XERCESC-1385).</td></tr>
<tr><td>2006-02-24</td><td>Alberto Massari</td><td>Improve performances of addRange.</td></tr>
<tr><td>2006-02-18</td><td>Alberto Massari</td><td>When serializing attribute values, escape also carriage returns and tabs (XERCESC-1547).</td></tr>
<tr><td>2006-02-18</td><td>Alberto Massari</td><td>If an encoding has been forced on a InputSource, ignore a compatible BOM found in the stream (XERCESC-1284).</td></tr>
<tr><td>2006-02-06</td><td>Tobias Schuette</td><td>Fix for XERCESC-1491.</td></tr>
<tr><td>2006-02-06</td><td>David Cargill</td><td>Put annotations for duplicate elements on the first element.</td></tr>
<tr><td>2006-02-06</td><td>David Cargill</td><td>Update schema limitations and clarify float and double behaviour.</td></tr>
<tr><td>2006-01-30</td><td>Khaled Noaman</td><td>Do not generate error message if switchGrammar fails when laxly validating.</td></tr>
<tr><td>2006-01-21</td><td>Mark Weaver</td><td>Fix for XERCESC-1555.</td></tr>
<tr><td>2006-01-21</td><td>David Bertoni</td><td>Fixes for XERCESC-1548.</td></tr>
<tr><td>2006-01-16</td><td>David Cargill</td><td>Fix for XERCESC-1546. Canonical value of list was putting in an extra null character.</td></tr>
<tr><td>2006-01-16</td><td>Alberto Massari</td><td>When evaluating a union in a regular expression, take the branch that matches the longest part of the input string (XERCESC-1521).</td></tr>
<tr><td>2005-12-30</td><td>Khaled Noaman</td><td>Fix for erroneous duplicate id problem.</td></tr>
<tr><td>2005-12-28</td><td>David Cargill</td><td>Uniconv390 fixes.</td></tr>
<tr><td>2005-12-28</td><td>David Cargill</td><td>Put debug code under specific flag so it only gets built when needed instead of for each debug build.</td></tr>
<tr><td>2005-12-28</td><td>David Cargill</td><td>Fix size of boolean structure.</td></tr>
<tr><td>2005-12-28</td><td>David Cargill</td><td>Schema fixes for union of union and empty element.</td></tr>
<tr><td>2005-12-27</td><td>Alberto Massari</td><td>Improve validation performances when dealing with schemas with lots of top level definitions (XERCESC-1542).</td></tr>
<tr><td>2005-12-26</td><td>Alberto Massari</td><td>Fix for XERCESC-1533 (default attributes in the definition for an element that is not validated because of errors would be added to the list of attributes even if already present).</td></tr>
<tr><td>2005-12-15</td><td>David Bertoni</td><td>Added missing parameter (XERCESC-1538).</td></tr>
<tr><td>2005-12-14</td><td>Alberto Massari</td><td>When cloning or importing a node, also copy the type information (XERCESC-1517).</td></tr>
<tr><td>2005-11-15</td><td>David Cargill</td><td>Treat "+" and "-" as invalid numeric schema values.</td></tr>
<tr><td>2005-11-15</td><td>David Cargill</td><td>Fix bug where very long element names gives parsing error.</td></tr>
<tr><td>2005-11-09</td><td>Alberto Massari</td><td>Generated static library in lowercase like the dynamic one (XERCESC-1522).</td></tr>
<tr><td>2005-10-31</td><td>Alberto Massari</td><td>Nodes that implement getFeature should also implement isSupported (XERCESC- 1479).</td></tr>
<tr><td>2005-10-15</td><td>David Cargill</td><td>Fix for XERCESC-1515.</td></tr>
<tr><td>2005-10-15</td><td>David Cargill</td><td>Message update for QName fix and XERCESC-1515.</td></tr>
<tr><td>2005-10-12</td><td>David Cargill</td><td>QName fix. Need to verify that the prefix is defined.</td></tr>
<tr><td>2005-10-12</td><td>David Cargill</td><td>Check for valid schema characters for float and double.</td></tr>
<tr><td>2005-10-12</td><td>David Cargill</td><td>Annotation bug fixes.</td></tr>
<tr><td>2005-09-28</td><td>Alberto Massari</td><td>closesocket should be dynamically bound (XERCESC-1467).</td></tr>
</table>
</s2>
<anchor name="Release270"/>
<s2 title="Release Information for &XercesCName; 2.7.0">
<p>Here is the list of bugs that are resolved in this release, &XercesCName; 2.7.0.
</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr><td>2005-05-19</td><td>David Cargill</td><td>390 update: use ICU table which is present with the uniconv390</td></tr>
<tr><td>2005-05-19</td><td>David Cargill</td><td>Update table used for patterns to the Unicode 4.0.1 level.</td></tr>
<tr><td>2005-05-18</td><td>David Cargill</td><td>For time schema datatypes, ensure milisecond only contains 0-9</td></tr>
<tr><td>2005-05-18</td><td>Jay Hansen</td><td>OS400 updates </td></tr>
<tr><td>2005-05-08</td><td>James Berry</td><td>Modify runConfigure to accept the names of C++ compilers that it doesn't recognize</td></tr>
<tr><td>2005-05-06</td><td>David Bertoni</td><td>Change for loop control variable for compilers that don't enforce for scope.</td></tr>
<tr><td>2005-05-05</td><td>David Cargill</td><td>Update XSValue to handle float and double the same way the main library does</td></tr>
<tr><td>2005-05-05</td><td>Mike Pawlowski</td><td>Update HP 64 bit options</td></tr>
<tr><td>2005-05-04</td><td>David Bertoni</td><td>Fix for Jira issue XERCESC-1416</td></tr>
<tr><td>2005-05-04</td><td>David Bertoni</td><td>Fix for Jira issue XERCESC-1391</td></tr>
<tr><td>2005-04-29</td><td>David Bertoni</td><td>Patch for Jira issue XERCESC-1407</td></tr>
<tr><td>2005-04-29</td><td>David Bertoni</td><td>Patch for Jira issue XERCESC-1390</td></tr>
<tr><td>2005-04-28</td><td>Alberto Massari</td><td>Move implementation of setDocument to the cpp file, where DOMDocumentImpl is a known class (jira 968)</td></tr>
<tr><td>2005-04-27</td><td>David Cargill </td><td>Fix for problem on Solaris where open may return 0 as a valid FileHandle. Check for -1 instead.</td></tr>
<tr><td>2005-04-26</td><td>David Cargill </td><td>Fix for xercesc-1413: invalid operator equal template signature</td></tr>
<tr><td>2005-04-26</td><td>David Cargill </td><td>Schema updates to match spec</td></tr>
<tr><td>2005-04-26</td><td>David Cargill </td><td>Prefix mapping update to handle schema correctly.</td></tr>
<tr><td>2005-04-24</td><td>David Cargill </td><td>Remove collaboration graph from apiDocs </td></tr>
<tr><td>2005-04-22</td><td>David Bertoni </td><td> Patch for Jira issue XERCESC-1411 </td></tr>
<tr><td>2005-04-22</td><td>David Cargill </td><td>Use isspace instead of isSpace as data is char not xmlch</td></tr>
<tr><td>2005-04-22</td><td>David Bertoni </td><td>Patch for Jira issue XERCESC-1410</td></tr>
<tr><td>2005-04-21</td><td>David Cargill </td><td>Add support for ucs-2</td></tr>
<tr><td>2005-04-14</td><td>David Bertoni</td><td>Fix Jira 1406. Added include</td></tr>
<tr><td>2005-04-12</td><td>Alberto Massari</td><td>Fix compiler errors on IRIX (jira 1405)</td></tr>
<tr><td>2005-04-07</td><td>Khaled Noaman </td><td>Update chars table with an NCName char mask instead of an XML letter mask</td></tr>
<tr><td>2005-04-07</td><td>Alberto Massari </td><td>appendChild now throws an exception when a NULL pointer is given (jira# 1401) </td></tr>
<tr><td>2005-04-05</td><td>David Cargill</td><td>Update XSValue to handle leading and trailing whitespace</td></tr>
<tr><td>2005-04-05</td><td>David Cargill </td><td>Change platform mutex code to do a panic </td></tr>
<tr><td>2005-04-05</td><td>Khaled Noaman </td><td>Performance: do not make a copy of the expression to match</td></tr>
<tr><td>2005-04-05</td><td>David Cargill </td><td>Implement version of lowercase that only check a to z</td></tr>
<tr><td>2005-04-05</td><td>David Cargill</td><td>Update Redirect sample to use newer entity resolver callback </td></tr>
<tr><td>2005-04-05</td><td>David Cargill</td><td>Implement support for disabling default entity resolution </td></tr>
<tr><td>2005-04-05</td><td>Khaled Noaman </td><td> skip DTD validation feature </td></tr>
<tr><td>2005-04-05</td><td>David Bertoni</td><td> Fix thread safety issues</td></tr>
<tr><td>2005-04-05</td><td>Axel Weib </td><td>Fix for jira 1397. *Much* nicer make output</td></tr>
<tr><td>2005-04-05</td><td>Gareth Reakes </td><td>Fix for Jira 1396. make distclean now removes all files</td></tr>
<tr><td>2005-04-04</td><td>David Cargill </td><td>Fix a problem where illegal qualified names were not reported as errors</td></tr>
<tr><td>2005-04-04</td><td>David Cargill </td><td>Fix memory leak when deserializing grammars </td></tr>
<tr><td>2005-04-04</td><td>David Cargill </td><td>Add support for not creating xsannotations when deserializing a grammar </td></tr>
<tr><td>2005-04-01</td><td>David Bertoni </td><td>Fix for Jira issue XERCESC-1389: memory manager </td></tr>
<tr><td>2005-04-01</td><td>Alberto Massari </td><td>In case of a mixed-case standalone value, the flag was always set to false</td></tr>
<tr><td>2005-03-31</td><td>Alberto Massari</td><td>Don't invoke the resolver when an empty xs:import is found</td></tr>
<tr><td>2005-03-30</td><td>David Cargill </td><td>Allow XSAnnotation generation to be controlled by a feature </td></tr>
<tr><td>2005-03-29</td><td>David Cargill </td><td>Begin work on adding some new features by checking in the feature handling support</td></tr>
<tr><td>2005-03-25</td><td>Alberto Massari </td><td>On Windows, export the class from the DLL </td></tr>
<tr><td>2005-03-22</td><td>Christian Will </td><td>Perf patches for Xercesc-1369 and 1370</td></tr>
<tr><td>2005-03-20</td><td>David Cargill </td><td>Implement versions of uppercase and compareIstring that only check a to z</td></tr>
<tr><td>2005-03-20</td><td>David Cargill </td><td>Add FLOAT(IEEE) to list of 390 compiler options so XSValueTest will compile </td></tr>
<tr><td>2005-03-20</td><td>Christian Will </td><td>[jira 1381] Memory leak in GrammarResolver </td></tr>
<tr><td>2005-03-17</td><td>Alberto Massari </td><td>Aligned method declaration (jira# 1386)</td></tr>
<tr><td>2005-03-17</td><td>Gareth Reake </td><td>Updated doc to refect real behaviour with adoptBuffer</td></tr>
<tr><td>2005-03-17</td><td>Alberto Massari</td><td>Remove variable declaration from 'if' statement (jira# 1379)</td></tr>
<tr><td>2005-03-17</td><td>Alberto Massari </td><td>Fully qualify enum (jira# 1383)</td></tr>
<tr><td>2005-03-17</td><td>Alberto Massari </td><td>Aligned method declaration (jira# 1384)</td></tr>
<tr><td>2005-03-16</td><td>Matthew Hall </td><td>Fix possible overflow problem </td></tr>
<tr><td>2005-03-14</td><td>Gareth Reakes </td><td> Fix for Jira 1376: wrong memory manager</td></tr>
<tr><td>2005-03-14</td><td>Gareth Reakes</td><td>Fix to Jira 1375. Removed space char between #! and /.</td></tr>
<tr><td>2005-03-11</td><td>Christian Will </td><td>XERCESC-1345: Reset fDTDElemeNonDeclPool in scanreset </td></tr>
<tr><td>2005-03-11</td><td>David Earlam </td><td>XERCESC-1363: Increase size of BaseRefVectorOf based on size of data not by 32 </td></tr>
<tr><td>2005-03-09</td><td>Alberto Massari </td><td>Protected getSrcOffset to avoid crashing when parsing has finished; updated documentation </td></tr>
<tr><td>2005-03-08</td><td>Alberto Massari </td><td>Redeclare a namespace binding if the prefix is already bound to a different namespace (jira# 1371) </td></tr>
<tr><td>2005-03-08</td><td>Christian Will </td><td>Improve performances of XMLString::tokenizeString (jira# 1363)</td></tr>
<tr><td>2005-03-07</td><td>Khaled Noaman </td><td>Eliminate lazy creation of attribute lists</td></tr>
<tr><td>2005-03-04</td><td>Markus Scherer </td><td>Initialize ICU to avoid multithreading problems</td></tr>
<tr><td>2005-03-04</td><td>Alberto Massari </td><td>The URL fragments were leaked (jira# 1362)</td></tr>
<tr><td>2005-03-03</td><td>Steve Dulin </td><td>Update samples to use XERCESCOUT instead of XERCESCROOT </td></tr>
<tr><td>2005-03-03</td><td>Alberto Massari </td><td>Removing makefile project, as BCB6 users should use the .bpr project (jira# 1347)</td></tr>
<tr><td>2005-03-03</td><td>David Bertoni </td><td>Removed superfluous const qualifiers</td></tr>
<tr><td>2005-02-25</td><td>David Cargill </td><td>Attempt to fix compiler errors</td></tr>
<tr><td>2005-02-25</td><td>David Bertoni </td><td> Performance improvements </td></tr>
<tr><td>2005-02-25</td><td>Alberto Massari </td><td>Fixing spelling errors </td></tr>
<tr><td>2005-02-25</td><td>Scott Cantor </td><td>Fix for compile under gcc 4</td></tr>
<tr><td>2005-02-25</td><td>David Bertoni </td><td>Fix thread safety issues. Jira #30380. Thanks to David Bertoni</td></tr>
<tr><td>2005-02-23</td><td>Mike Boos </td><td>Various PSVI fixes </td></tr>
<tr><td>2005-02-23</td><td>Steve Dulin</td><td>Allow ICU to be used for transcoding and casing </td></tr>
<tr><td>2005-02-23</td><td>David Cargill </td><td>Copy performance change made to XMLUTF8Transcoder.cpp to the 390 version</td></tr>
<tr><td>2005-02-21</td><td>James Berry </td><td>Bugfix: XERCESC-1074; get rid of warnings </td></tr>
<tr><td>2005-02-21</td><td>David Cargill </td><td>Doc updates, including xercesc-1352 </td></tr>
<tr><td>2005-02-21</td><td>Christian Will</td><td>Performance fixes </td></tr>
<tr><td>2005-02-21</td><td>Alberto Massari </td><td>Updated makefile (bug# 1346)</td></tr>
<tr><td>2005-02-19</td><td>David Cargill </td><td>Update error message from regular expressions </td></tr>
<tr><td>2005-02-19</td><td>David Bertoni </td><td>Prefix mapping fix </td></tr>
<tr><td>2005-02-19</td><td>David Cargill </td><td>Store key for recreating table instead of using enclosingscope</td></tr>
<tr><td>2005-02-18</td><td>James Berry</td><td>Update release plan with tenative 3.0 list</td></tr>
<tr><td>2005-02-14</td><td>James Berry</td><td>Fix spelling of fgMacLCPEncodingName</td></tr>
<tr><td>2005-02-11</td><td>James Berry </td><td>Remove from project obsolete files XObjectComparator and XTemplateComparator. </td></tr>
<tr><td>2005-02-11</td><td>Chris Cates</td><td>Explicitly create a unicode collator for Mac</td></tr>
<tr><td>2005-02-07</td><td>Alberto Massari </td><td>AStatic builds had incomplete MIDL command lines </td></tr>
<tr><td>2005-02-02</td><td>Alberto Massari </td><td>Enable building of tests and samples under Interix (jira# 1330)</td></tr>
<tr><td>2005-02-02</td><td>Alberto Massari </td><td>Mark global variables for this module as static (jira# 1331)</td></tr>
<tr><td>2005-02-02</td><td>Alberto Massari </td><td>Added rehashing capabilities </td></tr>
<tr><td>2005-01-26</td><td>Alberto Massari</td><td>If the option /Zc:wchar_t is specified, map XMLCh to wchar_t (jira# 413) </td></tr>
<tr><td>2005-01-26</td><td>Alberto Massari</td><td>XMemory updates</td></tr>
<tr><td>2005-01-20</td><td>David Cargill </td><td>Xercesc-1326: Documentation update for getTextContext.</td></tr>
<tr><td>2005-01-20</td><td>David Cargill </td><td>Xercesc-1328: Fix spelling of XMLUni::fgXercesUseCachedGrammarInParse (missing an a in parse)</td></tr>
<tr><td>2005-01-18</td><td>Steve Dulin</td><td>Delete memory for parser and grammarpool</td></tr>
<tr><td>2005-01-14</td><td>Alberto Massari</td><td>When entity reference creation was on, the document created by the parser was leaked (jira# 490) </td></tr>
<tr><td>2005-01-13</td><td>Alberto Massari </td><td>Support for UnixWare 7.1.1 (jira# 1148)</td></tr>
<tr><td>2005-01-12</td><td>David Cargill </td><td>Fix for xercesc-1219</td></tr>
<tr><td>2005-01-12</td><td>David Cargill</td><td>Remove warning messages.</td></tr>
<tr><td>2005-01-08</td><td>Alberto Massari </td><td> Fixes to compile with Visual Studio 2005 (jira# 1253)</td></tr>
<tr><td>2005-01-08</td><td>David Cargill </td><td>Fix for Xercesc-1283: incorrect case for xmluni predefined constant in doc</td></tr>
<tr><td>2005-01-07</td><td>David Cargill </td><td>Fix for Xercesc-1314: clarify what is xercescroot.</td></tr>
<tr><td>2005-01-07</td><td>Alberto Massari </td><td>Updated Borland makefile</td></tr>
<tr><td>2005-01-07</td><td>Alberto Massari </td><td>scanReset() should always clear the maps used to detect duplicate attributes</td></tr>
<tr><td>2005-01-06</td><td>Alberto Massari </td><td>Removed warnings</td></tr>
<tr><td>2005-01-06</td><td>Alberto Massari </td><td> When emitting a "duplicate attribute" error, we were using an unitialized pointer variable</td></tr>
<tr><td>2005-01-06</td><td>David Cargill </td><td>Update SAX2Print sample project files to add new files recently added to sample </td></tr>
<tr><td>2005-01-05</td><td>Alberto Massari </td><td>Add icpc to the list of C++ compilers (jira# 1311) </td></tr>
<tr><td>2005-01-03</td><td>James Berry </td><td>Add support for use of ICU with Mac OS X version</td></tr>
<tr><td>2005-01-03</td><td>Alberto Massari </td><td>maps used to detect duplicate attributes are now cleaned </td></tr>
<tr><td>2005-01-03</td><td>Alberto Massari </td><td>Fixed name of include file [jira#1321]</td></tr>
<tr><td>2004-12-30</td><td>Alberto Massari</td><td>Notify advanced handlers of the whitespace before and after the root document element (jira# 729)</td></tr>
<tr><td>2004-12-30</td><td>Alberto Massari</td><td>Delete the user data informations only after invoking all the NODE_DELETED handlers (jira# 620)</td></tr>
<tr><td>2004-12-30</td><td>Alberto Massari</td><td>Added API to remove all entries having the same primary key</td></tr>
<tr><td>2004-12-29</td><td>Alberto Massari</td><td>The second call to ucnv_fromUChars was causing the buffer not to be terminated (jira#1300)</td></tr>
<tr><td>2004-12-28</td><td>James Berry</td><td>Add support for use of sockets netaccessor on Mac OS X.</td></tr>
<tr><td>2004-12-28</td><td>James Berry</td><td>Fix syntax error caught by GCC 4</td></tr>
<tr><td>2004-12-28</td><td>Alberto Massari</td><td>DOMDocument::cloneNode can clone the element definitions (bug# 647)</td></tr>
<tr><td>2004-12-28</td><td>Alberto Massari</td><td>Store fAxisType as an integer, not as a XMLCh (bug# 1177)</td></tr>
<tr><td>2004-12-24</td><td>Alberto Massari</td><td>Add support for SAX2 filters (jira# 1133)</td></tr>
<tr><td>2004-12-23</td><td>David Cargill</td><td>XSValue Updates</td></tr>
<tr><td>2004-12-23</td><td>Alberto Massari</td><td>Use correct prefix on end tag</td></tr>
<tr><td>2004-12-21</td><td>David Cargill</td><td>Attempt to fix various apidoc problems</td></tr>
<tr><td>2004-12-20</td><td>David Cargill</td><td>Add assert to avoid memory violation</td></tr>
<tr><td>2004-12-13</td><td>Christian Will</td><td>Performance improvement</td></tr>
<tr><td>2004-12-12</td><td>Alberto Massari</td><td>Take into account the fExpandEntityReferences setting [jira# 1303]</td></tr>
<tr><td>2004-12-10</td><td>David Cargill</td><td>Fix problem with hexbin::decode and use XMLByte instead of XMLCh for output of decoding.</td></tr>
<tr><td>2004-12-09</td><td>Khaled Noman</td><td> DOM L3: pass schema normalized value only when datatype-normalization feature is enabled.</td></tr>
<tr><td>2004-12-09</td><td>Alberto Massari</td><td>Fxi for jira392</td></tr>
<tr><td>2004-12-07</td><td>Khaled Noman</td><td>An option to ignore a cached DTD grammar</td></tr>
<tr><td>2004-12-07</td><td>Alberto Massari</td><td>Fixed memory leak in operator= [jira# 1307]</td></tr>
<tr><td>2004-12-06</td><td>Alberto Massari</td><td>Take into account the fExpandEntityReferences setting [jira# 1303]</td></tr>
<tr><td>2004-12-06</td><td>David Cargill</td><td>Clean-up error text for a message that said unsupported</td></tr>
<tr><td>2004-12-05</td><td>Alberto Massari</td><td>Added XMLString::release(void**, MemoryManager*) [jira# 1301]</td></tr>
<tr><td>2004-12-05</td><td>Alberto Massari</td><td>entity resolver behaviour </td></tr>
<tr><td>2004-12-01</td><td>Alberto Massari</td><td>Avoid throwing an exception when orphaning a cached grammar that has not been used yet</td></tr>
<tr><td>2004-12-01</td><td>David Cargill</td><td>Update two error messages: add missing parameter, remove extra parameter</td></tr>
<tr><td>2004-12-01</td><td>Stephen Dulin</td><td>Update ccsid.h for new release of icu</td></tr>
<tr><td>2004-12-01</td><td>David Cargill</td><td>Fix for bug xercesc-1304</td></tr>
<tr><td>2004-11-29</td><td>David Cargill</td><td>Update MS VC7.1 build options</td></tr>
<tr><td>2004-11-29</td><td>David Cargill</td><td>Remove XObjectComparator and XTemplateComparator. These are debug files that aren't used.</td></tr>
<tr><td>2004-11-25</td><td>Khaled Noaman</td><td>Fix for synthetic annotation generation on 'extension' element of simpleContent</td></tr>
<tr><td>2004-11-25</td><td>Khaled Noaman</td><td>Fix problem with an All content model with minOccurs of 0.</td></tr>
<tr><td>2004-11-24</td><td>Dave Bertoni</td><td>Fix to correctly report the boundaries of an external subset</td></tr>
<tr><td>2004-11-18</td><td>Christian Will</td><td>Memory improvement to utility classes</td></tr>
<tr><td>2004-11-18</td><td>David Cargill</td><td>Changes for linker problems with linux build using xlc.</td></tr>
<tr><td>2004-11-17</td><td>Christian Will</td><td>Performance improvement to utility classes.</td></tr>
<tr><td>2004-11-15</td><td>Alberto Massari</td><td>Add build target for VC7.1 to create a static library</td></tr>
<tr><td>2004-11-14</td><td>PeiYong Zhang</td><td>XSValue updates</td></tr>
<tr><td>2004-11-13</td><td>David Cargill</td><td>Fix for validate annotations.</td></tr>
<tr><td>2004-11-12</td><td>Khaled Noaman</td><td>Fix multi threading problem.</td></tr>
<tr><td>2004-11-10</td><td>PeiYong Zhang</td><td>To build ICU3.2 and on Linux/xlC_r</td></tr>
<tr><td>2004-11-09</td><td>PeiYong Zhang</td><td>Storer_NewerThan_Loader</td></tr>
<tr><td>2004-11-08</td><td>PeiYong Zhang</td><td>MSVC 7.1</td></tr>
<tr><td>2004-11-08</td><td>Alberto Massari</td><td>Fix for jira#1298: NetBSD uses r+ to open files for reading</td></tr>
<tr><td>2004-11-07</td><td>PeiYong Zhang</td><td>read/write Storer level</td></tr>
<tr><td>2004-11-05</td><td>PeiYong Zhang</td><td>Msg build versioning</td></tr>
<tr><td>2004-11-02</td><td>PeiYong Zhang</td><td>[Jira#1294] Compiler Warnings on IRIX with MIPSpro compiler ver 7.4</td></tr>
<tr><td>2004-11-02</td><td>PeiYong Zhang</td><td>Handling OutOfMemory exception</td></tr>
<tr><td>2004-10-28</td><td>David Cargill</td><td>Add missing parameter to three error messages.</td></tr>
<tr><td>2004-10-28</td><td>PeiYong Zhang</td><td>Data member reshuffle and store/load</td></tr>
<tr><td>2004-10-27</td><td>PeiYong Zhang</td><td>Optimized alignment for various data types</td></tr>
<tr><td>2004-10-27</td><td>James Berry</td><td>MacOS build updates</td></tr>
<tr><td>2004-10-26</td><td>PeiYong Zhang</td><td>Maintain consistent order among multiple store/load session to allow comparison</td></tr>
<tr><td>2004-10-26</td><td>Gareth Reakes</td><td>Fixed version number</td></tr>
<tr><td>2004-10-20</td><td>Khaled Noaman</td><td>Allow option of initializing static data in XMLPlatformUtils::Initialize</td></tr>
<tr><td>2004-10-19</td><td>PeiYong Zhang</td><td>XercesC2_6_0 updates: build debuged libary on Windows/VC6</td></tr>
<tr><td>2004-10-19</td><td>PeiYong Zhang</td><td>[Jira#1287] new deprecated DOM libraries not included in .spec file for Linux</td></tr>
<tr><td>2004-10-19</td><td>Khaled Noaman</td><td>Performance improvement</td></tr>
<tr><td>2004-10-15</td><td>David Cargill</td><td>Fix for jira bug 1234. Infinite loop in XSComplexTypeDefinition::derviedFromType.</td></tr>
<tr><td>2004-10-13</td><td>PeiYong Zhang</td><td>using ValueHashTableOf to reduce footprint</td></tr>
<tr><td>2004-10-13</td><td>David Cargill</td><td>Fix for jira bug 1282: empty exception message being generated</td></tr>
<tr><td>2004-10-13</td><td>David Cargill</td><td>Serialization fix, fPVSIScope not serialized.</td></tr>
<tr><td>2004-10-12</td><td>PeiYong Zhang</td><td>Change attribute number threshold to 100</td></tr>
<tr><td>2004-10-04</td><td>PeiYong Zhang</td><td>Support to build ICU3.0 on Solaris2.8 64-bit</td></tr>
<tr><td>2004-10-04</td><td>Alberto Massari</td><td>Fix for Jira 866</td></tr>
</table>
</s2>
<anchor name="Release260"/>
<s2 title="Release Information for &XercesCName; 2.6.0">
<p>Here is the list of bugs that are resolved in this release, &XercesCName; 2.6.0.
</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr><td>2004-09-29</td><td>Khaled Noaman </td><td>Bug 1209 </td></tr>
<tr><td>2004-09-29</td><td>David Cargill </td><td>Mark SAXParser as deprecated. </td></tr>
<tr><td>2004-09-29</td><td>David Cargill </td><td>jira1217 </td></tr>
<tr><td>2004-09-29</td><td>Dan Rosen </td><td> jira1207 </td></tr>
<tr><td>2004-09-28</td><td>Khaled Noaman, Anthony O'Dowd </td><td> Performance: improve src offset calculation. </td></tr>
<tr><td>2004-09-28</td><td>PeiYong Zhang </td><td> Optimized duplicated attributes checking for large number of attributes</td></tr>
<tr><td>2004-09-28</td><td>Alberto Massari </td><td>BCC 511 updates </td></tr>
<tr><td>2004-09-27</td><td>David Cargill </td><td>Update sample to use an error handler and only generate xsmodel when a schema document has been loaded successfully. </td></tr>
<tr><td>2004-09-27</td><td>David Cargill </td><td> Update documentation to describe new features </td></tr>
<tr><td>2004-09-27</td><td>Khaled Noaman, David Cargill </td><td>Validate annotations </td></tr>
<tr><td>2004-09-27</td><td>Khaled Noaman</td><td> Reset datatype validator </td></tr>
<tr><td>2004-09-27</td><td>David Cargill </td><td>XERCESC-1277 </td></tr>
<tr><td>2004-09-26</td><td>Khaled Noaman </td><td>[Bug 1197] </td></tr>
<tr><td>2004-09-25</td><td>Gareth Reakes, Adam Heinz </td><td> Fix to 1264. All refererences to public headers now use the include files.</td></tr>
<tr><td>2004-09-25</td><td>James Littlejohn </td><td> Fix documentation generation problem. </td></tr>
<tr><td>2004-09-23</td><td>Alberto Massari </td><td>jira1259 </td></tr>
<tr><td>2004-09-22</td><td>David Cargill </td><td>Add support for generating synthetic XSAnnotations. </td></tr>
<tr><td>2004-09-22</td><td>David Cargill </td><td> Fix memory leak in PSVIWriter sample.</td></tr>
<tr><td>2004-09-22</td><td>John Hibbert </td><td> Bug fixes </td></tr>
<tr><td>2004-09-22</td><td>David Cargill </td><td> Remove unused variable and data member. </td></tr>
<tr><td>2004-09-22</td><td>Alberto Massari </td><td> Reorder initialization of variables in constructor </td></tr>
<tr><td>2004-09-21</td><td>PeiYong Zhang </td><td>Do not build/ship debug version lib on Windows </td></tr>
<tr><td>2004-09-21</td><td>PeiYong Zhang </td><td>Change lib name on Windows from 2_5_0 to 2_5 </td></tr>
<tr><td>2004-09-21</td><td>David Cargill </td><td> Documentation Updates. </td></tr>
<tr><td>2004-09-21</td><td>PeiYong Zhang</td><td> Handle partial PSVIElement</td></tr>
<tr><td>2004-09-20</td><td>James Berry </td><td>Mac updates </td></tr>
<tr><td>2004-09-20</td><td>Alberto Massari </td><td>Added a setCreateSchemaInfo method to the DOM parsers, to store PSVI informations in element and attribute nodes </td></tr>
<tr><td>2004-09-20</td><td>Alberto Massari </td><td> Mark some methods as deprecated </td></tr>
<tr><td>2004-09-16</td><td>Alberto Massari </td><td>Remove XercesMessages_en_US.hpp from the Win32 projects (they use the WinRC MsgLoader)</td></tr>
<tr><td>2004-09-16</td><td>PeiYong Zhang </td><td>provide default implementation for CreateDocumentType </td></tr>
<tr><td>2004-09-16</td><td>Alberto Massari </td><td> Don't include icudata.lib to the Windows projects: ICU 3.0 has renamed and it's no more needed since ICU 2.0 </td></tr>
<tr><td>2004-09-16</td><td>Alberto Massari </td><td> Updated error message for UPA to also state the complex type that is failing the test </td></tr>
<tr><td>2004-09-14</td><td>Alberto Massari, Ron Romero </td><td> jira 855) </td></tr>
<tr><td>2004-09-14</td><td>Alberto Massari</td><td>jira1248 </td></tr>
<tr><td>2004-09-14</td><td>Alberto Massari </td><td>jira1261 </td></tr>
<tr><td>2004-09-13</td><td>PeiYong Zhang </td><td> new method: getActualValue()</td></tr>
<tr><td>2004-09-10</td><td> David Bertoni</td><td>Performance improvement fix to more efficiently findattdef. </td></tr>
<tr><td>2004-09-10</td><td>David Bertoni </td><td>Return bool as described in the interface for cacheGrammar instead of throwing an exception. </td></tr>
<tr><td>2004-09-09</td><td>David Cargill, Steve Dulin </td><td>0S/390 build updates</td></tr>
<tr><td>2004-09-08</td><td>PeiYong Zhang </td><td> Apache License Version 2.0</td></tr>
<tr><td>2004-09-04</td><td>David Cargill </td><td> XercesC-1269 Fix: Remove extra comma. </td></tr>
<tr><td>2004-09-02</td><td>David Cargill </td><td> Fix API Doc warning message</td></tr>
<tr><td>2004-09-02</td><td>David Cargill, Patrick Townsend and Jay Hansen </td><td> OS400 Build updates </td></tr>
<tr><td>2004-09-02</td><td> David Cargill </td><td> Specify bmaxdata for AIX samples and tests.</td></tr>
<tr><td>2004-09-02</td><td>David Cargill </td><td> Add OutOfMemoryException block to samples and tests.</td></tr>
<tr><td>2004-08-31</td><td>David Cargill </td><td>Thread safety change for getTypeLocalName and getTypeUri </td></tr>
<tr><td>2004-08-30</td><td>Alberto Massari </td><td>Reduce memory footprint of DOMNode::setUserData</td></tr>
<tr><td>2004-08-30</td><td>Alberto Massari </td><td>Don't allocate a DOMTypeInfo object if there is no type info to store </td></tr>
<tr><td>2004-08-30</td><td>Alberto Massari </td><td>Added transferElement API </td></tr>
<tr><td>2004-08-27</td><td>Alberto Massari </td><td>getXSModel fix </td></tr>
<tr><td>2004-08-20</td><td>David Cargill</td><td>Jira bug XERCESC-1257 </td></tr>
<tr><td>2004-08-19</td><td>PeiYong Zhang </td><td>Add XSValue test </td></tr>
<tr><td>2004-08-11</td><td>Andrew Fang </td><td>Fixing Xerces-C crash when creating a MixedContentModel </td></tr>
<tr><td>2004-08-11</td><td>PeiYong Zhang </td><td>Externalised validation, actual/canonical value production for Schema built-in data types </td></tr>
<tr><td>2004-07-27</td><td>PeiYong Zhang </td><td>build on aix xlC_r v6 with v5 comptiable name mangling scheme </td></tr>
<tr><td>2004-07-26</td><td>Alberto Massari </td><td>reset() was not resetting the stack of types (jira1245) </td></tr>
<tr><td>2004-07-23</td><td>Anders Hybertz</td><td>calcRequiredSize assumed all the characters were of the same size (jira1142)</td></tr>
<tr><td>2004-07-23</td><td>Alberto Massari </td><td>jira1179 </td></tr>
<tr><td>2004-07-23</td><td>Alberto Massari </td><td>jira1206 </td></tr>
<tr><td>2004-07-23</td><td>Alberto Massari </td><td> A global mutex was not cleaned up </td></tr>
<tr><td>2004-07-23</td><td>Alberto Massari </td><td>jira 862</td></tr>
<tr><td>2004-07-22</td><td>Bob Buck </td><td>jira1186 </td></tr>
<tr><td>2004-07-22</td><td>Khaled Noaman</td><td>Use file static instance instead of local static instance </td></tr>
<tr><td>2004-07-22</td><td>Khaled Noaman</td><td>Eliminate the need to create a temporary content model when performing UPA checking</td></tr>
<tr><td>2004-07-21</td><td>PeiYong Zhang </td><td>use the supplied memory manager</td></tr>
<tr><td>2004-07-16</td><td>Alberto Massari </td><td>Enable libWWW on Solaris </td></tr>
<tr><td>2004-07-13</td><td>Joanne Bogart</td><td>Fixed bugzilla bug 23100.</td></tr>
<tr><td>2004-07-12</td><td>PeiYong Zhang </td><td>Increment patnIndex only when a match is found </td></tr>
<tr><td>2004-07-12</td><td>David Bertoni </td><td>IGXMLScanner::fErrorStack not cleared if an exception is thrown </td></tr>
<tr><td>2004-07-09</td><td>PeiYong Zhang </td><td>Build on HP-Itanium, aCC A.05.52</td></tr>
<tr><td>2004-07-09</td><td>Syam Gadde </td><td>jira957 </td></tr>
<tr><td>2004-07-08</td><td>Alberto Massari </td><td>jira1236 </td></tr>
<tr><td>2004-07-08</td><td>Alberto Massari </td><td> Force the destruction of an XMLBuffer before terminating Xerces</td></tr>
<tr><td>2004-07-08</td><td>David Cargill, Khaled Noaman, Steve Dulin </td><td>ThreadTest updates </td></tr>
<tr><td>2004-07-07</td><td>PeiYong Zhang </td><td>Upgrade to ICU3.0</td></tr>
<tr><td>2004-07-07</td><td>Alberto Massari </td><td>Fix for jira1170</td></tr>
<tr><td>2004-07-07</td><td>Ray Logel </td><td>Fir for jira1136</td></tr>
<tr><td>2004-07-06</td><td>Alberto Massari </td><td>Fix for jira1226 </td></tr>
<tr><td>2004-07-06</td><td>Alberto Massari </td><td>Fix for jira1238 </td></tr>
<tr><td>2004-07-06</td><td>Alberto Massari </td><td>Fix for jira1210 </td></tr>
<tr><td>2004-07-06</td><td>David Cargill </td><td>Rename VALUE_CONSTRAINT enumeration names </td></tr>
<tr><td>2004-06-28</td><td>David Cargill</td><td>Initialize memory manager to default.</td></tr>
<tr><td>2004-06-24</td><td>PeiYong Zhang </td><td>Schema-Errata </td></tr>
<tr><td>2004-06-23</td><td>Neil Graham </td><td>fix for compilation under gcc 3.5</td></tr>
<tr><td>2004-06-22</td><td>Alberto Massari </td><td>Fix for jira1181 </td></tr>
<tr><td>2004-06-21</td><td>Neil Graham </td><td>don't switch grammars unnecessarily </td></tr>
<tr><td>2004-06-21</td><td>Alberto Massari </td><td>Fixed memory leak (jira1228)</td></tr>
<tr><td>2004-06-15</td><td>David Bertoni </td><td>Memory Leakage Fixed </td></tr>
<tr><td>2004-06-15</td><td>Steve Dulin </td><td>make sure tables are properly aligned</td></tr>
<tr><td>2004-06-15</td><td>Neil Graham </td><td>supported C++ namespaces doc update </td></tr>
<tr><td>2004-06-14</td><td>PeiYong Zhang </td><td>Consolidated End Of Line Handling</td></tr>
<tr><td>2004-06-09</td><td>John Snelson</td><td>Fixed null pointer bug</td></tr>
<tr><td>2004-06-02</td><td>Neil Graham </td><td>Fix bug where scanners would accept malformed tags and perf improvements </td></tr>
<tr><td>2004-06-01</td><td>David Cargill </td><td>Fix memory leak.</td></tr>
<tr><td>2004-05-31</td><td>PeiYong Zhang </td><td>XML 1.1 </td></tr>
<tr><td>2004-05-27</td><td>Neil Graham </td><td>Performance fix: clearing the undeclared attribute maps on start tags</td></tr>
<tr><td>2004-05-25</td><td>PeiYong Zhang </td><td>normalizeURI() added</td></tr>
<tr><td>2004-05-25</td><td>PeiYong Zhang </td><td>XMLString::removeChar added </td></tr>
<tr><td>2004-05-21</td><td>David Bertoni </td><td>[jira1216] GrammarResolver never clears internal cache of Grammar instances</td></tr>
<tr><td>2004-05-19</td><td>PeiYong Zhang </td><td>MingGW updates </td></tr>
<tr><td>2004-05-14</td><td>PeiYong Zhang </td><td>UTF-8 new error message </td></tr>
<tr><td>2004-05-11</td><td>Alberto Massari </td><td>The net accessor input source now can be used to get data using PUT or POST </td></tr>
<tr><td>2004-05-10</td><td>Alberto Massari </td><td>Performance: push a new map on the namespace stack only when an element has a xmlns attribute</td></tr>
<tr><td>2004-05-05</td><td>Alberto Massari </td><td> Enable libWWW on Linux </td></tr>
<tr><td>2004-05-05</td><td>Alberto Massari </td><td>Added error message for the HTTP NetAccessor</td></tr>
<tr><td>2004-05-05</td><td>Alberto Massari </td><td>xlat doesn't compile on Windows </td></tr>
<tr><td>2004-05-04</td><td>David Cargill </td><td>Enable IDs to work on all kinds of schema components</td></tr>
<tr><td>2004-05-03</td><td>David Bertoni </td><td>To resolveGrammar correctly</td></tr>
<tr><td>2004-04-22</td><td>Steve Dulin </td><td>not all 390 processors support the new transcoding instructions </td></tr>
<tr><td>2004-04-22</td><td>David Cargill </td><td>Misc fix to update fCount in the correct place.</td></tr>
<tr><td>2004-04-22</td><td>David Cargill </td><td>Schema bug with group redefined </td></tr>
<tr><td>2004-04-22</td><td>David Cargill </td><td>Misc doc updates</td></tr>
<tr><td>2004-04-20</td><td>PeiYong Zhang </td><td> xlat generate code for private default constructor</td></tr>
<tr><td>2004-04-20</td><td>PeiYong Zhang </td><td>XML1.0 3rd Edition Updates </td></tr>
<tr><td>2004-04-19</td><td>Shin'ya MORINO</td><td>Add "UTF16" as a synonym for UTF-16 (bug #XERCESC-1198) </td></tr>
<tr><td>2004-04-16</td><td>David Cargill </td><td>Doc updates for Jira </td></tr>
<tr><td>2004-04-15</td><td>James Berry </td><td>Various MAC fixes </td></tr>
<tr><td>2004-04-14</td><td>David Cargill </td><td>Various PSVI Fixes </td></tr>
<tr><td>2004-04-13</td><td>PeiYong Zhang </td><td>Identity Constraints </td></tr>
<tr><td>2004-04-12</td><td>David Cargill </td><td>Doc updates </td></tr>
<tr><td>2004-04-07</td><td>PeiYong Zhang </td><td>Add createDocumentType </td></tr>
<tr><td>2004-04-07</td><td>PeiYong Zhang </td><td>Grammar caching of DTD internal subsets </td></tr>
<tr><td>2004-04-06</td><td>Steve Dulin </td><td>fix for file resolution problems on OS/390 </td></tr>
<tr><td>2004-04-06</td><td>Alberto Massari </td><td>DTDs included from XML Schema were not opened using the entity resolver specified by the user (bug# 27008)</td></tr>
<tr><td>2004-04-05</td><td>PeiYong Zhang </td><td>make comparison case insensitive, typo in error message corrected.</td></tr>
<tr><td>2004-04-02</td><td>PeiYong Zhang </td><td>Annotation reporting improvements </td></tr>
<tr><td>2004-04-02</td><td>Berin Lautenbach </td><td>item() was could only return items found in the first non-empty bucket</td></tr>
<tr><td>2004-04-01</td><td>PeiYong Zhang </td><td>Add Messages to DOMExceptions </td></tr>
<tr><td>2004-03-30</td><td>PeiYong Zhang </td><td>packageBinaries.pl improvements </td></tr>
<tr><td>2004-03-24</td><td>Alberto Massari </td><td>importNode bug fix </td></tr>
<tr><td>2004-03-19</td><td>PeiYong Zhang </td><td>Serialization Changes </td></tr>
<tr><td>2004-03-17</td><td>PeiYong Zhang </td><td>Deprecated DOM </td></tr>
<tr><td>2004-03-17</td><td>Alberto Massari </td><td>Inside attribute values, new lines must be escaped (bug#20858)</td></tr>
<tr><td>2004-03-15</td><td>Alberto Massari </td><td>Added support for MinGW (bug#23176)</td></tr>
<tr><td>2004-03-10</td><td>Alberto Massari</td><td>Fix documentation for binToText (bug# 9207) </td></tr>
<tr><td>2004-03-09</td><td>PeiYong Zhang </td><td>Serialization changes </td></tr>
<tr><td>2004-03-05</td><td>Alberto Massari </td><td>DOMNamedNodeMap Performance Improvements </td></tr>
<tr><td>2004-03-05</td><td>Michael Boos </td><td>PSVI Fixes</td></tr>
<tr><td>2004-03-05</td><td>Alberto Massari </td><td>The maps inside the DTD are declared of the right type, removing the need for casts</td></tr>
<tr><td>2004-03-05</td><td>Alberto Massari </td><td> Removed unnecessary inclusion of implementation headers </td></tr>
<tr><td>2004-03-03</td><td>Alberto Massari </td><td>DOMNodeVector is used only to store attributes; save memory </td></tr>
<tr><td>2004-03-03</td><td>Alberto Massari </td><td>WFXMLScanner was throwing an index out of bound exception </td></tr>
<tr><td>2004-03-03</td><td>Alberto Massari </td><td>[bug# 7051] The "hash" argument clashes with STL hash </td></tr>
<tr><td>2004-03-02</td><td>PeiYong Zhang </td><td>save/load TypeUri/TypeLocalName more accurately</td></tr>
<tr><td>2004-03-02</td><td>PeiYong Zhang </td><td>eliminate leakage </td></tr>
<tr><td>2004-03-02</td><td>Alberto Massari </td><td> Check for errors when saving a document to a file (bug# 2594) </td></tr>
<tr><td>2004-03-02</td><td>Steve Dulin </td><td>OS/390 transcoder update </td></tr>
<tr><td>2004-03-02</td><td>Alberto Massari </td><td>Added test for bug# 26919 </td></tr>
<tr><td>2004-03-02</td><td>Alberto Massari </td><td>If insertBefore(A,A) is invoked, a crash would occur (bug# 26919) </td></tr>
<tr><td>2004-03-02</td><td>Alberto Massari </td><td>When cloning a DOMDocument, clone also the encoding, version and standalone info (bug#13056) </td></tr>
<tr><td>2004-03-01</td><td>PeiYong Zhang </td><td>Instantiate XSerializeEngine with GrammarPool</td></tr>
<tr><td>2004-03-01</td><td>Khaled Noaman</td><td>Fix for UPA checking </td></tr>
<tr><td>2004-03-01</td><td>PeiYong Zhang</td><td>new getter: getHashModulus </td></tr>
<tr><td>2004-02-28</td><td>James Berry</td><td>Revise the Mac OS Transcoder to use the Mac Text Encoding Converter</td></tr>
<tr><td>2004-02-28</td><td>James Berry</td><td>Update Mac OS Projects for newly added files</td></tr>
<tr><td>2004-02-27</td><td>Alberto Massari</td><td>Fixed memory leaks</td></tr>
<tr><td>2004-02-26</td><td>Alberto Massari</td><td>Fix for bug# 27263 (extra = in registration script</td></tr>
<tr><td>2004-02-25</td><td>Alberto Massari</td><td>The COM wrapper doesn't use the deprecated DOM anymore</td></tr>
<tr><td>2004-02-25</td><td>Alberto Massari</td><td>Fixed typo in documentation</td></tr>
<tr><td>2004-02-25</td><td>PeiYong Zhang</td><td>Bug#27209: Xerces 2.5.0 does not build with option -t IconvGNU because of syntax errors!</td></tr>
<tr><td>2004-02-24</td><td>PeiYong Zhang</td><td>XercesDeprecatedDOMLib</td></tr>
<tr><td>2004-02-20</td><td>David Bertoni</td><td>Bug#27046</td></tr>
<tr><td>2004-02-18</td><td>PeiYong Zhang</td><td>Doxyfile update to 2.5.0</td></tr>
<tr><td>2004-02-17</td><td>Abe Backus, Neil Graham</td><td>fix for bug 25035: cygwin support</td></tr>
<tr><td>2004-02-17</td><td>Neil Graham</td><td>fix potential memory leak</td></tr>
</table>
</s2>
<anchor name="Release250"/>
<s2 title="Release Information for &XercesCName; 2.5.0">
<p>Below is the list of fixed bugzilla bugs that are resolved in this
release, &XercesCName; 2.5.0.
</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr>
<td>2004-02-15</td>
<td>Neil Graham</td>
<td>make first parameter of BinOutputStream::writeBytes const * const; bug 26936</td>
</tr>
<tr>
<td>2004-02-13</td>
<td>Khaled Noaman</td>
<td>Remove the limitation on providing PSVI information</td>
</tr>
<tr>
<td>2004-02-13</td>
<td>David Cargill</td>
<td>Update threadtest to accept -init option instead of using compiler directive.</td>
</tr>
<tr>
<td>2004-02-13</td>
<td>David Cargill</td>
<td>Remove unnecessary if statement</td>
</tr>
<tr>
<td>2004-02-13</td>
<td>David Cargill</td>
<td>Bug#26900 fix, remove virtual on destructor</td>
</tr>
<tr>
<td>2004-02-12</td>
<td>Alberto Massari</td>
<td>Xercesc2_5_0 Updates</td>
</tr>
<tr>
<td>2004-02-12</td>
<td>PeiYong Zhang</td>
<td>Xercesc2_5_0 Updates</td>
</tr>
<tr>
<td>2004-02-12</td>
<td>David Cargill</td>
<td>PSVIWriter documentation updates</td>
</tr>
<tr>
<td>2004-02-12</td>
<td>Merlin</td>
<td>Bug#26607 fix</td>
</tr>
<tr>
<td>2004-02-12</td>
<td>Alberto Massari</td>
<td>Bug#21965: A substitution group with no type is always valid </td>
</tr>
<tr>
<td>2004-02-12</td>
<td>David Cargill</td>
<td>SCMPrint build error fix</td>
</tr>
<tr>
<td>2004-02-12</td>
<td>Alberto Massari</td>
<td>Xercesc2_5_0: com updates</td>
</tr>
<tr>
<td>2004-02-12</td>
<td>Erik Rydgren</td>
<td>Implemented setTextContent </td>
</tr>
<tr>
<td>2004-02-11</td>
<td>PeiYong Zhang</td>
<td>Project SUMPrint</td>
</tr>
<tr>
<td>2004-02-11</td>
<td>PeiYong Zhang</td>
<td>PSVIWriter to build with intel</td>
</tr>
<tr>
<td>2004-02-11</td>
<td>David Cargill</td>
<td>PSVIWriter to build on AIX</td>
</tr>
<tr>
<td>2004-02-11</td>
<td>David Bertoni</td>
<td>Bug#26648 fix</td>
</tr>
<tr>
<td>2004-02-11</td>
<td>David Cargill</td>
<td>Bug#26131fix.</td>
</tr>
<tr>
<td>2004-02-11</td>
<td>David Cargill</td>
<td>Bug#25541fix</td>
</tr>
<tr>
<td>2004-02-10</td>
<td>David Cargill</td>
<td>PSVIWriter build fix</td>
</tr>
<tr>
<td>2004-02-09</td>
<td>C-J Berg</td>
<td>Bug#20684 fix</td>
</tr>
<tr>
<td>2004-02-09</td>
<td>David Cargill</td>
<td>PSVIWriter build fix and usage update</td>
</tr>
<tr>
<td>2004-02-06</td>
<td>PeiYong Zhang</td>
<td>Project PSVIWriter</td>
</tr>
<tr>
<td>2004-02-06</td>
<td>David Cargill</td>
<td>Misc 390 changes.</td>
</tr>
<tr>
<td>2004-02-06</td>
<td>David Cargill</td>
<td>Intrinsic transcoding support for 390.</td>
</tr>
<tr>
<td>2004-02-05</td>
<td>David Cargill</td>
<td>Fix a seg fault with PSVI and set basetype of anysimpletype to be anytype.</td>
</tr>
<tr>
<td>2004-02-05</td>
<td>David Cargill</td>
<td>Code cleanup changes to get rid of various compiler diagnostic messages.</td>
</tr>
<tr>
<td>2004-02-04</td>
<td>Alberto Massari</td>
<td>Added support for the Interix platform (Windows Services for Unix 3.5)</td>
</tr>
<tr>
<td>2004-02-04</td>
<td>Berin Lautenbach</td>
<td>Bug#26426 fix</td>
</tr>
<tr>
<td>2004-02-03</td>
<td>PeiYong Zhang</td>
<td>Bug#26315 fix</td>
</tr>
<tr>
<td>2004-02-03</td>
<td>PeiYong Zhang</td>
<td>put back the parameter to build debug</td>
</tr>
<tr>
<td>2004-01-31</td>
<td>David Cargill</td>
<td>Update script to flush buffer</td>
</tr>
<tr>
<td>2004-01-29</td>
<td>David Cargill</td>
<td>Update sanity tests so that each test result can be uniquely identified</td>
</tr>
<tr>
<td>2004-01-29</td>
<td>David Cargill</td>
<td>Code cleanup changes to get rid of various compiler diagnostic messages.</td>
</tr>
<tr>
<td>2004-01-28</td>
<td>James Berry</td>
<td>Add include for unistd.h</td>
</tr>
<tr>
<td>2004-01-28</td>
<td>James Berry</td>
<td>Define away some gcc garbage so that /usr/include/unistd.h will compile with the CodeWarrior MachO target </td>
</tr>
<tr>
<td>2004-01-26</td>
<td>James Berry</td>
<td>Add a check for a corner-case buffer condition</td>
</tr>
<tr>
<td>2004-01-25</td>
<td>James Berry</td>
<td>Bug #26419 fix</td>
</tr>
<tr>
<td>2004-01-25</td>
<td>James Berry</td>
<td>Step around CodeWarrior compiler warning</td>
</tr>
<tr>
<td>2004-01-25</td>
<td>James Berry</td>
<td>Update Mac OS Xcode project to reflect recent file additions</td>
</tr>
<tr>
<td>2004-01-25</td>
<td>James Berry</td>
<td>Update Mac OS CodeWarrior project to reflect recent file additions</td>
</tr>
<tr>
<td>2004-01-21</td>
<td>PeiYong Zhang</td>
<td>Bug#25751fix</td>
</tr>
<tr>
<td>2004-01-19</td>
<td>Alberto Massari</td>
<td>WideCharToMultiByte and MultiByteToWideChar return 0 on failure, not -1</td>
</tr>
<tr>
<td>2004-01-16</td>
<td>PeiYong Zhang</td>
<td>maintain the same size on both 32/64 bit architecture</td>
</tr>
<tr>
<td>2004-01-16</td>
<td>PeiYong Zhang</td>
<td>Project XSerializerTest</td>
</tr>
<tr>
<td>2004-01-16</td>
<td>Alberto Massari</td>
<td>In the Win32LCPTranscoder, don't use wcstombs or mbstowcs, as they don't pick up
the correct local code page; use the Win32 API using CP_ACP as the code page </td>
</tr>
<tr>
<td>2004-01-16</td>
<td>Alberto Massari</td>
<td>Removed usage of undeclared macro MIN</td>
</tr>
<tr>
<td>2004-01-15</td>
<td>PeiYong Zhang</td>
<td>proper allignment for built-in datatype read/write</td>
</tr>
<tr>
<td>2004-01-15</td>
<td>Khaled Noaman</td>
<td>HP compiler (after upgrade) is no longer complaining about placement delete</td>
</tr>
<tr>
<td>2004-01-15</td>
<td>Alberto Massari</td>
<td>Bug#18341 fix</td>
</tr>
<tr>
<td>2004-01-15</td>
<td>Michael Wuschek</td>
<td>Bug#24929 fix </td>
</tr>
<tr>
<td>2004-01-13</td>
<td>PeiYong Zhang</td>
<td>revert code back to previous version</td>
</tr>
<tr>
<td>2004-01-13</td>
<td>Kahled Noaman</td>
<td>Remove unnecessary local static data</td>
</tr>
<tr>
<td>2004-01-13</td>
<td>PeiYong Zhang</td>
<td>set optimization level#2 on hp aCC</td>
</tr>
<tr>
<td>2004-01-13</td>
<td>David Cargill</td>
<td>Misc build updates</td>
</tr>
<tr>
<td>2004-01-13</td>
<td>David Cargill</td>
<td>Undo previous change memory management changes.</td>
</tr>
<tr>
<td>2004-01-13</td>
<td>David Cargill</td>
<td>Misc memory management changes</td>
</tr>
<tr>
<td>2004-01-13</td>
<td>Khaled Noaman</td>
<td>For sanity, use class name to qualify method</td>
</tr>
<tr>
<td>2004-01-13</td>
<td>Khaled Noaman</td>
<td>Fix wrong size of allocation</td>
</tr>
<tr>
<td>2004-01-12</td>
<td>Neil Graham</td>
<td>remove unused static member</td>
</tr>
<tr>
<td>2004-01-12</td>
<td>Neil Graham</td>
<td>update Copyright year</td>
</tr>
<tr>
<td>2004-01-12</td>
<td>David Cargill</td>
<td>Minor performance change for handling reserved and unreserved characters.</td>
</tr>
<tr>
<td>2004-01-12</td>
<td>David Cargill</td>
<td>Fix 390 compilation errors.</td>
</tr>
<tr>
<td>2004-01-12</td>
<td>Khaled Noaman</td>
<td>Use a global static mutex for locking when creating local static mutexes instead of compareAndSwap</td>
</tr>
<tr>
<td>2004-01-12</td>
<td>Neil Graham</td>
<td>remove use of static buffers</td>
</tr>
<tr>
<td>2004-01-12</td>
<td>David Cargill</td>
<td>Avoid throwing malformedurl exceptions in XMLURL to avoid a threading problem on AIX.</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Khaled Noaman</td>
<td>PSVI: inherit facets from base type</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Neil Graham</td>
<td>Bug#25660 fix</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Joanne Bogart, Neil Graham</td>
<td>Bug#25542 fix</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Alberto Massari</td>
<td>Bug#25768 fix: Replaced the call to wcstombs using a NULL target buffer with the equivalent call
to WideCharToMultiByte () </td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Jeroen Witmond, Neil Graham</td>
<td>Bug#25412 fix</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Khaled Noaman</td>
<td>Fix segfault when adding S4S</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Khaled Noaman</td>
<td>Reset list of grammars after building XSModel</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>PeiYong Zhang</td>
<td>using the no-exception-thrown ctor</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Reid Spencer, Neil Graham</td>
<td>Bug#28517 static initialization problems</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Neil Graham</td>
<td>make sure locally-declared attributes have declarations in the PSVI</td>
</tr>
<tr>
<td>2004-01-06</td>
<td>Neil Graham</td>
<td>On some platforms, it is problematic to throw a different exception from inside the
catch block of another exception </td>
</tr>
<tr>
<td>2004-01-05</td>
<td>Khaled Noaman</td>
<td>Various PSVI fixes</td>
</tr>
<tr>
<td>2004-01-03</td>
<td>PeiYong Zhang</td>
<td>using ctor/parseContent to avoid exception thrown from ctor</td>
</tr>
<tr>
<td>2003-12-31</td>
<td>David Cargill</td>
<td>Update AIX build to generate .a libraries as -brtl is no longer used so that a
build generated without using packageBinaires.pl will be clean. </td>
</tr>
<tr>
<td>2003-12-31</td>
<td>David Cargill</td>
<td>Release memory when an error is encountered.</td>
</tr>
<tr>
<td>2003-12-31</td>
<td>Alberto Massari</td>
<td>Updated project for BCC551</td>
</tr>
<tr>
<td>2003-12-31</td>
<td>Alberto Massari</td>
<td>Made virtual function checkAdditionalFacet 'const', so that it matches the
declaration in a derived class </td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>Even if the resolver has no grammars, since all schema
processors are aware of the schema-for-schemas, an XSModel
should be produced.</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>fix one more buffer overrun, affecting boolean lists</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>enable production of canonical representations for dates with negative years, or
years >9999 </td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>ensure an XSModel</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>even if there are no grammars to add to an XSModel, the S4S grammar must be
included </td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>do not report anything about default/fixed values for non-global attribute declarations</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>use a null-terminated string when tokenizing pattern facets</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>more PSVI bug fixes</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>some indices in the PSVIAttributeList were 1 off</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>fix segfault when validation of a union type fails</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>initialize undeclared attribute registry appropriately for its local use in scanStartTag</td>
</tr>
<tr>
<td>2003-12-30</td>
<td>Neil Graham</td>
<td>allow schema normalized values to be associated with a PSVIAttribute after it is reset</td>
</tr>
<tr>
<td>2003-12-29</td>
<td>PeiYong Zhang</td>
<td>use the original memory manager to deallocate in assignment operator</td>
</tr>
<tr>
<td>2003-12-29</td>
<td>Khaled Noaman</td>
<td>PSVI: return value constraint only if global declaration</td>
</tr>
<tr>
<td>2003-12-29</td>
<td>Khaled Noaman</td>
<td>PSVI: add whitespace facet if missing</td>
</tr>
<tr>
<td>2003-12-29</td>
<td>Khaled Noaman</td>
<td>More PSVI updates</td>
</tr>
<tr>
<td>2003-12-29</td>
<td>Alberto Massari</td>
<td>When parsing a new element, clear the maps holding the unparsed attribute we have seen.
This because these maps keep pointers to the name of the attributes object that gets recycled
for every element (and their name is deallocated when recycled)</td>
</tr>
<tr>
<td>2003-12-24</td>
<td>David Cargill</td>
<td>Memory management update.</td>
</tr>
<tr>
<td>2003-12-24</td>
<td>David Cargill</td>
<td>Improved algorithm for finding derivedFrom.</td>
</tr>
<tr>
<td>2003-12-24</td>
<td>David Cargill</td>
<td>More updates to memory management so that the static memory manager.</td>
</tr>
<tr>
<td>2003-12-23</td>
<td>PeiYong Zhang</td>
<td>Absorb exception thrown in getCanonicalRepresentation and return 0,
only validate when required</td>
</tr>
<tr>
<td>2003-12-22</td>
<td>Michael Glavassevich</td>
<td>Bug#18611 fix.</td>
</tr>
<tr>
<td>2003-12-22</td>
<td>Gareth Reakes</td>
<td>Bug #25699 fix: made getRootElemID const. </td>
</tr>
<tr>
<td>2003-12-22</td>
<td>Jeroen N. Witmond, Gareth Reakes</td>
<td>Bug#25164: Patch for doc enhancement</td>
</tr>
<tr>
<td>2003-12-20</td>
<td>Neil Graham</td>
<td>add attribute names to PSVIAttributeList and fix some problems with calculation of
canonical values in element content </td>
</tr>
<tr>
<td>2003-12-20</td>
<td>Neil Graham</td>
<td>fix canonical representation production</td>
</tr>
<tr>
<td>2003-12-20</td>
<td>Neil Graham</td>
<td>store name/namespace of corresponding attribute in PSVIAttributeList; not all
PSVIAttributes have XSAttributeDeclarations </td>
</tr>
<tr>
<td>2003-12-19</td>
<td>David Cargill</td>
<td>Fix compiler messages on OS390.</td>
</tr>
<tr>
<td>2003-12-19</td>
<td>David Cargill</td>
<td>More memory management updates.</td>
</tr>
<tr>
<td>2003-12-19</td>
<td>Khaled Noaman</td>
<td>PSVI: process 'final' information</td>
</tr>
<tr>
<td>2003-12-19</td>
<td>Neil Graham</td>
<td>when validating a skipped element or attribute, we should not look for a declaration. </td>
</tr>
<tr>
<td>2003-12-19</td>
<td>Neil Graham</td>
<td>remove a throw clause inserted during debugging</td>
</tr>
<tr>
<td>2003-12-18</td>
<td>PeiYong Zhang</td>
<td>do not assert memorymanager in placement delete.</td>
</tr>
<tr>
<td>2003-12-17</td>
<td>David Cargill</td>
<td>Fix AIX compiler error.</td>
</tr>
<tr>
<td>2003-12-17</td>
<td>Khaled Noaman</td>
<td>PSVI: Use complex type info if present, otherwise use datatype validator</td>
</tr>
<tr>
<td>2003-12-17</td>
<td>Khaled Noaman</td>
<td>PSVI: fix for annotation of attributes in attributeGroup/derived types </td>
</tr>
<tr>
<td>2003-12-17</td>
<td>Neil Graham</td>
<td>fix two overflow conditions</td>
</tr>
<tr>
<td>2003-12-17</td>
<td>Neil Graham</td>
<td>fix a segfault and a possible buffer overflow condition</td>
</tr>
<tr>
<td>2003-12-17</td>
<td>David Cargill</td>
<td>Update for memory management so that the static memory manager (one
used to call Initialize) is only for static data.</td>
</tr>
<tr>
<td>2003-12-17</td>
<td>Khaled Noaman</td>
<td>Check for NULL when building XSParticle</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>Neil Graham</td>
<td>fix compilation error</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>Neil Graham</td>
<td>ensure all uses of ArrayJanitor use a memory manager</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>Neil Graham</td>
<td>add default memory manager parameter to loadMsg method that uses char * parameters</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>David Cargill</td>
<td>Fix memhandlertest failure (memory not deleted).</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>PeiYong Zhang</td>
<td>XSerializerTest updates</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>PeiYong Zhang</td>
<td>exception thrown upon invalid number, thanks Gareth Reakes.</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>Khaled Noaman</td>
<td>Make IC_Field stateless, fMayMatch is no longer a data member of IC_Field</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>Khaled Noaman</td>
<td>Add nextElementKey method</td>
</tr>
<tr>
<td>2003-12-</td>
<td></td>
<td>BinMemOutputStream</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>Alberto Massari</td>
<td>The DOMTypeInfo should have a NULL namespace and type name when DTD validation is
used, not empty strings </td>
</tr>
<tr>
<td>2003-12-16</td>
<td>PeiYong Zhang</td>
<td>don't expand ContextSpecNode when deserilized</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>Steve Dulin, Neil Graham</td>
<td>update</td>
</tr>
<tr>
<td>2003-12-16</td>
<td>David Cargill</td>
<td>Change a conditional expression to an if-else to avoid a compiler problem. </td>
</tr>
<tr>
<td>2003-12-15</td>
<td>Neil Graham</td>
<td>fix segfault when a writeAnnotation() method was called</td>
</tr>
<tr>
<td>2003-12-15</td>
<td>David Cargill</td>
<td>psvi updates; cleanup revisits and bug fixes</td>
</tr>
<tr>
<td>2003-12-14</td>
<td>Neil Graham</td>
<td>make use of XMLDocumentHandler::elementTypeInfo instead of non-thread-safe XMLElementDecl methods </td>
</tr>
<tr>
<td>2003-12-13</td>
<td>Han Ming, Neil Graham</td>
<td>Bug#25494 fix</td>
</tr>
<tr>
<td>2003-12-13</td>
<td>Neil Graham</td>
<td>fix compilation errors under gcc</td>
</tr>
<tr>
<td>2003-12-13</td>
<td>Neil Graham</td>
<td>configure scripts need to be told about XSerializerTests before they can build its Makefile</td>
</tr>
<tr>
<td>2003-12-12</td>
<td>Michael Glavassevich, Neil Graham</td>
<td>fix small bugs that made sanity tests fails</td>
</tr>
<tr>
<td>2003-12-12</td>
<td>PeiYong Zhang</td>
<td>Project XSerializerTest</td>
</tr>
<tr>
<td>2003-12-11</td>
<td>PeiYong Zhang</td>
<td>trailing zeros for double/float w/o decimal point</td>
</tr>
<tr>
<td>2003-12-</td>
<td>Michael Glavassevich, Neil Graham</td>
<td>fixes for the URI implementation to take registry names into account </td>
</tr>
<tr>
<td>2003-12-11</td>
<td>PeiYong Zhang</td>
<td>Canonical Representation Support</td>
</tr>
<tr>
<td>2003-12-11</td>
<td>Khaled Noaman</td>
<td>Store non schema attributes from parent in XSAnnotation</td>
</tr>
<tr>
<td>2003-12-10</td>
<td>Steve Dulin, Neil Graham</td>
<td>OS/390 updates</td>
</tr>
<tr>
<td>2003-12-10</td>
<td>Steve Dulin, Neil Graham</td>
<td>make documentation accord with what Xerces-C supports</td>
</tr>
<tr>
<td>2003-12-10</td>
<td>Steve Dulin, Neil Graham</td>
<td>ICU has deprecated the -s390 encoding suffix. This patch uses the new convention
for XML documents that make use of this suffix </td>
</tr>
<tr>
<td>2003-12-10</td>
<td>Steve Dulin, Neil Graham</td>
<td>make CreateDOMDocument sample more robust </td>
</tr>
<tr>
<td>2003-12-10</td>
<td>Neil Graham</td>
<td>fixes for canonical value production; memory management was not implemented correctly </td>
</tr>
<tr>
<td>2003-12-10</td>
<td>Stephen Dulin</td>
<td>Eliminate the preparsing stage </td>
</tr>
<tr>
<td>2003-12-10</td>
<td>Neil Graham</td>
<td>change some hash constants</td>
</tr>
<tr>
<td>2003-12-10</td>
<td>Neil Graham</td>
<td>fix seg fault caused when a complex type had simple content; we were not processing
the complex type itself, only its base </td>
</tr>
<tr>
<td>2003-12-09</td>
<td>James Berry</td>
<td>Remove GCC2 build styles from xcode samples</td>
</tr>
<tr>
<td>2003-12-09</td>
<td>Han Ming Ong</td>
<td>Bug #25343 Add xcode project for SEnumVal sample </td>
</tr>
<tr>
<td>2003-12-09</td>
<td>Han Ming Ong</td>
<td>Bug#25337: Enable DEPLOYMENT_POSTPROCESSING for Mac OS X GCC3 Deployment Build. </td>
</tr>
<tr>
<td>2003-12-07</td>
<td>Neil Graham</td>
<td>fix bug in PSVI where a segfault would occur if an attribute was not defined</td>
</tr>
<tr>
<td>2003-12-07</td>
<td>Neil Graham</td>
<td>fix duplicate attribute detection when namespaces are disabled</td>
</tr>
<tr>
<td>2003-12-03</td>
<td>Neil Graham</td>
<td>PSVI fix: cannot allow validator to reset its element content buffer before exposing it to the application </td>
</tr>
<tr>
<td>2003-12-03</td>
<td>Neil Graham</td>
<td>uninitialize panic handlers so they will be ready for subsequent initalizations</td>
</tr>
<tr>
<td>2003-12-03</td>
<td>Pete Lloyd, Neil Graham</td>
<td>when an empty element is valid, it will not have a datatype validator </td>
</tr>
<tr>
<td>2003-12-02</td>
<td>Jeroen Whitmond, Neil Graham</td>
<td>Bug#25118, additional fix once again </td>
</tr>
<tr>
<td>2003-12-02</td>
<td>Neil Graham</td>
<td>since there are certain things, such as schemaLocation attributes, that have a
datatype and which we nonetheless do not validate, make canonical-value production
dependent on validity being valid </td>
</tr>
<tr>
<td>2003-12-02</td>
<td>Pete Lloyd, Neil Graham</td>
<td>fix for ArrayIndexOutOfBoundsException in PSVIAttributeList</td>
</tr>
<tr>
<td>2003-12-02</td>
<td>Alberto Massari</td>
<td>Bug#20169, openFile was opening the file for read and write, while only read was required </td>
</tr>
<tr>
<td>2003-12-02</td>
<td>Alberto Massari</td>
<td>Removed /version option from the linker</td>
</tr>
<tr>
<td>2003-12-02</td>
<td>Alberto Massari</td>
<td>Don't use the word "exception" as a variable name, as VC 7.1 complains about it</td>
</tr>
<tr>
<td>2003-12-02</td>
<td>Alberto Massari</td>
<td>Bug#16055 fix, Make the code compilable on Windows when UNICODE is defined </td>
</tr>
<tr>
<td>2003-12-01</td>
<td>Khaled Noaman</td>
<td> Properly set fAnnotation data member</td>
</tr>
</table>
</s2>
<anchor name="Release240"/>
<s2 title="Release Information for &XercesCName; 2.4.0 Dec. 2, 2003">
<p> Below is the list of fixed bugzilla bugs that are resolved in this release, &XercesCName; 2.4.0.
</p>
<table>
<tr>
<th>Date</th>
<th>Contributor</th>
<th>Description</th>
</tr>
<tr>
<td>2003-12-01</td>
<td>Jeroen Witmond/Neil Graham</td>
<td>fix Doxygen warnings; bug 25118</td>
</tr>
<tr>
<td>2003-12-01</td>
<td>Neil Graham</td>
<td>fix bug 28084</td>
</tr>
<tr>
<td>2003-11-28</td>
<td>Khaled Noaman</td>
<td>Set root element if not previpusly set, Use memory manager when creating root element name</td>
</tr>
<tr>
<td>2003-11-27</td>
<td>Neil Graham</td>
<td>in preparation for stateless DOMTypeInfo for elements</td>
</tr>
<tr>
<td>2003-11-27</td>
<td>Neil Graham</td>
<td>Fix state-ful duplicate attribute detection when the integrated
scanner is in use and namespaces are off. Also, implement
change to PSVIHandler interface to remove prefix passing.</td>
</tr>
<tr>
<td>2003-11-27</td>
<td>Khaled Noaman</td>
<td>PSVIElement implementation</td>
</tr>
<tr>
<td>2003-11-27</td>
<td>David Cargill</td>
<td>implement writeAnnotation</td>
</tr>
<tr>
<td>2003-11-27</td>
<td>Neil Graham</td>
<td>create XSModels if a PSVIHandler has been set on the scanner. Make PSVI production more robust </td>
</tr>
<tr>
<td>2003-11-27</td>
<td>Pete Lloyd</td>
<td>implement isSpecified</td>
</tr>
<tr>
<td>2003-11-27</td>
<td>David Cargill</td>
<td>fixes for segfaults and infinite loops in schema component model implementation;</td>
</tr>
<tr>
<td>2003-11-26</td>
<td>Neil Graham</td>
<td>mark DOMTypeInfo-related methods on XMLElementDecl deprecated since they are not thread-safe</td>
</tr>
<tr>
<td>2003-11-26</td>
<td>Vitaly Prapirny</td>
<td>Bug#24983: Proposed changes of bcc.551 and bcb6 project files for forthcoming 2.4.0 release </td>
</tr>
<tr>
<td>2003-11-26</td>
<td>PeiYong Zhang</td>
<td>DOMPrint run result updated.</td>
</tr>
<tr>
<td>2003-11-26</td>
<td>Neil Graham</td>
<td>more complete implementation of PSVIAttributeList; remove some problematic const-ness </td>
</tr>
<tr>
<td>2003-11-26</td>
<td>Khaled Noaman</td>
<td>Store XSModel.</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>Neil Graham</td>
<td>remove XMLIBM1047Transcoder's dependence on iostream</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>Khaled Noaman</td>
<td>Add a method to return the XSObject mapped to a schema grammar component</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>James Berry</td>
<td>Update Mac OS Codewarrior project, Cleanup build errors/warnings from CodeWarrior</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>David Cargill</td>
<td>Serialize enclosing complex type, Check for out of memory exception and document updates</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>David Cargill</td>
<td>Make XSObjectFactory inherit from XMemory</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>David Cargill</td>
<td>Misc. PSVI updates</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>David Cargill</td>
<td>Update expected result</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>Khaled Noaman</td>
<td>Fix AIX linking error</td>
</tr>
<tr>
<td>2003-11-25</td>
<td>James Berry</td>
<td>Add Mac OS project for Xcode, Revise build instructions to reflect deprecation
of Project Builder projects, and elevation of the Xcode projects. </td>
</tr>
<tr>
<td>2003-11-24</td>
<td>James Berry</td>
<td> Eliminate some compiler warnings concerning comments inside of comments</td>
</tr>
<tr>
<td>2003-11-24</td>
<td>Hongguo He</td>
<td>add IBM1047 to the list of intrinsic transcoders</td>
</tr>
<tr>
<td>2003-11-24</td>
<td>Neil Graham</td>
<td>allow classes derived from XMLTransService to tailor the intrinsic maps to their taste.</td>
</tr>
<tr>
<td>2003-11-24</td>
<td>Khaled Noaman</td>
<td>Reset memory manager in Terminate</td>
</tr>
<tr>
<td>2003-11-24</td>
<td>Khaled Noaman</td>
<td>PSVI: finish construction of XSSimpleTypeDefinition</td>
</tr>
<tr>
<td>2003-11-24</td>
<td>Gareth Reakes</td>
<td>added in support for xml-declaration feature.</td>
</tr>
<tr>
<td>2003-11-24</td>
<td>Adam Heinz</td>
<td>Fix for bug 22917</td>
</tr>
<tr>
<td>2003-11-23</td>
<td>Neil Graham</td>
<td>update method documentation</td>
</tr>
<tr>
<td>2003-11-23</td>
<td>Neil Graham</td>
<td>DatatypeValidator support for PSVI</td>
</tr>
<tr>
<td>2003-11-23</td>
<td>Khaled Noaman</td>
<td>PSVI updates</td>
</tr>
<tr>
<td>2003-11-</td>
<td>David Cargill</td>
<td>Enable grammar pools and grammar resolvers to manufacture
XSModels. This also cleans up handling in the parser classes by eliminating the need to tell
the grammar pool that schema compoments need to be produced. </td>
</tr>
<tr>
<td>2003-11-21</td>
<td>David Cargill</td>
<td>Setting the stage for PSVI (element and attribute) implementation:
pointing out all places in scanners where validation updates need to occur</td>
</tr>
<tr>
<td>2003-11-21</td>
<td>David Cargill</td>
<td>More schema component model implementation, In particular, this cleans up
and completes the XSModel, XSNamespaceItem, XSAttributeDeclaration and
XSAttributeGroup implementations. </td>
</tr>
<tr>
<td>2003-11-21</td>
<td>Khaled Noaman</td>
<td>PSVI: Use XSObjectFactory to create various components.</td>
</tr>
<tr>
<td>2003-11-21</td>
<td>Alberto Massari</td>
<td>insertElementAt was not checking if there was room for the new element (bug#24714)</td>
</tr>
<tr>
<td>2003-11-21</td>
<td>Jeroen Witmond</td>
<td>Wrong filename in error messages (bug#24883)</td>
</tr>
<tr>
<td>2003-11-21</td>
<td>Alberto Massari</td>
<td>Protect getEntityDeclPool from invoking a method on a NULL pointer (bug#24881)</td>
</tr>
<tr>
<td>2003-11-21</td>
<td>Alberto Massari</td>
<td>Updated COM for xerces-c_2_4_0</td>
</tr>
<tr>
<td>2003-11-21</td>
<td>Alberto Massari</td>
<td>Updated project to copy xerces-c_2_4_0, not xerces-c_2_3_0</td>
</tr>
<tr>
<td>2003-11-20</td>
<td>Khaled Noaman</td>
<td>PSVI: element declaration, content model, PSVIutil </td>
</tr>
<tr>
<td>2003-11-20</td>
<td>Alberto Massari</td>
<td>Updated Borland makefile</td>
</tr>
<tr>
<td>2003-11-20</td>
<td>Neil Graham</td>
<td> PSVI: store name and namespace information</td>
</tr>
<tr>
<td>2003-11-20</td>
<td>PeiYong Zhang</td>
<td>build xercesc2_4_0 with icu2.6.1</td>
</tr>
<tr>
<td>2003-11-19</td>
<td>Neil Graham</td>
<td>increment version to 2.4.0 in docs</td>
</tr>
<tr>
<td>2003-11-19</td>
<td>PeiYong Zhang</td>
<td>build xercesc2_4_0</td>
</tr>
<tr>
<td>2003-11-17</td>
<td>Pete Lloyd, Neil Graham</td>
<td>PSVIAttributeList needs to be included by PSVIHandler</td>
</tr>
<tr>
<td>2003-11-17</td>
<td>PeiYong Zhang</td>
<td>Fix to #4556</td>
</tr>
<tr>
<td>2003-11-17</td>
<td>Ronald Landheer-Cieslak</td>
<td>Fix for bug 23930</td>
</tr>
<tr>
<td>2003-11-17</td>
<td>Alberto Massari</td>
<td>Fixed documentation bug#24746</td>
</tr>
<tr>
<td>2003-11-14</td>
<td>David Cargill </td>
<td>changes in support of second phase of XSModel implementation</td>
</tr>
<tr>
<td>2003-11-14</td>
<td>David Cargill </td>
<td>removed methods made unnecessary by new XSModel implementation design</td>
</tr>
<tr>
<td>2003-11-14</td>
<td>Neil Graham</td>
<td>PSVI updates</td>
</tr>
<tr>
<td>2003-11-14</td>
<td>Alberto Massari</td>
<td>When invoking resolveEntity, specify the current document as the base URI</td>
</tr>
<tr>
<td>2003-11-14</td>
<td>Graham Bennett</td>
<td>Fix to bug #4556</td>
</tr>
<tr>
<td>2003-11-13</td>
<td>PeiYong Zhang</td>
<td>Pass correct initSize to container during deserialization</td>
</tr>
<tr>
<td>2003-11-13</td>
<td>PeiYong Zhang</td>
<td>Solve Compilation/Linkage error on AIX/Solaris/HP/Linux</td>
</tr>
<tr>
<td>2003-11-12</td>
<td>PeiYong Zhang</td>
<td>Stateless Grammar: Validation Context</td>
</tr>
<tr>
<td>2003-11-11</td>
<td>Khaled Noaman</td>
<td>Serialization of XSAnnotation.</td>
</tr>
<tr>
<td>2003-11-10</td>
<td>Neil Graham</td>
<td>implementation for new stateless means of traversing attribute definition lists</td>
</tr>
<tr>
<td>2003-11-10</td>
<td>Alberto Massari</td>
<td>Fixed memory leak</td>
</tr>
<tr>
<td>2003-11-08</td>
<td>Abe Backus</td>
<td>fix for bug 24287</td>
</tr>
<tr>
<td>2003-11-07</td>
<td>David Cargill</td>
<td>PSVI/schema component model implementation</td>
</tr>
<tr>
<td>2003-11-07</td>
<td>David Cargill</td>
<td>fix compilation errors on AIX and HPUX </td>
</tr>
<tr>
<td>2003-11-07</td>
<td>Khaled Noaman</td>
<td>For PSVI support, distinguish wildcard elements with namespace lists.</td>
</tr>
<tr>
<td>2003-11-06</td>
<td>Neil Graham</td>
<td>update KEYS file with public key as newly-signed by two other Apache-ites</td>
</tr>
<tr>
<td>2003-11-06</td>
<td>James Berry</td>
<td>Add Mac OS X DYLD_LIBRARY_PATH notes to unix build instructions</td>
</tr>
<tr>
<td>2003-11-06</td>
<td>Neil Graham</td>
<td>update grammar pool interface so that cacheGrammar(Grammar) can tell the caller
whether the grammar was accepted. Also fix some documentation errors. </td>
</tr>
<tr>
<td>2003-11-06</td>
<td>PeiYong Zhang</td>
<td>Patch to Solaris compiler error</td>
</tr>
<tr>
<td>2003-11-06</td>
<td>Khaled Noaman</td>
<td>PSVI support for annotations.</td>
</tr>
<tr>
<td>2003-11-06</td>
<td>David Cargill</td>
<td>first part of PSVI/schema component model implementation.</td>
</tr>
<tr>
<td>2003-11-05</td>
<td>PeiYong Zhang</td>
<td>Grammar Pool Specification updates</td>
</tr>
<tr>
<td>2003-11-05</td>
<td>PeiYong Zhang</td>
<td></td>
</tr>
<tr>
<td>2003-11-05</td>
<td>PeiYong Zhang</td>
<td>don't serialize built-in baseValidator, and don't serialize localName/uriName</td>
</tr>
<tr>
<td>2003-11-04</td>
<td>Alberto Massari</td>
<td>When invoking resolveEntity, specify the base URI</td>
</tr>
<tr>
<td>2003-11-04</td>
<td>Alberto Massari</td>
<td>When loading a grammar that's going to be cached, re-use the grammars already in the cache
</td>
</tr>
<tr>
<td>2003-11-03</td>
<td>Alberto Massari</td>
<td>A version of lastIndexOf would crash the application if the character to be
searched was not found in the string </td>
</tr>
<tr>
<td>2003-11-01</td>
<td>Alberto Massari</td>
<td> Updated BCB6 project</td>
</tr>
<tr>
<td>2003-10-31</td>
<td>PeiYong Zhang</td>