Использование XML GENERATE в ACUCOBOL для создания файла XML с атрибутами - PullRequest
0 голосов
/ 12 февраля 2020

Я пытаюсь создать и 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.

...