COBOL XML 使用标签和属性生成
COBOL XML GENERATE using tags and attributes
我正在尝试使用 XML GENERATE
语句从 COBOL 程序创建一个 XML 文件。
COBOL 结构:
01 EMPLOYEE.
05 ID PIC X(1).
05 NAME PIC X(10).
05 DEPT PIC X(10).
XML GENERATE
将创建所有子元素
<employee>
<id>1</id>
<name>Someone</name>
<dept>Marketing</dept>
</employee>
如果我使用XML GENERATE WITH ATTRIBUTES
函数,
它将创建所有属性:
<employee id="1" name="Someone" dept="Marketing">
</employee>
有没有一种方法我们可以以某种方式表明一些子组项目应该是属性和一些子元素:
<employee id="1">
<name>Someone</name>
<dept>Marketing</dept>
</employee>
如果是,怎么做?
Is there a way we can somehow indicate that some sub group items should be attributes and some sub elements
回答:是的。
参见 IBM 在 XML GENERATE statement 上的文档,您可以使用 TYPE
短语调整单个数据项的类型,它可以指定多个项目:
XML GENERATE variable-name
FROM EMPLOYEE
TYPE OF ID IS ATTRIBUTE
secondary-variable IS ATTRIBUTE
注意:正如 IBM 的文档 XML element name and attribute name formation 所说:
The exact mixed-case spelling of data-names from the data description entry is retained.
您可能希望将 COBOL 变量名称更改为全部小写或对所有数据条目使用 NAME
短语(至少如果您希望它全部为小写,如 "target sample").
我正在尝试使用 XML GENERATE
语句从 COBOL 程序创建一个 XML 文件。
COBOL 结构:
01 EMPLOYEE.
05 ID PIC X(1).
05 NAME PIC X(10).
05 DEPT PIC X(10).
XML GENERATE
将创建所有子元素
<employee>
<id>1</id>
<name>Someone</name>
<dept>Marketing</dept>
</employee>
如果我使用XML GENERATE WITH ATTRIBUTES
函数,
它将创建所有属性:
<employee id="1" name="Someone" dept="Marketing">
</employee>
有没有一种方法我们可以以某种方式表明一些子组项目应该是属性和一些子元素:
<employee id="1">
<name>Someone</name>
<dept>Marketing</dept>
</employee>
如果是,怎么做?
Is there a way we can somehow indicate that some sub group items should be attributes and some sub elements
回答:是的。
参见 IBM 在 XML GENERATE statement 上的文档,您可以使用 TYPE
短语调整单个数据项的类型,它可以指定多个项目:
XML GENERATE variable-name
FROM EMPLOYEE
TYPE OF ID IS ATTRIBUTE
secondary-variable IS ATTRIBUTE
注意:正如 IBM 的文档 XML element name and attribute name formation 所说:
The exact mixed-case spelling of data-names from the data description entry is retained.
您可能希望将 COBOL 变量名称更改为全部小写或对所有数据条目使用 NAME
短语(至少如果您希望它全部为小写,如 "target sample").