COBOL2002 XML連携機能ガイド


4.2.6 CBLXML-CL-Interfaceアクセスルーチン

CBLXML-CL-Interfaceアクセスルーチンは,開いているXMLドキュメントを閉じるためのアクセスルーチンです。

形式
CALL 'CBLXML-CL-Interface'
                USING XML-POINTER
                RETURNING CBLXML-RETURN-CODE.
引数

引数のデータ型

指定

説明

01 XML-POINTER

USAGE POINTER.

閉じるXMLドキュメントのポインタを指定する。CBLXML-OP-Interfaceアクセスルーチン,またはCBLXML-OB-InterfaceアクセスルーチンでXMLドキュメントを開いたときに取得したポインタを指定する。

01 CBLXML-RETURN-CODE

PIC 9(9) COMP.

ステータスが返される。詳細については,「7.3 XMLアクセスルーチンが返すステータス」を参照のこと。

(凡例)

○:アクセスルーチンの呼び出し時,値を設定しておく項目

△:アクセスルーチンの完了時,値が設定される項目

規則
  • 引数XML-POINTERには,CBLXML-OP-Interfaceアクセスルーチン,またはCBLXML-OB-InterfaceアクセスルーチンでXMLドキュメントを開いたときに取得したポインタを指定します。

  • 更新モードで開いたXMLドキュメントを更新しないでCBLXML-CL-Interfaceアクセスルーチンを呼び出した場合,CBLXML-CL-Interfaceアクセスルーチンは,XMLドキュメントが更新されていないことを示すステータス12(CBLXML-NO-UPDATE)を返します。

  • ドキュメントを書き込みモードで開いている場合,CBLXML-CL-Interfaceアクセスルーチンは,XMLドキュメントを閉じる前に終了タグを出力します。このとき,次のように必要な要素が補完されます。

ドキュメント終了時の要素の補完
  • 最後に書き出されたBaseElement要素とドキュメントの終わりの間に,さらにBaseElement要素が必要なとき,CBLXML-CL-Interfaceアクセスルーチンは,ステータス118(CBLXML-CANT-END-DOC)を返します。このとき,XMLドキュメントは,不完全な状態となります。正しいXMLドキュメントを生成するためには,必要なBaseElement要素を出力する必要があります。

  • 最後に書き出されたBaseElement要素とドキュメントの終わりの間に,BaseElement要素に含まれない要素が必要なときは,その要素が空要素として出力されます。このとき,CBLXML-CL-Interfaceアクセスルーチンは,ステータス0(CBLXML-OK)を返します。CBLXML-CL-Interfaceアクセスルーチンが回復可能エラー,または致命的エラーを返した場合で,そのドキュメントが書き込みモードで開かれていたときは,不完全なXMLドキュメントが生成される可能性があります。

注意事項

XMLドキュメントの出力中にディスク容量の不足のエラーが発生したあと,そのXMLドキュメントを閉じた場合,CBLXML-CN-Interfaceアクセスルーチンで次に示すステータスを返します。

(UNIXの場合)

XMLアクセスルーチンに指定した引数に誤りがあることを示すステータス114(CBLXML-INVALID-PARAMS)を返します。

(Windowsの場合)

正常終了を示すステータス0(CBLXML-OK)を返します。