Um grupo é uma lista de elementos que definem como esses elementos podem aparecer em uma mensagem. Os grupos definem a composição e a validação de conteúdo de um tipo complexo.
No esquema XML, os grupos podem ser ordenados (sequência), desordenados (todos) ou seletivos (opção).
No esquema DFDL, os grupos podem ser ordenados (sequência), desordenados (sequência, mas com a propriedade DFDL dfdl:sequenceKind=”unordered”) ou seletivos (opção).
Nos arquivos de definições de mensagens, nos conjuntos de mensagens, os grupos podem ser ordenados (sequência), desordenados (todos) ou seletivos (opção). Para obter informações adicionais, consulte Conjuntos de Mensagens: Extensões do Esquema XML em Conjuntos de Mensagens.
Os grupos podem ser utilizados para qualquer uma das seguintes finalidades:
Um tipo complexo pode se referir a um grupo global que defina completamente seu conteúdo. (Se não definir, o conteúdo do tipo complexo será definido por um grupo local anônimo, que está oculto no Editor de Definições de Mensagem).
Dois ou mais tipos complexos podem fazer referência ao mesmo grupo global, se eles contiverem o mesmo subconjunto de elementos.
Você pode ter um tipo complexo que seja uma sequência de três membros, mas o segundo membro é uma opção dos dois elementos. Para modelar essa circunstância, um grupo com composição configurada como opção pode ser inserido como o segundo membro da sequência.
Os grupos podem conter elementos complexos, elementos simples, elementos curinga e grupos.
Ao combinar esses componentes, a estrutura de qualquer mensagem pode ser modelada. Os elementos curinga podem ser incluídos para permitir que os elementos não modelados apareçam, tornando, assim, o modelo de mensagem robusto e flexível.
Os grupos podem ser globais ou locais.
Um grupo global pode ser utilizado em mais de um local no modelo de mensagem. Ele representa uma estrutura que aparece em mais de um local no modelo de mensagem. Um grupo global deve receber um nome exclusivo pelo qual pode ser referido por uma referência de grupo.
Um grupo local é definido em uma posição em um grupo e não está disponível para reutilização em outro lugar no modelo de mensagem. Os grupos locais não possuem um nome e são exibidos usando-se a composição do grupo.