<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_18) on Sun Apr 01 21:18:17 PDT 2012 -->
<TITLE>
TransformerHandlerImpl
</TITLE>

<META NAME="keywords" CONTENT="org.apache.xalan.transformer.TransformerHandlerImpl class">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="TransformerHandlerImpl";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/TransformerHandlerImpl.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/xalan/transformer/TransformerClient.html" title="interface in org.apache.xalan.transformer"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/xalan/transformer/TransformerIdentityImpl.html" title="class in org.apache.xalan.transformer"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/xalan/transformer/TransformerHandlerImpl.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="TransformerHandlerImpl.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.xalan.transformer</FONT>
<BR>
Class TransformerHandlerImpl</H2>
<PRE>
java.lang.Object
  <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.xalan.transformer.TransformerHandlerImpl</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>javax.xml.transform.sax.TransformerHandler, org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler, org.xml.sax.ext.DeclHandler, org.xml.sax.ext.LexicalHandler</DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.56"><B>TransformerHandlerImpl</B></A><DT>extends java.lang.Object<DT>implements org.xml.sax.EntityResolver, org.xml.sax.DTDHandler, org.xml.sax.ContentHandler, org.xml.sax.ErrorHandler, org.xml.sax.ext.LexicalHandler, javax.xml.transform.sax.TransformerHandler, org.xml.sax.ext.DeclHandler</DL>
</PRE>

<P>
A TransformerHandler
 listens for SAX ContentHandler parse events and transforms
 them to a Result.
<P>

<P>
<HR>

