Интерфейс AttributeList

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

Интерфейс для спецификаций атрибутов элемента.

Этот модуль, как исходный код, так и документация, находится в общественном достоянии и не несёт ГАРАНТИЙ. См. http://www.saxproject.org для получения дополнительной информации.

Это исходный 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, 2020, 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/11/docs/api/java.xml/org/xml/sax/AttributeList.html

Spec-Zone .ru
спецификации, руководства, описания, API