org.xml.sax
Interface DTDHandler

All Known Subinterfaces:
TransformerHandler sample code for javax.xml.transform.sax.TransformerHandler definition code for javax.xml.transform.sax.TransformerHandler
All Known Implementing Classes:
DefaultHandler sample code for org.xml.sax.helpers.DefaultHandler definition code for org.xml.sax.helpers.DefaultHandler , DefaultHandler2 sample code for org.xml.sax.ext.DefaultHandler2 definition code for org.xml.sax.ext.DefaultHandler2 , HandlerBase sample code for org.xml.sax.HandlerBase definition code for org.xml.sax.HandlerBase , XMLFilterImpl sample code for org.xml.sax.helpers.XMLFilterImpl definition code for org.xml.sax.helpers.XMLFilterImpl

public interface DTDHandler

Receive notification of basic DTD-related events.

This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.

If a SAX application needs information about notations and unparsed entities, then the application implements this interface and registers an instance with the SAX parser using the parser's setDTDHandler method. The parser uses the instance to report notation and unparsed entity declarations to the application.

Note that this interface includes only those DTD events that the XML recommendation requires processors to report: notation and unparsed entity declarations.

The SAX parser may report these events in any order, regardless of the order in which the notations and unparsed entities were declared; however, all DTD events must be reported after the document handler's startDocument event, and before the first startElement event. (If the LexicalHandler sample code for org.xml.sax.ext.LexicalHandler definition code for org.xml.sax.ext.LexicalHandler is used, these events must also be reported before the endDTD event.)

It is up to the application to store the information for future use (perhaps in a hash table or object tree). If the application encounters attributes of type "NOTATION", "ENTITY", or "ENTITIES", it can use the information that it obtained through this interface to find the entity and/or notation corresponding with the attribute value.

Since:
SAX 1.0
See Also:
XMLReader.setDTDHandler(org.xml.sax.DTDHandler) sample code for org.xml.sax.XMLReader.setDTDHandler(org.xml.sax.DTDHandler) definition code for org.xml.sax.XMLReader.setDTDHandler(org.xml.sax.DTDHandler)

Method Summary
 void notationDecl sample code for org.xml.sax.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String) definition code for org.xml.sax.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String) (String sample code for java.lang.String definition code for java.lang.String  name, String sample code for java.lang.String definition code for java.lang.String  publicId, String sample code for java.lang.String definition code for java.lang.String  systemId)
          Receive notification of a notation declaration event.
 void unparsedEntityDecl sample code for org.xml.sax.DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String) definition code for org.xml.sax.DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String) (String sample code for java.lang.String definition code for java.lang.String  name, String sample code for java.lang.String definition code for java.lang.String  publicId, String sample code for java.lang.String definition code for java.lang.String  systemId, String sample code for java.lang.String definition code for java.lang.String  notationName)
          Receive notification of an unparsed entity declaration event.
 

Method Detail

notationDecl sample code for org.xml.sax.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String) definition code for org.xml.sax.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)

void notationDecl(String sample code for java.lang.String definition code for java.lang.String  name,
                  String sample code for java.lang.String definition code for java.lang.String  publicId,
                  String sample code for java.lang.String definition code for java.lang.String  systemId)
                  throws SAXException sample code for org.xml.sax.SAXException definition code for org.xml.sax.SAXException 
Receive notification of a notation declaration event.

It is up to the application to record the notation for later reference, if necessary; notations may appear as attribute values and in unparsed entity declarations, and are sometime used with processing instruction target names.

At least one of publicId and systemId must be non-null. If a system identifier is present, and it is a URL, the SAX parser must resolve it fully before passing it to the application through this event.

There is no guarantee that the notation declaration will be reported before any unparsed entities that use it.

Parameters:
name - The notation name.
publicId - The notation's public identifier, or null if none was given.
systemId - The notation's system identifier, or null if none was given.
Throws:
SAXException sample code for org.xml.sax.SAXException definition code for org.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.
See Also:
unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String) sample code for org.xml.sax.DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String) definition code for org.xml.sax.DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String) , Attributes sample code for org.xml.sax.Attributes definition code for org.xml.sax.Attributes

unparsedEntityDecl sample code for org.xml.sax.DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String) definition code for org.xml.sax.DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)

void unparsedEntityDecl(String sample code for java.lang.String definition code for java.lang.String  name,
                        String sample code for java.lang.String definition code for java.lang.String  publicId,
                        String sample code for java.lang.String definition code for java.lang.String  systemId,
                        String sample code for java.lang.String definition code for java.lang.String  notationName)
                        throws SAXException sample code for org.xml.sax.SAXException definition code for org.xml.sax.SAXException 
Receive notification of an unparsed entity declaration event.

Note that the notation name corresponds to a notation reported by the notationDecl sample code for org.xml.sax.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String) definition code for org.xml.sax.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String) event. It is up to the application to record the entity for later reference, if necessary; unparsed entities may appear as attribute values.

If the system identifier is a URL, the parser must resolve it fully before passing it to the application.

Parameters:
name - The unparsed entity's name.
publicId - The entity's public identifier, or null if none was given.
systemId - The entity's system identifier.
notationName - The name of the associated notation.
Throws:
SAXException sample code for org.xml.sax.SAXException definition code for org.xml.sax.SAXException - Any SAX exception, possibly wrapping another exception.
See Also:
notationDecl(java.lang.String, java.lang.String, java.lang.String) sample code for org.xml.sax.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String) definition code for org.xml.sax.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String) , Attributes sample code for org.xml.sax.Attributes definition code for org.xml.sax.Attributes