Organization of this Manual
This Development Guide provides an overview of HydraExpress’s XML binding capabilities and instructions on using the code generator and generated classes.
*Chapter 1 (this chapter) includes a simple introduction to HydraExpress’s XML binding features.
*Chapter 2, XML Binding Concepts, introduces the concepts behind XML binding. The chapter explains XML data binding in general and presents the data binding implementation that HydraExpress uses. The chapter also discusses internationalization and validation.
*Chapter 3, Basic Purchase Order Example, describes the basic Purchase Order example, provided with this release. This example illustrates the basics of how to build and use the HydraExpress-generated code.
*Chapter 4, Purchase Order Example & Namespace Qualification, also uses the Purchase Order example, but with support for qualified namespaces. Qualified namespaces create considerable differences in the XML document, but results in few changes in the generated code.
*Chapter 5, SOAP Example, uses the SOAP schema to illustrate how HydraExpress handles the any element, as well as elements with arbitrary content, such as content that contains XML elements. This example also illustrates how you can use a customized mapping to resolve naming collisions between types and elements defined in the global scope.
*Chapter 6, complexContent Example, uses the complexContent example to illustrate how HydraExpress handles complexContent by extension and restriction. This example also demonstrates the use of the XML Schema include feature and substitutability of types.
*Chapter 7, Advanced Tasks, presents code samples for performing more advanced tasks with HydraExpress. The chapter includes advice on designing schemas for extensibility, customizing marshaling behavior through the external marshaling feature, customizing data formatting, and working with large documents.
*Chapter 8, Mapping XML Schema to C++, describes the logic used by the XML binding code, mapping from XML Schema features to the generated code.
The HydraExpress C++ API Reference Guide provides reference documentation for the non-generated classes on which HydraExpress depends.