A especificação de Esquema XML permite que um elemento, ou atributo, contenha uma lista de valores baseados em um tipo simples, com os valores individuais separados por espaço em branco. Na árvore de mensagens, um elemento xsd:list é representado como um nome de nó, com um nó filho anônimo para cada item da lista. As listas de repetição podem ser manipuladas sem qualquer perda de informações.
<message1> <listE1>one two three</listE1> </message1>
MRM listEl (Name) "one" (Value) "two" (Value) "three" (Value)
Os itens da lista individuais podem ser acessados como ElementName.*[n].
SET X = FIELDVALUE (InputBody.message1.listE1.*[3]);
Um atributo também pode ser de tipo xsd:list.
<message1> <Element listAttr="one two three"/> </message1>
MRM Element (Name) listAttr (Name) "one" (Value) "two" (Value) "three" (Value)
Como antes, os itens individuais da lista podem ser acessados como AttrName.*[n].
SET X = FIELDVALUE (InputBody.message1.Element.listAttr.*[3]);
Um elemento da lista pode ocorrer mais de uma vez.
<message1> <listE1>one two three/listE1> <listE1>four five six/listE1> </message1>
MRM listE1 (Name) "one" (Value) "two" (Value) "three" (Value) listE1 (Name) "four" (Value) "five" (Value) "six" (Value)
SET X = FIELDVALUE (InputBody.message1.listE1[2].*[1]);