Интерфейс DTDHandler
- Все известные подинтерфейсы:
TransformerHandler
- Все известные реализующие классы:
DefaultHandler,DefaultHandler2,HandlerBase,XMLFilterImpl
public interface DTDHandler
Получение уведомлений об основных событиях, связанных с DTD.
Этот модуль, как исходный код, так и документация, находится в общественном достоянии и не имеет ГАРАНТИЙ. Дополнительную информацию см. на сайте http://www.saxproject.org.
Если приложению SAX требуется информация о нотациях и необработанных сущностях, то приложение реализует этот интерфейс и регистрирует экземпляр с помощью метода парсера setDTDHandler. Парсер использует экземпляр для отчёта о объявлениях нотаций и необработанных сущностей приложению.
Обратите внимание, что этот интерфейс включает только те события DTD, которые требуются спецификацией XML для отчёта: объявления нотаций и необработанных сущностей.
SAX-парсер может сообщать об этих событиях в произвольном порядке, независимо от порядка, в котором нотации и необработанные сущности были объявлены; однако, все события DTD должны быть сообщены после события startDocument обработчика документов и перед первым событием startElement. (Если используется LexicalHandler, эти события также должны быть сообщены перед событием endDTD.)
Приложение должно хранить информацию для последующего использования (возможно, в хеш-таблице или объектной структуре). Если приложение сталкивается с атрибутами типа "NOTATION", "ENTITY" или "ENTITIES", оно может использовать полученную информацию через этот интерфейс для поиска сущности и/или нотации, соответствующей значению атрибута.
- С:
- 1.4, SAX 1.0
- См. также:
XMLReader.setDTDHandler(org.xml.sax.DTDHandler)
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | notationDecl(String name,
String publicId,
String systemId) | Получение уведомления о событии объявления нотации. |
void | unparsedEntityDecl(String name,
String publicId,
String systemId,
String notationName) | Получение уведомления о событии объявления необработанной сущности. |
Методы
notationDecl
void notationDecl(String name,
String publicId,
String systemId)
throws SAXExceptionПолучение уведомления о событии объявления нотации.
Приложение должно записать нотацию для последующего использования, если это необходимо; нотации могут появляться в качестве значений атрибутов и в объявлениях необработанных сущностей, и иногда используются с именами целей инструкций обработки.
По крайней мере, один из идентификаторов publicId и systemId должен быть не null. Если присутствует идентификатор system, и это URL, SAX-парсер должен полностью разрешить его перед передачей приложению через это событие.
Нет гарантии, что объявление нотации будет сообщено до любой необработанной сущности, которая её использует.
- Параметры:
name- Имя нотации.publicId- Открытый идентификатор нотации, или null, если не был задан.systemId- Системный идентификатор нотации, или null, если не был задан.- Исключения:
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение.- См. также:
unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String),Attributes
unparsedEntityDecl
void unparsedEntityDecl(String name,
String publicId,
String systemId,
String notationName)
throws SAXExceptionПолучение уведомления о событии объявления необработанной сущности.
Обратите внимание, что имя нотации соответствует нотации, о которой сообщалось событием notationDecl. Приложение должно записать сущность для последующего использования, если это необходимо; необработанные сущности могут появляться в качестве значений атрибутов.
Если системный идентификатор является URL, парсер должен полностью разрешить его перед передачей приложению.
- Параметры:
name- Имя необработанной сущности.publicId- Открытый идентификатор сущности, или null, если не был задан.systemId- Системный идентификатор сущности.notationName- Имя связанной нотации.- Исключения:
SAXException- Любое исключение SAX, возможно, обертывающее другое исключение.- См. также:
notationDecl(java.lang.String, java.lang.String, java.lang.String),Attributes
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.xml/org/xml/sax/DTDHandler.html