# Interface StartDocument

All Superinterfaces:
  `XMLEvent, XMLStreamConstants`

public interface StartDocument extends XMLEvent
An interface for the start document event

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
  `boolean`
  `encodingSet()`
  Returns true if CharacterEncodingScheme is set in the encoding declaration of the document
  `String`
  `getCharacterEncodingScheme()`
  Returns the encoding style of the XML data
  `String`
  `getSystemId()`
  Returns the system ID of the XML data
  `String`
  `getVersion()`
  Returns the version of XML of this XML stream
  `boolean`
  `isStandalone()`
  Returns if this XML is standalone
  `boolean`
  `standaloneSet()`
  Returns true if the standalone attribute is set in the encoding declaration of the document.

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

  - ### getSystemId

    String getSystemId()
    Returns the system ID of the XML data
    Returns:
      the system ID, defaults to ""

  - ### getCharacterEncodingScheme

    String getCharacterEncodingScheme()
    Returns the encoding style of the XML data
    Returns:
      the character encoding, defaults to "UTF-8"

  - ### encodingSet

    boolean encodingSet()
    Returns true if CharacterEncodingScheme is set in the encoding declaration of the document
    Returns:
      true if `CharacterEncodingScheme` is set, false otherwise

  - ### isStandalone

    boolean isStandalone()
    Returns if this XML is standalone
    Returns:
      the standalone state of XML, defaults to "no"

  - ### standaloneSet

    boolean standaloneSet()
    Returns true if the standalone attribute is set in the encoding declaration of the document.
    Returns:
      true if the standalone attribute is set, false otherwise

  - ### getVersion

    String getVersion()
    Returns the version of XML of this XML stream
    Returns:
      the version of XML, defaults to "1.0"