Интерфейс DTDHandler
- Все известные подинтерфейсы:
TransformerHandler
- Все известные реализующие классы:
-
DefaultHandler,DefaultHandler2,HandlerBase,XMLFilterImpl
public interface DTDHandler
Если приложению SAX необходима информация о нотациях и необработанных сущностях, то приложение реализует этот интерфейс и регистрирует экземпляр с помощью метода парсера setDTDHandler. Парсер использует экземпляр для сообщения приложению о объявлениях нотаций и необработанных сущностей.
Обратите внимание, что этот интерфейс включает только те события DTD, которые рекомендации XML требуют от процессоров сообщать: объявления нотаций и необработанных сущностей.
Парсер SAX может сообщать об этих событиях в любом порядке, независимо от порядка объявления нотаций и необработанных сущностей; однако все события DTD должны быть сообщены после события startDocument обработчика документа и перед первым событием startElement. (Если используется LexicalHandler, эти события также должны быть сообщены перед событием endDTD.)
Приложение должно хранить информацию для дальнейшего использования (возможно, в хеш-таблице или дереве объектов). Если приложение встречает атрибуты типа "NOTATION", "ENTITY" или "ENTITIES", оно может использовать информацию, полученную через этот интерфейс, для поиска сущности и/или нотации, соответствующей значению атрибута.
- С момента:
- 1.4, SAX 1.0
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
notationDecl |
Получение уведомления о событии объявления нотации.
|
void |
unparsedEntityDecl |
Получение уведомления о событии объявления необработанной сущности.
|
Подробное описание методов
notationDecl
void notationDecl(String name, String publicId, String systemId) throws SAXException
Приложение должно записывать нотацию для дальнейшего использования при необходимости; нотации могут появляться как значения атрибутов и в объявлениях необработанных сущностей, и иногда используются с именами целевых инструкций обработки.
По крайней мере, publicId или systemId должны быть не null. Если присутствует идентификатор системы и это URL, парсер SAX должен полностью разрешить его, прежде чем передать его приложению через это событие.
Нет гарантии, что объявление нотации будет сообщено до любых необработанных сущностей, которые ее используют.
- Параметры:
-
name- Имя нотации. -
publicId- Открытый идентификатор нотации, или null, если он не был задан. -
systemId- Системный идентификатор нотации, или null, если он не был задан. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
unparsedEntityDecl
void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException
Обратите внимание, что имя нотации соответствует нотации, сообщенной событием notationDecl. Приложение должно записывать сущность для дальнейшего использования при необходимости; необработанные сущности могут появляться как значения атрибутов.
Если идентификатор системы является URL, парсер должен полностью разрешить его, прежде чем передавать его приложению.
- Параметры:
-
name- Имя необработанной сущности. -
publicId- Открытый идентификатор сущности, или null, если он не был задан. -
systemId- Системный идентификатор сущности. -
notationName- Имя связанной нотации. - Исключения:
-
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение. - См. также:
© 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://download.java.net/java/early_access/jdk24/docs/api/java.xml/org/xml/sax/DTDHandler.html