[xsd-users] XSD 3.1.0.b1 released
Boris Kolpackov
boris at codesynthesis.com
Tue Jan 15 10:45:53 EST 2008
Hi,
We have released XSD 3.1.0.b1 which is the first and most likely the
final beta for the upcoming 3.1.0 release. The NEWS file entries so
far are as follows:
* New option, --file-per-type, triggers generation of a separate set
of C++ files for each type defined in XML Schema. This compilation
mode is primarily useful when some of your schemas cannot be
compiled separately or have cyclic dependencies which involve type
inheritance. Other new options that are useful in this compilation
mode are --type-file-regex, --type-file-regex-trace, and --file-list.
See the compiler command line manual (man pages) for more information.
* New option, --options-file, allows additional command line
options to be provided in files, with one option per line.
* New option, --reserved-name, allows inserting additional
names with optional replacements to the list of names that
should not be used as identifiers. See the compiler command
line manual (man pages) for details.
* New options, --location-map, --location-regex, and
--location-regex-trace, allow re-mapping of schema locations
specified in the include and import elements without modifying
the schema files. See the compiler command line manual (man
pages) for more information.
* New option, --guard-prefix, allows specifying a prefix that will be
added to generated header inclusion guards.
* New option, --file-list, triggers creation of a file with a list
of generated C++ files. This option is primarily useful in the
file-per-type compilation mode (--file-per-type) to create a list
of generated C++ files, for example, as a makefile fragment. Other
new options that are useful with --file-list are --file-list-prologue,
--file-list-epilogue, and --file-list-delim. See the compiler command
line manual (man pages) for more information.
* Support for the upcoming Xerces-C++ 3.0.0 release.
C++/Tree
* New option, --generate-intellisense, triggers generation of workarounds
for IntelliSense bugs in Visual Studio 2005 (8.0). When this option is
used, the resulting code is slightly more verbose. IntelliSense in
Visual Studio 2008 (9.0) does not require these workarounds. Support
for IntelliSense in Visual Studio 2003 (7.1) is improved with this
option but is still incomplete.
* New options, --type-naming and --function-naming, allow one to
specify the type and function naming conventions that should be
used in the generated code. Supported values for --type-naming
are: knr (K&R), ucc (upper-camel-case), and java. Supported
values for --function-naming are: knr (K&R), lcc (lower-camel-
case), and java. For more information see the NAMING CONVENTION
section in the compiler command line manual (man pages).
* New options, --type-regex, --accessor-regex, --modifier-regex,
--parser-regex, --serializer-regex, and --enumerator-regex,
allow one to specify transformations for type, accessor function,
modifier function, parsing function, serialization function, and
enumerator names in order to produce the generated code using a
custom naming convention. For more information see the NAMING
CONVENTION section in the compiler command line manual (man pages).
* Generated list classes now provide a complete set of constructors
and conform to the standard C++ sequence interface.
* String-based types now provide two extra constructors that take
C string and std::string as their arguments. This allows direct
initialization of string-based types from string literals.
* New implementations of the XML Schema date/time types (date, dateTime,
duration, gDay, gMonth, gMonthDay, gYear, gYearMonth, and time) that
represent the information in the numerical form.
* Support for customization of anyType. Because anyType is a base type
for every generated type, customizing it allows you to implement
custom functionality that spans the entire type system. See the
comments example in the examples/cxx/tree/custom/ directory.
* New option, --omit-default-attributes, triggers generation of extra
checks that exclude attributes with default and fixed values from the
serialized XML documents.
* The parsing functions that used to read from DOMInputSource were
changed to use InputSource to ease support for of Xerces-C++ 3
and 2 series in the same code base.
C++/Parser
* The date/time types (date, dateTime, gDay, gMonth, gMonthDay, gYear,
gYearMonth, and time) now represent time zone in the numerical form.
Precompiled binary distributions for GNU/Linux x86, Mac OS X x86, and
Windows are available from the product's download page:
http://www.codesynthesis.com/products/xsd/download.xhtml
Source code for this release is available from the project's web page:
http://www.codesynthesis.com/projects/xsd/
SHA1 checksums for the files:
25b8230a8c415ba248c6ec5c986d2af426e73962 xsd-3.1.0.b1.tar.bz2
ce4a3cd7598d0f78ee4ccbc41d59b5162927e77b xsd-3.1.0.b1-i686-linux-gnu.tar.bz2
7e730152a2512fe11490721669fb4f75b606f527 xsd-3.1.0.b1-i686-macosx.tar.bz2
c95424631c07f1a6e851579c9939cec123b0d068 xsd-3.1.0.b1-i686-windows.zip
Have fun,
Boris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 652 bytes
Desc: Digital signature
Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20080115/695fac37/attachment.pgp
More information about the xsd-users
mailing list