2.2 データ定義ファイルDDF)の作成

XMLドキュメントの要素は,データを常に文字列として持っているため,DTDだけではそれぞれの要素がどの種類のCOBOLデータ項目に対応するかわかりません。そのため,XML要素とCOBOLデータ項目とを結び付ける対応情報を定義する必要があります。

データ定義ファイル(DDF)は,XMLドキュメントのDTDで定義されたXML要素のうち,COBOLプログラムからアクセスしたい要素とCOBOLデータ項目との対応づけを記述するファイルです。

[図データ]

DDFでは,データ定義言語(DDL)を使ってXML要素とCOBOLデータ項目とを対応づけます。DDLの記述方法については,「2.3 データ定義言語(DDL)の文法」を参照してください。

DDFの形式
<?xml version="1.0" encoding="Shift_JIS"?>
データ定義言語(DDL)
DTD中の要素「row」の要素「address」に含まれる要素「name」および「age」をCOBOLデータ項目に対応づけるDDFを次に示します。
(DTDの例)

<!DOCTYPE table [
 <!ELEMENT table (row)*>
 <!ELEMENT row (name, address, grade, age)>
 <!ELEMENT name (#PCDATA)>
 <!ELEMENT address (addr1, addr2, city, state, zip)>
 <!ELEMENT addr1 (#PCDATA)>
 <!ELEMENT addr2 (#PCDATA)>
 <!ELEMENT city (#PCDATA)>
 <!ELEMENT state (#PCDATA)>
 <!ELEMENT zip (#PCDATA)>
 <!ELEMENT grade (#PCDATA)>
 <!ELEMENT age (#PCDATA)>
]>
<table/>

(DDFの例)

<Interface interfaceName="EXAMPLE">
 <BaseElement elemName="row">
   <Group cobName="row">
     <Item elemName="name" cobName="full-name"
           type="alphanumeric" size="20"/>
     <Item elemName="age" type="numeric"
           size="3"/>
     <Item elemName="city" type="alphanumeric"
           size="30"/>
   </Group>
 </BaseElement>
</Interface>

(生成されるCOBOLデータ項目の例)

01 row.
 02 full-name PIC X(20).
 02 age  PIC 9(3).
 02 city PIC X(30).