Support for <xsd:sequence>

The use of <xsd:sequence> elements with the CICS® assistants is supported with a number of limitations.

The use of minOccurs and maxOccurs attributes are not supported for the <xsd:sequence> element. The exceptions to this rule are when minOccurs="0" and maxOccurs="1" or minOccurs="1" and maxOccurs="1".

The CICS assistants do not allow two elements with the same name to be used in the same <xsd:sequence> element. For example, the sequence {a, b, c, a} is rejected by the CICS Assistants. To avoid this limitation, replace the sequence with {a maxOccurs="2", b, c}.

The CICS Assistants allow only one <xsd:any> element, or one element that is treated as an <xsd:any>, in the same <xsd:sequence> element. Elements that are treated as <xsd:any> elements include abstract elements that do not have a substitution group defined.

When parsing XML, CICS treats <xsd:sequence> elements like <xsd:all> elements; this means that CICS does not check whether the order of the items in the sequence is correct. For example, if the schema defines a sequence of {a, b, c}, CICS tolerates XML that contains a, b, and c in any order. However; when CICS generates XML, the order of items in an <xsd:sequence> is always preserved.

CICS does not automatically detect missing XML data. For example, if an element in the <xsd:sequence> is defined as mandatory, (minOccurs="1" maxOccurs="1"), but does not occur in the XML document, CICS will report this problem only if runtime validation is enabled