- 所有超级接口:
-
Attributes
- 所有已知实现类:
-
Attributes2Impl
用于增强通过
Attributes
提供的每个属性信息的SAX2扩展。如果实现支持此扩展,则在ContentHandler.startElement()
中提供的属性将实现此接口,并且http://xml.org/sax/features/use-attributes2特性标志将具有值true。
XMLReader实现不需要支持此信息,并且它不是仅核心SAX2发行版的一部分。
请注意,如果属性是默认的(!isSpecified()),则必然也必须在DTD中声明(isDeclared())。类似地,如果属性的类型不是CDATA,则必须已经声明。
- 自从:
- 1.5, SAX 2.0(扩展1.1 alpha)
-
Method Summary
Modifier and TypeMethodDescriptionboolean
isDeclared
(int index) 除非属性在DTD中已声明,否则返回false。boolean
isDeclared
(String qName) 除非属性在DTD中已声明,否则返回false。boolean
isDeclared
(String uri, String localName) 除非属性在DTD中已声明,否则返回false。boolean
isSpecified
(int index) 除非属性值由DTD默认提供,否则返回true。boolean
isSpecified
(String qName) 除非属性值由DTD默认提供,否则返回true。boolean
isSpecified
(String uri, String localName) 除非属性值由DTD默认提供,否则返回true。
-
Method Details
-
isDeclared
boolean isDeclared(int index) 除非属性在DTD中已声明,否则返回false。这有助于区分SAX报告为CDATA的两种属性:已声明的属性(因此通常有效),以及未声明的属性(永远无效)。- 参数:
-
index
- 属性索引(从零开始)。 - 返回:
- 如果属性在DTD中已声明,则返回true,否则返回false。
- 抛出:
-
ArrayIndexOutOfBoundsException
- 当提供的索引未标识属性时。
-
isDeclared
除非属性在DTD中已声明,否则返回false。这有助于区分SAX报告为CDATA的两种属性:已声明的属性(因此通常有效),以及未声明的属性(永远无效)。- 参数:
-
qName
- XML的限定(带前缀)名称。 - 返回:
- 如果属性在DTD中已声明,则返回true,否则返回false。
- 抛出:
-
IllegalArgumentException
- 当提供的名称未标识属性时。
-
isDeclared
除非属性在DTD中已声明,否则返回false。这有助于区分SAX报告为CDATA的两种属性:已声明的属性(因此通常有效),以及未声明的属性(永远无效)。请记住,由于DTD不“理解”命名空间,与属性关联的命名空间URI可能不是来自DTD。声明将适用于属性的qName。
- 参数:
-
uri
- 命名空间URI,如果名称没有命名空间URI,则为空字符串。 -
localName
- 属性的本地名称。 - 返回:
- 如果属性在DTD中已声明,则返回true,否则返回false。
- 抛出:
-
IllegalArgumentException
- 当提供的名称未标识属性时。
-
isSpecified
boolean isSpecified(int index) 除非属性值由DTD默认提供,否则返回true。- 参数:
-
index
- 属性索引(从零开始)。 - 返回:
- 如果值在XML文本中找到,则返回true,如果值由DTD默认提供,则返回false。
- 抛出:
-
ArrayIndexOutOfBoundsException
- 当提供的索引未标识属性时。
-
isSpecified
除非属性值由DTD默认提供,否则返回true。请记住,由于DTD不“理解”命名空间,与属性关联的命名空间URI可能不是来自DTD。声明将适用于属性的qName。
- 参数:
-
uri
- 命名空间URI,如果名称没有命名空间URI,则为空字符串。 -
localName
- 属性的本地名称。 - 返回:
- 如果值在XML文本中找到,则返回true,如果值由DTD默认提供,则返回false。
- 抛出:
-
IllegalArgumentException
- 当提供的名称未标识属性时。
-
isSpecified
除非属性值由DTD默认提供,否则返回true。- 参数:
-
qName
- XML的限定(带前缀)名称。 - 返回:
- 如果值在XML文本中找到,则返回true,如果值由DTD默认提供,则返回false。
- 抛出:
-
IllegalArgumentException
- 当提供的名称未标识属性时。
-