Jump to content

CodeSynthesis XSD/e

From Wikipedia, the free encyclopedia
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
CodeSynthesis XSD/e
Written inC++
Typelibrary or framework
Websitewww.codesynthesis.com/products/xsde/ Edit this on Wikidata

CodeSynthesis XSD/e is a validating XML parser/serializer and C++ XML Data Binding generator for Mobile and Embedded systems. It is developed by Code Synthesis and dual-licensed under the GNU GPL and a proprietary license.

Given an XML instance specification (XML Schema), XSD/e can produce three kinds of C++ mappings: Embedded C++/Parser for event-driven XML parsing, Embedded C++/Serializer for event-driven XML serialization, and Embedded C++/Hybrid which provides a light-weight, in-memory object model on top of the other two mappings.

The C++/Hybrid mapping generates C++ classes for types defined in XML Schema as well as parsing and serialization code. The C++ classes represent the data stored in XML as a statically-typed, tree-like object model and support fully in-memory as well as partially in-memory/partially event-driven XML processing. The C++/Parser mapping generates validating C++ parser skeletons for data types defined in XML Schema. One can then implement these parser skeletons to build a custom in-memory representation or perform immediate processing as parts of the XML documents become available. Similarly, the Embedded C++/Serializer mapping generates validating C++ serializer skeletons for types defined in XML Schema which can be used to serialize application data to XML.

CodeSynthesis XSD/e itself is written in C++[1] and supports a number of embedded targets include Embedded Linux, VxWorks, QNX, LynxOS, iPhone OS and Windows CE.

References

  1. ^ Bjarne Stroustrup. C++ applications, 2007-05-25. Retrieved on 2007-06-18.