Package com.icl.saxon.expr
Class DifferenceEnumeration
- java.lang.Object
-
- com.icl.saxon.expr.DifferenceEnumeration
-
- All Implemented Interfaces:
NodeEnumeration
public class DifferenceEnumeration extends java.lang.Object implements NodeEnumeration
An enumeration representing a nodeset that is an intersection of two other NodeSets. There is currently no operator in XPath to create such an expression, but it is used by the extension function difference(). The code is derived from the analagous UnionEnumeration, an inner class of UnionExpression.
-
-
Constructor Summary
Constructors Constructor Description DifferenceEnumeration(NodeEnumeration p1, NodeEnumeration p2, Controller controller)
Form an enumeration of the difference of two nodesets, that is, the nodes that are in p1 and that are not in p2.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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 orderNodeInfo
nextElement()
Get the next node in sequence.
-
-
-
Field Detail
-
nextNode
NodeInfo nextNode
-
-
Constructor Detail
-
DifferenceEnumeration
public DifferenceEnumeration(NodeEnumeration p1, NodeEnumeration p2, Controller controller) throws XPathException
Form an enumeration of the difference of two nodesets, that is, the nodes that are in p1 and that are not in p2.- Parameters:
p1
- the first operandp2
- the second operandcomparer
- the comparer- Throws:
XPathException
-
-
Method Detail
-
hasMoreElements
public boolean hasMoreElements()
Description copied from interface:NodeEnumeration
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 interfaceNodeEnumeration
- Returns:
- true if there are more nodes
-
nextElement
public NodeInfo nextElement() throws XPathException
Description copied from interface:NodeEnumeration
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 interfaceNodeEnumeration
- Returns:
- the next NodeInfo
- Throws:
XPathException
-
isSorted
public boolean isSorted()
Description copied from interface:NodeEnumeration
Determine whether the nodes returned by this enumeration are known to be in document order- Specified by:
isSorted
in interfaceNodeEnumeration
- Returns:
- true if the nodes are guaranteed to be in document order.
-
isReverseSorted
public boolean isReverseSorted()
Description copied from interface:NodeEnumeration
Determine whether the nodes returned by this enumeration are known to be in reverse document order.- Specified by:
isReverseSorted
in interfaceNodeEnumeration
- Returns:
- true if the nodes are guaranteed to be in document order.
-
isPeer
public boolean isPeer()
Description copied from interface:NodeEnumeration
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 interfaceNodeEnumeration
-
-