|
共通 DOM API | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
public interface LSResourceResolver
LSResourceResolver には、アプリケーションで外部リソースへの参照をリダイレクトする方法が用意されています。
外部リソースの独自の処理を実装する必要があるアプリケーションでは、このインタフェースを実装し、LSParser と LSSerializer に接続された DOMConfiguration の resource-resolver パラメータを設定して実装を登録できます。LS 機能がサポートされている場合、Document に接続された DOMConfiguration オブジェクトに実装を登録することもできます。
次に、LSParser により、アプリケーションは外部 DTD サブセットや外部パラメータエンティティなどの外部エンティティを含む前に外部エンティティを遮断することが可能になります。トップレベルのドキュメントエンティティは、resolveResource メソッドに渡されることはありません。
多くの DOM アプリケーションでは、このインタフェースを実装する必要はありませんが、データベースやその他の特別な入力ソースから XML ドキュメントを構築するアプリケーションや URN を使用するアプリケーションでは特にこのインタフェースが役に立ちます。
注: LSResourceResolver は SAX2 [SAX] EntityResolver インタフェースに基づいています。
「Document Object Model (DOM) Level 3 Load and Save Specification」も参照してください。
| メソッドの概要 | |
|---|---|
LSInput |
resolveResource(String type,
String namespaceURI,
String publicId,
String systemId,
String baseURI)
アプリケーションによる外部リソースの解決を可能にします。 |
| メソッドの詳細 |
|---|
LSInput resolveResource(String type,
String namespaceURI,
String publicId,
String systemId,
String baseURI)
LSParser は、外部 DTD サブセット、DTD 内で参照される外部エンティティ、およびドキュメント要素内で参照される外部エンティティなどの外部リソースを開く前にこのメソッドを呼び出します。ただし、トップレベルのドキュメントエンティティがこのメソッドに渡されることはありません。次に、アプリケーションは LSParser が外部ソース自体を解決する、代替 URI を使用する、あるいはまったく異なる入力ソースを使用するといった要求を行うことができます。
type - 解決されているリソースの種類。XML [XML 1.0] リソース (エンティティ) の場合、アプリケーションは値「http://www.w3.org/TR/REC-xml」を使用しなければならない。XML スキーマ [XML Schema Part 1] の場合、アプリケーションは値「http://www.w3.org/2001/XMLSchema」を使用しなければならない。その他の種類のリソースはこの仕様の範囲外である。したがって、このメソッドを使用するには絶対 URI を推奨する必要があるnamespaceURI - 解決中のリソースの名前空間、たとえばXML スキーマリソースを解決している場合は、XML スキーマ [XML Schema Part 1] のターゲット名前空間publicId - 参照されている外部エンティティの公開識別子、または公開識別子が指定されていない場合やリソースがエンティティでない場合は nullsystemId - 参照されている外部リソースのシステム識別子、URI 参照 [IETF RFC 2396]、あるいはシステム識別子が指定されなかった場合は nullbaseURI - 解析中のリソースの絶対基底 URI、あるいは基底 URI がない場合は null
LSInput オブジェクト、あるいはパーサがリソースへの通常の URI 接続を開くように要求する場合は null
|
共通 DOM API | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||