-
public interface TypeInfo
TypeInfo
インタフェースは、文書に関連するスキーマで指定されたElement
ノードまたはAttr
ノードから参照される型を表します。 型は、名前空間URIプロパティと名前プロパティの一対のペアであり、文書のスキーマによって決まります。文書のスキーマがXML DTD「XML 1.0」である場合、値は次のように計算されます。
- この型が
Attr
ノードから参照される場合、typeNamespace
は"http://www.w3.org/TR/REC-xml"
であり、typeName
は「XML Information Set」内の「attribute type」プロパティを表す。 属性の宣言がない場合、typeNamespace
とtypeName
はnull
。 - この型が
Element
ノードから参照される場合、typeNamespace
とtypeName
はnull
。
文書のスキーマがXMLスキーマ「XML Schema Part 1」である場合、値は、スキーマ検証後情報セット・コントリビューション(PSVIコントリビューションとも呼ばれる)を使用して次のように計算されます。
- 「validity」プロパティが存在し、かつ「無効」または「未知」である場合: 宣言された型の{target namespace}プロパティと{name}プロパティ(存在する場合)。それ以外の場合は
null
。注: 記述時に、XMLスキーマ仕様では宣言された型の公開は必要ありません。 したがって、DOM実装では、有効性を欠いている場合に型情報を提供しないようにできます。
- 「validity」プロパティが存在し、かつ「有効」である場合:
- 「member type definition」が存在する場合:
- {name}が存在しない場合は、「member type definition」プロパティの{name}プロパティと{target namespace}プロパティを公開する。
- {name}が存在しない場合は、対応する匿名の型名の名前空間とローカル名を公開する。
- 「type definition」プロパティが存在する場合:
- {name}が存在しない場合は、「type definition」プロパティの{name}プロパティと{target namespace}プロパティを公開する。
- {name}が存在しない場合は、対応する匿名の型名の名前空間とローカル名を公開する。
- 「member type definition anonymous」が存在する場合:
- これがfalseの場合は、「member type definition name」プロパティと「member type definition namespace」プロパティを公開する。
- {name}が存在しない場合は、対応する匿名の型名の名前空間とローカル名を公開する。
- 「type definition anonymous」が存在する場合:
- これがfalseの場合は、「type definition name」プロパティと「type definition namespace」プロパティを公開する。
- {name}が存在しない場合は、対応する匿名の型名の名前空間とローカル名を公開する。
- 「member type definition」が存在する場合:
注: ほかのスキーマ言語はW3Cの範囲に含まれないため、
TypeInfo
を使用してそれぞれの型システムを表す方法を定義する必要があります。「Document Object Model (DOM) Level 3 Core Specification」も参照してください。
- 導入されたバージョン:
- 1.5、DOMレベル3
- この型が
-
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static int
DERIVATION_EXTENSION
文書のスキーマがXMLスキーマ「XML Schema Part 1」の場合、この定数は拡張による派生を表します。static int
DERIVATION_LIST
文書のスキーマがXMLスキーマ「XML Schema Part 1」の場合、この定数はリストを表します。static int
DERIVATION_RESTRICTION
文書のスキーマがXMLスキーマ「XML Schema Part 1」のとき、複合型が関係する場合には、この定数は制限による派生を表し、単純型が関係する場合には制限を表します。static int
DERIVATION_UNION
文書のスキーマがXMLスキーマ「XML Schema Part 1」のとき、単純型が関係する場合には、この定数は共用体を表します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド 修飾子と型 メソッド 説明 String
getTypeName()
関連する要素または属性に対して宣言された型の名前。未知の場合はnull
。String
getTypeNamespace()
関連する要素または属性に対して宣言された型の名前空間。要素が宣言を持たない場合、または名前空間情報がない場合はnull
。boolean
isDerivedFrom(String typeNamespaceArg, String typeNameArg, int derivationMethod)
このメソッドは、参照の型定義(つまり、メソッドが呼び出されているTypeInfo
)と、ほかの型定義(つまり、パラメータとして渡された型定義)の間に派生が存在するかどうかを返します。
-
-
-
フィールドの詳細
-
DERIVATION_RESTRICTION
static final int DERIVATION_RESTRICTION
文書のスキーマがXMLスキーマ「XML Schema Part 1」のとき、複合型が関係する場合には、この定数は制限による派生を表し、単純型が関係する場合には制限を表します。
参照の型定義は、ほかの型定義が参照の型定義と同じである場合、または参照の型定義から{base type definition}プロパティをたどってほかの型定義に再帰的に到達でき、かつ関係するすべての派生メソッドが制限である場合は、ほかの型定義から制限によって派生します。- 関連項目:
- 定数フィールド値
-
DERIVATION_EXTENSION
static final int DERIVATION_EXTENSION
文書のスキーマがXMLスキーマ「XML Schema Part 1」の場合、この定数は拡張による派生を表します。
参照の型定義は、参照の型定義から{base type definition}プロパティをたどってほかの型定義に再帰的に到達でき、かつ関係する少なくとも1つの派生メソッドが拡張である場合は、ほかの型定義から拡張によって派生します。- 関連項目:
- 定数フィールド値
-
DERIVATION_UNION
static final int DERIVATION_UNION
文書のスキーマがXMLスキーマ「XML Schema Part 1」のとき、単純型が関係する場合には、この定数は共用体を表します。
参照の型定義は、参照の型定義がDERIVATION_RESTRICTION
またはDERIVATION_EXTENSION
によってT1から派生し、T2がDERIVATION_RESTRICTION
によってほかの型定義から派生し、T1に{variety} 共用体が含まれ、さらに{member type definitions}のいずれかがT2であるような2つの型定義T1とT2が存在する場合は、ほかの型定義から共用体によって派生します。 T1は参照の型定義と同じになり、T2はほかの型定義と同じになります。- 関連項目:
- 定数フィールド値
-
DERIVATION_LIST
static final int DERIVATION_LIST
文書のスキーマがXMLスキーマ「XML Schema Part 1」の場合、この定数はリストを表します。
参照の型定義は、参照の型定義がDERIVATION_RESTRICTION
またはDERIVATION_EXTENSION
によってT1から派生し、T2がDERIVATION_RESTRICTION
によってほかの型定義から派生し、T1に{variety} リストが含まれ、さらにT2が{item type definition}であるような2つの型定義T1とT2が存在する場合は、ほかの型定義からリストによって派生します。 T1は参照の型定義と同じになり、T2はほかの型定義と同じになります。- 関連項目:
- 定数フィールド値
-
-
メソッドの詳細
-
getTypeName
String getTypeName()
関連する要素または属性に対して宣言された型の名前。未知の場合はnull
。
-
getTypeNamespace
String getTypeNamespace()
関連する要素または属性に対して宣言された型の名前空間。要素が宣言を持たない場合、または名前空間情報がない場合はnull
。
-
isDerivedFrom
boolean isDerivedFrom(String typeNamespaceArg, String typeNameArg, int derivationMethod)
このメソッドは、参照の型定義(つまり、メソッドが呼び出されているTypeInfo
)と、ほかの型定義(つまり、パラメータとして渡された型定義)の間に派生が存在するかどうかを返します。- パラメータ:
typeNamespaceArg
- ほかの型定義の名前空間。typeNameArg
- ほかの型定義の名前。derivationMethod
- このインタフェースで提供される定数のリストで記述されている、派生の型と2つの型の間で適用される条件。- 戻り値:
- 文書のスキーマがDTDであるか、文書にスキーマが関連付けられていない場合、このメソッドは常に
false
を返す。 文書のスキーマがXMLスキーマである場合、参照の型定義が派生パラメータに従ってほかの型定義から派生していれば、このメソッドはtrue
を返す。 パラメータの値が0
である(derivationMethod
パラメータのどのビットも1
に設定されていない)場合、参照の型定義から{base type definition}、{item type definition}、または{member type definitions}の任意の組み合わせを再帰的に扱うことによってほかの型定義に到達可能であれば、このメソッドはtrue
を返す。
-
-