<P>
<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#DEBUG">DEBUG</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set to true for diagnostics output.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_baseSystemID">m_baseSystemID</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The system ID to use as a base for relative URLs.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;org.xml.sax.ContentHandler</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_contentHandler">m_contentHandler</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The content handler to aggregate to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;org.xml.sax.ext.DeclHandler</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_declHandler">m_declHandler</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The decl handler to aggregate to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;org.xml.sax.DTDHandler</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_dtdHandler">m_dtdHandler</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The DTD handler to aggregate to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>(package private) &nbsp;<A HREF="../../../../org/apache/xml/dtm/DTM.html" title="interface in org.apache.xml.dtm">DTM</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_dtm">m_dtm</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The Document Table Instance we are transforming.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;org.xml.sax.EntityResolver</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_entityResolver">m_entityResolver</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The entity resolver to aggregate to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;org.xml.sax.ErrorHandler</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_errorHandler">m_errorHandler</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The error handler to aggregate to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_incremental">m_incremental</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The flag for the setting of the incremental feature;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_insideParse">m_insideParse</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;org.xml.sax.ext.LexicalHandler</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_lexicalHandler">m_lexicalHandler</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The lexical handler to aggregate to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;org.xml.sax.Locator</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_locator">m_locator</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The locator for this TransformerHandler.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_optimizer">m_optimizer</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The flag for the setting of the optimize feature;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;javax.xml.transform.Result</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_result">m_result</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The result for the transformation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_source_location">m_source_location</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The flag for the setting of the source_location feature;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;<A HREF="../../../../org/apache/xalan/transformer/TransformerImpl.html" title="class in org.apache.xalan.transformer">TransformerImpl</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#m_transformer">m_transformer</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The transformer this will use to transform a
 source tree into a result tree.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#TransformerHandlerImpl(org.apache.xalan.transformer.TransformerImpl, boolean, java.lang.String)">TransformerHandlerImpl</A></B>(<A HREF="../../../../org/apache/xalan/transformer/TransformerImpl.html" title="class in org.apache.xalan.transformer">TransformerImpl</A>&nbsp;transformer,
                                             boolean&nbsp;doFragment,
                                             java.lang.String&nbsp;baseSystemID)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Construct a TransformerHandlerImpl.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#attributeDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)">attributeDecl</A></B>(java.lang.String&nbsp;eName,
                           java.lang.String&nbsp;aName,
                           java.lang.String&nbsp;type,
                           java.lang.String&nbsp;valueDefault,
                           java.lang.String&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report an attribute type declaration.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#characters(char[], int, int)">characters</A></B>(char[]&nbsp;ch,
                     int&nbsp;start,
                     int&nbsp;length)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a character data event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#clearCoRoutine()">clearCoRoutine</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do what needs to be done to shut down the CoRoutine management.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#clearCoRoutine(org.xml.sax.SAXException)">clearCoRoutine</A></B>(org.xml.sax.SAXException&nbsp;ex)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do what needs to be done to shut down the CoRoutine management.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#comment(char[], int, int)">comment</A></B>(char[]&nbsp;ch,
               int&nbsp;start,
               int&nbsp;length)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report an XML comment anywhere in the document.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#elementDecl(java.lang.String, java.lang.String)">elementDecl</A></B>(java.lang.String&nbsp;name,
                       java.lang.String&nbsp;model)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report an element type declaration.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endCDATA()">endCDATA</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report the end of a CDATA section.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endDocument()">endDocument</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter an end document event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endDTD()">endDTD</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report the end of DTD declarations.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endElement(java.lang.String, java.lang.String, java.lang.String)">endElement</A></B>(java.lang.String&nbsp;uri,
                     java.lang.String&nbsp;localName,
                     java.lang.String&nbsp;qName)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter an end element event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endEntity(java.lang.String)">endEntity</A></B>(java.lang.String&nbsp;name)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report the end of an entity.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endPrefixMapping(java.lang.String)">endPrefixMapping</A></B>(java.lang.String&nbsp;prefix)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter an end Namespace prefix mapping event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#error(org.xml.sax.SAXParseException)">error</A></B>(org.xml.sax.SAXParseException&nbsp;e)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter an error event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#externalEntityDecl(java.lang.String, java.lang.String, java.lang.String)">externalEntityDecl</A></B>(java.lang.String&nbsp;name,
                                     java.lang.String&nbsp;publicId,
                                     java.lang.String&nbsp;systemId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report a parsed external entity declaration.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#fatalError(org.xml.sax.SAXParseException)">fatalError</A></B>(org.xml.sax.SAXParseException&nbsp;e)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a fatal error event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#getSystemId()">getSystemId</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the base ID (URI or system ID) from where relative
 URLs will be resolved.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;javax.xml.transform.Transformer</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#getTransformer()">getTransformer</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the Transformer associated with this handler, which
 is needed in order to set parameters and output properties.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#ignorableWhitespace(char[], int, int)">ignorableWhitespace</A></B>(char[]&nbsp;ch,
                                       int&nbsp;start,
                                       int&nbsp;length)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter an ignorable whitespace event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#internalEntityDecl(java.lang.String, java.lang.String)">internalEntityDecl</A></B>(java.lang.String&nbsp;name,
                                     java.lang.String&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report an internal entity declaration.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#notationDecl(java.lang.String, java.lang.String, java.lang.String)">notationDecl</A></B>(java.lang.String&nbsp;name,
                         java.lang.String&nbsp;publicId,
                         java.lang.String&nbsp;systemId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a notation declaration event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#processingInstruction(java.lang.String, java.lang.String)">processingInstruction</A></B>(java.lang.String&nbsp;target,
                                           java.lang.String&nbsp;data)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a processing instruction event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;org.xml.sax.InputSource</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#resolveEntity(java.lang.String, java.lang.String)">resolveEntity</A></B>(java.lang.String&nbsp;publicId,
                           java.lang.String&nbsp;systemId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter an external entity resolution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#setDocumentLocator(org.xml.sax.Locator)">setDocumentLocator</A></B>(org.xml.sax.Locator&nbsp;locator)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a new document locator event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#setResult(javax.xml.transform.Result)">setResult</A></B>(javax.xml.transform.Result&nbsp;result)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Enables the user of the TransformerHandler to set the
 to set the Result for the transformation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#setSystemId(java.lang.String)">setSystemId</A></B>(java.lang.String&nbsp;systemID)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the base ID (URI or system ID) from where relative
 URLs will be resolved.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#skippedEntity(java.lang.String)">skippedEntity</A></B>(java.lang.String&nbsp;name)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a skipped entity event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startCDATA()">startCDATA</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report the start of a CDATA section.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startDocument()">startDocument</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a start document event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startDTD(java.lang.String, java.lang.String, java.lang.String)">startDTD</A></B>(java.lang.String&nbsp;name,
                 java.lang.String&nbsp;publicId,
                 java.lang.String&nbsp;systemId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report the start of DTD declarations, if any.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)">startElement</A></B>(java.lang.String&nbsp;uri,
                         java.lang.String&nbsp;localName,
                         java.lang.String&nbsp;qName,
                         org.xml.sax.Attributes&nbsp;atts)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a start element event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startEntity(java.lang.String)">startEntity</A></B>(java.lang.String&nbsp;name)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Report the beginning of an entity in content.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startPrefixMapping(java.lang.String, java.lang.String)">startPrefixMapping</A></B>(java.lang.String&nbsp;prefix,
                                     java.lang.String&nbsp;uri)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a start Namespace prefix mapping event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)">unparsedEntityDecl</A></B>(java.lang.String&nbsp;name,
                                     java.lang.String&nbsp;publicId,
                                     java.lang.String&nbsp;systemId,
                                     java.lang.String&nbsp;notationName)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter an unparsed entity declaration event.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#warning(org.xml.sax.SAXParseException)">warning</A></B>(org.xml.sax.SAXParseException&nbsp;e)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter a warning event.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->

