public class Projector extends ProxyReceiver
PathMap
to do document projection.
It acts as a push filter, passing through only those events that are necessary
to evaluate the expression that was used to generate the PathMap.nextReceiver
pipelineConfiguration, previousAtomic, systemId
Constructor and Description |
---|
Projector(PathMap.PathMapRoot pathMapRoot,
Receiver next)
Create a document projector
|
Modifier and Type | Method and Description |
---|---|
void |
characters(java.lang.CharSequence chars,
Location locationId,
int properties)
Character data
|
void |
comment(java.lang.CharSequence chars,
Location locationId,
int properties)
Output a comment
|
void |
endDocument()
Notify the end of a document node
|
void |
endElement()
End of element
|
void |
outputStatistics(java.io.PrintStream out)
Output statistics showing the effectiveness of filtering
|
void |
processingInstruction(java.lang.String target,
java.lang.CharSequence data,
Location locationId,
int properties)
Processing Instruction
|
void |
setPipelineConfiguration(PipelineConfiguration pipe)
Set the pipeline configuration
|
void |
startElement(NodeName elemName,
SchemaType type,
AttributeMap attributes,
NamespaceMap namespaces,
Location location,
int properties)
Notify the start of an element
|
append, close, getNamePool, getNextReceiver, open, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startDocument, usesTypeAnnotations
append, decompose, flatten, getConfiguration, getErrorCodeForDecomposingFunctionItems, getPipelineConfiguration, getSystemId, handlesAppend
public Projector(PathMap.PathMapRoot pathMapRoot, Receiver next)
pathMapRoot
- defines the paths within the document that need to be retainednext
- the next receiver in the pipelinepublic void setPipelineConfiguration(PipelineConfiguration pipe)
Receiver
setPipelineConfiguration
in interface Receiver
setPipelineConfiguration
in class ProxyReceiver
pipe
- the pipeline configurationpublic void startElement(NodeName elemName, SchemaType type, AttributeMap attributes, NamespaceMap namespaces, Location location, int properties) throws XPathException
ProxyReceiver
startElement
in interface Receiver
startElement
in class ProxyReceiver
elemName
- the name of the element.type
- the type annotation of the element.attributes
- the attributes of this elementnamespaces
- the in-scope namespaces of this element: generally this is all the in-scope
namespaces, without relying on inheriting namespaces from parent elementslocation
- an object providing information about the module, line, and column where the node originatedproperties
- bit-significant properties of the element node. If there are no relevant
properties, zero is supplied. The definitions of the bits are in class ReceiverOption
XPathException
- if an error occurspublic void characters(java.lang.CharSequence chars, Location locationId, int properties) throws XPathException
ProxyReceiver
characters
in interface Receiver
characters
in class ProxyReceiver
chars
- The characterslocationId
- provides information such as line number and system ID.properties
- Bit significant value. The following bits are defined:
XPathException
- if an error occurspublic void comment(java.lang.CharSequence chars, Location locationId, int properties) throws XPathException
ProxyReceiver
comment
in interface Receiver
comment
in class ProxyReceiver
chars
- The content of the commentlocationId
- provides information such as line number and system ID.properties
- Additional information about the comment.XPathException
- if an error occurspublic void processingInstruction(java.lang.String target, java.lang.CharSequence data, Location locationId, int properties) throws XPathException
ProxyReceiver
processingInstruction
in interface Receiver
processingInstruction
in class ProxyReceiver
target
- The PI name. This must be a legal name (it will not be checked).data
- The data portion of the processing instructionlocationId
- provides information such as line number and system ID.properties
- Additional information about the PI.XPathException
- if an error occurspublic void endElement() throws XPathException
ProxyReceiver
endElement
in interface Receiver
endElement
in class ProxyReceiver
XPathException
- if an error occurspublic void endDocument() throws XPathException
ProxyReceiver
endDocument
in interface Receiver
endDocument
in class ProxyReceiver
XPathException
- if an error occurspublic void outputStatistics(java.io.PrintStream out)
out
- the output destinationCopyright (c) 2004-2020 Saxonica Limited. All rights reserved.