Spec-Zone.ru › OpenJDK 25

Интерфейс NamespaceContext

public interface NamespaceContext
Интерфейс для обработки контекста пространств имен XML только для чтения.

Пространство имен XML имеет следующие свойства:

  • URI пространства имен: имя пространства имен, выраженное как URI, с которым связан префикс
  • префикс: синтаксически это часть имени атрибута, следующая за XMLConstants.XMLNS_ATTRIBUTE ("xmlns") в объявлении пространства имен

пример: <element xmlns:prefix="http://Namespace-name-URI">

Все методы get*(*) работают в текущей области видимости при разрешении URI пространства имен и префикса.

Обратите внимание, что с одним URI пространства имен в текущей области видимости могут быть связаны несколько префиксов. Это может произойти, если несколько объявлений пространства имен XMLConstants.XMLNS_ATTRIBUTE ("xmlns") встречаются в одном начальном теге и ссылаются на один и тот же URI пространства имен. Например:

<element xmlns:prefix1="http://Namespace-name-URI"
         xmlns:prefix2="http://Namespace-name-URI"> 
Это также может произойти, если один и тот же URI пространства имен используется в нескольких объявлениях пространства имен XMLConstants.XMLNS_ATTRIBUTE ("xmlns") в иерархии логических родительских элементов. Например:
<parent xmlns:prefix1="http://Namespace-name-URI">
  <child xmlns:prefix2="http://Namespace-name-URI">
    ...
  </child>
</parent> 

С одним префиксом в текущей области видимости может быть связан только один URI пространства имен.

Начиная с версии:
1.5
См. также:
  • javax.xml.XMLConstants — объявления распространенных значений XML
  • XML Schema, часть 2: типы данных
  • Пространства имен в XML

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

Модификатор и тип Метод Описание
String getNamespaceURI(String prefix)
Получает URI пространства имен, связанный с префиксом в текущей области видимости.
String getPrefix(String namespaceURI)
Получает префикс, связанный с URI пространства имен в текущей области видимости.
Iterator<String> getPrefixes(String namespaceURI)
Получает все префиксы, связанные с URI пространства имен в текущей области видимости.

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

getNamespaceURI

String getNamespaceURI(String prefix)
Получает URI пространства имен, связанный с префиксом в текущей области видимости.

При запросе URI пространства имен по префиксу в следующей таблице указано возвращаемое значение URI пространства имен для всех возможных значений префикса:

Возвращаемое значение для указанных префиксов
параметр префикса возвращаемое значение URI пространства имен
DEFAULT_NS_PREFIX ("") URI пространства имен по умолчанию в текущей области видимости или XMLConstants.NULL_NS_URI("") , если в текущей области видимости URI пространства имен по умолчанию отсутствует
связанный префикс URI пространства имен, связанный с префиксом в текущей области видимости
несвязанный префикс XMLConstants.NULL_NS_URI("")
XMLConstants.XML_NS_PREFIX ("xml") XMLConstants.XML_NS_URI ("http://www.w3.org/XML/1998/namespace")
XMLConstants.XMLNS_ATTRIBUTE ("xmlns") XMLConstants.XMLNS_ATTRIBUTE_NS_URI ("http://www.w3.org/2000/xmlns/")
null выбрасывается IllegalArgumentException
Параметры:
prefix — префикс для поиска
Возвращает:
URI пространства имен, связанный с префиксом в текущей области видимости
Выбрасывает:
IllegalArgumentException — если prefix имеет значение null

getPrefix

String getPrefix(String namespaceURI)
Получает префикс, связанный с URI пространства имен в текущей области видимости.

Чтобы получить все префиксы, связанные с URI пространства имен в текущей области видимости, используйте getPrefixes(String namespaceURI).

При запросе префикса по URI пространства имен в следующей таблице указано возвращаемое значение префикса для всех значений URI пространства имен:

Возвращаемое значение для указанных URI пространств имен
параметр URI пространства имен возвращаемое значение префикса
<default Namespace URI> XMLConstants.DEFAULT_NS_PREFIX ("")
связанный URI пространства имен префикс, связанный с URI пространства имен в текущей области видимости; если с URI пространства имен в текущей области видимости связано несколько префиксов, возвращается один произвольный префикс, выбор которого зависит от реализации
несвязанный URI пространства имен null
XMLConstants.XML_NS_URI ("http://www.w3.org/XML/1998/namespace") XMLConstants.XML_NS_PREFIX ("xml")
XMLConstants.XMLNS_ATTRIBUTE_NS_URI ("http://www.w3.org/2000/xmlns/") XMLConstants.XMLNS_ATTRIBUTE ("xmlns")
null выбрасывается IllegalArgumentException
Параметры:
namespaceURI — URI пространства имен для поиска
Возвращает:
префикс, связанный с URI пространства имен в текущем контексте
Выбрасывает:
IllegalArgumentException — если namespaceURI имеет значение null

getPrefixes

Iterator<String> getPrefixes(String namespaceURI)
Получает все префиксы, связанные с URI пространства имен в текущей области видимости.

Возвращается итератор по элементам String в произвольном порядке, зависящем от реализации.

Изменять Iterator нельзя. Например, метод remove() выбросит UnsupportedOperationException.

При запросе префиксов по URI пространства имен в следующей таблице указаны возвращаемые значения префиксов для всех значений URI пространства имен:

Возвращаемое значение для указанных URI пространств имен
параметр URI пространства имен возвращаемое значение префиксов
связанный URI пространства имен, включая <default Namespace URI> Iterator по префиксам, связанным с URI пространства имен в текущей области видимости, в произвольном порядке, зависящем от реализации
несвязанный URI пространства имен пустой Iterator
XMLConstants.XML_NS_URI ("http://www.w3.org/XML/1998/namespace") Iterator с одним элементом, равным XMLConstants.XML_NS_PREFIX ("xml")
XMLConstants.XMLNS_ATTRIBUTE_NS_URI ("http://www.w3.org/2000/xmlns/") Iterator с одним элементом, равным XMLConstants.XMLNS_ATTRIBUTE ("xmlns")
null выбрасывается IllegalArgumentException
Параметры:
namespaceURI — URI пространства имен для поиска
Возвращает:
Iterator для всех префиксов, связанных с URI пространства имен в текущей области видимости
Выбрасывает:
IllegalArgumentException — если namespaceURI имеет значение null

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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/javax/xml/namespace/NamespaceContext.html

Spec-Zone.ru

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