xml_set_unparsed_entity_decl_handler

xml_set_unparsed_entity_decl_handler -- 処理されないエンティティ宣言用ハンドラを設定する

説明

int xml_set_unparsed_entity_decl_handler(int parser, string handler);

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

このハンドラは、XML パーサが 次のような NDATA 宣言を有する外部エンティティ 宣言を処理する際にコールされます。

<!ENTITY name {publicId | systemId} NDATA notationName>

外部エンティティ宣言の記述用定義に関しては、 XML 1.0 仕様の 4.2.2 節 entities. を参照下さい。

handler という名前の関数は次のような 6つのパラメータをとります。

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

parser

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

entityName

宣言しようとするエンティティの名前

base

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

systemId

外部エンティティのシステム ID。

publicId

外部エンティティのパブリック ID。

notationName

このエンティティの表記法の名前 ( xml_set_notation_decl_handler を参照下さい)

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

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

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