<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="m_optimizer"><!-- --></A><H3>
m_optimizer</H3>
<PRE>
private final boolean <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.63"><B>m_optimizer</B></A></PRE>
<DL>
<DD>The flag for the setting of the optimize feature;
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_incremental"><!-- --></A><H3>
m_incremental</H3>
<PRE>
private final boolean <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.68"><B>m_incremental</B></A></PRE>
<DL>
<DD>The flag for the setting of the incremental feature;
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_source_location"><!-- --></A><H3>
m_source_location</H3>
<PRE>
private final boolean <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.73"><B>m_source_location</B></A></PRE>
<DL>
<DD>The flag for the setting of the source_location feature;
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_insideParse"><!-- --></A><H3>
m_insideParse</H3>
<PRE>
private boolean <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.75"><B>m_insideParse</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="DEBUG"><!-- --></A><H3>
DEBUG</H3>
<PRE>
private static boolean <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1043"><B>DEBUG</B></A></PRE>
<DL>
<DD>Set to true for diagnostics output.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_transformer"><!-- --></A><H3>
m_transformer</H3>
<PRE>
private <A HREF="../../../../org/apache/xalan/transformer/TransformerImpl.html" title="class in org.apache.xalan.transformer">TransformerImpl</A> <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1049"><B>m_transformer</B></A></PRE>
<DL>
<DD>The transformer this will use to transform a
 source tree into a result tree.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_baseSystemID"><!-- --></A><H3>
m_baseSystemID</H3>
<PRE>
private java.lang.String <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1052"><B>m_baseSystemID</B></A></PRE>
<DL>
<DD>The system ID to use as a base for relative URLs.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_result"><!-- --></A><H3>
m_result</H3>
<PRE>
private javax.xml.transform.Result <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1055"><B>m_result</B></A></PRE>
<DL>
<DD>The result for the transformation.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_locator"><!-- --></A><H3>
m_locator</H3>
<PRE>
private org.xml.sax.Locator <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1058"><B>m_locator</B></A></PRE>
<DL>
<DD>The locator for this TransformerHandler.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_entityResolver"><!-- --></A><H3>
m_entityResolver</H3>
<PRE>
private org.xml.sax.EntityResolver <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1061"><B>m_entityResolver</B></A></PRE>
<DL>
<DD>The entity resolver to aggregate to.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_dtdHandler"><!-- --></A><H3>
m_dtdHandler</H3>
<PRE>
private org.xml.sax.DTDHandler <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1064"><B>m_dtdHandler</B></A></PRE>
<DL>
<DD>The DTD handler to aggregate to.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_contentHandler"><!-- --></A><H3>
m_contentHandler</H3>
<PRE>
private org.xml.sax.ContentHandler <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1067"><B>m_contentHandler</B></A></PRE>
<DL>
<DD>The content handler to aggregate to.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_errorHandler"><!-- --></A><H3>
m_errorHandler</H3>
<PRE>
private org.xml.sax.ErrorHandler <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1070"><B>m_errorHandler</B></A></PRE>
<DL>
<DD>The error handler to aggregate to.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_lexicalHandler"><!-- --></A><H3>
m_lexicalHandler</H3>
<PRE>
private org.xml.sax.ext.LexicalHandler <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1073"><B>m_lexicalHandler</B></A></PRE>
<DL>
<DD>The lexical handler to aggregate to.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_declHandler"><!-- --></A><H3>
m_declHandler</H3>
<PRE>
private org.xml.sax.ext.DeclHandler <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1076"><B>m_declHandler</B></A></PRE>
<DL>
<DD>The decl handler to aggregate to.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="m_dtm"><!-- --></A><H3>
m_dtm</H3>
<PRE>
<A HREF="../../../../org/apache/xml/dtm/DTM.html" title="interface in org.apache.xml.dtm">DTM</A> <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1079"><B>m_dtm</B></A></PRE>
<DL>
<DD>The Document Table Instance we are transforming.
<P>
<DL>
</DL>
</DL>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="TransformerHandlerImpl(org.apache.xalan.transformer.TransformerImpl, boolean, java.lang.String)"><!-- --></A><H3>
TransformerHandlerImpl</H3>
<PRE>
public <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.88"><B>TransformerHandlerImpl</B></A>(<A HREF="../../../../org/apache/xalan/transformer/TransformerImpl.html" title="class in org.apache.xalan.transformer">TransformerImpl</A>&nbsp;transformer,
                              boolean&nbsp;doFragment,
                              java.lang.String&nbsp;baseSystemID)</PRE>
