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.