Runtime library for XML Schema to C++ data binding compiler for mobile and embedded systems
XSD/e is an open-source, dependency-free XML Schema to C++ compiler for mobile, embedded, and light-weight applications. It provides XML parsing, serialization, XML Schema validation, and XML data binding while maintaining a small footprint and portability.
For further information, refer to the XSD/e project page.
Usage
XSD/e consists of several packages with the main ones being xsde
(the XML
Schema to C++ compiler) and libxsde
(the runtime library). There are also
xsde-tests
and xsde-examples
packages.
When specifying dependencies on the XSD/e packages in your project, the xsde
package should be a build-time dependency. The libxsde
library can be
configured differently depending on your project needs via the
config.libxsde.*
configuration variables (see libxsde/build/root.build
for
the available variables).
So, putting it all together, your project's manifest
would normally
have the following fragment if using the default libxsde
configuration:
depends: * xsde ^3.4.0
depends: libxsde ^3.4.0
Or, for example, the following fragment if your project needs to configure
libxsde
not to use STL, iostream, or C++ exceptions:
depends: * xsde ^3.4.0
depends:
\
libxsde ^3.4.0
{
prefer
{
config.libxsde.stl = false
config.libxsde.iostream = false
config.libxsde.exceptions = false
}
accept (!$config.libxsde.stl && \
!$config.libxsde.iostream && \
!$config.libxsde.exceptions)
}
\
Then your buildfile
would have something along these lines:
import! [metadata] xsde = xsde%exe{xsde}
import libs = libxsde%lib{xsde}
Note that the xsde
executable provides build2
metadata.
The compilation of XML Schema to C++ can be implemented using ad hoc recipes
or rules. See the xsde-examples
package for the complete examples.
license | other: GPL-2.0-only with FLOSS exception |
---|---|
project | xsde |
url | www.codesynthesis.com/products/xsde/ |
doc-url | www.codesynthesis.com/products/xsde/ |
src-url | git.codesynthesis.com/cgit/xsde/xsde/ |
xsde-users@codesynthesis.comMailing list | |
topics | C++XMLXML SchemaXML parsermobile and embedded systems |
version | 3.4.0 |
---|---|
repository | https://pkg.cppget.org/1/stable |
depends | 1; libexpat ? |
requires | 2; libace ?, libtirpc ? |
reviews | +1 |