|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のパッケージ 次のパッケージ | フレームあり フレームなし |
参照先:
説明
インタフェースの概要 | |
---|---|
AttributeList | 推奨されていません。 このインタフェースは、名前空間をサポートする SAX2 の
Attributes
インタフェースで置き換えられています。 |
Attributes | XML 属性のリストのためのインタフェースです。 |
ContentHandler | 文書の論理コンテンツの通知を受け取ります。 |
DocumentHandler | 推奨されていません。 このインタフェースは、名前空間をサポートする SAX2 の
ContentHandler
インタフェースで置き換えられています。 |
DTDHandler | 標準 DTD 関連イベントの通知を受け取ります。 |
EntityResolver | エンティティーを解決するための基本インタフェースです。 |
ErrorHandler | SAX エラーハンドラの基本インタフェースです。 |
Locator | SAX イベントと文書の位置を関連付けるためのインタフェースです。 |
Parser | 推奨されていません。 このインタフェースは、名前空間をサポートする SAX2 の
XMLReader
インタフェースで置き換えられています。 |
XMLFilter | XML フィルタのインタフェースです。 |
XMLReader | コールバックを使って XML 文書を読み取るためのインタフェースです。 |
クラスの概要 | |
---|---|
HandlerBase | 推奨されていません。 このクラスは非推奨の
DocumentHandler
インタフェースで動作します。 |
InputSource | XML エンティティーの単一の入力ソースです。 |
例外の概要 | |
---|---|
SAXException | SAX の一般的なエラーまたは警告をカプセル化します。 |
SAXNotRecognizedException | 認識されない識別子のための例外クラスです。 |
SAXNotSupportedException | サポート対象外の操作のための例外クラスです。 |
SAXParseException | XML 構文解析エラーまたは警告をカプセル化します。 |
このパッケージはコア SAX API を提供します。コア SAX API には、名前空間に対応した新しいアプリケーションの設計や既存のインフラストラクチャーのメンテナンスに統合するように推奨されているものもあります。
SAX についての詳細は、http://www.saxproject.org を参照してください。
SAX2 の必須の特性の 1 つに、検証に使用できる機能フラグや変更パーサーモード (特に検証などのモード) が追加されていることがあります。機能は (絶対) URI によって識別されるため、だれにでも定義できます。 現在定義されている標準機能の URI には、validation
などの識別子の前にある接頭辞 http://xml.org/sax/features/
があります。「setFeature」を使用して機能をオンまたはオフにします。標準の識別子は次のとおりです。
機能 ID | アクセス | デフォルト | 説明 |
---|---|---|---|
external-general-entities | 読み取り/書き込み | 指定なし | このパーサーが一般的な外部エンティティーを処理するかどうかを報告する。検証する場合は常に true |
external-parameter-entities | 読み取り/書き込み | 指定なし | このパーサーが外部パラメータエンティティーを処理するかどうかを報告する。検証する場合は常に true |
is-standalone | (構文解析する) 読み取り専用、(構文解析しない) なし | 適用外 | startDocument() コールバックが終了したあと、構文解析中のみ検証される。 読み取り専用。文書が XML 宣言内の standalone="yes" を指定した場合、値は true。そうでない場合は false |
lexical-handler/parameter-entities | 読み取り/書き込み | 指定なし | 「true」の値は LexicalHandler がパラメータエンティティーの開始と終了を報告することを示す |
namespaces | 読み取り/書き込み | true | 「true」の値は、使用可能な要素名および属性名の名前空間 URI と接頭辞を持たないローカル名を示す |
namespace-prefixes | 読み取り/書き込み | false | 「true」の値は接頭辞付きの XML 修飾名と「xmlns*」属性を含む属性が使用できることを示す |
resolve-dtd-uris | 読み取り/書き込み | true | 「true」の値は、宣言のシステム ID が基底 URI を基準にして報告前に絶対化されることを示す (デフォルトによるすべての SAX2 XML パーサーの動作)。「false」の値は、ID が絶対化されないことを示す。パーサーは「Locator.getSystemId()」の基底 URI を提供する。これは渡されたシステム ID に適用される
|
string-interning | 読み取り/書き込み | 指定なし | 要素、接頭辞、属性、エンティティー、表記法、およびローカル名のすべての XML 名と名前空間 URI が「java.lang.String.intern」を使用して保持される場合は「true」の値を持つ。これによって、「String.equals()」に対して強制的に呼び出しを遅らせるのではなく、文字の定数に対して等しいかどうかの判定をすばやくするようにサポートする |
unicode-normalization-checking | 読み取り/書き込み | false | XML 1.1 勧告のセクション 2.13 と付録 B で説明されているような Unicode 正規化エラーをパーサーが報告するかどうかを制御する。true の場合、Unicode 正規化エラーは ErrorHandler.error() を使用して報告される。このようなエラーは、ほかの Unicode 関連のエンコーディングエラーとは違い、それ自体が致命的なエラーではない |
use-attributes2 | 読み取り専用 | 適用外 | 「ContentHandler.startElement()」でこのパーサーによって渡される「Attributes」オブジェクトが 「org.xml.sax.ext.Attributes2」インタフェースを実装している場合は「true」を返す。このインタフェースは、属性がデフォルトで設定されたかどうかではなく、ソーステキストで指定されたかどうかなどの DTD 関連の追加情報を公開する |
use-locator2 | 読み取り専用 | 適用外 | 「ContentHandler.setDocumentLocator()」でこのパーサーによって渡された「Locator」オブジェクトが 「org.xml.sax.ext.Locator2」インタフェースを実装している場合は「true」を返す。このインタフェースは使用されている文字エンコーディングや XML のバージョンなどのエンティティーの追加情報を公開する |
use-entity-resolver2 | 読み取り/書き込み | true | 「setEntityResolver」に 「org.xml.sax.ext.EntityResolver2」インタフェースを実装しているオブジェクトが提供される場合にそれらの新しいメソッドが使用されるときは「true」を返す。新しいメソッドが使用されないことを示す場合は「false」を返す |
validation | 読み取り/書き込み | 指定なし | パーサーがすべての妥当性エラーを報告しているかどうかを制御する。true の場合、すべての外部エンティティーが読み取られる |
xmlns-uris | 読み取り/書き込み | false | 「namespace-prefixes」機能が設定されたとき、パーサーが名前空間宣言の属性を「http://www.w3.org/2000/xmlns/」名前空間に存在するものとして処理するかどうかを制御する。デフォルトでは、SAX2 はこのような属性がどの名前空間にも存在しないということを明示している元の「Namespaces in XML」勧告に従う。このオプションのフラグを true に設定することによって、SAX2 イベントを下位互換できない元の勧告の今後の改訂版に従わせ、それらの属性を名前空間に置く |
xml-1.1 | 読み取り専用 | 適用外 | パーサーが XML 1.1 と XML 1.0 の両方をサポートする場合は「true」を返し、XML 1.0 だけをサポートする場合は「false」を返す |
「namespaces」プロパティーと「namespace-prefixes」プロパティーのデフォルト値をサポートする必要があります。それ以外の機能フラグのサポートは完全にオプションです。
SAX2 で指定されていないデフォルト値の場合、それぞれの XMLReader 実装によってそのデフォルトを指定しますが、機能フラグを公開しないように選択することもできます。 ここで指定されないかぎり、実装によってこれらの標準機能フラグの現在の値を変更できますが、構文解析中は変更できません。
パーサーインタフェースの特性をオブジェクトとして説明する場合、別の名前空間が定義されます。この名前空間のオブジェクトは URI によって再度識別されます。標準のプロパティー URI には、lexical-handler
や dom-node
などの識別子の前に接頭辞 http://xml.org/sax/properties/
が付きます。それらのプロパティーは「setProperty()」を使用して管理します。識別子は次のとおりです。
プロパティー ID | 説明 |
---|---|
declaration-handler | 字句構文規則 (「文書の要素名は ...」) として扱われるものやすべての SAX パーサーに対して必須であるものを除いて (「DTDHandler」) ほとんどの DTD 宣言を見るために使用する。オブジェクトは org.xml.sax.ext.DeclHandler を実装している必要がある |
document-xml-version | startDocument() コールバックが終了したあと、構文解析中のみ検証される。 読み取り専用。このプロパティーは XML 1.0 や XML 1.1 など、文書の実際のXML バージョンを説明するリテラル文字列 |
dom-node | DOM Walker 型パーサーが「parser.parse()」パラメータを無視する場合、これはパーサーによって移動される DOM (サブ) ツリーの指定に使用する。オブジェクトには「org.w3c.dom.Node」インタフェースを実装する必要がある |
lexical-handler | コメント、CDATA 区切り文字、選択された一般のエンティティーの取り込み、DTD の最初と最後 (および文書要素名の宣言) といった一部のアプリケーションで必須の構文イベントを見るために使用する。オブジェクトには 「org.xml.sax.ext.LexicalHandler」を実装する必要がある |
xml-string | パーサーのコールバック中は読み取り専用。 これによって、現在のイベントを扱う文字列の TBS チャンクを公開する |
これらの標準プロパティーはすべてオプションです。 XMLReader 実装の場合、これらをサポートする必要はありません。
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のパッケージ 次のパッケージ | フレームあり フレームなし |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。