RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX


Manipulate XML Documents in C++ with xmlbeansxx

Using XML processing typically simplifies a developer's job--but not when you're programming in c++. Ever wish someone would create the create the C++ equivalent of XMLBeans? Someone has. Find out how this new open source tool fills a serious gap in the C++ software environment.

mplementing XML processing in C++ can be a headache. Parsing and building XML documents with DOM takes a lot of coding and it's slow, error prone, and not resistant to changes in the XML Schemas.

One solution to these problems is to use an XML-to-code binding tool. These tools use XML Schema to generate classes that represent the XML documents. Not only do they simplify reading, processing, and writing XML, they also simplify the development of messaging systems by allowing you to move data representation to external modules.

Unfortunately, binding tools like Apache's XMLBeans or Castor do not exist for C++. A year and a half ago, this was a serious problem for our team. Because we knew of the benefits of such products from our previous Java experience, we decided to create the C++ equivalent of XMLBeans. Now that this tool is working and has proven useful, we decided to share it with open source community.

Installing the package is easy—just use any standard package management tool (dpkg/rpm/etc). If you want to compile sources, unzip the archive and use the standard: ./bootstrap, ./configure, ./make, ./make install. Make sure that you install all the following libraries in your environment:

  • libboost (=1.32.0)
  • Xerces-C (=2.6.0)
  • Log4cxx (=0.9.7)
  • gmp (>=4.1.3)
  • Java SDK (>=1.4.0)

Close Icon
Thanks for your registration, follow us on our social networks to keep up-to-date