Let me start by saying that I am very happy with rapidXML. In fact, we have converted most of our XML parsing from various other libraries to rapidXML and have committed to a complete conversion over time (i.e., using rapidXML as our only XML parsing library, including replacing Expat). We use XML almost exclusively as a serialization format and rapidXML is excellent for that use case. *However*, I would not recommend rapidXML if you are going to do non-trivial editing of in-place DOM trees. It is not, IMHO, well suited for that. If you're going to do a lot of editing, parsing speed shouldn't be your primary concern. You will want a much richer API as you go on and rapidXML just doesn't provide that. You could build one on top of rapidXML, but why bother when there's things just as good already out there? That said, I have some wrapper code that makes rapidXML even nicer, if you're interested, but it doesn't perform any edit, delete, or add operations since my code base does not perform any of those. At 09:33 PM 12/13/2008, Jeff Dunlap wrote:
I've been looking at a bunch of C++ libraries for parsing XML and RapidXML looks very interesting to me. They have some very impressive benchmarks on their site due to it being a in-situ parser: http://rapidxml.sourceforge.net/ (way faster than most other XML parsers). I think that this is something that can be most useful for many of us. I know that existing boost libs can get this done but probably more complex than an exclusive lib for XML parsing.
Anyway, I cannot find samples anywhere and I am not experienced enough to know how to use the lib. This is working code that I have so far (important comments include): I just don't have the skill to figure out how to use this. If anyone can provide some beginner snippets on how to use this library, it would be much appreciated. Idiot proof snippets on how to add, edit, delete with comments would be awsome.