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