<DL>
<DD>Construct a TransformerHandlerImpl.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>transformer</CODE> - Non-null reference to the Xalan transformer impl.<DD><CODE>doFragment</CODE> - True if the result should be a document fragement.<DD><CODE>baseSystemID</CODE> - The system ID to use as the base for relative URLs.</DL>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="clearCoRoutine()"><!-- --></A><H3>
clearCoRoutine</H3>
<PRE>
protected void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.116"><B>clearCoRoutine</B></A>()</PRE>
<DL>
<DD>Do what needs to be done to shut down the CoRoutine management.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="clearCoRoutine(org.xml.sax.SAXException)"><!-- --></A><H3>
clearCoRoutine</H3>
<PRE>
protected void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.124"><B>clearCoRoutine</B></A>(org.xml.sax.SAXException&nbsp;ex)</PRE>
<DL>
<DD>Do what needs to be done to shut down the CoRoutine management.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setResult(javax.xml.transform.Result)"><!-- --></A><H3>
setResult</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.174"><B>setResult</B></A>(javax.xml.transform.Result&nbsp;result)
               throws java.lang.IllegalArgumentException</PRE>
<DL>
<DD>Enables the user of the TransformerHandler to set the
 to set the Result for the transformation.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>setResult</CODE> in interface <CODE>javax.xml.transform.sax.TransformerHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>result</CODE> - A Result instance, should not be null.
<DT><B>Throws:</B>
<DD><CODE>java.lang.IllegalArgumentException</CODE> - if result is invalid for some reason.</DL>
</DD>
</DL>
<HR>

<A NAME="setSystemId(java.lang.String)"><!-- --></A><H3>
setSystemId</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.202"><B>setSystemId</B></A>(java.lang.String&nbsp;systemID)</PRE>
<DL>
<DD>Set the base ID (URI or system ID) from where relative
 URLs will be resolved.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>setSystemId</CODE> in interface <CODE>javax.xml.transform.sax.TransformerHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>systemID</CODE> - Base URI for the source tree.</DL>
</DD>
</DL>
<HR>

<A NAME="getSystemId()"><!-- --></A><H3>
getSystemId</H3>
<PRE>
public java.lang.String <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.213"><B>getSystemId</B></A>()</PRE>
<DL>
<DD>Get the base ID (URI or system ID) from where relative
 URLs will be resolved.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>getSystemId</CODE> in interface <CODE>javax.xml.transform.sax.TransformerHandler</CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The systemID that was set with <A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#setSystemId(java.lang.String)"><CODE>setSystemId(java.lang.String)</CODE></A>.</DL>
</DD>
</DL>
<HR>

