Spec-Zone.ru › OpenJDK 17

Класс QName

java.lang.Object
javax.xml.namespace.QName
Все реализуемые интерфейсы:
Serializable
public class QName extends Object implements Serializable

QName представляет собой полное имя, как определено в спецификациях XML: Спецификация XML Schema Part2: Типы данных, Пространства имён в XML.

Значение QName содержит URI пространства имён, локальную часть и префикс.

Префикс включён в QName для сохранения лексической информации при её наличии в XML input source. Префикс НЕ используется в QName.equals(Object) или для вычисления QName.hashCode(). Равенство и хэш-код определяются только по URI пространства имён и локальной части.

Если не указано, URI пространства имён устанавливается в XMLConstants.NULL_NS_URI. Если не указано, префикс устанавливается в XMLConstants.DEFAULT_NS_PREFIX.

QName является неизменяемым.

С тех пор:
1.5
См. также:
  • Спецификация XML Schema Part2: Типы данных
  • Пространства имён в XML
  • Сериализованная форма

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

Конструктор Описание
QName(String localPart)
QName конструктор, задающий локальную часть.
QName(String namespaceURI, String localPart)
QName конструктор, задающий URI пространства имён и локальную часть.
QName(String namespaceURI, String localPart, String prefix)
QName конструктор, задающий URI пространства имён, локальную часть и префикс.

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

Модификатор и тип Метод Описание
final boolean equals(Object objectToTest)
Проверка на равенство этого QName с другим Object.
String getLocalPart()
Получение локальной части этого QName.
String getNamespaceURI()
Получение URI пространства имён этого QName.
String getPrefix()
Получение префикса этого QName.
final int hashCode()
Генерация хэш-кода для этого QName.
String toString()
String представление этого QName.
static QName valueOf(String qNameAsString)
QName полученный из разбора форматированного String.

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

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

QName

public QName(String namespaceURI, String localPart)

QName конструктор, задающий URI пространства имён и локальную часть.

Если URI пространства имён равен null, он устанавливается в XMLConstants.NULL_NS_URI. Это значение обозначает отсутствие явно определённого пространства имён, как определено в спецификации Namespaces in XML. Этот шаг сохраняет совместимое поведение с QName 1.0. Явное предоставление значения XMLConstants.NULL_NS_URI предпочтительнее.

Если локальная часть равна null, выбрасывается IllegalArgumentException. Разрешена локальная часть "" для сохранения совместимого поведения с QName 1.0.

При использовании этого конструктора префикс устанавливается в XMLConstants.DEFAULT_NS_PREFIX.

URI пространства имён не проверяется как URI reference. Локальная часть не проверяется как NCName, как указано в Namespaces in XML.

Параметры:
namespaceURI - URI пространства имён QName
localPart - локальная часть QName
Исключения:
IllegalArgumentException - Когда localPart равно null
См. также:
  • QName(String namespaceURI, String localPart, String prefix)

QName

public QName(String namespaceURI, String localPart, String prefix)

QName конструктор, задающий URI пространства имён, локальную часть и префикс.

Если URI пространства имён равен null, он устанавливается в XMLConstants.NULL_NS_URI. Это значение обозначает отсутствие явно определённого пространства имён, как определено в спецификации Namespaces in XML. Этот шаг сохраняет совместимое поведение с QName 1.0. Явное предоставление значения XMLConstants.NULL_NS_URI предпочтительнее.

Если локальная часть равна null, выбрасывается IllegalArgumentException. Разрешена локальная часть "" для сохранения совместимого поведения с QName 1.0.

Если префикс равен null, выбрасывается IllegalArgumentException. Используйте XMLConstants.DEFAULT_NS_PREFIX для явного указания отсутствия префикса или его неважности.

URI пространства имён не проверяется как URI reference. Локальная часть и префикс не проверяются как NCName, как указано в Namespaces in XML.

Параметры:
namespaceURI - URI пространства имён QName
localPart - локальная часть QName
prefix - префикс QName
Исключения:
IllegalArgumentException - Когда localPart или prefix равно null

QName

public QName(String localPart)

QName конструктор, задающий локальную часть.

Если локальная часть равна null, выбрасывается IllegalArgumentException. Разрешена локальная часть "" для сохранения совместимого поведения с QName 1.0.

