[ 英語 | 日本語 ]
DtoXml [ options ] [ input-file.. ]
DtoXml は、 input-files中のDレコードを XML形式に変換する。 通常、出力されたXMLファイルを他のXMLプログラムで処理してアプリケーションを構成する。
Dフィールド1つが、character dataだけを持つ1つのXML要素に変換される。 Dフィールド名が要素名となり、値がcharacter dataとなる。 1Dレコードは、Dフィールドから変換された要素だけを含むXML要素になる。 要素名は、デフォルトでは<record>であるが、 -rオプションによって変更できる。
1入力ファイルは<file>要素としてくくられる。 全入力ファイルは<root>要素としてくくられる。 これらの要素名も、-fおよび-oオプションによって変更できる。
文字COMMERCIAL AT (@)で始まるフィールド名を持つDフィールドは、 属性に変換される。 その属性は、先行のフィールドの要素中、 先行のDフィールドが存在しないときはレコード要素中におかれる。
Dフィールド値をcharacter dataに変換する際には、 XML character dataの中で許されない文字(たとえば<)は、 predefined entities(たとえば&)に変換される。 Dフィールド値が、XMLのcharacter dataとしてコードされている場合、 フィールド名を-nオプションにリストすることにより、 この変換を抑止することができる。
出力ファイルは字下げを行わない。 開始タグ、character dataおよび終了タグを連結して1行として出力する。 root、file、recordの開始、終了タグは、それ自体で1行として出力する。 record、fileの終了タグの後ろには空行を出力する。
次の例はDtoXmlの基本的機能の説明のためである。 入力Dファイル:
@attr1:1
a:text-a
@attr2:2
b:text-b
オプションなしのDtoXmlによる出力:
<root>
<file>
<record attr1="1">
<a attr2="2">text-a</a>
<b>text-b</b>
</record>
</file>
</root>
次の例は-nの説明のためである。 入力ファイル:
a:text-a <c>text-ac</c>
b:text-b <c>text-bc</c>
DtoXml -n aコマンドの出力:
<root>
<file>
<record>
<a>text-a <c>text-ac</c></a>
<b>text-b <c>text-bc</c></b>
</record>
</file>
</root>
マニュアル D_msg参照。
Dintro、 DfromXml、 DtoTex、 DtoCsv、 D_msg。
MIYAZAWA Akira