<A NAME="getTransformer()"><!-- --></A><H3>
getTransformer</H3>
<PRE>
public javax.xml.transform.Transformer <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.224"><B>getTransformer</B></A>()</PRE>
<DL>
<DD>Get the Transformer associated with this handler, which
 is needed in order to set parameters and output properties.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>getTransformer</CODE> in interface <CODE>javax.xml.transform.sax.TransformerHandler</CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The Transformer associated with this handler</DL>
</DD>
</DL>
<HR>

<A NAME="resolveEntity(java.lang.String, java.lang.String)"><!-- --></A><H3>
resolveEntity</H3>
<PRE>
public org.xml.sax.InputSource <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.248"><B>resolveEntity</B></A>(java.lang.String&nbsp;publicId,
                                             java.lang.String&nbsp;systemId)
                                      throws org.xml.sax.SAXException,
                                             java.io.IOException</PRE>
<DL>
<DD>Filter an external entity resolution.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>resolveEntity</CODE> in interface <CODE>org.xml.sax.EntityResolver</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>publicId</CODE> - The entity's public identifier, or null.<DD><CODE>systemId</CODE> - The entity's system identifier.
<DT><B>Returns:</B><DD>A new InputSource or null for the default.
<DT><B>Throws:</B>
<DD><CODE>java.io.IOException</CODE>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.
<DD><CODE>java.io.IOException</CODE> - The client may throw an
            I/O-related exception while obtaining the
            new InputSource.<DT><B>See Also:</B><DD><CODE>EntityResolver.resolveEntity(java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="notationDecl(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
notationDecl</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.276"><B>notationDecl</B></A>(java.lang.String&nbsp;name,
                         java.lang.String&nbsp;publicId,
                         java.lang.String&nbsp;systemId)
                  throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a notation declaration event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>notationDecl</CODE> in interface <CODE>org.xml.sax.DTDHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The notation name.<DD><CODE>publicId</CODE> - The notation's public identifier, or null.<DD><CODE>systemId</CODE> - The notation's system identifier, or null.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
unparsedEntityDecl</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.297"><B>unparsedEntityDecl</B></A>(java.lang.String&nbsp;name,
                               java.lang.String&nbsp;publicId,
                               java.lang.String&nbsp;systemId,
                               java.lang.String&nbsp;notationName)
                        throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter an unparsed entity declaration event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>unparsedEntityDecl</CODE> in interface <CODE>org.xml.sax.DTDHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The entity name.<DD><CODE>publicId</CODE> - The entity's public identifier, or null.<DD><CODE>systemId</CODE> - The entity's system identifier, or null.<DD><CODE>notationName</CODE> - The name of the associated notation.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="setDocumentLocator(org.xml.sax.Locator)"><!-- --></A><H3>
setDocumentLocator</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.318"><B>setDocumentLocator</B></A>(org.xml.sax.Locator&nbsp;locator)</PRE>
<DL>
<DD>Filter a new document locator event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>setDocumentLocator</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>locator</CODE> - The document locator.<DT><B>See Also:</B><DD><CODE>ContentHandler.setDocumentLocator(org.xml.sax.Locator)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="startDocument()"><!-- --></A><H3>
startDocument</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.345"><B>startDocument</B></A>()
                   throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a start document event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>startDocument</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.startDocument()</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="endDocument()"><!-- --></A><H3>
endDocument</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.388"><B>endDocument</B></A>()
                 throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter an end document event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>endDocument</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.endDocument()</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="startPrefixMapping(java.lang.String, java.lang.String)"><!-- --></A><H3>
startPrefixMapping</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.443"><B>startPrefixMapping</B></A>(java.lang.String&nbsp;prefix,
                               java.lang.String&nbsp;uri)
                        throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a start Namespace prefix mapping event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>startPrefixMapping</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>prefix</CODE> - The Namespace prefix.<DD><CODE>uri</CODE> - The Namespace URI.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="endPrefixMapping(java.lang.String)"><!-- --></A><H3>
endPrefixMapping</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.465"><B>endPrefixMapping</B></A>(java.lang.String&nbsp;prefix)
                      throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter an end Namespace prefix mapping event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>endPrefixMapping</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>prefix</CODE> - The Namespace prefix.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.endPrefixMapping(java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)"><!-- --></A><H3>
