この例では、XML 拡張で疎な配列を使用する方法を示します。XML 拡張では、空のオカレンスと空以外のオカレンスが区別されます。オカレンスは、その数値基本データ項目のすべてがゼロ値であり、その文字基本データ項目のすべてがスペースである場合、空のオカレンスになります。それ以外の場合は、オカレンスは空以外のオカレンスになります。疎な配列は、空のオカレンスと空以外のオカレンスの組み合わせを含む配列です。空のオカレンスは、後続の空以外のオカレンスを特定
(添え字を決定) するために必要でない限り、エクスポートする必要はありません。したがって、通常、後続の空のオカレンス、つまり配列の最後にある連続する空のオカレンスは、エクスポートされません。また、疎な配列はインポートされる場合もあります。
このプログラムでは、まず、COBOL データ項目の内容から複数の XML ドキュメント ファイルを書き出します (つまりエクスポートします)。その際、XML ENABLE ATTRIBUTES、XML DISABLE ATTRIBUTES、XML ENABLE ALL-OCCURRENCES、および XML DISABLE ALL-OCCURRENCES 文のさまざまな組み合わせを使用します。その後、同じ XML ドキュメント (および 2 つの既存のドキュメント) を読み取り (つまりインポートし)、同じ COBOL データ項目に内容を配置します。
この例では、次の XML 文を使用します。
- XML INITIALIZE。XML 拡張とのセッションを初期化するか開きます。
- XML EXPORT FILE。COBOL データ項目の内容から XML ドキュメントを (ファイルとして) 作成します。
- XML IMPORT FILE。XML ドキュメントを (ファイルから) COBOL データ項目に読み込みます。
- XML ENABLE ATTRIBUTES。エクスポートした XML ドキュメントに記述 (COBOL 指向) 属性が含まれるようにします。
注: デフォルトでは記述属性は XML ドキュメントに追加されませんが (次の項目の XML DISABLE ATTRIBUTES を参照)、追加されることがある属性の 1 つに「添え字」属性があります。この属性には、配列内のオカレンスの 1 を基準にした相対索引が含まれています。XML
ドキュメントをインポートする際、この添え字属性を使用して (存在する場合)、配列内でオカレンスが適切に配置されます。添え字属性が存在しない場合は、オカレンスが連続して発生していると想定されます。
- XML DISABLE ATTRIBUTES。エクスポートした XML ドキュメントに記述属性が含まれないようにします。
注: デフォルトでは記述属性は XML ドキュメントに追加されません。
- XML ENABLE ALL-OCCURRENCES。データ項目のすべてのオカレンスが XML ドキュメントにエクスポートされるようにします。
- XML DISABLE ALL-OCCURRENCES。特定のオカレンスのみが XML ドキュメントにエクスポートされるようにします。
注: デフォルトでは特定のオカレンスのみが XML ドキュメントにエクスポートされます。
- XML TERMINATE。XML 拡張とのセッションを終了するか閉じます。