APIdia Launch Partner
Top Description Methods
jdk.internal.org.xml.sax

public Interface DTDHandler

Known Direct Implementers
jdk.internal.org.xml.sax.helpers.DefaultHandler

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 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.

Author
David Megginson
Since
SAX 1.0
See Also
org.xml.sax.XMLReader#setDTDHandler

Method Summary

Modifier and TypeMethod and Description
public void
notationDecl(String
The notation name.
name
,
String
The notation's public identifier, or null if none was given.
publicId
,
String
The notation's system identifier, or null if none was given.
systemId
)

Receive notification of a notation declaration event.

public default void
startDTD(String
The document type name.
name
,
String
The declared public identifier for the external DTD subset, or null if none was declared.
publicId
,
String
The declared system identifier for the external DTD subset, or null if none was declared. (Note that this is not resolved against the document base URI.)
systemId
)

Receive notification of the start of DTD declarations.

public default void
startInternalSub()

Receive notification of the start of DTD internal subset.

public void
unparsedEntityDecl(String
The unparsed entity's name.
name
,
String
The entity's public identifier, or null if none was given.
publicId
,
String
The entity's system identifier.
systemId
,
String
The name of the associated notation.
notationName
)

Receive notification of an unparsed entity declaration event.

Method Detail

notationDeclback to summary
public void notationDecl(String name, String publicId, String systemId) throws 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:String

The notation name.

publicId:String

The notation's public identifier, or null if none was given.

systemId:String

The notation's system identifier, or null if none was given.

Exceptions
SAXException:
Any SAX exception, possibly wrapping another exception.
See Also
unparsedEntityDecl, org.xml.sax.Attributes
startDTDback to summary
public default void startDTD(String name, String publicId, String systemId) throws SAXException

Receive notification of the start of DTD declarations. The start/endDTD events appear within the start/endDocument events from ContentHandler.

Parameters
name:String

The document type name.

publicId:String

The declared public identifier for the external DTD subset, or null if none was declared.

systemId:String

The declared system identifier for the external DTD subset, or null if none was declared. (Note that this is not resolved against the document base URI.)

Exceptions
SAXException:
the event receiver may throw an exception during processing
startInternalSubback to summary
public default void startInternalSub() throws SAXException

Receive notification of the start of DTD internal subset.

Exceptions
SAXException:
the event receiver may throw an exception during processing
unparsedEntityDeclback to summary
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException

Receive notification of an unparsed entity declaration event.

Note that the notation name corresponds to a notation reported by the notationDecl 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:String

The unparsed entity's name.

publicId:String

The entity's public identifier, or null if none was given.

systemId:String

The entity's system identifier.

notationName:String

The name of the associated notation.

Exceptions
SAXException:
Any SAX exception, possibly wrapping another exception.
See Also
notationDecl, org.xml.sax.Attributes