WSDL maxOccurs attribute considerations

If the maxOccurs attribute is on a sequence tag of the XML schema, rather than an element tag, when the WSDL is parsed, a message appears similar to the following.

The message lists the parameters that were modified for a specific WSDL operation.

When you click OK, the type of the tag will be adjusted accordingly by the Workbench to ensure accurate positioning.

From the Type column, you can change the parameter type when the changes suggested are not appropriate for the resulting XML.

Example:

A WSDL with the following construct:

<xs:elementname="N_SHOP_ORDER_LIST" minOccurs="0" nillable="true"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"><xs:element name="N_SEND_SHOP_ORDER_OP"> <xs:complexType>
is ambiguous and might result in multiple XMLs.

The Transaction Server assumes the syntax to mean:
<xs:element name="N_SHOP_ORDER_LIST" minOccurs="0" nillable="true"> <xs:complexType> <xs:sequence> <xs:element name="N_SEND_SHOP_ORDER_OP" minOccurs="0" maxOccurs="unbounded"><xs:complexType>

When maxOccurs="unbounded", the Transaction Server assumes an array of values and assigns it the type TABLE. The placement of TABLE and STRUCTURE tags in the transport map is very important in allowing the Transaction Server to process arrays successfully.

You should not change the type of tables and structures unless the XML schema constructs are well understood.

Related topics

Creating the IFS transport map

Using Query

Using Map Parms

Validating and saving the transport map

Example trigger with IFS transport map