Класс TypeInfoProvider
public abstract class TypeInfoProvider extends Object
ValidatorHandler. Некоторые языки схем, такие как W3C XML Schema, рекомендуют валидатору сообщать «тип», который он назначает каждому атрибуту или элементу. Приложениям, которым необходимо получить доступ к этой информации о типах, можно вызывать методы, определённые в этом «интерфейсе», чтобы получить такую информацию.
Реализацию этого «интерфейса» можно получить с помощью метода ValidatorHandler.getTypeInfoProvider().
- Начиная с версии:
- 1.5
- См. также:
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор производного класса. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract TypeInfo |
getAttributeTypeInfo |
Возвращает неизменяемый объект TypeInfo для указанного атрибута текущего элемента. |
abstract TypeInfo |
getElementTypeInfo() |
Возвращает неизменяемый объект TypeInfo для текущего элемента. |
abstract boolean |
isIdAttribute |
Возвращает true, если указанный атрибут определён как ID. |
abstract boolean |
isSpecified |
Возвращает false, если атрибут был добавлен валидатором. |
Подробное описание конструкторов
TypeInfoProvider
protected TypeInfoProvider()
Конструктор ничего не делает.
Подробное описание методов
getElementTypeInfo
public abstract TypeInfo getElementTypeInfo()
Возвращает неизменяемый объект TypeInfo для текущего элемента.
Этот метод можно вызывать только во время события startElement или endElement объекта ContentHandler, который приложение задаёт для ValidatorHandler.
При выполнении проверки по W3C XML Schema, если элемент имеет объединённый тип, вызов getElementTypeInfo() во время события startElement вернёт TypeInfo, соответствующий объединённому типу. Вызов во время события endElement вернёт TypeInfo, соответствующий фактическому типу-члену, использованному для проверки элемента.
- Возвращает:
- Неизменяемый объект
TypeInfo, представляющий тип текущего элемента. Обратите внимание, что вызывающий код может хранить ссылки на полученный объектTypeInfoдольше, чем существует область действия обратного вызова. В противном случае этот метод возвращает null, если валидатор по какой-либо причине не может определить тип текущего элемента (например, если валидатор восстанавливается после предыдущей ошибки). - Вызывает исключение:
-
IllegalStateException— если этот метод вызван из других методовContentHandler.
getAttributeTypeInfo
public abstract TypeInfo getAttributeTypeInfo(int index)
TypeInfo для указанного атрибута текущего элемента. Этот метод можно вызывать только во время события startElement объекта ContentHandler, который приложение задаёт для ValidatorHandler.
- Параметры:
-
index— индекс атрибута. Тот же индекс в объектеAttributes, переданном в обратный вызовstartElement. - Возвращает:
- Неизменяемый объект
TypeInfo, представляющий тип указанного атрибута. Обратите внимание, что вызывающий код может хранить ссылки на полученный объектTypeInfoдольше, чем существует область действия обратного вызова. В противном случае этот метод возвращает null, если валидатор не может определить тип. - Вызывает исключение:
-
IndexOutOfBoundsException— если индекс недопустим. -
IllegalStateException— если этот метод вызван из других методовContentHandler.
isIdAttribute
public abstract boolean isIdAttribute(int index)
true, если указанный атрибут определён как ID. Способ определения атрибута как ID зависит от языка схем. В случае W3C XML Schema это означает, что фактический тип атрибута — встроенный тип ID или производный от него тип.
DocumentBuilder использует эту информацию для корректной реализации метода Attr.isId().
Этот метод можно вызывать только во время события startElement объекта ContentHandler, который приложение задаёт для ValidatorHandler.
- Параметры:
-
index— индекс атрибута. Тот же индекс в объектеAttributes, переданном в обратный вызовstartElement. - Возвращает:
- true, если тип указанного атрибута — ID.
- Вызывает исключение:
-
IndexOutOfBoundsException— если индекс недопустим. -
IllegalStateException— если этот метод вызван из других методовContentHandler.
isSpecified
public abstract boolean isSpecified(int index)
false, если атрибут был добавлен валидатором. Этот метод предоставляет информацию, необходимую DocumentBuilder для определения того, что дерево DOM должно возвращать из метода Attr.getSpecified().
Этот метод можно вызывать только во время события startElement объекта ContentHandler, который приложение задаёт для ValidatorHandler.
Общее руководство для валидаторов: возвращать true, если атрибут изначально присутствовал в конвейере, и false, если он был добавлен валидатором.
- Параметры:
-
index— индекс атрибута. Тот же индекс в объектеAttributes, переданном в обратный вызовstartElement. - Возвращает:
-
true, если атрибут присутствовал до обработки входных данных валидатором.false, если атрибут был добавлен валидатором. - Вызывает исключение:
-
IndexOutOfBoundsException— если индекс недопустим. -
IllegalStateException— если этот метод вызван из других методовContentHandler.
© 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/validation/TypeInfoProvider.html