AcuXML output structures

When AcuXML generates XML data, the hierarchical structure of the XML file matches the record structure of the COBOL file. For example, iobench has a sequential file SEQ1, whose record structure is defined as:

01  SEQ-1-RECORD.
   03  SEQ-1-KEY                       PIC 9(10).
   03  SEQ-1-ALT-KEY.
       05  SEQ-1-ALT-KEY-A             PIC X(30).
       05  SEQ-1-ALT-KEY-B             PIC 9(10).
   03  SEQ-1-BODY                      PIC X(50).

If this file were written as an XML file, a typical record would look like this:

 <SEQ-1-RECORD>
   <SEQ-1-KEY>20</SEQ-1-KEY>
   <SEQ-1-ALT-KEY>
     <SEQ-1-ALT-KEY-A>032472140976086473026412339002
     </SEQ-1-ALT-KEY-A>
     <SEQ-1-ALT-KEY-B>20</SEQ-1-ALT-KEY-B>
   </SEQ-1-ALT-KEY>
 <SEQ-1-BODY>ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrst
 </SEQ-1-BODY>
 </SEQ-1-RECORD>

Note that in XML, it is possible for two data elements to have the same name. For instance:

<Lender phone="607.555.2222">
    <name>Doug Glass</name>
    <street>416 Disk Drive</street>
    <city>Medfield</city>
    <state>MA</state>
</Lender>
<Borrower phone="310.555.1111">
    <name>Britta Regensburg</name>
    <street>219 Union Drive</street>
    <city>Medfield</city>
    <state>CA</state>
</Borrower>

However, XFDs are designed to mirror the structure of databases which do not allow duplicate element names. For this reason, compiling a COBOL program with this record structure will result in an XFD compiler warning. If you are working with XML data files, you may disregard this warning.