net.sf.saxon.evpull

## Interface EventIterator

- All Superinterfaces:
    PullEvent
  All Known Implementing Classes:
    BlockEventIterator, BracketedDocumentIterator, BracketedElementIterator, ComplexContentProcessor, Decomposer, EmptyEventIterator, EventAnnotationStripper, EventIteratorOverSequence, EventMappingIterator, EventStackIterator, NamespaceMaintainer, PullEventTracer, SingletonEventIterator, StaxToEventBridge, TinyTreeEventIterator, TracingEventIterator

      public interface EventIterator
      extends PullEvent

  An iterator over a sequence of events

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `isFlatSequence()` Determine whether the EventIterator returns a flat sequence of events, or whether it can return nested event iterators
    `PullEvent` | `next()` Get the next event in the sequence

- - ### Method Detail

    - #### next

          PullEvent next()
                         throws XPathException

      Get the next event in the sequence
      Returns:
        the next event, or null when the sequence is exhausted. Note that since an EventIterator is itself a PullEvent, this method may return a nested iterator.
      Throws:
        `XPathException` - if a dynamic evaluation error occurs

    - #### isFlatSequence

          boolean isFlatSequence()

      Determine whether the EventIterator returns a flat sequence of events, or whether it can return nested event iterators
      Returns:
        true if the next() method is guaranteed never to return an EventIterator

Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.