ENTMF 

XML PARSE(XML解析)文

XML PARSE(XML解析)文は、COBOL実行時システムの一部であるXMLパーサとのインターフェイスに使用される。XML PARSE文は、XML文書を各部に分けて解析し、各部を1つずつ、利用者が書いた処理手続きへと渡す。

一般形式

構文規則

  1. 一意名-1は英数字または各国語型データ項目でなければならず、関数一意名であってはならない。また、XML文書文字ストリームを含んでいるものとする。一意名-1 が各国語型データ項目の場合、その内容は、CCSID 1200 (Unicode UTF-16)を使用して符号化されていなければならない。ここには、複数の符号化単位を使用して表示された文字が含まれてはならない。そのような文字を表示するには、"" や""などの文字参照を使用すること。

  2. 手続き名-1は、処理手続き中の最初または唯一の節または段落を指定する。

  3. 手続き名-2は、処理手続き中の最後の節または段落を指定する。

一般規則

  1. PROCESSING PROCEDURE指定は、XMLパーサが生成するさまざまなイベントを取り扱う手続きの名前を指定する。この処理手続きは、XMLイベントを取り扱う文により構成される。処理手続きの範囲には、この手続き中のCALL、EXIT、GO TO、GOBACK、INVOKE、およびPERFORMの各文により実行されるすべての文も含まれる。処理手続きの最後の文の後には、コンパイラにより、戻る仕組みが挿入される。処理手続きは、STOP RUN文で実行単位を終了することができるが、GOBACK文またはEXIT PROGRAM文でパーサへ戻ろうとしてはならない。

  2. ON EXCEPTION指定は、XML PARSE文が例外条件を挙げたときに、実行される無条件文を指定する。例外条件は、XML文書の処理中に、XMLパーサがエラーを検出したときに発生する。パーサはまず、"EXCEPTION"を含むよう設定された特殊レジスタ XML-EVENTとともに、処理手続きに制御を渡して、例外XMLイベントを知らせる。そして、特殊レジスタ XML-CODEに数字エラーコードを与える。この詳細については、COBOL言語の概念の章の特殊レジスタ節の表 2-2を参照。

    例外条件はまた、処理手続きが、正常なXMLイベントからパーサに戻る前に、XML-CODE を -1 に設定して、故意に解析を終了した場合も発生する。この場合、パーサはEXCEPTION XMLイベントを知らせず、以下が適用される。

    1. ON EXCEPTION指定を使用した場合、パーサは制御を無条件文-1に移す。

    2. ON EXCEPTION指定を使用しない場合、NOT ON EXCEPTION指定が使用されていても、無視され、制御はXML PARSE文の最後に移される。

    3. XML処理手続きが例外XMLイベントを取り扱い、パーサに制御を返す前にXML-CODEをゼロに設定した場合、例外条件は存在しない。

    4. 取り扱われない例外が他に発生せずにパーサが終了した場合は、制御がNOT ON EXCEPTION指定の無条件文-2に移される。ただし、この無条件文-2を指定した場合に限る。

  3. NOT ON EXCEPTION指定は、XML PARSE処理の終了時に例外条件がまったく存在しないときに実行される無条件文を指定する。以下の規則が適用される。

    1. 例外条件がXML PARSE処理の終了時にまったく存在しない場合は、制御がNOT ON EXCEPTION 指定の無条件文-2に移される。ただし、この無条件文-2を指定した場合に限る。

    2. NOT ON EXCEPTION指定を使用しない場合、制御はXML PARSE文の最後に移される。 この場合、ON EXCEPTION指定が使用されていても、無視される。特殊レジスタ XML-CODEは、XML PARSE文の実行後にゼロを含む。


Copyright © 2014 Micro Focus International Limited. All rights reserved.
本書、ならびに使用されている固有の商標および商品名は国際法によって保護されています。