XSD is an open source, cross-platform W3C XML Schema to C++ data binding compiler. Provided with a schema, it generates C++ classes that represent the given vocabulary as well as XML parsing and serialization code. You can then access the data stored in XML using types and functions that semantically correspond to your application domain rather than dealing with elements, attributes, and text in a direct representation of XML such as DOM or SAX.
Major new features in this release:
- Support for C++11 in addition to C++98.
- Support for ordered types including mixed content.
- Support for anyType and anySimpleType content extraction as DOM and text, respectively.
- Improved streaming, partially in-memory parsing and serialization support including better XML namespace handling and streaming at multiple document levels.
- Automatic generation of make-style dependency information.
This release also adds support for Clang as well as Visual Studio 2012 (11.0) and 2013 (12.0).
XSD is written in portable C++ (both C++98/03 and C++11 are supported) and you should be able to use it with any reasonably modern C++ compiler. In particular, we have tested this release on GNU/Linux (x86/x86-64), Windows (x86/x86-64), Mac OS X (x86), and Solaris (x86/x86-64/SPARC) with GNU g++ 4.2.x-4.8.x, MS Visual C++ 2005, 2008, 2010, 2012, 2013, Sun Studio 12u2, and Clang 3.x.
More information, documentation, source code, and pre-compiled binaries are available on the project's page.