public abstract class TypeInfoProvider extends Object
ValidatorHandlerによって判定された型情報にアクセスできます。
W3C XML Schemaなどの一部のスキーマ言語では、バリデータで各属性および要素に割り当てる「型」を報告することが推奨されています。この型情報にアクセスしようとするアプリケーションでは、この「インタフェース」に定義されたメソッドを呼び出してそれらの型情報にアクセスできます。
この「インタフェース」の実装はValidatorHandler.getTypeInfoProvider()メソッドによって取得できます。
TypeInfo| 修飾子 | コンストラクタと説明 |
|---|---|
protected |
TypeInfoProvider()
派生クラスのコンストラクタです。
|
| 修飾子と型 | メソッドと説明 |
|---|---|
abstract TypeInfo |
getAttributeTypeInfo(int index)
現在の要素の指定された属性の不変の
TypeInfoオブジェクトを返します。 |
abstract TypeInfo |
getElementTypeInfo()
現在の要素の不変の
TypeInfoオブジェクトを返します。 |
abstract boolean |
isIdAttribute(int index)
指定された属性がIDであると判定された場合に
trueを返します。 |
abstract boolean |
isSpecified(int index)
属性がバリデータによって追加された場合
falseを返します。 |
public abstract TypeInfo getElementTypeInfo()
現在の要素の不変のTypeInfoオブジェクトを返します。
メソッドはアプリケーションでValidatorHandlerに設定したContentHandlerのstartElementイベントまたはendElementイベントによってのみ呼び出すことができます。
W3C XML Schema検証の実行中、要素がunion型を持つ場合、startElementイベントからのgetElementTypeInfo()の呼出しによって返されるTypeInfoはunion型になります。endElementイベントからの呼出しによって返されたTypeInfoは、要素を検証するために使用される実際のメンバー型になります。
TypeInfoオブジェクト。呼出し側は取得したTypeInfoへの参照をコールバック・スコープより長く保持できる。または、バリデータが何らかの理由(たとえばバリデータが以前のエラーから回復中である場合など)により、現在の要素の型を判定できない場合、このメソッドはnullを返すIllegalStateException - このメソッドがほかのContentHandlerメソッドから呼び出された場合。public abstract TypeInfo getAttributeTypeInfo(int index)
TypeInfoオブジェクトを返します。
メソッドはアプリケーションでValidatorHandlerに設定したContentHandlerのstartElementイベントによってのみ呼び出すことができます。
index - 属性のインデックス。startElementコールバックに渡されたAttributesオブジェクトの同じインデックス。TypeInfoオブジェクト。呼出し側は取得したTypeInfoへの参照をコールバック・スコープより長く保持できる。または、バリデータが型を判定できない場合、このメソッドはnullを返す。IndexOutOfBoundsException - インデックスが無効な場合。IllegalStateException - このメソッドがほかのContentHandlerメソッドから呼び出された場合。public abstract boolean isIdAttribute(int index)
trueを返します。
属性がどのようにして「識別子と判定される」かは、スキーマ言語により異なります。W3C XML Schemaの場合は、属性の実際の型が組込み識別子型またはその派生型であれば、識別子と判定されます。
DocumentBuilderがAttr.isId()を適切に実装するためにこの情報を使用します。
メソッドはアプリケーションでValidatorHandlerに設定したContentHandlerのstartElementイベントによってのみ呼び出すことができます。
index - 属性のインデックス。startElementコールバックに渡されたAttributesオブジェクトの同じインデックス。IndexOutOfBoundsException - インデックスが無効な場合。IllegalStateException - このメソッドがほかのContentHandlerメソッドから呼び出された場合。public abstract boolean isSpecified(int index)
falseを返します。
このメソッドはDocumentBuilderがAttr.getSpecified()メソッドから返す必要があるDOMツリーを特定するために必要な情報を提供します。
メソッドはアプリケーションでValidatorHandlerに設定したContentHandlerのstartElementイベントによってのみ呼び出すことができます。
バリデータの一般的なガイドラインは、属性が最初からパイプラインに存在していた場合trueを返し、バリデータによって追加された場合falseを返すことです。
index - 属性のインデックス。startElementコールバックに渡されたAttributesオブジェクトの同じインデックス。true。属性がバリデータによって追加された場合はfalse。IndexOutOfBoundsException - インデックスが無効な場合。IllegalStateException - このメソッドがほかのContentHandlerメソッドから呼び出された場合。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.