|
Boost : |
Subject: [boost] libzeep
From: Maarten L. Hekkelman (m.hekkelman_at_[hidden])
Date: 2010-04-13 08:04:38
As I announced earlier, I've released a library that can be used to
create SOAP servers. Since this code relies heavily on XML, I've
implemented a full XML parser and XPath implementation as well.
I've read a bit in the discussion on this forum regarding the
implementation of XML parsers and I get the feeling some don't fully
appreciate the amount of work that goes into writing a validating
parser. There really is more to XML than the characters < and >. :-)
If there's a DOCTYPE, the results of parsing a file can be surprising
since the DTD can e.g. specify default attribute values.
To test libzeep I'm using the 1808 test files provided by the w3c
organisation. Of these I only test against 1490 since the others only
check unicode characters that are allowed since XML version 1.1. Of the
remaining 1490 only 14 produce dubious output, I'm not really sure if
these tests are wrong or that my code is incorrect.
Anyway, libzeep performs quite nicely. The code has not yet been
profiled but I've been able to replace libxml2 in all my projects and
see hardly any performance degradation and my code looks much better now.
All in all, I think libzeep is quite feature complete, robust and
performs nicely.
I've released the code and minimal documentation at
http://www.cmbi.ru.nl/libzeep
Now suppose people here are interested in this library, I'm willing to
spend some time to upgrade the code to boost quality standards and write
more documentation. And if the boost community prefers another approach
I'm willing to provide help based on my recent experience.
I'm looking forward to your feedback.
-maarten
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk