Im Folgenden wird gezeigt, wie eine Zuordnung zwischen einer Liste und einem sich wiederholenden Element hergestellt wird.
<MRM>
<inner>abcde fghij 12345</inner>
</MRM>
Dabei ist dem Element 'inner' der Typ xsd:list
zugeordnet. Ihm sind also drei Zeichenfolgewerte statt eines einzelnen Werts zugeordnet. <MRM>
<str1>abcde</str1>
<str1>fghij</str1>
<str1>12345</str1>
</MRM>
Es kann davon ausgegangen werden, dass die folgende ESQL-Syntax gültig
ist: 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];
fordert
eine Baumstrukturkopie von Eingabe zu Ausgabe an. Da das Ausgabeelement noch nicht vorhanden ist,
wird es mit der Anweisung erstellt und der zugehörige Wert und Typ werden von der Eingabe aus
definiert. SET OutputRoot.MRM.str1[M] = FIELDVALUE(InputBody.inner.*[M]);