Интерфейс NamedNodeMap

public interface NamedNodeMap

Объекты, реализующие интерфейс NamedNodeMap, используются для представления коллекций узлов, к которым можно получить доступ по имени. Обратите внимание, что NamedNodeMap не наследуется от NodeList; NamedNodeMaps не сохраняются в определенном порядке. Объекты, содержащиеся в объекте, реализующем NamedNodeMap, также могут быть доступны по порядковому индексу, но это просто позволяет удобно перечислять содержимое NamedNodeMap, и это не подразумевает, что DOM определяет порядок этих узлов.

Объекты NamedNodeMap в DOM являются динамическими.

См. также Спецификацию Document Object Model (DOM) Level 3 Core.

Методы

Модификатор и тип Метод Описание
int getLength()

Количество узлов в этой карте.

Node getNamedItem​(String name)

Возвращает узел, указанный по имени.

Node getNamedItemNS​(String namespaceURI, String localName)

Возвращает узел, указанный по локальному имени и URI пространства имен.

Node item​(int index)

Возвращает index-й элемент в карте.

Node removeNamedItem​(String name)

Удаляет узел, указанный по имени.

Node removeNamedItemNS​(String namespaceURI, String localName)

Удаляет узел, указанный по локальному имени и URI пространства имен.

Node setNamedItem​(Node arg)

Добавляет узел, используя его атрибут nodeName.

Node setNamedItemNS​(Node arg)

Добавляет узел, используя его атрибуты namespaceURI и localName.

Методы

getNamedItem

Node getNamedItem(String name)

Возвращает узел, указанный по имени.

Параметры:
name - Имя узла для получения.
Возвращает:
Узел (любого типа) с заданным именем, или null, если по имени узел не найден.

setNamedItem

Node setNamedItem(Node arg)
           throws DOMException

Добавляет узел, используя его атрибут nodeName. Если узел с таким именем уже присутствует в этой карте, он заменяется новым. Замена узла самим собой не имеет эффекта.
Так как атрибут nodeName используется для вывода имени, под которым узел должен быть сохранён, несколько узлов определённых типов (у которых есть «специальное» строковое значение) не могут быть сохранены, так как имена будут совпадать. Это предпочтительнее, чем позволять узлам иметь псевдонимы.

Параметры:
arg - Узел для хранения в этой карте. Узел будет позже доступен по значению его атрибута nodeName.
Возвращает:
Если новый узел заменяет существующий, возвращается заменённый узел, иначе возвращается null.
Исключения:
DOMException - WRONG_DOCUMENT_ERR: Выбрасывается, если arg был создан из другого документа, чем тот, который создал эту карту.
NO_MODIFICATION_ALLOWED_ERR: Выбрасывается, если эта карта является только для чтения.
INUSE_ATTRIBUTE_ERR: Выбрасывается, если arg является атрибутом, который уже является атрибутом другого объекта Element. Пользователь DOM должен явно клонировать Attr узлы для повторного использования в других элементах.
HIERARCHY_REQUEST_ERR: Выбрасывается, если попытка добавить узел не соответствует структуре этой карты. Примеры включают попытку вставки чего-либо, кроме узла Attr, в карту атрибутов элемента, или не-Entity узла в карту сущностей DocumentType.

removeNamedItem

Node removeNamedItem(String name)
              throws DOMException

Удаляет узел, указанный по имени. Когда эта карта содержит атрибуты, прикреплённые к элементу, если удалённый атрибут известен как имеющий значение по умолчанию, сразу появляется атрибут, содержащий значение по умолчанию, а также соответствующий URI пространства имён, локальное имя и префикс, если применимо.

Параметры:
name - Имя узла для удаления.
Возвращает:
Узел, удалённый из этой карты, если узел с таким именем существует.
Исключения:
DOMException - NOT_FOUND_ERR: Выбрасывается, если в этой карте нет узла с именем name.
NO_MODIFICATION_ALLOWED_ERR: Выбрасывается, если эта карта является только для чтения.

item

Node item(int index)

Возвращает index-й элемент в карте. Если index больше или равно количеству узлов в этой карте, возвращается null.

Параметры:
index - Индекс в этой карте.
Возвращает:
Узел в index-й позиции в карте, или null, если это недействительный индекс.

