Emitter: This interface defines methods that must be implemented by
components that format SAXON output. There is one emitter for XML,
one for HTML, and so on. Additional methods are concerned with
setting options and providing a Writer.
The interface is deliberately designed to be as close as possible to the
standard SAX2 ContentHandler interface, however, it allows additional
information to be made available.
locator
protected Locator locator
outputProperties
protected Properties outputProperties
outputStream
protected OutputStream outputStream
systemId
protected String systemId
writer
protected Writer writer
characters
public void characters(char[] chars,
int start,
int len)
throws TransformerException
Output character data
comment
public void comment(char[] chars,
int start,
int length)
throws TransformerException
Output a comment.
(The method signature is borrowed from the SAX2 LexicalHandler interface)
endDocument
public void endDocument()
throws TransformerException
Notify document end
endElement
public void endElement(int nameCode)
throws TransformerException
Output an element end tag
getNamePool
public NamePool getNamePool()
Get the namepool used for this document
getOutputProperties
public Properties getOutputProperties()
Get the output properties
getOutputStream
public OutputStream getOutputStream()
Get the output stream
getSystemId
public String getSystemId()
Get the System ID
getWriter
public Writer getWriter()
Get the output writer
makeEmitter
public static Emitter makeEmitter(String className)
throws TransformerException
load a named output emitter or document handler and check it is OK.
processingInstruction
public void processingInstruction(String name,
String data)
throws TransformerException
Output a processing instruction
setDocumentLocator
public void setDocumentLocator(Locator locator)
Set locator, to identify position in the document. Used only when supplying
input from a parser.
setEscaping
public void setEscaping(boolean escaping)
throws TransformerException
Switch escaping on or off. This is called when the XSLT disable-output-escaping attribute
is used to switch escaping on or off. It is also called at the start and end of a CDATA section
It is not called for other sections of output (e.g. comments) where escaping is inappropriate.
setNamePool
public void setNamePool(NamePool namePool)
Set the namePool in which all name codes can be found
setOutputProperties
public void setOutputProperties(Properties props)
Set the output properties
setOutputStream
public void setOutputStream(OutputStream stream)
Set the output destination as a byte stream
setSystemId
public void setSystemId(String systemId)
Set the System ID
setUnparsedEntity
public void setUnparsedEntity(String name,
String uri)
throws TransformerException
Set unparsed entity URI Used only when supplying
input from a parser.
setWriter
public void setWriter(Writer writer)
Set the output destination as a character stream
startDocument
public void startDocument()
throws TransformerException
Notify document start
startElement
public void startElement(int nameCode,
Attributes attributes,
int[] namespaces,
int nscount)
throws TransformerException
Output an element start tag.
namespaces
- Array of namespace codes identifying the namespace prefix/uri
pairs associated with this elementnscount
- Number of significant entries within namespaces array
usesWriter
public boolean usesWriter()
Determine whether the Emitter wants a Writer for character output or
an OutputStream for binary output