Below is the list of features that we plan to implement in the future. They are divided into two sections: ones that will likely appear in the forthcoming releases and those that we have no definite time-line for. Email xsd-users@codesynthesis.com if you are interested in a particular feature or would like to suggest one.

# Forthcoming Releases

## cxx-tree

- Customization of the generated code.
- Validation in the generated code (perfect parser).
- Validation of the in-memory representation.

## cxx-parser

- Generation of sample implementation.

## idl

- New backend that will produce CORBA IDL tree-like mapping.

## idl-cxx

- New backend that will produce CORBA IDL C++ co-mapping.

# No Definite Time-line

## new backends

- ICE mapping backend. This backend will produce Internet Communication Engine (ICE) IDL tree mapping and C++ co-mapping.

## cxx-tree

- Mapping for `xsd:unique`, `xsd:key`, and `xsd:keyref`.
- Option to select between `std::vector` and `std::list` as an underlying sequence type.
- Special attribute in XML Schema definition that would instruct code generators to use a different container type such as associative containers (`std::set` and `std::multiset`). This will allow you to construct a light-weight, object-oriented database with XML Schema as a specification language and XML as an underlying representation.
- Make dependency generator.
- Generate typedef instead of inheritance for some cases of inheritance from fundamental types.
- Option to suppress generation of enum mapping.
- Map arbitrary-length integers to a suitable user-defined types.
- Map date and time types to types from `boost::date_time`.
- Map `xsd:anyURI` to a URI class.
- Option to map `xsd:long` to C++ `long` instead of `long long` for 64-bit architectures.