public class CardinalityCheckingFeed extends ItemFeed
This class handles two kinds of expression: a cardinality checker (which is generally implementing the dynamic type check required by the function conversion rules), and the "TreatFn" functions (exactly-one, zero-or-one, one-or-more) which perform a similar function but have slightly different failure semantics.
Constructor and Description |
---|
CardinalityCheckingFeed(Expression checker,
Feed result,
XPathContext context) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Signal the end of the sequence of items
|
void |
endSelectedParentNode(Location locationId)
Signal that the endElement event has occurred for the element whose startElement
event caused the Watch to be activated.
|
SequenceReceiver |
getReceiver()
Get a receiver to which start and end events for documents and elements can be
written.
|
void |
processItem(Item item)
Supply an item to the feed
|
Receiver |
startSelectedParentNode(FleetingParentNode node,
Location locationId)
Signal that an element or document node has been found that matches the selection that this
Watch is looking for.
|
dynamicError, getContext, getExpression, getPipelineConfiguration, getResult, getTerminator, hasFailed, open, processItems, setExpression, setHasFailed, setPipelineConfiguration, setTerminator
public CardinalityCheckingFeed(Expression checker, Feed result, XPathContext context)
public Receiver startSelectedParentNode(FleetingParentNode node, Location locationId) throws XPathException
ItemFeed
startSelectedParentNode
in interface Feed
startSelectedParentNode
in class ItemFeed
node
- the element or document node whose start event has been matchedlocationId
- the location associated with the element or document node (may be
the location of the instruction that created it)XPathException
- May be raised if a dynamic error occurspublic void endSelectedParentNode(Location locationId) throws XPathException
ItemFeed
endSelectedParentNode
in interface Feed
endSelectedParentNode
in class ItemFeed
locationId
- the location of the elementXPathException
- May be raised if a constraint implemented by this
Watch is violatedpublic void processItem(Item item) throws XPathException
processItem
in interface Feed
processItem
in class ItemFeed
item
- the item being fedXPathException
- to report any failurepublic void close() throws XPathException
close
in interface Feed
close
in class ItemFeed
XPathException
- to report any failurepublic SequenceReceiver getReceiver()
ItemFeed
getReceiver
in interface Feed
getReceiver
in class ItemFeed
Copyright (c) 2004-2018 Saxonica Limited. All rights reserved.