B
Boris Kolpackov
Hi,
CodeSynthesis XSD is an open-source, cross-platform W3C XML Schema to
C++ translator. Provided with an XML instance specification (XML Schema),
it generates C++ classes that represent the given vocabulary as well as
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:
<contact>
<name>John Doe</name>
<email>[email protected]</email>
<phone>555 12345</phone>
</contact>
auto_ptr<Contact> c = contact ("c.xml");
cout << c->name () << ", "
<< c->email () << ", "
<< c->phone () << endl;
XSD supports both in-memory and event-driven, stream-oriented
processing models by implementing two C++ mappings: C++/Tree and
C++/Parser. The C++/Tree mapping represents the information stored
in XML instance documents as a tree-like, in-memory data structure.
The C++/Parser mapping generates parser templates for data types
defined in XML Schema. Using these parser templates you can build
your own in-memory representations or perform immediate processing
of XML instance documents.
XSD is available on GNU/Linux, HP-UX, Mac OS X, Solaris, and Windows.
Supported C++ compilers include: GNU g++, HP aCC, Intel C++, Sun C++,
and MS Visual C++.
More information, source code as well as precompiled binaries for all
supported platforms are available from
http://codesynthesis.com/products/xsd/
Best Regards,
Boris
--
Boris Kolpackov
Code Synthesis Tools CC
http://www.codesynthesis.com
Tel: +27 76 1672134
Fax: +27 21 5526869
CodeSynthesis XSD is an open-source, cross-platform W3C XML Schema to
C++ translator. Provided with an XML instance specification (XML Schema),
it generates C++ classes that represent the given vocabulary as well as
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:
<contact>
<name>John Doe</name>
<email>[email protected]</email>
<phone>555 12345</phone>
</contact>
auto_ptr<Contact> c = contact ("c.xml");
cout << c->name () << ", "
<< c->email () << ", "
<< c->phone () << endl;
XSD supports both in-memory and event-driven, stream-oriented
processing models by implementing two C++ mappings: C++/Tree and
C++/Parser. The C++/Tree mapping represents the information stored
in XML instance documents as a tree-like, in-memory data structure.
The C++/Parser mapping generates parser templates for data types
defined in XML Schema. Using these parser templates you can build
your own in-memory representations or perform immediate processing
of XML instance documents.
XSD is available on GNU/Linux, HP-UX, Mac OS X, Solaris, and Windows.
Supported C++ compilers include: GNU g++, HP aCC, Intel C++, Sun C++,
and MS Visual C++.
More information, source code as well as precompiled binaries for all
supported platforms are available from
http://codesynthesis.com/products/xsd/
Best Regards,
Boris
--
Boris Kolpackov
Code Synthesis Tools CC
http://www.codesynthesis.com
Tel: +27 76 1672134
Fax: +27 21 5526869