Para facilitar a identificação de elementos que representam listas de valores e outros elementos, sugere-se adotar o padrão “ListOf”+”nome singular” e não o plural do elemento repetido.
Exemplo:
· ListOfItem e não Itens
· ListOfSourceDocument e não SourceDocuments ou SourcesDocuments
· ListOfQuotation e não Quotations
A declaração do elemento de lista no schema XML deve respeitar o seguinte padrão:
No local onde se queira incluir uma lista, deve-se adicionar um <xs:elemento> com o nome ListOf + “elemento a repetir”, exemplo:
ListOfQuotation . Neste deve estar definido se a lista em si é obrigatória ou não, utilizando:
minOccurs="0" maxOccurs="1" para não obrigatória ou
minOccurs="1" maxOccurs="1" para obrigatória.
Este elemento define por si só a tag <ListOfQuotation> e a tag que irá se repetir <Quotation> .
No exemplo abaixo, como se refere aos dias de um mês está como minOccurs="1" maxOccurs="31". Porém, o normal é que seja minOccurs="1" maxOccurs="unbounded" para listas com um item obrigatório e sem limite de itens.
O complexType QuotationType define a estrutura do elemento que irá se repetir, ou seja quais tags o XML da lista irá conter. Neste caso, são compostos pelos elementos Day e Value.
Exemplo: