Top Description Methods
org.xml.sax.ext

public Interface DeclHandler

Known Direct Subinterfaces
com.sun.org.apache.xalan.internal.xsltc.dom.ExtendedSAX, com.sun.org.apache.xml.internal.serializer.SerializationHandler
Known Direct Implementers
org.xml.sax.ext.DefaultHandler2, com.sun.org.apache.xalan.internal.xsltc.trax.TransformerHandlerImpl, com.sun.org.apache.xml.internal.dtm.ref.sax2dtm.SAX2DTM, com.sun.org.apache.xml.internal.serialize.BaseMarkupSerializer
Imports
org.xml.sax.SAXException

SAX2 extension handler for DTD declaration events.

This is an optional extension handler for SAX2 to provide more complete information about DTD declarations in an XML document. XML readers are not required to recognize this handler, and it is not part of core-only SAX2 distributions.

Note that data-related DTD declarations (unparsed entities and notations) are already reported through the DTDHandler interface.

If you are using the declaration handler together with a lexical handler, all of the events will occur between the startDTD and the endDTD events.

To set the DeclHandler for an XML reader, use the setProperty method with the property name http://xml.org/sax/properties/declaration-handler and an object implementing this interface (or null) as the value. If the reader does not report declaration events, it will throw a SAXNotRecognizedException when you attempt to register the handler.

Author
David Megginson
Since
1.4, SAX 2.0 (extensions 1.0)

Method Summary

Modifier and TypeMethod and Description
public void
attributeDecl(String
The name of the associated element.
eName
,
String
The name of the attribute.
aName
,
String
A string representing the attribute type.
type
,
String
A string representing the attribute defaulting mode ("#IMPLIED", "#REQUIRED", or "#FIXED") or null if none of these applies.
mode
,
String
A string representing the attribute's default value, or null if there is none.
value
)

Report an attribute type declaration.

public void
elementDecl(String
The element type name.
name
,
String
The content model as a normalized string.
model
)

Report an element type declaration.

public void
externalEntityDecl(String
The name of the entity. If it is a parameter entity, the name will begin with '%'.
name
,
String
The entity's public identifier, or null if none was given.
publicId
,
String
The entity's system identifier.
systemId
)

Report a parsed external entity declaration.

public void
internalEntityDecl(String
The name of the entity. If it is a parameter entity, the name will begin with '%'.
name
,
String
The replacement text of the entity.
value
)

Report an internal entity declaration.

Method Detail

attributeDeclback to summary
public void attributeDecl(String eName, String aName, String type, String mode, String value) throws SAXException

Report an attribute type declaration.

Only the effective (first) declaration for an attribute will be reported. The type will be one of the strings "CDATA", "ID", "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY", "ENTITIES", a parenthesized token group with the separator "|" and all whitespace removed, or the word "NOTATION" followed by a space followed by a parenthesized token group with all whitespace removed.

The value will be the value as reported to applications, appropriately normalized and with entity and character references expanded.

Parameters
eName:String

The name of the associated element.

aName:String

The name of the attribute.

type:String

A string representing the attribute type.

mode:String

A string representing the attribute defaulting mode ("#IMPLIED", "#REQUIRED", or "#FIXED") or null if none of these applies.

value:String

A string representing the attribute's default value, or null if there is none.

Exceptions
SAXException:
The application may raise an exception.
elementDeclback to summary
public void elementDecl(String name, String model) throws SAXException

Report an element type declaration.

The content model will consist of the string "EMPTY", the string "ANY", or a parenthesised group, optionally followed by an occurrence indicator. The model will be normalized so that all parameter entities are fully resolved and all whitespace is removed, and will include the enclosing parentheses. Other normalization (such as removing redundant parentheses or simplifying occurrence indicators) is at the discretion of the parser.

Parameters
name:String

The element type name.

model:String

The content model as a normalized string.

Exceptions
SAXException:
The application may raise an exception.
externalEntityDeclback to summary
public void externalEntityDecl(String name, String publicId, String systemId) throws SAXException

Report a parsed external entity declaration.

Only the effective (first) declaration for each entity will be reported.

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

Parameters
name:String

The name of the entity. If it is a parameter entity, the name will begin with '%'.

publicId:String

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

systemId:String

The entity's system identifier.

Exceptions
SAXException:
The application may raise an exception.
See Also
internalEntityDecl, org.xml.sax.DTDHandler#unparsedEntityDecl
internalEntityDeclback to summary
public void internalEntityDecl(String name, String value) throws SAXException

Report an internal entity declaration.

Only the effective (first) declaration for each entity will be reported. All parameter entities in the value will be expanded, but general entities will not.

Parameters
name:String

The name of the entity. If it is a parameter entity, the name will begin with '%'.

value:String

The replacement text of the entity.

Exceptions
SAXException:
The application may raise an exception.
See Also
externalEntityDecl, org.xml.sax.DTDHandler#unparsedEntityDecl