[xsd-announcements] XSD 3.0.0.b1 released

Boris Kolpackov boris at codesynthesis.com
Tue Jun 5 11:11:26 EDT 2007


We have released XSD 3.0.0.b1 which is the first beta for the upcoming
3.0.0 major release. This beta is mostly focused on the C++/Tree
mapping. The following beta will have more changes and improvements to
the C++/Parser mapping. The NEWS file entries so far are as follows:

  * Anonymous type morphing (automatic type naming) is now performed by
    default in both mappings. The --morph-anonymous option does not have
    any effect but is preserved for backwards compatibility. A new option,
    --preserve-anonymous, disables anonymous type morphing. This option is
    useful together with --show-anonymous if you want to make sure your
    schemas do not have any anonymous types.

  * Number of bug fixes in both C++/Tree and C++/Parser mappings.


  * Optimizations for the generated code size and compilation time,
    including space optimizations for polymorphic parsing and

  * The type definitions for local elements and attributes in the form
    name::type have been changed to name_type. For example, an element
    bar in type foo with maxOccurs="unbounded" used to have its iterator
    type defined as foo::bar::iterator. With this change it becomes
    foo::bar_iterator. This is a backwards incompatibility change
    and may require the application code adjustments (the C++ compiler
    will pinpoint the affected places).

  * New option, --generate-wildcard, triggers generation of the new
    wildcard (any and anyAttribute) mapping. This mapping represents the
    content matched by wildcards as DOM fragments. For more information on
    the new mapping see Section 2.12, "Mapping for any and anyAttribute"
    in the C++/Tree Mapping User Manual as well as the wildcard example in
    the examples/cxx/tree/ directory.

  * New option, --generate-comparison, triggers generation of comparison
    operators (== and !=) for complex types. Comparison is performed

  * Support for polymorphic binary serialization and extraction. Note that
    the semantics of the --generate-insertion and --generate-extraction
    options has changed. See the XSD Compiler Command Line Manual (man
    pages) for details.

  * The mapping of built-in XML Schema type decimal has changed from
    long double to double. The old mapping can be obtained by providing
    a custom mapping for this type.

  * The xml_schema::errors type which is used in the xml_schema::parsing
    and xml_schema::serialization exceptions has been renamed to
    xml_schema::diagnostics and extended to include warnings in addition
    to errors.

  * Serialization operators now clear the element being serialized to from
    existing child nodes and attributes (except for special attributes such
    as prefix-namespace mappings, etc.).

  * Improved built-in type parsing, including support for normalization and
    whitespace collapsing.


  * The xml_schema::errors type which is used in the xml_schema::parsing
    exception has been renamed to xml_schema::diagnostics and extended to
    include warnings in addition to errors.

Thanks to the following individuals for reporting bugs as well as
suggesting fixes and improvements:

Ray Lischner       <rlischner at proteus-technologies.com>
Bradley Beddoes    <beddoes at intient.com>
Mark Hoffmann      <mhoffm1060 at aol.com>
Thomas Müller      <th.mueller at weisang.com>
Mark Lofdahl       <mark.lofdahl at bigfoot.com>
Fukasawa Mitsuo    <fukasawa_mitsuo at nifty.com>
Mark Watson        <mark at digitalfountain.com>
Sergei V. Firsov   <sergei.firsov at mail.ru>
Paolo Volpi        <paolo.volpi at tvblob.com>
Mark Kinzie        <mark.kinzie at jhuapl.edu>
Arthur             <mur at freenet.am>
Eelko de Groot     <efdegroot at corp.csnet.nl>
Thomas Maenner     <tmaenner at aehr.com>
Gerard Lanois      <gerard at lanois.com>
Glenn Nieuwenhuyse <glenn.nieuwenhuyse at gmail.com>
Mark Kinzie        <mark.kinzie at jhuapl.edu>

Precompiled binary distributions are available from the product's
download page:


Source code for this release is available from the project's web page:


SHA1 checksums for the files:

8dc37877bb4557839d62b142cc35642108c9a02d  xsd-3.0.0.b1.tar.bz2
4da49a7557292a3755e190ea8525db0ebcef5c16  xsd-3.0.0.b1-i686-linux-gnu.tar.bz2
b352929b3484c26589e349712eebe2dc37ede70b  xsd-3.0.0.b1-x86_64-linux-gnu.tar.bz2
580141d82865964ac08237377049d3c5ebc28aff  xsd-3.0.0.b1-i686-windows.zip

Have fun,


More information about the xsd-announcements mailing list