RE: [xml] XML library evaluation (fwd)

Hi there,

If that intrudes less than too far into the confidential space, I would
know which company did this evaluation?

-----Original Message-----
From: Dan Ellis [mailto:dan isvara net] 
Sent: 13 June 2002 16:18
To: xml gnome org
Subject: [xml] XML library evaluation (fwd)

The company I work for has been developing C++ software using 
the libxml2
library. However, due to memory allocation problems within 
the library it
has been decided to drop libxml2 in favour of Xerces. I've 
suggested that
they bring these issues up here to see if they're known, and 
if there are
any solutions (either existing, or being worked on). This hasn't been
done, so I'm forwarding some information regarding the evaluation. Are
these known issues? Can anything be done about them, and if 
so, will they

---------- Forwarded message ----------


Libxml2 evaluation
The libxml2 library displayed a lot of different errors, both crashes,
where un-initialised data, null pointers and data that had 
already been
freed was accessed. Secondly there here a lot of memory leaks 
that needed
to be fixed.

But the main concern was that the library is written in C and is not
designed to return an "Out of memory" error code from the 
calls into the
library. Instead a variety of different behaviour was seen:

1.) Quietly recover, where the processing would simply 
continue after the
allocation failure, but some data would be missing in the XML 
tree that it
was building. Another problem was that any error, during the libraries
initialisation would not be reported and hence the whole 
library would not
work correctly, for example some character handling functions 
might not be

2.) Return an error code, which would not be distinguishable 
from any other
error, for example when parsing a document, it is not possible to
distinguish a parse error from a memory allocation error.


On balance it seems, barring any problems that A might discover, that
the following picture emerges:

* Libxml2 - It's general lack of safety and lack of "out of 
memory" return
codes make this library unacceptable.
* Xerces - While it has some disadvantages, mainly it's side 
and lacking
some features that we would want, most notably serialization 
as part of the
library and the ability to validate the DOM tree, it is 
overall the safest
option and has XMLSchema support, which none of the other do.


Dan Ellis <dan isvara net>

xml mailing list, project page
xml gnome org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]