[xsde-users] What's the difference between XSD/e and XSD, when I using XSD with expat as the underlying parser

Boris Kolpackov boris at codesynthesis.com
Wed Oct 10 02:19:54 EDT 2007


Hi,

Jiang, Bin (Bin) <binjiang at alcatel-lucent.com> writes:

> What's the difference between XSD/e and XSD, if I config XSD with expat
> as the underlying parser?
> More specifically, are they same in schema validation capability,
> performance (memory/CPU usage), etc?

The main difference is the ability of XSD/e to work without many
C++ features, such as exceptions, STL, RTTI, iostream, and templates.
As a result, XSD/e-generated code is smaller, and can be compiled
with older, legacy compilers, especially if some or all of the
above C++ features are disabled. On the other hand, XSD provides
some extra features, such as different underlying parsers and
configurable character type (char or wchar_t).

XSD/e and XSD are the same in schema validation capabilities and
should have roughly equivalent performance when configured similarly
(that is, XSD/e is configured with exceptions, stl, etc.).

To put this in more general terms, in XSD/e portability, low
footprint, and performance are prioritized. While in XSD
convenience, ease of use, and performance are prioritized.

Boris




More information about the xsde-users mailing list