
loufoque wrote:
Writing a complete XML solution is a lot of work, especially if you want to support all XML technologies (XMLSchema, RelaxNG, XPath, XLink, XInclude, XPointer...) Maybe it could be interesting to reuse libxml2, which is under the MIT license, to build something on top of it. Of course first we need to weight the gains behind a new C++ implementation.
FWIW, we had discussions to that effect in the past. See http://aspn.activestate.com/ASPN/Mail/Message/boost/1653426 http://aspn.activestate.com/ASPN/Mail/Message/boost/1684091 I think a frequent mistake people make when thinking about XML is that they assume it's all about parsing. As you point out, there are quite a lot of more or less interdependent aspects of XML. While it would be good to keep a potential C++ API as modular as possible, there are certain limits. In particular, I think that, while the API may be kept modular, an implementation may actually want to share code to make certain operations faster. libxml2 for example has been heavily tuned for performance, and I believe it would be foolish to even think about starting anew, as opposed to leveraging this knowledge. FWIW, the DOM API / implementation I proposed (see above) was 'only' lacking in its parametrization for unicode types (specifically, the importing / exporting to and from user unicode types to the library internal types. I hoped to find the time to finish that work, but so far didn't manage to. I'd appreciate any help ! Regards, Stefan -- ...ich hab' noch einen Koffer in Berlin...