モジュール java.xml
パッケージ org.xml.sax.ext

インタフェースEntityResolver2

すべてのスーパー・インタフェース:
EntityResolver
既知のすべての実装クラス:
DefaultHandler2

public interface EntityResolver2 extends EntityResolver
外部エンティティ参照を入力ソースにマッピングしたり、不足する外部サブセットを提供したりする拡張インタフェースです。 XMLReader.setEntityResolver()メソッドを使用してパーサーにこのインタフェースの実装を提供します。 パーサーがこのインタフェースのメソッドを使用する場合、古いSAX 1.0 EntityResolver.resolveEntity()メソッドの代わりに、このインタフェースのEntityResolver2.resolveEntity()メソッドを使用します。

SAXアプリケーションは、このインタフェースによって定義される外部エンティティのカスタム処理を必要とする場合、http://xml.org/sax/features/use-entity-resolver2機能フラグがtrue (機能が認識された場合のデフォルト値)に設定されたXMLReaderを使用する必要があります。 そのフラグが認識されない場合やその値がfalseの場合、またはリゾルバがこのインタフェースを実装しない場合には、EntityResolverメソッドだけを使用します。

このインタフェースはエンティティ解決を変更する3種類のアプリケーションをサポートします。 Old Styleアプリケーションはこのインタフェースについては認識せず、EntityResolverを提供します。 Transitional ModeはEntityResolver2を提供し、EntityResolver2をサポートするすべてのシステム(パーサーまたはその他のツール)でそのメソッドの利点が自動的に得られます(多相性のため)。 Old StyleアプリケーションもTransitional Modeアプリケーションも、任意のSAX2パーサーで動作します。 New styleアプリケーションは、この特定の機能をサポートしているSAX2パーサー以外では動作しません。 元のSAX 1.0スタイル・エンティティ解決メソッドが呼び出された場合、これらのアプリケーションは機能フラグが「true」の値を持つように要求し、提供するEntityResolver2実装によって例外をスローできます。

導入されたバージョン:
1.5, SAX 2.0 (extensions 1.1 alpha)
関連項目: