xml_set_notation_decl_handler

xml_set_notation_decl_handler -- 表記法宣言ハンドラを設定する

説明

int xml_set_notation_decl_handler(int parser, string handler);

XML パーサ parser の表記法宣言用ハンドラ関数 を設定します。 handler は、 parser に関して xml_parse がコールされた際に必要な関数の名前を有する文字列です。

表記法の宣言は、ドキュメントの DTD の部分であり、次のようなフォーマット を有しています。

<!NOTATION name {systemId | publicId}>
表記法宣言の定義に関しては、 XML 1.0 仕様の 4.7 節 を参照下さい。

handler という名前の関数は、5つのパラメータを とります。

handler(int parser, string notationName, string base, string systemId, string publicId);

parser

最初のパラメータ、parser は ハンドラをコールする XML パーサへのリファレンスです。

notationName

これは、前記の表記用フォーマットに示すように 表記法の 名前 です。

base

外部エンティティのシステム ID (systemId) を 取得する際の基本となります。 現在、このパラメータは、常に空の文字列に設定されています。

systemId

外部表記用宣言のシステム ID

publicId

外部表記用宣言のパブリック ID

あるホンドラ関数が空の文字列または false に設定 されていた場合、そのハンドラは無効となります。

ハンドラが設定されている場合に TRUE、 parser がパーサでない場合に FALSE を返します。

オブジェクト/メソッド用ハンドラは現在サポートされていません。