XML has been a growing standard for the transfer of data during b-to-b processing for the last two decades. This is an especially fortunate standard for AOA, as an XML object shares many characteristics with an AOA object. In fact, any AOA object can be written out as an XML object and any XML object can be loaded into an AOA object.
The advantage of this compatibility is that all of the normal documentation and processing capabilities of AOA are available for support of XML. An AOA LOD is created to document the data content of an XML object. Then, at execution time, a single VML command is issued to take the content of an XML file and transform it into an AOA object and another single command is issued to transform the content of an AOA into an XML file. All regular VML rule functionality is available to manage the processing of the transformed object.
A typical example of AOA utilizing XML in b-to-b processing is the COD import/export functionality of OpenCUAS. COD is a federal program for communicating financial aid information back and forth between the government and colleges. That communication is accomplished through an XML file. In OpenCUAS, any XML file from the government is loaded into a work object, where it is processed against database objects using normal AOA operations. To return the XML file, the AOA database objects are processed to create the work object, which is then written to a file and returned to the government.
Part of the work LOD definition for the XML data is shown to the right. By normal AOA standards, it is not a well-defined structure, as it contains more entities than are necessary to define the data it contains. However, that only makes the structure somewhat more difficult to read and doesn’t affect processing.
XML files are read into a work object and a work object is written out to an XML file via single commands. As is consistent with the rest of AOA objects, those commands are activate and commit, examples of which are shown below.