La especificación de esquema XML permite que un elemento, o atributo, contenga una lista de valores que se basan en un tipo simple, con los valores individuales separados por un espacio en blanco. En el árbol de mensaje, un elemento xsd:list se representa como un nodo de nombre, con un nodo hijo anónimo para cada elemento de lista. Pueden manejarse listas de repetición sin ninguna pérdida de información.
<message1> <listE1>one two three</listE1> </message1>
MRM listEl (Name) "one" (Value) "two" (Value) "three" (Value)
Puede accederse a los elementos individuales de la lista como ElementName.*[n].
SET X = FIELDVALUE (InputBody.message1.listE1.*[3]);
Un atributo también puede ser de tipo xsd:list.
<message1> <Element listAttr="one two three"/> </message1>
MRM Element (Name) listAttr (Name) "one" (Value) "two" (Value) "three" (Value)
Igual que antes, puede accederse a los elementos individuales de la lista como AttrName.*[n].
SET X = FIELDVALUE (InputBody.message1.Element.listAttr.*[3]);
Un elemento de lista puede aparecer más de una 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]);