XSD/e 3.2.0

A XML Processing for Embedded Systems.

  Add it to your Download Basket!

 Add it to your Watch List!


Rate it!

What's new in XSD/e 3.1.0:

  • Support for XML Schema polymorphism. The new --generate-polymorphic option triggers the generation of polymorphism-aware code.
  • Support for saving the object model to and loading it from binary representations. The new --generate--insertion and --generate-extraction options trigger the generation of data representation stream insertion and extraction operators, respectively.
  • Support for attributes with default and fixed values.
  • New option, --custom-type, allows the customization of the object model classes.
Read full changelog
send us
an update
GPL (GNU General Public License) 
2.8/5 18
Boris Kolpackov
ROOT \ Programming \ Code Generators
XSD/e is a XML Processing for Embedded Systems.

CodeSynthesis XSD/e is an open-source XML parser generator for mobile and embedded systems. It provides event-driven, stream-oriented XML parsing, XML Schema validation, and C++ data binding while maintaining a small footprint and portability.

XSD/e implements Embedded C++/Parser mapping which, provided with an XML instance specification (XML Schema), generates validating C++ parser skeletons for data types defined in your vocabulary. You can then implement these parser skeletons to build your own in-memory representation or perform immediate processing as parts of your XML document become available. For an introduction to the C++/Parser mapping, refer to the Hello World Parser chapter from the Getting Started Guide.

Based on the static analysis of the schemas, XSD/e generates compact, highly-optimized hierarchical state machines that combine data extraction, validation, and even dispatching in a single step. As a result, the XSD/e-generated parsers are 2-10 times faster than general-purpose validating XML parsers while maintaining the lowest static and dynamic memory footprints. For example, a validating parser executable can be as small as 120KB in size.

Here are some key features of "XSD e":

· Ease of use The parser skeletons maintain parsing state and do data extraction for you. As a result, you are shielded from the intricacies of parsing XML.
· Validation The parser skeletons provide low-footprint, high-performance XML Schema validation so you don't need to complicate your code with extra error checking.
· Natural representation Handle the XML data using your domain vocabulary instead of generic elements, attributes, and text.
· Static typing The generated parser skeletons are statically typed which helps catch errors at compile-time rather than at run-time. For example, XML element and attribute names become C++ function names so if you misspelled one, the compiler will let you know.
· Concise code Thanks to the object representation provided by parser skeletons, your business logic implementation is simpler and thus easier to read and understand.
· Maintainability Automatic code generation minimizes the effort needed to adapt your application to changes in the document structure. Thanks to static typing, the C++ compiler will pin-point the places in your code that need to be changed.

Last updated on February 16th, 2011

#XML Processing #XML validator #XML parser #XSD/e #XML #Processing #parser

Add your review!