startElement</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.490"><B>startElement</B></A>(java.lang.String&nbsp;uri,
                         java.lang.String&nbsp;localName,
                         java.lang.String&nbsp;qName,
                         org.xml.sax.Attributes&nbsp;atts)
                  throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a start element event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>startElement</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>uri</CODE> - The element's Namespace URI, or the empty string.<DD><CODE>localName</CODE> - The element's local name, or the empty string.<DD><CODE>qName</CODE> - The element's qualified (prefixed) name, or the empty
        string.<DD><CODE>atts</CODE> - The element's attributes.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="endElement(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
endElement</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.515"><B>endElement</B></A>(java.lang.String&nbsp;uri,
                       java.lang.String&nbsp;localName,
                       java.lang.String&nbsp;qName)
                throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter an end element event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>endElement</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>uri</CODE> - The element's Namespace URI, or the empty string.<DD><CODE>localName</CODE> - The element's local name, or the empty string.<DD><CODE>qName</CODE> - The element's qualified (prefixed) name, or the empty
        string.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="characters(char[], int, int)"><!-- --></A><H3>
characters</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.538"><B>characters</B></A>(char[]&nbsp;ch,
                       int&nbsp;start,
                       int&nbsp;length)
                throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a character data event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>characters</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>ch</CODE> - An array of characters.<DD><CODE>start</CODE> - The starting position in the array.<DD><CODE>length</CODE> - The number of characters to use from the array.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.characters(char[], int, int)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="ignorableWhitespace(char[], int, int)"><!-- --></A><H3>
ignorableWhitespace</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.561"><B>ignorableWhitespace</B></A>(char[]&nbsp;ch,
                                int&nbsp;start,
                                int&nbsp;length)
                         throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter an ignorable whitespace event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>ignorableWhitespace</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>ch</CODE> - An array of characters.<DD><CODE>start</CODE> - The starting position in the array.<DD><CODE>length</CODE> - The number of characters to use from the array.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.ignorableWhitespace(char[], int, int)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="processingInstruction(java.lang.String, java.lang.String)"><!-- --></A><H3>
