# Interface DTD

All Superinterfaces:
  `XMLEvent, XMLStreamConstants`

public interface DTD extends XMLEvent
This is the top level interface for events dealing with DTDs

Since:
  1.6

- ## Field Summary

  ### Fields declared in interface XMLStreamConstants

  `ATTRIBUTE, CDATA, CHARACTERS, COMMENT, DTD, END_DOCUMENT, END_ELEMENT, ENTITY_DECLARATION, ENTITY_REFERENCE, NAMESPACE, NOTATION_DECLARATION, PROCESSING_INSTRUCTION, SPACE, START_DOCUMENT, START_ELEMENT`
  Modifier and Type
  Field
  Description
  `static final int`
  `ATTRIBUTE`
  Indicates an event is an attribute
  `static final int`
  `CDATA`
  Indicates an event is a CDATA section
  `static final int`
  `CHARACTERS`
  Indicates an event is characters
  `static final int`
  `COMMENT`
  Indicates an event is a comment
  `static final int`
  `DTD`
  Indicates an event is a DTD
  `static final int`
  `END_DOCUMENT`
  Indicates an event is an end document
  `static final int`
  `END_ELEMENT`
  Indicates an event is an end element
  `static final int`
  `ENTITY_DECLARATION`
  Indicates a Entity Declaration
  `static final int`
  `ENTITY_REFERENCE`
  Indicates an event is an entity reference
  `static final int`
  `NAMESPACE`
  Indicates the event is a namespace declaration
  `static final int`
  `NOTATION_DECLARATION`
  Indicates a Notation
  `static final int`
  `PROCESSING_INSTRUCTION`
  Indicates an event is a processing instruction
  `static final int`
  `SPACE`
  The characters are white space (see [XML], 2.10 "White Space Handling").
  `static final int`
  `START_DOCUMENT`
  Indicates an event is a start document
  `static final int`
  `START_ELEMENT`
  Indicates an event is a start element

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getDocumentTypeDeclaration()`
  Returns the entire Document Type Declaration as a string, including the internal DTD subset.
  `List<EntityDeclaration>`
  `getEntities()`
  Return a List containing the general entities, both external and internal, declared in the DTD.
  `List<NotationDeclaration>`
  `getNotations()`
  Return a List containing the notations declared in the DTD.
  `Object`
  `getProcessedDTD()`
  Returns an implementation defined representation of the DTD.

  ### Methods declared in interface XMLEvent

  `asCharacters, asEndElement, asStartElement, getEventType, getLocation, getSchemaType, isAttribute, isCharacters, isEndDocument, isEndElement, isEntityReference, isNamespace, isProcessingInstruction, isStartDocument, isStartElement, writeAsEncodedUnicode`
  Modifier and Type
  Method
  Description
  `Characters`
  `asCharacters()`
  Returns this event as Characters, may result in a class cast exception if this event is not Characters.
  `EndElement`
  `asEndElement()`
  Returns this event as an end element event, may result in a class cast exception if this event is not a end element.
  `StartElement`
  `asStartElement()`
  Returns this event as a start element event, may result in a class cast exception if this event is not a start element.
  `int`
  `getEventType()`
  Returns an integer code for this event.
  `Location`
  `getLocation()`
  Return the location of this event.
  `QName`
  `getSchemaType()`
  This method is provided for implementations to provide optional type information about the associated event.
  `boolean`
  `isAttribute()`
  A utility function to check if this event is an Attribute.
  `boolean`
  `isCharacters()`
  A utility function to check if this event is Characters.
  `boolean`
  `isEndDocument()`
  A utility function to check if this event is an EndDocument.
  `boolean`
  `isEndElement()`
  A utility function to check if this event is a EndElement.
  `boolean`
  `isEntityReference()`
  A utility function to check if this event is an EntityReference.
  `boolean`
  `isNamespace()`
  A utility function to check if this event is a Namespace.
  `boolean`
  `isProcessingInstruction()`
  A utility function to check if this event is a ProcessingInstruction.
  `boolean`
  `isStartDocument()`
  A utility function to check if this event is a StartDocument.
  `boolean`
  `isStartElement()`
  A utility function to check if this event is a StartElement.
  `void`
  `writeAsEncodedUnicode(Writer writer)`
  This method will write the XMLEvent as per the XML 1.0 specification as Unicode characters.

- ## Method Details

  - ### getDocumentTypeDeclaration

    String getDocumentTypeDeclaration()
    Returns the entire Document Type Declaration as a string, including the internal DTD subset. This may be null if there is not an internal subset. If it is not null it must return the entire Document Type Declaration which matches the doctypedecl production in the XML 1.0 specification
    Returns:
      the Document Type Declaration

  - ### getProcessedDTD

    Object getProcessedDTD()
    Returns an implementation defined representation of the DTD. This method may return null if no representation is available.
    Returns:
      the representation of the DTD

  - ### getNotations

    List<NotationDeclaration> getNotations()
    Return a List containing the notations declared in the DTD. This list must contain NotationDeclaration events.
    Returns:
      an unordered list of NotationDeclaration events
    See Also:
      - `NotationDeclaration`

  - ### getEntities

    List<EntityDeclaration> getEntities()
    Return a List containing the general entities, both external and internal, declared in the DTD. This list must contain EntityDeclaration events.
    Returns:
      an unordered list of EntityDeclaration events
    See Also:
      - `EntityDeclaration`