The XML Schema complexContent element provides the ability to create something very like C++ polymorphism in a schema. HydraExpress handles the ambiguity through the xsi:type attribute required for polymorphic elements in the instance document. For more information on how HydraExpress handles substitutable elements, see Chapter 8, “Mapping XML Schema to C++.”
The schema used in this example also demonstrates how you can logically group schema definitions in separate files and then use the include feature to reference them.