This task shows how to copy data from a list into a repeating element by using ESQL.
<MRM>
<inner>abcde fghij 12345</inner>
</MRM>
where the element inner is of type xsd:list,
and therefore has three associated string values, rather than a single
value. <MRM>
<str1>abcde</str1>
<str1>fghij</str1>
<str1>12345</str1>
</MRM>
you might expect that the following ESQL
syntax works: DECLARE D INTEGER;
SET D = CARDINALITY(InputBody.str1.*[]);
DECLARE M INTEGER 1;
WHILE M <= D DO
SET OutputRoot.MRM.str1[M] = InputBody.inner.*[M];
SET M = M + 1;
END WHILE;
SET OutputRoot.MRM.str1[M] = InputBody.inner.*[M];
requests a tree copy from input to output. Because the
output element does not yet exist, the statement creates it, and its
value and type are set from the input. SET OutputRoot.MRM.str1[M] = FIELDVALUE(InputBody.inner.*[M]);