[xsde-announcements] XSD/e 3.4.0 released

Boris Kolpackov boris at codesynthesis.com
Tue Feb 11 04:35:22 EST 2025


We have released XSD/e version 3.4.0.

The complete list of the NEWS file entries for this release is included
below. A big thank you to everyone who helped test (or used) the pre-
release snapshots. It took a long time to get this release out and we
appreciate your patience.

Source code and binary distribution packages for this release are
available from:

http://www.codesynthesis.com/products/xsde/download.xhtml

Note that version 3.2.0 was never released. It was skipped due to a minor
versioning scheme adjustment in the pre-release component when migrating
to build2.

For the list of supported platforms and compilers see:

https://codesynthesis.com/products/xsde/platforms.xhtml

There is now a GitHub mirror of the XSD/e repository:

https://github.com/codesynthesis-com/xsde

And you are welcome to file bugs there in addition to reporting them
on the mailing list:

https://github.com/codesynthesis-com/xsde/issues

NEWS file entries for XSD/e version 3.4.0:

  * New option, --fat-type-file, triggers the generation of code
    corresponding to global elements into type files instead of schema
    files in the file-per-type mode. This option is primarily useful
    when trying to minimize the amount of object code that is linked
    to an executable by packaging compiled generated code into a static
    (archive) library.

  * Extra validation for date, dateTime, and gMonthDay per XML Schema 1.1.

  * Support for using external Expat library instead of bundled source
    code. See config.libxsde.external_expat (build2) or XSDE_EXTERNAL_EXPAT
    (secondary build systems) for details.

 C++/Parser

  * Allow empty base64Binary values per the specification.

 C++/Serializer

  * Elements with empty content are now closed immediately (for example,
    <foo x="y"/>) rather than with a separate closing tag (for example,
    <foo x="y"></foo>).

  * To improve the serialization performance, attributes are no longer
    sorted but rather written in the order that they were specified.

  * Support for the fractionDigits facet on the decimal data type.

  * New functions, format() and precision(), allow changing of the
    output notation and precision for the float, double, and decimal
    type serializers.



More information about the xsde-announcements mailing list