UMF is comprised of a framework of various structures within a document. Consider the following UMF_ENTITY input document example:
<UMF_ENTITY> |
{document type or "root" segment} |
<DSRC_CODE>190-EMP</DSRC_CODE> |
{"root" data segment} |
<DSRC_ACTION>A</DSRC_ACTION> |
{"root" data segment} |
<NAME> |
{name record segment} |
<LAST_NAME>SMITH</LAST_NAME> |
{name data segment} |
<FIRST_NAME>JILL</FIRST_NAME> |
{name data segment } |
<NAME_PFX>MS</NAME_PFX> |
{name data segment } |
</NAME> |
{close name segment} |
<ADDRESS> |
{address record segment} |
<ADDR1>111 FIRST ST</ADDR1> |
{address data segment } |
<CITY>LAS VEGAS</CITY> |
{address data segment } |
<STATE>NV</STATE> |
{address data segment } |
<POSTAL_CODE>89111</POSTAL_CODE> |
{address data segment } |
</ADDRESS> |
{close address segment} |
</UMF_ENTITY> |
{close document} |
This example includes line-feeds and indentations at various points for readability. However, these are not required, in fact, when using the file input transport, there must be only one line-feed per document. An UMF document is simply a string of text to be transmitted.
This example also shows document that is only three segments deep, but this is not a restriction for UMF. A document may be any number of segments deep, but the DQM process will only traverse and initiate its processing using those segments that are immediate children of the root segment. All other segments are accessible by way of XPath during the processing of each of these initial segments. Any one of these segments at any level of depth is available for loading by the UMF loading process.