Un tipo complesso descrive la struttura di uno o più elementi complessi.
I tipi complessi sono parte essenziale di ciascun modello di messaggio poiché definiscono la struttura logica dei messaggi e degli elementi nel modello.
I tipi complessi definiscono l'albero dei messaggi e degli elementi nel modello di messaggio. E' possibile modellare pressoché qualsiasi struttura di messaggio combinando elementi, attributi, gruppi e Wildcard.
Nella maggior parte dei tipi complessi sono contenuti alcuni elementi e in alcuni è contenuta un'ampia gerarchia di elementi complessi. Gli elementi in un tipo complesso sono sempre contenuti in un gruppo. E' possibile che il gruppo sia locale nel tipo complesso e in tal caso l'editor Definizione dei messaggi lo nasconde dalla vista. Si tratta della situazione normale.
In alternativa, è possibile che il gruppo in cui sono contenuti gli elementi sia un gruppo globale e tale gruppo definisce la convalida di contenuto, la composizione e il contenuto dell'elemento del tipo complesso.
Se un tipo complesso deriva da un tipo semplice, non è consentito che contenga il contenuto dell'elemento.
La composizione di un tipo complesso descrive l'organizzazione dei membri del tipo. Per ulteriori informazioni, fare riferimento a Oggetti modello di messaggio: gruppi.
Il parametro Convalida contenuto in un tipo complesso specifica il livello di precisione per la convalida del contenuto del tipo. Per ulteriori informazioni, fare riferimento a Oggetti modello di messaggio: gruppi.
In un tipo complesso sono disponibili parametri che controllano se è possibile derivare altri tipi (finale) e se è possibile sostituirlo con altri tipi (blocco). Per ulteriori informazioni, fare riferimento a Gruppi di sostituzione nel modello di messaggio.