ValidatorHandler确定的类型信息。
一些模式语言,如W3C XML Schema,鼓励验证器报告其为每个属性/元素分配的“类型”。希望访问此类型信息的应用程序可以调用此“接口”上定义的方法来访问此类类型信息。
可以通过ValidatorHandler.getTypeInfoProvider()方法获取此“接口”的实现。
- 自:
- 1.5
- 参见:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract TypeInfogetAttributeTypeInfo(int index) 返回当前元素指定属性的不可变TypeInfo对象。abstract TypeInfo返回当前元素的不可变TypeInfo对象。abstract booleanisIdAttribute(int index) 如果指定属性被确定为ID,则返回true。abstract booleanisSpecified(int index) 如果属性是由验证器添加的,则返回false。
-
Constructor Details
-
TypeInfoProvider
protected TypeInfoProvider()派生类的构造函数。构造函数不执行任何操作。
-
-
Method Details
-
getElementTypeInfo
返回当前元素的不可变
TypeInfo对象。该方法只能由应用程序设置给
ValidatorHandler的ContentHandler的startElement事件或endElement事件调用。在执行W3C XML Schema验证时,如果元素具有联合类型,则从
startElement事件调用getElementTypeInfo()返回的TypeInfo将是联合类型。从endElement事件调用返回的TypeInfo将是用于验证元素的实际成员类型。- 返回:
-
代表当前元素类型的不可变
TypeInfo对象。请注意,调用者可以在回调范围之外保留对获得的TypeInfo的引用。否则,如果验证器无法出于某种原因(例如,如果验证器正在从先前的错误中恢复)确定当前元素的类型,则此方法返回null。 - 抛出:
-
IllegalStateException- 如果从其他ContentHandler方法调用此方法。
-
getAttributeTypeInfo
返回当前元素指定属性的不可变TypeInfo对象。该方法只能由应用程序设置给
ValidatorHandler的ContentHandler的startElement事件调用。- 参数:
-
index- 属性的索引。与传递给startElement回调的Attributes对象的相同索引。 - 返回:
-
代表指定属性类型的不可变
TypeInfo对象。请注意,调用者可以在回调范围之外保留对获得的TypeInfo的引用。否则,如果验证器无法确定类型,则此方法返回null。 - 抛出:
-
IndexOutOfBoundsException- 如果索引无效。 -
IllegalStateException- 如果从其他ContentHandler方法调用此方法。
-
isIdAttribute
public abstract boolean isIdAttribute(int index) 如果指定属性被确定为ID,则返回true。属性如何被“确定为ID”取决于模式语言。在W3C XML Schema的情况下,这意味着属性的实际类型是内置ID类型或其派生类型。
DocumentBuilder使用此信息来正确实现Attr.isId()。该方法只能由应用程序设置给
ValidatorHandler的ContentHandler的startElement事件调用。- 参数:
-
index- 属性的索引。与传递给startElement回调的Attributes对象的相同索引。 - 返回:
- 如果指定属性的类型为ID,则返回true。
- 抛出:
-
IndexOutOfBoundsException- 如果索引无效。 -
IllegalStateException- 如果从其他ContentHandler方法调用此方法。
-
isSpecified
public abstract boolean isSpecified(int index) 如果属性是由验证器添加的,则返回false。此方法提供了
DocumentBuilder确定DOM树应从Attr.getSpecified()方法返回的信息。该方法只能由应用程序设置给
ValidatorHandler的ContentHandler的startElement事件调用。验证器的一般准则是,如果属性最初存在于管道中,则返回true,如果是验证器添加的,则返回false。
- 参数:
-
index- 属性的索引。与传递给startElement回调的Attributes对象的相同索引。 - 返回:
-
如果属性在验证器处理输入之前存在,则返回
true。如果属性是由验证器添加的,则返回false。 - 抛出:
-
IndexOutOfBoundsException- 如果索引无效。 -
IllegalStateException- 如果从其他ContentHandler方法调用此方法。
-