L'UMF est constitué d'un ensemble de structures diverses au sein d'un document. Observons l'exemple de document d'entrée UMF_ENTITY suivant :
<UMF_ENTITY> |
{type de document ou segment "racine"} |
<DSRC_CODE>190-EMP</DSRC_CODE> |
{segment de données "racine"} |
<DSRC_ACTION>A</DSRC_ACTION> |
{segment de données "racine"} |
<NAME> |
{segment d'enregistrement de nom} |
<LAST_NAME>SMITH</LAST_NAME> |
{segment de données de nom} |
<FIRST_NAME>JILL</FIRST_NAME> |
{segment de données de nom } |
<NAME_PFX>MS</NAME_PFX> |
{segment de données de nom } |
</NAME> |
{fermeture du segment de nom} |
<ADDRESS> |
{segment d'enregistrement d'adresse} |
<ADDR1>111 FIRST ST</ADDR1> |
{segment de données d'adresse } |
<CITY>LAS VEGAS</CITY> |
{segment de données d'adresse } |
<STATE>NV</STATE> |
{segment de données d'adresse } |
<POSTAL_CODE>89111</POSTAL_CODE> |
{segment de données d'adresse } |
</ADDRESS> |
{fermeture du segment d'adresse} |
</UMF_ENTITY> |
{fermeture du document} |
Cet exemple comprend des sauts de lignes et des retraits à plusieurs endroits pour plus de lisibilité. Toutefois, ils ne sont pas nécessaires avec le transport d'entrée de fichier ; il doit y avoir qu'un seul retour à la ligne par document. Un document UMF est simplement à une chaîne de texte à transmettre.
Cet exemple illustre par ailleurs un document d'une profondeur de trois segments seulement, mais il ne s'agit pas là d'une restriction d'UMF. Un document peut compter un nombre illimité de segments, mais le processus DQM ne le traversera et n'initialisera son traitement qu'en utilisant les segments qui sont des enfants immédiats du segment racine. Tous les autres segments sont accessibles à l'aide de XPath au cours du traitement de chacun de ces segments initiaux. N'importe lequel de ces segments, quel que soit le niveau de profondeur, peut être chargé par les processus de chargement UMF.