JavaTM Platform
Standard Ed. 6

javax.xml.validation
クラス TypeInfoProvider

java.lang.Object
  上位を拡張 javax.xml.validation.TypeInfoProvider

public abstract class TypeInfoProvider
extends Object

このクラスは ValidatorHandler によって判定された型情報にアクセスします。

W3C XML Schema などの一部のスキーマ言語では、バリデータで各属性および要素に割り当てる「型」を報告することが推奨されています。この型情報にアクセスしようとするアプリケーションでは、この「インタフェース」に定義されたメソッドを呼び出してそれらの型情報にアクセスできます。

この「インタフェース」の実装は ValidatorHandler.getTypeInfoProvider() メソッドによって取得できます。

導入されたバージョン:
1.5
関連項目:
TypeInfo

コンストラクタの概要
protected TypeInfoProvider()
          派生クラスのコンストラクタです。
 
メソッドの概要
abstract  TypeInfo getAttributeTypeInfo(int index)
          現在の要素の指定された属性の不変の TypeInfo オブジェクトを返します。
abstract  TypeInfo getElementTypeInfo()
          現在の要素の不変の TypeInfo オブジェクトを返します。
abstract  boolean isIdAttribute(int index)
          指定された属性が識別子であると判定された場合に true を返します。
abstract  boolean isSpecified(int index)
          属性がバリデータによって追加された場合 false を返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

TypeInfoProvider

protected TypeInfoProvider()
派生クラスのコンストラクタです。

このコンストラクタは何も行いません。

メソッドの詳細

getElementTypeInfo

public abstract TypeInfo getElementTypeInfo()

現在の要素の不変の TypeInfo オブジェクトを返します。

 

メソッドはアプリケーションで ValidatorHandler に設定した ContentHandler の startElement イベントまたは endElement イベントによってのみ呼び出すことができます。

 

W3C XML Schema 検証の実行中、要素が union 型を持つ場合、startElement からの getElementTypeInfo() の呼び出しによって返される TypeInfo は union 型になります。endElement イベントからの呼び出しによって返される TypeInfo は、要素の検証に使用する実際のメンバーの型になります。

戻り値:
現在の要素の型を表す不変の TypeInfo オブジェクト。 呼び出し側は取得した TypeInfo への参照をコールバックスコープより長く保持できる ことに注意。 または、バリデータが何らかの理由 (たとえばバリデータが以前のエラーから回復中である場合など) により、現在の要素の型を判定できない場合、 このメソッドは null を返す
例外:
IllegalStateException - このメソッドがほかの ContentHandler メソッドから呼び出された 場合

getAttributeTypeInfo

public abstract TypeInfo getAttributeTypeInfo(int index)
現在の要素の指定された属性の不変の TypeInfo オブジェクトを返します。

メソッドはアプリケーションで ValidatorHandler に設定した ContentHandler の startElement イベントによってのみ呼び出すことができます。

パラメータ:
index - 属性のインデックス。startElement コールバックに渡された Attributes オブジェクトの同じ インデックス
戻り値:
現在の要素の型を表す不変の TypeInfo オブジェクト。 呼び出し側は取得した TypeInfo への参照をコールバックスコープより長く保持できる ことに注意。 または、バリデータが型を判定できない場合、 このメソッドは null を返す
例外:
IndexOutOfBoundsException - インデックスが無効な場合
IllegalStateException - このメソッドがほかの ContentHandler メソッドから呼び出された 場合

isIdAttribute

public abstract boolean isIdAttribute(int index)
指定された属性が識別子であると判定された場合に true を返します。

属性がどのようにして「識別子と判定される」かは、スキーマ言語により異なります。W3C XML Schema の場合は、属性の実際の型が組み込み識別子型またはその派生型であれば、識別子と判定されます。

DocumentBuilderAttr.isId() を適切に実装するためにこの情報を使用します。

メソッドはアプリケーションで ValidatorHandler に設定した ContentHandler の startElement イベントによってのみ呼び出すことができます。

パラメータ:
index - 属性のインデックス。startElement コールバックに渡された Attributes オブジェクトの同じ インデックス
戻り値:
true 指定された属性の型が識別子である場合
例外:
IndexOutOfBoundsException - インデックスが無効な場合
IllegalStateException - このメソッドがほかの ContentHandler メソッドから呼び出された 場合

isSpecified

public abstract boolean isSpecified(int index)
属性がバリデータによって追加された場合 false を返します。

このメソッドは DocumentBuilderAttr.getSpecified() メソッドから返す必要がある DOM ツリーを特定するために必要な情報を提供します。

メソッドはアプリケーションで ValidatorHandler に設定した ContentHandler の startElement イベントによってのみ呼び出すことができます。

バリデータの一般的なガイドラインは、属性が最初からパイプラインに存在していた場合 true を返し、バリデータによって追加された場合 false を返すことです。

パラメータ:
index - 属性のインデックス。startElement コールバックに渡された Attributes オブジェクトの同じ インデックス
戻り値:
バリデータが入力を処理する前から属性が存在していた場合は true。属性がバリデータによって追加された場合は false
例外:
IndexOutOfBoundsException - インデックスが無効な場合
IllegalStateException - このメソッドがほかの ContentHandler メソッドから呼び出された 場合

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。