Module  java.xml
软件包  org.xml.sax.ext

Interface Attributes2

  • All Superinterfaces:
    Attributes
    所有已知实现类:
    Attributes2Impl


    public interface Attributes2
    extends Attributes
    SAX2扩展以增加Attributes提供的每个属性信息。 如果实现支持此扩展,则ContentHandler.startElement() 提供的属性将实现此接口,并且http://xml.org/sax/features/use-attributes2功能标志的值为true
    This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY.

    XMLReader实现不需要支持此信息,它不是仅核心的SAX2发行版的一部分。

    请注意,如果一个属性被默认( !isSpecified() ),那么在DTD中它必然也被声明( isDeclared() )。 类似地,如果一个属性的类型是CDATA之外的任何类型,那么它必须被声明。

    从以下版本开始:
    1.5,SAX 2.0(扩展1.1 alpha)
    • 方法详细信息

      • isDeclared

        boolean isDeclared​(int index)
        返回false,除非属性在DTD中声明。 这有助于区分SAX报告为CDATA的两种属性:被声明(因此通常是有效的)和不是(并且从不有效)的属性。
        参数
        index - 属性索引(从零开始)。
        结果
        如果属性在DTD中声明,则为true,否则为false。
        异常
        ArrayIndexOutOfBoundsException - 当提供的索引未标识属性时。
      • isDeclared

        boolean isDeclared​(String qName)
        返回false,除非属性在DTD中声明。 这有助于区分SAX报告为CDATA的两种属性:被声明(因此通常是有效的)和不是(并且从不有效)的属性。
        参数
        qName - XML合格(前缀)名称。
        结果
        如果属性在DTD中声明,则为true,否则为false。
        异常
        IllegalArgumentException - 当提供的名称不标识属性时。
      • isDeclared

        boolean isDeclared​(String uri,
                           String localName)
        返回false,除非属性在DTD中声明。 这有助于区分SAX报告为CDATA的两种属性:被声明(因此通常是有效的)和不是(并且从不有效)的属性。

        请记住,由于DTD不“理解”命名空间,与属性关联的命名空间URI可能不是来自DTD。 声明将应用于属性的qName

        参数
        uri - 名称空间URI,如果名称没有命名空间URI,则为空字符串。
        localName - 属性的本地名称。
        结果
        如果属性在DTD中声明,则为true,否则为false。
        异常
        IllegalArgumentException - 提供的名称不标识属性时。
      • isSpecified

        boolean isSpecified​(int index)
        返回true,除非属性值由DTD默认提供。
        参数
        index - 属性索引(从零开始)。
        结果
        如果在XML文本中找到该值,则为true,如果该值由DTD默认提供则为false。
        异常
        ArrayIndexOutOfBoundsException - 当提供的索引未标识属性时。
      • isSpecified

        boolean isSpecified​(String uri,
                            String localName)
        返回true,除非属性值由DTD默认提供。

        请记住,由于DTD不“理解”命名空间,与属性关联的命名空间URI可能不是来自DTD。 声明将应用于属性的qName

        参数
        uri - 命名空间URI,如果名称没有命名空间URI,则为空字符串。
        localName - 属性的本地名称。
        结果
        如果在XML文本中找到该值,则为true,如果该值由DTD默认提供则为false。
        异常
        IllegalArgumentException - 提供的名称不标识属性时。
      • isSpecified

        boolean isSpecified​(String qName)
        返回true,除非属性值由DTD默认提供。
        参数
        qName - XML合格(前缀)名称。
        结果
        如果在XML文本中找到该值,则为true,如果该值由DTD默认提供则为false。
        异常
        IllegalArgumentException - 当提供的名称不标识属性时。