public abstract class SequenceNormalizer extends ProxyReceiver
There are two subclasses, which handle the different logic for the case where an
item-separator is provided, and the case where whitespace-separation is used.
Note that the whitespace case behaves differently from the case where the item-separator
is set to a single space.
Because this Receiver is often used as the entry point to the pipeline for a
Destination, it includes logic allowing onClose action for the
Destination to be triggered when the Receiver is closed.
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
inStartTag |
protected int |
level |
nextReceiverpipelineConfiguration, previousAtomic, systemId| Constructor and Description |
|---|
SequenceNormalizer(Receiver next) |
| Modifier and Type | Method and Description |
|---|---|
void |
attribute(NodeName name,
SimpleType typeCode,
java.lang.CharSequence value,
Location locationId,
int properties)
Notify an attribute.
|
void |
characters(java.lang.CharSequence chars,
Location locationId,
int properties)
Character data
|
void |
close()
End of output.
|
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 |
namespace(NamespaceBindingSet namespaceBindings,
int properties)
Notify a namespace.
|
void |
onClose(Action action) |
void |
onClose(java.util.List<Action> actionList)
Set actions to be performed when this
Receiver is closed |
void |
open()
Start of event stream
|
void |
processingInstruction(java.lang.String target,
java.lang.CharSequence data,
Location locationId,
int properties)
Processing Instruction
|
void |
startContent()
Notify the start of the content, that is, the completion of all attributes and namespaces.
|
void |
startDocument(int properties)
Start of a document node.
|
void |
startElement(NodeName elemName,
SchemaType typeCode,
Location location,
int properties)
Notify the start of an element
|
append, getNamePool, getNextReceiver, setPipelineConfiguration, setSystemId, setUnderlyingReceiver, setUnparsedEntity, usesTypeAnnotationsappend, decompose, flatten, getConfiguration, getErrorCodeForDecomposingFunctionItems, getPipelineConfiguration, getSystemId, handlesAppendpublic SequenceNormalizer(Receiver next)
public void open()
throws XPathException
open in interface Receiveropen in class ProxyReceiverXPathException - if an error occurspublic void startDocument(int properties)
throws XPathException
startDocument in interface ReceiverstartDocument in class ProxyReceiverproperties - bit-significant integer indicating properties of the document node.
The definitions of the bits are in class ReceiverOptionsXPathException - if an error occurspublic void endDocument()
throws XPathException
endDocument in interface ReceiverendDocument in class ProxyReceiverXPathException - if an error occurspublic void startElement(NodeName elemName, SchemaType typeCode, Location location, int properties) throws XPathException
startElement in interface ReceiverstartElement in class ProxyReceiverelemName - integer code identifying the name of the element within the name pool.typeCode - integer code identifying the element's type within the name pool.location - properties - properties of the element nodeXPathException - if an error occurspublic void attribute(NodeName name, SimpleType typeCode, java.lang.CharSequence value, Location locationId, int properties) throws XPathException
attribute in interface Receiverattribute in class ProxyReceivername - The name of the attributetypeCode - The type of the attributevalue - locationId - the location of the node in the source, or of the instruction that created itproperties - Bit significant value. The following bits are defined:
IllegalStateException: - attempt to output an attribute when there is no open elementXPathException - if an error occurspublic void namespace(NamespaceBindingSet namespaceBindings, int properties) throws XPathException
namespace in interface Receivernamespace in class ProxyReceivernamespaceBindings - the prefix/uri pair representing the namespace bindingproperties - any special properties to be passed on this callIllegalStateException: - attempt to output a namespace when there is no open element
start tagXPathException - if an error occurspublic void startContent()
throws XPathException
startContent in interface ReceiverstartContent in class ProxyReceiverXPathException - if an error occurspublic void characters(java.lang.CharSequence chars,
Location locationId,
int properties)
throws XPathException
characters in interface Receivercharacters in class ProxyReceiverchars - 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 processingInstruction(java.lang.String target,
java.lang.CharSequence data,
Location locationId,
int properties)
throws XPathException
processingInstruction in interface ReceiverprocessingInstruction in class ProxyReceivertarget - 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 comment(java.lang.CharSequence chars,
Location locationId,
int properties)
throws XPathException
comment in interface Receivercomment in class ProxyReceiverchars - 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 endElement()
throws XPathException
endElement in interface ReceiverendElement in class ProxyReceiverXPathException - if an error occurspublic void close()
throws XPathException
close in interface Receiverclose in class ProxyReceiverXPathException - if an error occurspublic void onClose(java.util.List<Action> actionList)
Receiver is closedactionList - a list of actions to be performedpublic void onClose(Action action)
Copyright (c) 2004-2020 Saxonica Limited. All rights reserved.