## com.icl.saxon.output
Class XMLIndenter

    java.lang.Object
      |
      +--com.icl.saxon.output.Emitter
            |
            +--com.icl.saxon.output.ProxyEmitter
                  |
                  +--com.icl.saxon.output.XMLIndenter

All Implemented Interfaces:
  javax.xml.transform.Result

public class XMLIndenter
extends ProxyEmitter

XMLIndenter: This ProxyEmitter indents elements, by adding character data where appropriate. The character data is always added as "ignorable white space", that is, it is never added adjacent to existing character data. Author Michael Kay (mhkay@iclway.co.uk)

Field Summary

Fields inherited from class com.icl.saxon.output.ProxyEmitter
`baseEmitter, outputProperties`

Fields inherited from class com.icl.saxon.output.Emitter
`locator, namePool, outputStream, systemId, writer`

Fields inherited from interface javax.xml.transform.Result
`PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING`

Constructor Summary
`XMLIndenter()`

Method Summary
`void` `characters(char[] chars, int start, int len)` Output character data
`void` `comment(char[] chars, int start, int len)` Output a comment
`void` `endDocument()` End of document
`void` `endElement(int tag)` Output element end tag
`void` `ignorableWhitespace(char[] chars, int start, int len)` Output ignorable white space
`void` `processingInstruction(java.lang.String target, java.lang.String data)` Output a processing instruction
`void` `startDocument()` Start of document
`void` `startElement(int tag, org.xml.sax.Attributes atts, int[] namespaces, int nscount)` Output element start tag

Methods inherited from class com.icl.saxon.output.ProxyEmitter
`setDocumentLocator, setEscaping, setNamePool, setOutputProperties, setUnderlyingEmitter, setUnparsedEntity, setWriter`

Methods inherited from class com.icl.saxon.output.Emitter
`getNamePool, getOutputProperties, getOutputStream, getSystemId, getWriter, makeEmitter, setOutputStream, setSystemId, usesWriter`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### XMLIndenter

    public XMLIndenter()

Method Detail

### startDocument

    public void startDocument()
                       throws javax.xml.transform.TransformerException

  Start of document

  Overrides:
    `startDocument` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`

### startElement

    public void startElement(int tag,
                             org.xml.sax.Attributes atts,
                             int[] namespaces,
                             int nscount)
                      throws javax.xml.transform.TransformerException

  Output element start tag

  Overrides:
    `startElement` in class `ProxyEmitter`
  Parameters:
    `namespaces` - Array of namespace codes identifying the namespace prefix/uri pairs associated with this element
    `nscount` - Number of significant entries within namespaces array
    `javax.xml.transform.TransformerException`

### endElement

    public void endElement(int tag)
                    throws javax.xml.transform.TransformerException

  Output element end tag

  Overrides:
    `endElement` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`

### processingInstruction

    public void processingInstruction(java.lang.String target,
                                      java.lang.String data)
                               throws javax.xml.transform.TransformerException

  Output a processing instruction

  Overrides:
    `processingInstruction` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`

### characters

    public void characters(char[] chars,
                           int start,
                           int len)
                    throws javax.xml.transform.TransformerException

  Output character data

  Overrides:
    `characters` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`

### ignorableWhitespace

    public void ignorableWhitespace(char[] chars,
                                    int start,
                                    int len)
                             throws javax.xml.transform.TransformerException

  Output ignorable white space

    `javax.xml.transform.TransformerException`

### comment

    public void comment(char[] chars,
                        int start,
                        int len)
                 throws javax.xml.transform.TransformerException

  Output a comment

  Overrides:
    `comment` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`

### endDocument

    public void endDocument()
                     throws javax.xml.transform.TransformerException

  End of document

  Overrides:
    `endDocument` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`