public interface DTDHandler
このモジュールは、ソースコード、文書ともに公開ドメインに置かれています。したがって、内容に関する保証は一切提供されません。詳細については、http://www.saxproject.org を参照してください。
表記法や解析対象外のエンティティーに関する情報が必要な場合、SAX アプリケーションはこのインタフェースを実装し、パーサーの setDTDHandler メソッドを使ってインスタンスを SAX パーサーに登録します。パーサーはこのインスタンスを使って、表記法や解析対象外のエンティティーの宣言をアプリケーションに報告します。
このインタフェースには、XML 勧告でプロセッサが報告しなければならないとされている DTD イベント (表記法と解析対象外エンティティーの宣言) だけが含まれます。
SAX パーサーは、これらのイベントを、表記法や解析対象外のエンティティーが宣言された順序とは関係なく、任意の順序で報告します。ただし、すべての DTD イベントは、文書ハンドラの startDocument イベントのあとと最初の startElement イベントの前で報告されなければいけません。LexicalHandler
が使用されている場合、これらのイベントは endDTD イベントの前でも報告される必要があります。
将来使用できるように情報をハッシュテーブルやオブジェクトツリー内に格納するアプリケーションと、そうでないアプリケーションがあります。「NOTATION」、「ENTITY」または「ENTITIES」型の属性が検出された場合、アプリケーションはこのインタフェースから取得した情報を使って属性値に対応するエンティティーや表記法を検出できます。
XMLReader.setDTDHandler(org.xml.sax.DTDHandler)
修飾子と型 | メソッドと説明 |
---|---|
void |
notationDecl(String name, String publicId, String systemId)
表記法宣言イベントの通知を受け取ります。
|
void |
unparsedEntityDecl(String name, String publicId, String systemId, String notationName)
解析対象外エンティティー宣言イベントの通知を受け取ります。
|
void notationDecl(String name, String publicId, String systemId) throws SAXException
あとで参照できるように表記法を記録するアプリケーションと、記録しないアプリケーションがあります。表記法は属性値として解析対象外エンティティーの宣言に表示されることがあり、処理命令のターゲット名で使用されることがあります。
1 個以上の publicId および systemId が null 以外の値である必要があります。システム識別子が存在し、これが URL である場合、SAX パーサーはこの識別子をこのイベントからアプリケーションに渡す前に完全に解決する必要があります。
表記法宣言がこれを使用する解析対象外エンティティーの前に報告されるかどうかは保証されていません。
name
- 表記法名。publicId
- 表記法の公開識別子。指定されなかった場合は null。systemId
- 表記法のシステム識別子。指定されなかった場合は null。SAXException
- 任意の SAX 例外。ほかの例外をラップしている可能性がある。unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
, Attributes
void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException
表記法名は、notationDecl
イベントによって報告される表記法に一致しています。あとで参照できるようにエンティティーを記録するアプリケーションと、記録しないアプリケーションがあります。解析対象外のエンティティーは属性値として表示されることがあります。
システム識別子が URL の場合、パーサーはこれをアプリケーションに渡す前に完全に解決する必要があります。
name
- 解析対象外エンティティーの名前。publicId
- エンティティーの公開識別子。指定されなかった場合は null。systemId
- エンティティーのシステム識別子。notationName
- 関連表記法名。SAXException
- 任意の SAX 例外。ほかの例外をラップしている可能性がある。notationDecl(java.lang.String, java.lang.String, java.lang.String)
, Attributes
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.