Интерфейс AttributeList
- Все известные реализующие классы:
AttributeListImpl
@Deprecated(since="1.5") public interface AttributeList
Это исходный интерфейс 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
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
getLength() |
Устарело. Возвращает количество атрибутов в этом списке. |
String |
getName |
Устарело. Возвращает имя атрибута в этом списке (по позиции). |
String |
getType |
Устарело. Возвращает тип атрибута в списке (по позиции). |
String |
getType |
Устарело. Возвращает тип атрибута в списке (по имени). |
String |
getValue |
Устарело. Возвращает значение атрибута в списке (по позиции). |
String |
getValue |
Устарело. Возвращает значение атрибута в списке (по имени). |
Подробное описание методов
getLength
int getLength()
Анализатор SAX может предоставлять атрибуты в произвольном порядке, независимо от порядка их объявления или указания. Количество атрибутов может быть равно нулю.
- Возвращает:
- Количество атрибутов в списке.
getName
String getName(int i)
Имена должны быть уникальными: анализатор SAX не должен включать один и тот же атрибут дважды. Атрибуты без значений (объявленные как #IMPLIED, но не имеющие значения в начальном теге) не включаются в список.
Если имя атрибута содержит префикс пространства имён, этот префикс сохраняется.
- Параметры:
-
i— индекс атрибута в списке (начиная с 0). - Возвращает:
- Имя атрибута с указанным индексом или null, если индекс выходит за пределы диапазона.
- См. также:
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, если индекс выходит за пределы диапазона.
- См. также:
getValue
String getValue(int i)
Если значение атрибута представляет собой список токенов (IDREFS, ENTITIES или NMTOKENS), токены будут объединены в одну строку и разделены пробелами.
- Параметры:
-
i— индекс атрибута в списке (начиная с 0). - Возвращает:
- Значение атрибута в виде строки или null, если индекс выходит за пределы диапазона.
- См. также:
getType
String getType(String name)
Возвращаемое значение совпадает со значением, возвращаемым методом getType(int).
Если имя атрибута в документе содержит префикс пространства имён, приложение должно включить этот префикс.
- Параметры:
-
name— имя атрибута. - Возвращает:
- Тип атрибута в виде строки или null, если такого атрибута нет.
- См. также:
getValue
String getValue(String name)
Возвращаемое значение совпадает со значением, возвращаемым методом getValue(int).
Если имя атрибута в документе содержит префикс пространства имён, приложение должно включить этот префикс.
- Параметры:
-
name— имя возвращаемого атрибута - Возвращает:
- Значение атрибута в виде строки или null, если такого атрибута нет.
- См. также:
© 1993, 2025, 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/25/docs/api/java.xml/org/xml/sax/AttributeList.html
Attributes, который поддерживает пространства имён.