我正在尝试使用该XML GENERATE
语句从COBOL程序创建XML文件。
COBOL结构:
01 EMPLOYEE.
05 ID PIC X(1).
05 NAME PIC X(10).
05 DEPT PIC X(10).
Run Code Online (Sandbox Code Playgroud)
XML GENERATE
将创建所有子元素
01 EMPLOYEE.
05 ID PIC X(1).
05 NAME PIC X(10).
05 DEPT PIC X(10).
Run Code Online (Sandbox Code Playgroud)
如果使用XML GENERATE WITH ATTRIBUTES
Function,它将创建所有属性:
<employee>
<id>1</id>
<name>Someone</name>
<dept>Marketing</dept>
</employee>
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以某种方式指示某些子组项目应该是属性和某些子元素:
<employee id="1" name="Someone" dept="Marketing">
</employee>
Run Code Online (Sandbox Code Playgroud)
如果是的话,如何?
有没有一种方法可以某种方式表明某些子组项目应为属性,而某些子元素应为属性
答:可以。
请参阅IBM关于XML GENERATE语句的文档,您可以使用以下TYPE
短语来调整单个数据项的类型,该短语可以指定多个项目:
XML GENERATE variable-name
FROM EMPLOYEE
TYPE OF ID IS ATTRIBUTE
secondary-variable IS ATTRIBUTE
Run Code Online (Sandbox Code Playgroud)
注意:正如IBM的docs XML元素名称和属性名称格式所说:
保留数据描述条目中数据名称的确切大小写混合拼写。
您可能希望将COBOL变量名称更改为全部小写,或者NAME
对所有数据条目使用该短语(至少在您希望“目标样本”中全部使用小写形式的情况下)。