Package net.sf.saxon.evpull
Class BracketedElementIterator
java.lang.Object
net.sf.saxon.evpull.BracketedElementIterator
- All Implemented Interfaces:
EventIterator
,PullEvent
The class is an EventIterator that handles the events arising from an element constructor:
that is, the start/end event pair for the element node, bracketing a sequence of events for the
content of the element.
This class does not normalize the content (for example by merging adjacent text nodes). That is the job
of the ComplexContentProcessor
.
The event stream consumed by a BracketedElementIterator may contain freestanding attribute and namespace nodes. The event stream delivered by a BracketedElementIterator, however, packages all attributes and namespaces as part of the startElement event.
-
Constructor Summary
ConstructorsConstructorDescriptionBracketedElementIterator
(StartElementEvent start, EventIterator content, EndElementEvent end) Constructor -
Method Summary
Modifier and TypeMethodDescriptionboolean
Determine whether the EventIterator returns a flat sequence of events, or whether it can return nested event iteratorsnext()
Get the next event in the sequence
-
Constructor Details
-
BracketedElementIterator
public BracketedElementIterator(StartElementEvent start, EventIterator content, EndElementEvent end) Constructor- Parameters:
start
- the StartElementEvent objectcontent
- iterator that delivers the content of the elementend
- the EndElementEvent object
-
-
Method Details
-
next
Get the next event in the sequence- Specified by:
next
in interfaceEventIterator
- Returns:
- the next event, or null when the sequence is exhausted
- Throws:
XPathException
- if a dynamic evaluation error occurs
-
isFlatSequence
public boolean isFlatSequence()Determine whether the EventIterator returns a flat sequence of events, or whether it can return nested event iterators- Specified by:
isFlatSequence
in interfaceEventIterator
- Returns:
- true if the next() method is guaranteed never to return an EventIterator
-