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.
All possible substitutes of a head element are listed beneath the head element. You create mappings to or from members of substitution groups in the same way as you would map other elements.
An abstract head element of a substitution group is not displayed and when substitution is blocked, the substitution group folder is not displayed.
Any 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 Message Mapping editor allows only a global element or attribute as a wildcard replacement.
For an element of a given type, all known types that are based on it are shown in the Source and Target panes of the Message Mapping editor, and all attributes and elements of the base and derived types are listed under each type respectively.
You create mappings to or from a derived type and its contents in the same way that you would map any type or type content. When you map a derived type element, the Message Mapping editor generates ESQL code with the appropriate xsi:type attribute.
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.
To transform between a list type and a non-list type, such as a repeating element, write an ESQL function, then package the function as a map. The Message Mapping editor automatically selects this submap as the default transformation for the list type.
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/>