所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
org.w3c.dom
接口 TypeInfo
-
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 Schema [XML Schema Part 1],则使用后模式验证信息集贡献(也称为 PSVI 贡献)按以下方式计算值:
- 如果 [validity] 属性存在且是“无效的” 或“未知的”,则:为声明类型的 {target namespace} 和 {name} 属性(如果可用);否则为
null
。注:在写入时,XML Schema 规范不要求公开声明的类型。因此,如果有效性是无效的,则 DOM 实现可能选择不提供类型信息。
- 如果 [validity] 属性存在且是“无效的”,则:
- 如果 [member type definition] 存在,则:
- 如果 {name} 不存在,则公开 [member type definition] 属性的 {name} 和 {target namespace} 属性;
- 否则,公开相应匿名类型名称的名称空间和本地名称。
- 如果 [type definition] 属性存在:
- 如果 {name} 不存在,则公开 [type definition] 属性的 {name} 和 {target namespace} 属性;
- 否则,公开相应匿名类型名称的名称空间和本地名称。
- 如果 [member type definition anonymous] 存在:
- 如果它为 false,则公开 [member type definition name] 和 [member type definition namespace] 属性;
- 否则,公开相应匿名类型名称的名称空间和本地名称。
- 如果 [type definition anonymous] 存在:
- 如果它为 false,则公开 [type definition name] 和 [type definition namespace] 属性;
- 否则,公开相应匿名类型名称的名称空间和本地名称。
- 如果 [member type definition] 存在,则:
注:其他模式语言不在 W3C 的范围内,因此应该使用 TypeInfo
定义如何表示它们的类型系统。
另请参见 Document Object Model (DOM) Level 3 Core Specification。
- 从以下版本开始:
- DOM Level 3
字段摘要 | |
---|---|
static int |
DERIVATION_EXTENSION 如果文档的模式为 XML Schema [XML Schema Part 1],则此常量表示由 extension 派生出的。 |
static int |
DERIVATION_LIST 如果文档的模式为 XML Schema [XML Schema Part 1],则此常量表示 列表。 |
static int |
DERIVATION_RESTRICTION 如果文档的模式为 XML Schema [XML Schema Part 1],则此常量表示通过 restriction 进行的派生(如果涉及复杂的类型)或 restriction(如果涉及简单的类型)。 |
static int |
DERIVATION_UNION 如果文档的模式为 XML Schema [XML Schema Part 1],则此常量表示 union(如果涉及简单类型)。 |
方法摘要 | |
---|---|
String |
getTypeName() 为相关元素或属性声明的类型的名称;如果未知,则为 null 。 |
String |
getTypeNamespace() 为相关元素或属性声明的类型的名称空间;如果该元素没有声明或如果没有名称空间信息可用,则为 null 。 |
boolean |
isDerivedFrom(String typeNamespaceArg, String typeNameArg, int derivationMethod) 此方法返回引用类型定义(即在其上调用该方法的 TypeInfo )和其他类型定义(即作为参数传递的类型定义)之间是否存在派生。 |
字段详细信息 |
---|
DERIVATION_RESTRICTION
static final int DERIVATION_RESTRICTION
-
如果文档的模式为 XML Schema [XML Schema Part 1],则此常量表示通过 restriction 进行的派生(如果涉及复杂的类型)或 restriction(如果涉及简单的类型)。
如果其他类型定义与引用类型定义相同,或者如果遵循引用类型定义中的 {base type definition} 属性可以递归式到达其他类型定义,并且涉及的所有 derivation methods 都是限制,则引用类型定义由限制从其他类型定义中派生。- 另请参见:
- 常量字段值
DERIVATION_EXTENSION
static final int DERIVATION_EXTENSION
-
如果文档的模式为 XML Schema [XML Schema Part 1],则此常量表示由 extension 派生出的。
如果遵循引用类型定义中的 {base type definition} 属性可以递归式到达其他类型定义,且至少一个涉及到的 derivation methods 是扩展,则引用类型定义由扩展从其他类型定义中派生。- 另请参见:
- 常量字段值
DERIVATION_UNION
static final int DERIVATION_UNION
-
如果文档的模式为 XML Schema [XML Schema Part 1],则此常量表示 union(如果涉及简单类型)。
如果存在两种类型定义 T1 和 T2,T1 具有 {各种} union,而其中一个 {成员类型定义} 为 T2,则引用类型定义由 union 从其他类型定义派生,例如,引用类型定义是通过DERIVATION_RESTRICTION
或DERIVATION_EXTENSION
从 T1 派生的,T2 是通过DERIVATION_RESTRICTION
从其他类型定义派生。注意,T1 可以与引用类型定义相同,T2 可以与其他类型定义相同。- 另请参见:
- 常量字段值
DERIVATION_LIST
static final int DERIVATION_LIST
-
如果文档的模式为 XML Schema [XML Schema Part 1],则此常量表示 列表。
如果存在两种类型定义 T1 和 T2,例如,引用类型定义由DERIVATION_RESTRICTION
或DERIVATION_EXTENSION
从 T1 派生,T2 由DERIVATION_RESTRICTION
从其他类型定义派生,则引用类型定义由列表从其他类型派生,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
- 在两种类型之间应用的派生类型和条件,如在此接口中提供的常量列表中描述的。- 返回:
-
如果文档的模式为 DTD 或者没有与此文档相关的模式,则此方法将总是返回
false
。如果文档的模式为 XML Schema,则该方法将为true
(如果按照派生参数从其他类型定义派生引用类型定义)。如果参数的值为0
(没有将derivationMethod
参数的任何一位设置为1
),则该方法将返回true
(如果可以通过从引用类型定义递归{基本类型定义}、{项类型定义}或{成员类型定义} 组合到达其他类型定义)。
所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |