public class ReceivingContentHandler
extends java.lang.Object
implements ContentHandler, LexicalHandler, DTDHandler
ReceivingContentHandler is a glue class that provides a standard SAX ContentHandler
interface to a Saxon Receiver. To achieve this it needs to map names supplied
as strings to numeric name codes, for which purpose it needs access to a name
pool. The class also performs the function of assembling adjacent text nodes.
The class was previously named ContentEmitter.
If the input stream contains the processing instructions assigned by JAXP to switch
disable-output-escaping on or off, these will be reflected in properties set in the corresponding
characters events. In this case adjacent text nodes will not be combined.
characters
public void characters(ch[] ,
int start,
int length)
throws SAXException
Report character data. Note that contiguous character data may be reported as a sequence of
calls on this method, with arbitrary boundaries
comment
public void comment(ch[] ,
int start,
int length)
throws SAXException
Notify the existence of a comment. Note that in SAX this is part of LexicalHandler interface
rather than the ContentHandler interface.
endCDATA
public void endCDATA()
throws SAXException
endDTD
public void endDTD()
throws SAXException
Register the end of the DTD. Comments in the DTD are skipped because they
are not part of the XPath data model
endDocument
public void endDocument()
throws SAXException
Receive notification of the end of a document
endElement
public void endElement(String uri,
String localname,
String rawname)
throws SAXException
Report the end of an element (the close tag)
endEntity
public void endEntity(String name)
throws SAXException
endPrefixMapping
public void endPrefixMapping(String prefix)
throws SAXException
Notify that a namespace binding is going out of scope
getConfiguration
public Configuration getConfiguration()
Get the Configuration object
getPipelineConfiguration
public PipelineConfiguration getPipelineConfiguration()
Get the pipeline configuration
ignorableWhitespace
public void ignorableWhitespace(ch[] ,
int start,
int length)
throws SAXException
Report character data classified as "Ignorable whitespace", that is, whitespace text nodes
appearing as children of elements with an element-only content model
isIgnoringIgnorableWhitespace
public boolean isIgnoringIgnorableWhitespace()
Determine whether "ignorable whitespace" is ignored. This returns the value that was set
using
setIgnoreIgnorableWhitespace(boolean)
if that has been called; otherwise the value
from the configuration.
- true if ignorable whitespace is being ignored
notationDecl
public void notationDecl(String name,
String publicId,
String systemId)
throws SAXException
processingInstruction
public void processingInstruction(String name,
String remainder)
throws SAXException
Notify the existence of a processing instruction
reset
public void reset()
Set the ReceivingContentHandler to its initial state, except for the local name cache,
which is retained
setDocumentLocator
public void setDocumentLocator(Locator locator)
Supply a locator that can be called to give information about location in the source document
being parsed.
setIgnoreIgnorableWhitespace
public void setIgnoreIgnorableWhitespace(boolean ignore)
Set whether "ignorable whitespace" should be ignored. This method is effective only
if called after setPipelineConfiguration, since the default value is taken from the
configuration.
ignore
- true if ignorable whitespace (whitespace in element content that is notified
via the ignorableWhitespace(char[], int, int)
method) should be ignored, false if
it should be treated as ordinary text.
setPipelineConfiguration
public void setPipelineConfiguration(PipelineConfiguration pipe)
Set the pipeline configuration
pipe
- the pipeline configuration. This holds a reference to the Saxon configuration, as well as
information that can vary from one pipeline to another, for example the LocationProvider which resolves
the location of events in a source document
setReceiver
public void setReceiver(Receiver receiver)
Set the receiver to which events are passed. ReceivingContentHandler is essentially a translator
that takes SAX events as input and produces Saxon Receiver events as output; these Receiver events
are passed to the supplied Receiver
receiver
- the Receiver of events
skippedEntity
public void skippedEntity(String name)
throws SAXException
Notify a skipped entity. Saxon ignores this event
startCDATA
public void startCDATA()
throws SAXException
startDTD
public void startDTD(String name,
String publicId,
String systemId)
throws SAXException
Register the start of the DTD. Saxon ignores the DTD; however, it needs to know when the DTD starts and
ends so that it can ignore comments in the DTD, which are reported like any other comment, but which
are skipped because they are not part of the XPath data model
startDocument
public void startDocument()
throws SAXException
Receive notification of the beginning of a document.
startElement
public void startElement(String uri,
String localname,
String rawname,
Attributes atts)
throws SAXException
Notify an element start even, including all the associated attributes
startEntity
public void startEntity(String name)
throws SAXException
startPrefixMapping
public void startPrefixMapping(String prefix,
String uri)
throws SAXException
Notify a namespace prefix to URI binding
unparsedEntityDecl
public void unparsedEntityDecl(String name,
String publicId,
String systemId,
String notationName)
throws SAXException