При использовании этого конструктора URI пространства имён устанавливается в XMLConstants.NULL_NS_URI, а префикс — в XMLConstants.DEFAULT_NS_PREFIX.

В контексте XML все имена элементов и атрибутов существуют в контексте пространства имён. Явное указание этого при создании QName помогает предотвратить трудно диагностируемые ошибки проверки XML. Конструкторы QName(String namespaceURI, String localPart) и QName(String namespaceURI, String localPart, String prefix) предпочтительнее.

Локальная часть не проверяется как NCName, как указано в Namespaces in XML.

Параметры:
localPart - локальная часть QName
Исключения:
IllegalArgumentException - Когда localPart равно null
См. также:
  • QName(String namespaceURI, String localPart)
  • QName(String namespaceURI, String localPart, String prefix)

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

getNamespaceURI

public String getNamespaceURI()

Получить URI пространства имён этого QName.

Возвращает:
URI пространства имён этого QName

getLocalPart

public String getLocalPart()

Получить локальную часть этого QName.

Возвращает:
локальную часть этого QName

getPrefix

public String getPrefix()

Получить префикс этого QName.

Префикс, назначенный QName , может быть недействительным в другом контексте. Например, QName может получить префикс при разборе документа, но этот префикс может быть недействительным в контексте другого документа.

Возвращает:
префикс этого QName

equals

public final boolean equals(Object objectToTest)

Проверить равенство этого QName с другим Object.

Если объект, который нужно проверить, не является QName или равен null, то этот метод возвращает false.

Два QName считаются равными тогда и только тогда, когда URI пространства имён и локальная часть равны. Этот метод использует String.equals() для проверки равенства URI пространства имён и локальной части. Префикс не используется для определения равенства.

Этот метод удовлетворяет общему контракту Object.equals(Object)

Переопределяет:
equals в классе Object
Параметры:
objectToTest - объект Object для проверки равенства с этим QName
Возвращает:
true если данный объект равен этому QName, иначе false
См. также:
  • Object.hashCode()
  • HashMap

hashCode

public final int hashCode()

Генерировать хэш-код для этого QName.

Хэш-код рассчитывается с использованием URI пространства имён и локальной части QName . Префикс не используется для расчёта хэш-кода.

Этот метод удовлетворяет общему контракту Object.hashCode().

Переопределяет:
hashCode в классе Object
Возвращает:
хэш-код для этого QName Object
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

toString

public String toString()

String представление этого QName.

Обычно принятое представление QName в виде String было определено Джеймсом Кларком. Хотя это не стандартная спецификация, она широко используется, например, Transformer.setParameter(String name, Object value). Это реализация представляет QName как: "{" + URI пространства имён + "}" + локальная часть. Если URI пространства имён .equals(XMLConstants.NULL_NS_URI), возвращается только локальная часть. Подходящее использование этого метода — отладка или ведение журнала для человека.

Обратите внимание, что значение префикса не возвращается как часть представления String.

Этот метод удовлетворяет общему контракту Object.toString().

Переопределяет:
toString в классе Object
Возвращает:
String представление этого QName

valueOf

public static QName valueOf(String qNameAsString)

QName полученного из парсинга форматированной String.

Если String пустая или не соответствует формату QName.toString(), будет брошено исключение IllegalArgumentException.

Формат String ДОЛЖЕН совпадать с формой, возвращаемой методом QName.toString().

Общепринятый способ представления QName в виде String был определён Джеймсом Кларком. Хотя это не стандартный спецификация, он широко используется, например, в Transformer.setParameter(String name, Object value). Эта реализация анализирует String в формате: "{" + URI пространства имён + "}" + локальная часть. Если URI пространства имён .equals(XMLConstants.NULL_NS_URI), нужно указать только локальную часть.

Значение префикса НЕЛЬЗЯ представить в String и будет установлено в значение XMLConstants.DEFAULT_NS_PREFIX.

Этот метод не выполняет полную валидацию полученного QName.

URI пространства имён не валидируется как ссылка URI. Локальная часть не валидируется как NCName согласно спецификации Пространства имён в XML.

Parameters:
qNameAsString - String представление QName
Returns:
QName соответствующее данному String
Throws:
IllegalArgumentException - Когда qNameAsString пустое или некорректное
See Also:
  • QName.toString()

© 1993, 2021, 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/17/docs/api/java.xml/javax/xml/namespace/QName.html

Spec-Zone.ru

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