COBOL2002 XML連携機能ガイド


9.3.6 エンティティ参照回数を制限する機能

〈この項の構成〉

(1) CBLXML-SET-ENTITYLIMITサービスルーチン

XMLドキュメントの入力時にエンティティ参照回数を制限するときは,CBLXML-SET-ENTITYLIMITサービスルーチンを呼び出して制限値を設定します。

形式

CALL 'CBLXML-SET-ENTITYLIMIT' USING XML-POINTER ENTITY-LIMIT.

引数

引数のデータ型

指定

説明

01 XML-POINTER USAGE POINTER.

XMLドキュメントのポインタを受け取るポインタ項目を指定します。

01 ENTITY-LIMIT PIC 9(9) COMP.

最大のエンティティ参照回数を指定する領域を4バイトの2進項目で指定します。指定できる値の範囲は,0〜2,147,483,647です。

(凡例)

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

戻り値

戻り値

内容

0

正常終了した。

-1

CBLXML-SET-ENTITYLIMITサービスルーチンの引数の値が不正である。

規則
  • CBLXML-SET-ENTITYLIMITサービスルーチンは,CBLXML-CREATE-XML-POINTERサービスルーチンでXMLドキュメントのポインタを作成したあとで,呼び出してください。

  • CBLXML-SET-ENTITYLIMITサービスルーチンの設定は,XMLドキュメントの入力時に有効になります。CBLXML-SET-ENTITYLIMITサービスルーチンを呼び出したXMLドキュメントのポインタを指定して,XMLドキュメントを開くアクセスルーチン(CBLXML-OP-Interface,CBLXML-OB-Interface)を呼び出してください。

  • 引数ENTITY-LIMITの値が範囲外の場合,制限値を設定していないとみなし,参照回数は制限されません。CBLXML-SET-ENTITYLIMITサービスルーチンの戻り値は-1になります。

  • 環境変数CBLXML_ENTITYLIMITが指定されている状態でCBLXML-SET-ENTITYLIMITサービスルーチンを呼び出した場合,CBLXML-SET-ENTITYLIMITサービスルーチンに指定した値が有効になります。