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
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING
Constructor and Description |
---|
Projector(PathMap.PathMapRoot pathMapRoot,
Receiver next)
Create a document projector
|
Modifier and Type | Method and Description |
---|---|
void |
attribute(NodeName nameCode,
SimpleType typeCode,
CharSequence value,
int locationId,
int properties)
Notify an attribute.
|
void |
characters(CharSequence chars,
int locationId,
int properties)
Character data
|
void |
comment(CharSequence chars,
int locationId,
int properties)
Output a comment
|
void |
endDocument()
Notify the end of a document node
|
void |
endElement()
End of element
|
void |
namespace(NamespaceBinding namespaceBinding,
int properties)
Notify a namespace.
|
void |
outputStatistics(PrintStream out)
Output statistics showing the effectiveness of filtering
|
void |
processingInstruction(String target,
CharSequence data,
int locationId,
int properties)
Processing Instruction
|
void |
setPipelineConfiguration(PipelineConfiguration pipe)
Set the pipeline configuration
|
void |
startElement(NodeName elemName,
SchemaType typeCode,
int locationId,
int properties)
Notify the start of an element
|
append, close, getNamePool, getUnderlyingReceiver, open, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startContent, startDocument, usesTypeAnnotations
append, getConfiguration, getPipelineConfiguration, getSystemId
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 typeCode, int locationId, int properties) throws XPathException
ProxyReceiver
startElement
in interface Receiver
startElement
in class ProxyReceiver
elemName
- integer code identifying the name of the element within the name pool.typeCode
- integer code identifying the element's type within the name pool.locationId
- an integer which can be interpreted using a LocationProvider
to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.properties
- properties of the element nodeXPathException
- if an error occurspublic void attribute(NodeName nameCode, SimpleType typeCode, CharSequence value, int locationId, int properties) throws XPathException
ProxyReceiver
attribute
in interface Receiver
attribute
in class ProxyReceiver
nameCode
- The name of the attribute, as held in the name pooltypeCode
- The type of the attribute, as held in the name poolvalue
- the string value of the attributelocationId
- an integer which can be interpreted using a LocationProvider
to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.properties
- Bit significant value. The following bits are defined:
XPathException
- if an error occurspublic void namespace(NamespaceBinding namespaceBinding, int properties) throws XPathException
ProxyReceiver
namespace
in interface Receiver
namespace
in class ProxyReceiver
namespaceBinding
- the prefix/uri pair representing the namespace bindingproperties
- any special properties to be passed on this callXPathException
- if an error occurspublic void characters(CharSequence chars, int locationId, int properties) throws XPathException
ProxyReceiver
characters
in interface Receiver
characters
in class ProxyReceiver
chars
- The characterslocationId
- an integer which can be interpreted using a LocationProvider
to return information such as line number and system ID. If no location information is available,
the value zero is supplied.properties
- Bit significant value. The following bits are defined:
XPathException
- if an error occurspublic void comment(CharSequence chars, int locationId, int properties) throws XPathException
ProxyReceiver
comment
in interface Receiver
comment
in class ProxyReceiver
chars
- The content of the commentlocationId
- an integer which can be interpreted using a LocationProvider
to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.properties
- Additional information about the comment.XPathException
- if an error occurspublic void processingInstruction(String target, CharSequence data, int 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
- an integer which can be interpreted using a LocationProvider
to return
information such as line number and system ID. If no location information is available,
the value zero is supplied.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(PrintStream out)
out
- the output destinationCopyright (c) 2004-2013 Saxonica Limited. All rights reserved.