Spec-Zone.ru › OpenJDK 17

Интерфейс AttributeList

Все известные реализующие классы:
AttributeListImpl
@Deprecated(since="1.5") public interface AttributeList
Устарело.
Этот интерфейс был заменён интерфейсом SAX2 Attributes, который включает поддержку пространства имён.
Интерфейс для спецификаций атрибутов элемента.

Это исходный интерфейс SAX1 для отчётности об атрибутах элемента. В отличие от нового интерфейса Attributes, он не поддерживает информацию, связанную с пространствами имён.

Когда список атрибутов предоставляется как часть события startElement, список будет возвращать корректные результаты только в рамках этого события; как только обработчик события возвращает управление парсеру, список атрибутов становится недействительным. Для сохранения постоянной копии списка атрибутов используйте вспомогательный класс SAX1 AttributeListImpl.

Список атрибутов включает только атрибуты, которые были указаны или установлены по умолчанию: атрибуты #IMPLIED не будут включены.

Существует два способа, с помощью которых приложение SAX может получить информацию из AttributeList. Во-первых, оно может перебирать весь список:


 public void startElement (String name, AttributeList atts) {
   for (int i = 0; i < atts.getLength(); i++) {
     String name = atts.getName(i);
     String type = atts.getType(i);
     String value = atts.getValue(i);
     [...]
   }
 }
 

(Обратите внимание, что результат getLength() будет равен нулю, если атрибутов нет.)

В качестве альтернативы, приложение может запросить значение или тип определённых атрибутов:

 public void startElement (String name, AttributeList atts) {
   String identifier = atts.getValue("id");
   String label = atts.getValue("label");
   [...]
 }
 
С тех пор:
1.4, SAX 1.0
См. также:
  • startElement
  • AttributeListImpl

Краткое описание методов

Модификатор и тип Метод Описание
int getLength()
Устарело.
Возвращает количество атрибутов в этом списке.
String getName(int i)
Устарело.
Возвращает имя атрибута в этом списке (по позиции).
String getType(int i)
Устарело.
Возвращает тип атрибута в списке (по позиции).
String getType(String name)
Устарело.
Возвращает тип атрибута в списке (по имени).
String getValue(int i)
Устарело.
Возвращает значение атрибута в списке (по позиции).
String getValue(String name)
Устарело.
Возвращает значение атрибута в списке (по имени).

Подробное описание методов

getLength

int getLength()
Устарело.
Возвращает количество атрибутов в этом списке.

Парсер SAX может предоставлять атрибуты в любом произвольном порядке, независимо от порядка их объявления или указания. Количество атрибутов может быть равно нулю.

Возвращает:
Количество атрибутов в списке.

getName

String getName(int i)
Устарело.
Возвращает имя атрибута в этом списке (по позиции).

Имена должны быть уникальными: парсер SAX не должен включать один и тот же атрибут дважды. Атрибуты без значений (те, которые объявлены #IMPLIED без значения, указанного в открывающем теге) будут исключены из списка.

Если имя атрибута имеет префикс пространства имён, префикс по-прежнему будет прикреплён.

Параметры:
i - Индекс атрибута в списке (начиная с 0).
Возвращает:
Имя атрибута по индексу или null, если индекс вне диапазона.
См. также:
  • getLength()

getType

String getType(int i)
Устарело.
Возвращает тип атрибута в списке (по позиции).

Тип атрибута - это одна из строк "CDATA", "ID", "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY", "ENTITIES" или "NOTATION" (всегда заглавными буквами).

Если парсер не прочитал объявление для атрибута или если парсер не сообщает типы атрибутов, он должен возвращать значение "CDATA", как указано в XML 1.0 Рекомендации (пункт 3.3.3, "Нормализация значения атрибута").

Для атрибута перечисления, который не является обозначением, парсер будет сообщать тип как "NMTOKEN".

Параметры:
i - Индекс атрибута в списке (начиная с 0).
Возвращает:
Тип атрибута как строка или null, если индекс вне диапазона.
См. также:
  • getLength()
  • getType(java.lang.String)

getValue

String getValue(int i)
Устарело.
Возвращает значение атрибута в списке (по позиции).

Если значение атрибута представляет собой список маркеров (IDREFS, ENTITIES или NMTOKENS), маркеры будут объединены в одну строку, разделённую пробелами.

Параметры:
i - Индекс атрибута в списке (начиная с 0).
Возвращает:
Значение атрибута как строка или null, если индекс вне диапазона.
См. также:
  • getLength()
  • getValue(java.lang.String)

getType

String getType(String name)
Устарело.
Возвращает тип атрибута в списке (по имени).

Возвращаемое значение такое же, как и для getType(int).

Если имя атрибута имеет префикс пространства имён в документе, приложение должно включить его сюда.

Параметры:
name - Имя атрибута.
Возвращает:
Тип атрибута как строка или null, если атрибут не найден.
См. также:
  • getType(int)

getValue

String getValue(String name)
Устарело.
Возвращает значение атрибута в списке (по имени).

Возвращаемое значение такое же, как и для getValue(int).

Если имя атрибута имеет префикс пространства имён в документе, приложение должно включить его сюда.

Параметры:
name - имя возвращаемого атрибута
Возвращает:
Значение атрибута как строка или null, если атрибут не найден.
См. также:
  • getValue(int)

© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.xml/org/xml/sax/AttributeList.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API