See information about the latest product version
Advanced schema structures
You can use several advanced schema structures in graphical data maps.
Substitution groups
A substitution group is an XML Schema feature that provides a means of substituting one element for another in an XML message. The element that can be substituted is called the head element, and the substitution group is the list of elements that can be used in its place.
The head element and any mapped substitutions are shown by default in the Graphical Data Mapping editor. The mapped substitutions are listed beneath the head element. You create mappings to or from members of substitution groups in the same way as you map other elements.
Wildcards
A mapping that you perform to or from a wildcard results in a submap call. Specify the wildcard replacement when you choose the parameter of a submap call.
A wildcard element or attribute can be instantiated only with another element or attribute. The Graphical Data Mapping editor allows only a global element or attribute as a wildcard replacement.
Casts
For an element of a given type, the base type and the mapped derived types are shown by default in the Graphical Data Mapping editor. All attributes and elements of the base and derived types are displayed.
You create mappings to or from a derived type and its contents in the same way that you map any type or type content. When you map a derived type element, the Graphical Data Mapping editor generates ESQL code with the appropriate xsi:type attribute.
List types
A list type is a way of rendering a repeating simple value. The notation is more compact than the notation for a repeating element and provides a way to have multi-valued attributes.
You map list type attributes or elements in the same way that you would map any other simple type attribute or element. Mapping between two list type elements is the same as mapping between any two simple type elements.
Union types
A union type is the same as a union of two or more other simple types and it allows a value to conform to any one of several different simple types.
<xsd:simpleType name="zipUnion">
<xsd:union memberTypes="USState listOfMyIntType"/>
</xsd:simpleType>
<xsd:element name=zip type=zipUnion/>