getLength

int getLength()

Количество узлов в этой карте. Диапазон допустимых индексов узлов-потомков - от 0 до length-1 включительно.

getNamedItemNS

Node getNamedItemNS(String namespaceURI,
                    String localName)
             throws DOMException

Возвращает узел, указанный по локальному имени и URI пространства имён.
Согласно [XML Namespaces], приложения должны использовать значение null в качестве параметра namespaceURI для методов, если они хотят не использовать пространство имён.

Параметры:
namespaceURI - URI пространства имён узла для получения.
localName - Локальное имя узла для получения.
Возвращает:
Узел (любого типа) с указанным локальным именем и URI пространства имён, или null, если по ним узел не найден.
Исключения:
DOMException - NOT_SUPPORTED_ERR: Может быть выброшено, если реализация не поддерживает функцию «XML» и язык, экспонируемый через Document, не поддерживает XML пространства имён (например, [HTML 4.01]).
С тех пор:
1.4, DOM Level 2

setNamedItemNS

Node setNamedItemNS(Node arg)
             throws DOMException

Добавляет узел, используя его URI пространства имён и локальное имя. Если узел с указанным URI пространства имён и локальным именем уже присутствует в этой карте, он заменяется новым. Замена узла самим собой не имеет эффекта.
Согласно [XML Namespaces], приложения должны использовать значение null в качестве параметра namespaceURI для методов, если они хотят не использовать пространство имён.

Параметры:
arg - Узел для хранения в этой карте. Узел будет позже доступен по значению его атрибутов namespaceURI и localName.
Возвращает:
Если новый узел заменяет существующий, возвращается заменённый узел, иначе возвращается null.
Исключения:
DOMException - WRONG_DOCUMENT_ERR: Выбрасывается, если arg был создан из другого документа, чем тот, который создал эту карту.
NO_MODIFICATION_ALLOWED_ERR: Выбрасывается, если эта карта является только для чтения.
INUSE_ATTRIBUTE_ERR: Выбрасывается, если arg является атрибутом, который уже является атрибутом другого объекта Element. Пользователь DOM должен явно клонировать Attr узлы для повторного использования в других элементах.
HIERARCHY_REQUEST_ERR: Выбрасывается, если попытка добавить узел не соответствует структуре этой карты. Примеры включают попытку вставки чего-либо, кроме узла Attr, в карту атрибутов элемента, или не-Entity узла в карту сущностей DocumentType.
NOT_SUPPORTED_ERR: Может быть выброшено, если реализация не поддерживает функцию «XML» и язык, экспонируемый через Document, не поддерживает XML пространства имён (например, [HTML 4.01]).
С тех пор:
1.4, DOM Level 2

removeNamedItemNS

Node removeNamedItemNS(String namespaceURI,
                       String localName)
                throws DOMException

Удаляет узел, указанный по локальному имени и URI пространства имён. Удаленный атрибут может быть известен как имеющий значение по умолчанию, когда эта карта содержит атрибуты, прикрепленные к элементу, возвращаемые атрибутом attributes интерфейса Node. В таком случае сразу появляется атрибут, содержащий значение по умолчанию, а также соответствующий URI пространства имён, локальное имя и префикс, если применимо.
Согласно [XML Namespaces], приложения должны использовать значение null в качестве параметра namespaceURI для методов, если они хотят не использовать пространство имён.

Параметры:
namespaceURI - URI пространства имён узла для удаления.
localName - Локальное имя узла для удаления.
Возвращает:
Узел, удалённый из этой карты, если узел с указанным локальным именем и URI пространства имён существует.
Исключения:
DOMException - NOT_FOUND_ERR: Выбрасывается, если в этой карте нет узла с указанным namespaceURI и localName.
NO_MODIFICATION_ALLOWED_ERR: Выбрасывается, если эта карта является только для чтения.
NOT_SUPPORTED_ERR: Может быть выброшено, если реализация не поддерживает функцию «XML» и язык, экспонируемый через Document, не поддерживает XML пространства имён (например, [HTML 4.01]).
С тех пор:
1.4, DOM Level 2

© 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/w3c/dom/NamedNodeMap.html

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