Configured by overriding protected methods:
  protected void printDeclaration(Document doc, Writer out, String encoding) 
  throws IOException {}    
  protected void printDocType(DocType docType, Writer out) throws IOException {}
  protected void printComment(Comment comment, Writer out, int indentLevel) 
   throws IOException {}
  protected void printProcessingInstruction(ProcessingInstruction pi,
   Writer out, int indentLevel) throws IOException {}
  protected void printCDATASection(CDATA cdata, Writer out, int indentLevel) 
   throws IOException {}
  protected void printElement(Element element, Writer out,
   int indentLevel, NamespaceStack namespaces) throws IOException {}
  protected void printElementContent(Element element, Writer out,
   int indentLevel, NamespaceStack namespaces, List mixedContent) 
   throws IOException {}
  protected void printString(String s, Writer out) throws IOException {}
  protected void printEntity(Entity entity, Writer out) throws IOException {}
  protected void printNamespace(Namespace ns, Writer out) throws IOException {}
  protected void printAttributes(List attributes, Element parent, 
   Writer out, NamespaceStack namespaces)  
   throws IOException {}