Module java.xml
Package org.w3c.dom

# Interface ElementTraversal

public interface ElementTraversal
The `ElementTraversal` interface is a set of read-only attributes which allow an author to easily navigate between elements in a document.

In conforming implementations of Element Traversal, all objects that implement `Element` must also implement the `ElementTraversal` interface. Four of the methods, `getFirstElementChild()`, `getLastElementChild()`, `getPreviousElementSibling()`, and `getNextElementSibling()`, each provides a live reference to another element with the defined relationship to the current element, if the related element exists. The fifth method, `getChildElementCount()`, exposes the number of child elements of an element, for preprocessing before navigation.

Since:
  9
See Also:
  - Element Traversal Specification

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `getChildElementCount()`
  Returns the current number of child nodes of the element which are of the `Element` type.
  `Element`
  `getFirstElementChild()`
  Returns a reference to the first child node of the element which is of the `Element` type.
  `Element`
  `getLastElementChild()`
  Returns a reference to the last child node of the element which is of the `Element` type.
  `Element`
  `getNextElementSibling()`
  Returns a reference to the sibling node of the element which most immediately follows the element in document order, and which is of the `Element` type.
  `Element`
  `getPreviousElementSibling()`
  Returns a reference to the sibling node of the element which most immediately precedes the element in document order, and which is of the `Element` type.

- ## Method Details

  - ### getFirstElementChild

    Element getFirstElementChild()
    Returns a reference to the first child node of the element which is of the `Element` type.
    Returns:
      a reference to an element child, `null` if the element has no child of the `Element` type.

  - ### getLastElementChild

    Element getLastElementChild()
    Returns a reference to the last child node of the element which is of the `Element` type.
    Returns:
      a reference to an element child, `null` if the element has no child of the `Element` type.

  - ### getPreviousElementSibling

    Element getPreviousElementSibling()
    Returns a reference to the sibling node of the element which most immediately precedes the element in document order, and which is of the `Element` type.
    Returns:
      a reference to an element child, `null` if the element has no sibling node of the `Element` type that comes before this one.

  - ### getNextElementSibling

    Element getNextElementSibling()
    Returns a reference to the sibling node of the element which most immediately follows the element in document order, and which is of the `Element` type.
    Returns:
      a reference to an element child, `null` if the element has no sibling node of the `Element` type that comes after this one.

  - ### getChildElementCount

    int getChildElementCount()
    Returns the current number of child nodes of the element which are of the `Element` type.
    Returns:
      the number of element children, or `0` if the element has no element children.