processingInstruction</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.584"><B>processingInstruction</B></A>(java.lang.String&nbsp;target,
                                  java.lang.String&nbsp;data)
                           throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a processing instruction event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>processingInstruction</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>target</CODE> - The processing instruction target.<DD><CODE>data</CODE> - The text following the target.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.processingInstruction(java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="skippedEntity(java.lang.String)"><!-- --></A><H3>
skippedEntity</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.606"><B>skippedEntity</B></A>(java.lang.String&nbsp;name)
                   throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a skipped entity event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>skippedEntity</CODE> in interface <CODE>org.xml.sax.ContentHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The name of the skipped entity.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ContentHandler.skippedEntity(java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="warning(org.xml.sax.SAXParseException)"><!-- --></A><H3>
warning</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.630"><B>warning</B></A>(org.xml.sax.SAXParseException&nbsp;e)
             throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a warning event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>warning</CODE> in interface <CODE>org.xml.sax.ErrorHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>e</CODE> - The nwarning as an exception.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ErrorHandler.warning(org.xml.sax.SAXParseException)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="error(org.xml.sax.SAXParseException)"><!-- --></A><H3>
error</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.662"><B>error</B></A>(org.xml.sax.SAXParseException&nbsp;e)
           throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter an error event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>error</CODE> in interface <CODE>org.xml.sax.ErrorHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>e</CODE> - The error as an exception.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ErrorHandler.error(org.xml.sax.SAXParseException)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="fatalError(org.xml.sax.SAXParseException)"><!-- --></A><H3>
fatalError</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.701"><B>fatalError</B></A>(org.xml.sax.SAXParseException&nbsp;e)
                throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Filter a fatal error event.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>fatalError</CODE> in interface <CODE>org.xml.sax.ErrorHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>e</CODE> - The error as an exception.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The client may throw
            an exception during processing.<DT><B>See Also:</B><DD><CODE>ErrorHandler.fatalError(org.xml.sax.SAXParseException)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="startDTD(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
startDTD</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.768"><B>startDTD</B></A>(java.lang.String&nbsp;name,
                     java.lang.String&nbsp;publicId,
                     java.lang.String&nbsp;systemId)
              throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report the start of DTD declarations, if any.

 <p>Any declarations are assumed to be in the internal subset
 unless otherwise indicated by a <A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startEntity(java.lang.String)"><CODE>startEntity</CODE></A>
 event.</p>

 <p>Note that the start/endDTD events will appear within
 the start/endDocument events from ContentHandler and
 before the first startElement event.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>startDTD</CODE> in interface <CODE>org.xml.sax.ext.LexicalHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The document type name.<DD><CODE>publicId</CODE> - The declared public identifier for the
        external DTD subset, or null if none was declared.<DD><CODE>systemId</CODE> - The declared system identifier for the
        external DTD subset, or null if none was declared.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an
            exception.<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endDTD()"><CODE>endDTD()</CODE></A>, 
<A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startEntity(java.lang.String)"><CODE>startEntity(java.lang.String)</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="endDTD()"><!-- --></A><H3>
endDTD</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.788"><B>endDTD</B></A>()
            throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report the end of DTD declarations.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>endDTD</CODE> in interface <CODE>org.xml.sax.ext.LexicalHandler</CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startDTD(java.lang.String, java.lang.String, java.lang.String)"><CODE>startDTD(java.lang.String, java.lang.String, java.lang.String)</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="startEntity(java.lang.String)"><!-- --></A><H3>
startEntity</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.822"><B>startEntity</B></A>(java.lang.String&nbsp;name)
                 throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report the beginning of an entity in content.

 <p><strong>NOTE:</entity> entity references in attribute
 values -- and the start and end of the document entity --
 are never reported.</p>

 <p>The start and end of the external DTD subset are reported
 using the pseudo-name "[dtd]".  All other events must be
 properly nested within start/end entity events.</p>

 <p>Note that skipped entities will be reported through the
 <CODE>skippedEntity</CODE>
 event, which is part of the ContentHandler interface.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>startEntity</CODE> in interface <CODE>org.xml.sax.ext.LexicalHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The name of the entity.  If it is a parameter
        entity, the name will begin with '%'.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endEntity(java.lang.String)"><CODE>endEntity(java.lang.String)</CODE></A>, 
<CODE>DeclHandler.internalEntityDecl(java.lang.String, java.lang.String)</CODE>, 
<CODE>DeclHandler.externalEntityDecl(java.lang.String, java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="endEntity(java.lang.String)"><!-- --></A><H3>
endEntity</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.841"><B>endEntity</B></A>(java.lang.String&nbsp;name)
               throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report the end of an entity.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>endEntity</CODE> in interface <CODE>org.xml.sax.ext.LexicalHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The name of the entity that is ending.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startEntity(java.lang.String)"><CODE>startEntity(java.lang.String)</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="startCDATA()"><!-- --></A><H3>
startCDATA</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.863"><B>startCDATA</B></A>()
                throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report the start of a CDATA section.

 <p>The contents of the CDATA section will be reported through
 the regular <CODE>characters</CODE> event.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>startCDATA</CODE> in interface <CODE>org.xml.sax.ext.LexicalHandler</CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#endCDATA()"><CODE>endCDATA()</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="endCDATA()"><!-- --></A><H3>
endCDATA</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.881"><B>endCDATA</B></A>()
              throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report the end of a CDATA section.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>endCDATA</CODE> in interface <CODE>org.xml.sax.ext.LexicalHandler</CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#startCDATA()"><CODE>startCDATA()</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="comment(char[], int, int)"><!-- --></A><H3>
comment</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.905"><B>comment</B></A>(char[]&nbsp;ch,
                    int&nbsp;start,
                    int&nbsp;length)
             throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report an XML comment anywhere in the document.

 <p>This callback will be used for comments inside or outside the
 document element, including comments in the external DTD
 subset (if read).</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>comment</CODE> in interface <CODE>org.xml.sax.ext.LexicalHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>ch</CODE> - An array holding the characters in the comment.<DD><CODE>start</CODE> - The starting position in the array.<DD><CODE>length</CODE> - The number of characters to use from the array.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.</DL>
</DD>
</DL>
<HR>

<A NAME="elementDecl(java.lang.String, java.lang.String)"><!-- --></A><H3>
elementDecl</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.935"><B>elementDecl</B></A>(java.lang.String&nbsp;name,
                        java.lang.String&nbsp;model)
                 throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report an element type declaration.

 <p>The content model will consist of the string "EMPTY", the
 string "ANY", or a parenthesised group, optionally followed
 by an occurrence indicator.  The model will be normalized so
 that all whitespace is removed,and will include the enclosing
 parentheses.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>elementDecl</CODE> in interface <CODE>org.xml.sax.ext.DeclHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The element type name.<DD><CODE>model</CODE> - The content model as a normalized string.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.</DL>
