com.icl.saxon.expr

Class DistinctEnumeration

Implemented Interfaces:
NodeEnumeration

public class DistinctEnumeration
extends java.lang.Object
implements NodeEnumeration

An enumeration returning the distinct nodes from a supplied nodeset

Nested Class Summary

Constructor Summary

DistinctEnumeration(Context c, NodeEnumeration p1, Expression exp)
DistinctEnumeration(NodeEnumeration p1, Controller controller)
Form an enumeration of the distinct nodes in a node-set, distinguishing nodes by their string-value

Method Summary

boolean
hasMoreElements()
Determine whether there are more nodes to come.
boolean
isPeer()
Determine whether the nodes returned by this enumeration are known to be peers, that is, no node is a descendant or ancestor of another node.
boolean
isReverseSorted()
Determine whether the nodes returned by this enumeration are known to be in reverse document order.
boolean
isSorted()
Determine whether the nodes returned by this enumeration are known to be in document order
NodeInfo
nextElement()
Get the next node in sequence.

Constructor Details

DistinctEnumeration

public DistinctEnumeration(Context c,
                           NodeEnumeration p1,
                           Expression exp)
            throws XPathException


DistinctEnumeration

public DistinctEnumeration(NodeEnumeration p1,
                           Controller controller)
            throws XPathException
Form an enumeration of the distinct nodes in a node-set, distinguishing nodes by their string-value

Method Details

hasMoreElements

public boolean hasMoreElements()
Determine whether there are more nodes to come.
(Note the term "Element" is used here in the sense of the standard Java Enumeration class, it has nothing to do with XML elements).
Specified by:
hasMoreElements in interface NodeEnumeration

Returns:
true if there are more nodes


isPeer

public boolean isPeer()
Determine whether the nodes returned by this enumeration are known to be peers, that is, no node is a descendant or ancestor of another node. This significance of this property is that if a peer enumeration is applied to each node in a set derived from another peer enumeration, and if both enumerations are sorted, then the result is also sorted.
Specified by:
isPeer in interface NodeEnumeration


isReverseSorted

public boolean isReverseSorted()
Determine whether the nodes returned by this enumeration are known to be in reverse document order.
Specified by:
isReverseSorted in interface NodeEnumeration

Returns:
true if the nodes are guaranteed to be in document order.


isSorted

public boolean isSorted()
Determine whether the nodes returned by this enumeration are known to be in document order
Specified by:
isSorted in interface NodeEnumeration

Returns:
true if the nodes are guaranteed to be in document order.


nextElement

public NodeInfo nextElement()
            throws XPathException
Get the next node in sequence.
(Note the term "Element" is used here in the sense of the standard Java Enumeration class, it has nothing to do with XML elements).
Specified by:
nextElement in interface NodeEnumeration

Returns:
the next NodeInfo