public interface Attributes2
SAX2 扩展,用于扩充通过 Attributes
提供的每个属性信息。如果实现支持此扩展,则 ContentHandler.startElement()
中提供的属性将实现此接口,并且 http://xml.org/sax/features/use-attributes2 功能标志将具有值 true。
此模块(包括源代码和文档)在公共域中,同时 没有担保。
XMLReader 实现无需支持此信息,并且它不是仅核心 SAX2 分发的一部分。
注意,如果属性是默认的 (!isSpecified()),则它还必须在 DTD 中声明 (isDeclared())。类似地,如果属性的类型是除 CDATA 之外的任何类型,则它必须已声明。
方法摘要 | |
---|---|
boolean |
isDeclared(int index) 返回 false,除非在 DTD 中声明了该属性。 |
boolean |
isDeclared(String qName) 返回 false,除非在 DTD 中声明该属性。 |
boolean |
isDeclared(String uri, String localName) 返回 false,除非在 DTD 中声明属性。 |
boolean |
isSpecified(int index) 返回 true,除非 DTD 默认提供属性值。 |
boolean |
isSpecified(String qName) 返回 true,除非由 DTD 默认提供属性值。 |
boolean |
isSpecified(String uri, String localName) 返回 true,除非由 DTD 默认提供属性值。 |
从接口 org.xml.sax.Attributes 继承的方法 |
---|
getIndex, getIndex, getLength, getLocalName, getQName, getType, getType, getType, getURI, getValue, getValue, getValue |
方法详细信息 |
---|
boolean isDeclared(int index)
index
- 属性索引(从零开始)。
ArrayIndexOutOfBoundsException
- 当提供的索引不标识属性时。
boolean isDeclared(String qName)
qName
- XML 限定(加前缀的)名称。
IllegalArgumentException
- 当提供的名称不标识属性时。
boolean isDeclared(String uri, String localName)
请记住,由于 DTD 不能“理解”名称空间,所以与属性关联的名称空间 URI 不可以来自 DTD。该声明将会应用于属性的 qName。
uri
- 名称空间 URI,如果该名称没有名称空间 URI,则为空字符串。
localName
- 属性的本地名称。
IllegalArgumentException
- 当提供的名称不标识属性时。
boolean isSpecified(int index)
index
- 属性索引(从零开始)。
ArrayIndexOutOfBoundsException
- 当提供的索引不标识属性时。
boolean isSpecified(String uri, String localName)
请记住,由于 DTD 不能“理解”名称空间,所以与属性关联的名称空间 URI 不可以来自 DTD。该声明将会应用于属性的 qName。
uri
- 名称空间 URI,如果该名称没有名称空间 URI,则为空字符串。
localName
- 属性的本地名称。
IllegalArgumentException
- 当提供的名称不标识属性时。
boolean isSpecified(String qName)
qName
- XML 限定(加前缀的)名称。
IllegalArgumentException
- 当提供的名称不标识属性时。