</DD>
</DL>
<HR>

<A NAME="attributeDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
attributeDecl</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.967"><B>attributeDecl</B></A>(java.lang.String&nbsp;eName,
                          java.lang.String&nbsp;aName,
                          java.lang.String&nbsp;type,
                          java.lang.String&nbsp;valueDefault,
                          java.lang.String&nbsp;value)
                   throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report an attribute type declaration.

 <p>Only the effective (first) declaration for an attribute will
 be reported.  The type will be one of the strings "CDATA",
 "ID", "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY",
 "ENTITIES", or "NOTATION", or a parenthesized token group with
 the separator "|" and all whitespace removed.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>attributeDecl</CODE> in interface <CODE>org.xml.sax.ext.DeclHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>eName</CODE> - The name of the associated element.<DD><CODE>aName</CODE> - The name of the attribute.<DD><CODE>type</CODE> - A string representing the attribute type.<DD><CODE>valueDefault</CODE> - A string representing the attribute default
        ("#IMPLIED", "#REQUIRED", or "#FIXED") or null if
        none of these applies.<DD><CODE>value</CODE> - A string representing the attribute's default value,
        or null if there is none.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.</DL>
</DD>
</DL>
<HR>

<A NAME="internalEntityDecl(java.lang.String, java.lang.String)"><!-- --></A><H3>
internalEntityDecl</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.995"><B>internalEntityDecl</B></A>(java.lang.String&nbsp;name,
                               java.lang.String&nbsp;value)
                        throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report an internal entity declaration.

 <p>Only the effective (first) declaration for each entity
 will be reported.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>internalEntityDecl</CODE> in interface <CODE>org.xml.sax.ext.DeclHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The name of the entity.  If it is a parameter
        entity, the name will begin with '%'.<DD><CODE>value</CODE> - The replacement text of the entity.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#externalEntityDecl(java.lang.String, java.lang.String, java.lang.String)"><CODE>externalEntityDecl(java.lang.String, java.lang.String, java.lang.String)</CODE></A>, 
<CODE>DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="externalEntityDecl(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
externalEntityDecl</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/xalan/transformer/TransformerHandlerImpl.html#line.1024"><B>externalEntityDecl</B></A>(java.lang.String&nbsp;name,
                               java.lang.String&nbsp;publicId,
                               java.lang.String&nbsp;systemId)
                        throws org.xml.sax.SAXException</PRE>
<DL>
<DD>Report a parsed external entity declaration.

 <p>Only the effective (first) declaration for each entity
 will be reported.</p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>externalEntityDecl</CODE> in interface <CODE>org.xml.sax.ext.DeclHandler</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The name of the entity.  If it is a parameter
        entity, the name will begin with '%'.<DD><CODE>publicId</CODE> - The declared public identifier of the entity, or
        null if none was declared.<DD><CODE>systemId</CODE> - The declared system identifier of the entity.
<DT><B>Throws:</B>
<DD><CODE>org.xml.sax.SAXException</CODE> - The application may raise an exception.<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/xalan/transformer/TransformerHandlerImpl.html#internalEntityDecl(java.lang.String, java.lang.String)"><CODE>internalEntityDecl(java.lang.String, java.lang.String)</CODE></A>, 
<CODE>DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)</CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/TransformerHandlerImpl.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/xalan/transformer/TransformerClient.html" title="interface in org.apache.xalan.transformer"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/xalan/transformer/TransformerIdentityImpl.html" title="class in org.apache.xalan.transformer"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/xalan/transformer/TransformerHandlerImpl.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="TransformerHandlerImpl.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

</BODY>
</HTML>
