Я пытаюсь создать и XML файл в ACUCOBOL, используя оператор XML GENERATE. Мне удается получить файл, который выглядит следующим образом:
<?xml version="1.0" encoding="iso-8859-8" ?>
<ADASystem>
<Document>
<Fields>
<F_POLICY_NO>5935</F_POLICY_NO>
<F_ID_PASSPORT>90000000</F_ID_PASSPORT>
<F_MEMBER_ID>457</F_MEMBER_ID>
<F_FIRST_NAME>TEST</F_FIRST_NAME>
<F_MIDDLE_NAME>ONE</F_MIDDLE_NAME>
<F_LAST_NAME>FISMER</F_LAST_NAME>
</Fields>
</Document>
</ADASystem>
Я использовал это определение переменной:
01 ADASystem.
02 Document.
05 Fields.
10 F_POLICY_NO PIC X(20).
10 F_ID_PASSPORT PIC X(20).
10 F_MEMBER_ID PIC 9(6).
10 F_FIRST_NAME PIC X(100).
10 F_MIDDLE_NAME PIC X(100).
10 F_LAST_NAME PIC X(100).
И это утверждение:
XML GENERATE EDMS-REC-TEMP FROM ADASystem
COUNT IN CNT-TMP
END-XML.
Мне нужно файл должен выглядеть следующим образом, где имя поля является скорее атрибутом:
<?xml version="1.0" standalone="no"?>
<!-- MEMBER_FILE_20200205_15341195.xml - generated by ACUCOBOL-GT v10.2.1 on 2020/02/05 -->
<ADASystem>
<Document>
<Fields>
<Field Name="F_POLICY_NO"/>
<Field Name="F_ID_PASSPORT">1234567890</Field>
<Field Name="F_MEMBER_ID">123456</Field>
<Field Name="F_FIRST_NAME">Twentyone</Field>
<Field Name="F_MIDDLE_NAME">Test</Field>
<Field Name="F_LAST_NAME">Member</Field>
</Fields>
</Document>
</ADASystem>
Есть ли простой способ сделать это, отформатировав файл? Я пробовал C $ XML, но не могу получить правильное кодирование, и у меня нет опыта работы с XSLT, и я изо всех сил пытаюсь выяснить это, используя примеры в Интернете.
Любая помощь / руководство будет высоко ценится.
С уважением, Натал ie.