- 所有超级接口:
-
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 TypeMethodDescriptionbooleanisDeclared(int index) 除非属性在DTD中已声明,否则返回false。booleanisDeclared(String qName) 除非属性在DTD中已声明,否则返回false。booleanisDeclared(String uri, String localName) 除非属性在DTD中已声明,否则返回false。booleanisSpecified(int index) 除非属性值由DTD默认提供,否则返回true。booleanisSpecified(String qName) 除非属性值由DTD默认提供,否则返回true。booleanisSpecified(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- 当提供的名称未标识属性时。
-