Um grupo é uma lista de elementos que define como esses elementos podem aparecer em uma mensagem.
Os grupos podem ser ordenados (seqüência)) não ordenados (tudo) ou seletivos (opção). Os grupos definem a composição e a validação de conteúdo de um conjunto de membros de tipo.
Os grupos podem ser utilizados para qualquer uma das seguintes finalidades:
Um tipo complexo pode referir-se a um grupo global que define totalmente 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 referir-se ao mesmo grupo global se ambos contiverem o mesmo subconjunto de elementos.
Você pode ter um tipo complexo que é uma seqüência de três membros, mas o segundo membro é uma opção de dois elementos. Para modelar isso, um grupo com composição definida como opção pode ser inserido como o segundo membro da seqüência.
Os grupos podem conter elementos complexos, elementos simples, elementos curinga e grupos.
Combinando esses componentes, a estrutura de qualquer mensagem pode ser modelada. Os elementos curinga podem ser incluídos para permitir que elementos não-modelados apareçam tornando 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. Representa uma estrutura que aparece em mais de um local no modelo de mensagem. Um grupo global deve ter um nome exclusivo pelo qual ele pode ser referido.
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 precisam ser denominados.
Em Esquema XML, um grupo pode ter sua composição definida como seqüência, tudo ou opção.
O modelo de mensagem também permite outras composições, para permanecer compatível com versões anteriores do produto. Veja informações adicionais na publicação Extensões de Esquema do Modelo de Mensagem.