Module java.xml
Package javax.xml.stream.events

# Interface StartElement

All Superinterfaces:
  `XMLEvent`, `XMLStreamConstants`

public interface StartElement extends XMLEvent
The StartElement interface provides access to information about start elements. A StartElement is reported for each Start Tag in the document.

Since:
  1.6

- ## Field Summary

  ### Fields declared in interface javax.xml.stream.XMLStreamConstants

  `ATTRIBUTE, CDATA, CHARACTERS, COMMENT, DTD, END_DOCUMENT, END_ELEMENT, ENTITY_DECLARATION, ENTITY_REFERENCE, NAMESPACE, NOTATION_DECLARATION, PROCESSING_INSTRUCTION, SPACE, START_DOCUMENT, START_ELEMENT`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Attribute`
  `getAttributeByName(QName name)`
  Returns the attribute referred to by the qname.
  `Iterator<Attribute>`
  `getAttributes()`
  Returns an Iterator of non-namespace attributes declared on this START_ELEMENT.
  `QName`
  `getName()`
  Get the name of this event
  `NamespaceContext`
  `getNamespaceContext()`
  Gets a read-only namespace context.
  `Iterator<Namespace>`
  `getNamespaces()`
  Returns an Iterator of namespaces declared on this element.
  `String`
  `getNamespaceURI(String prefix)`
  Gets the value that the prefix is bound to in the context of this element.

  ### Methods declared in interface javax.xml.stream.events.XMLEvent

  `asCharacters, asEndElement, asStartElement, getEventType, getLocation, getSchemaType, isAttribute, isCharacters, isEndDocument, isEndElement, isEntityReference, isNamespace, isProcessingInstruction, isStartDocument, isStartElement, writeAsEncodedUnicode`

- ## Method Details

  - ### getName

    QName getName()
    Get the name of this event
    Returns:
      the qualified name of this event

  - ### getAttributes

    Iterator<Attribute> getAttributes()
    Returns an Iterator of non-namespace attributes declared on this START_ELEMENT. Returns an empty iterator if there are no attributes. The iterator must contain only implementations of the `Attribute` interface. Attributes are fundamentally unordered and may be reported in any order.
    Returns:
      a readonly Iterator over Attribute interfaces, or an empty iterator

  - ### getNamespaces

    Iterator<Namespace> getNamespaces()
    Returns an Iterator of namespaces declared on this element. This Iterator does not contain previously declared namespaces unless they appear on the current START_ELEMENT. Therefore this list may contain redeclared namespaces and duplicate namespace declarations. Use the getNamespaceContext() method to get the current context of namespace declarations.

    The iterator must contain only implementations of the `Namespace` interface.

    A `Namespace` is an `Attribute`. One can iterate over a list of namespaces as a list of attributes. However this method returns only the list of namespaces declared on this START_ELEMENT and does not include the attributes declared on this START_ELEMENT. Returns an empty iterator if there are no namespaces.

    Returns:
      a readonly Iterator over Namespace interfaces, or an empty iterator

  - ### getAttributeByName

    Attribute getAttributeByName(QName name)
    Returns the attribute referred to by the qname.
    Parameters:
      `name` - the qname of the desired attribute
    Returns:
      the attribute corresponding to the name value or null

  - ### getNamespaceContext

    NamespaceContext getNamespaceContext()
    Gets a read-only namespace context. If no context is available this method will return an empty namespace context. The NamespaceContext contains information about all namespaces in scope for this StartElement.
    Returns:
      the current namespace context

  - ### getNamespaceURI

    String getNamespaceURI(String prefix)
    Gets the value that the prefix is bound to in the context of this element. Returns null if the prefix is not bound in this context
    Parameters:
      `prefix` - the prefix to lookup
    Returns:
      the uri bound to the prefix or null