Интерфейс 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") объявлений пространства имен находятся в одном теге Start-Tag и ссылаются на один и тот же 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 for declarations of common XML values, XML Schema Часть 2: Типы данных, Пространства имен в XML, Исправления для пространств имен в XML
Методы
| Модификатор и тип | Метод и описание |
|---|---|
String |
getNamespaceURI(String prefix) Получить URI пространства имен, привязанного к префиксу в текущем объеме. |
String |
getPrefix(String namespaceURI) Получить префикс, привязанный к URI пространства имен в текущем объеме. |
Iterator |
getPrefixes(String namespaceURI) Получить все префиксы, привязанные к URI пространства имен в текущем объеме. |
Методы
getNamespaceURI
String getNamespaceURI(String prefix)
Получить URI пространства имен, привязанного к префиксу в текущем объеме.
При запросе URI пространства имен по префиксу, следующая таблица описывает возвращаемое значение URI пространства имен для всех возможных значений префикса:
getNamespaceURI(prefix) возвращаемое значение для указанных префиксов | |
| параметр префикса | возвращаемое значение URI пространства имен |
DEFAULT_NS_PREFIX ("") | URI пространства имен по умолчанию в текущем объеме или при отсутствии URI пространства имен по умолчанию в текущем объеме |
| привязанный префикс | 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 пространства имен:
getPrefix(namespaceURI) возвращаемое значение для указанных URI пространств имен | |
|---|---|
| параметр 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 getPrefixes(String namespaceURI)
Получить все префиксы, привязанные к URI пространства имен в текущем объеме.
Возвращается итератор по строковым элементам в произвольном, зависимом от реализации, порядке.
Итератор не изменяемый. Например, вызов метода remove() вызовет UnsupportedOperationException.
Когда запрашиваются префиксы по URI пространства имен, следующая таблица описывает возвращаемое значение префиксов для всех значений URI пространства имен:
getPrefixes(namespaceURI) возвращаемое значение для указанных URI пространств имен | |
|---|---|
| параметр URI пространства имен | возвращаемое значение префиксов |
| привязанный URI пространства имен, включая | итератор по префиксам, привязанным к URI пространства имен в текущем объеме в произвольном, зависимом от реализации, порядке |
| непривязанный URI пространства имен | пустой итератор |
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
© 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.