xml-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dles...@locus.apache.org
Subject cvs commit: xml-site/targets/xalan api.html commandline.html install.html overview.html readme.html
Date Fri, 17 Dec 1999 21:31:14 GMT
dleslie     99/12/17 13:31:14

  Added:       targets/xalan api.html commandline.html install.html
                        overview.html readme.html
  Log:
  First publication of Xalan doc with Stylebook (with
  modified dtd and stylesheets)
  
  Revision  Changes    Path
  1.1                  xml-site/targets/xalan/api.html
  
  Index: api.html
  ===================================================================
  <HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Xalan API</TITLE></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="graphics/api-header.jpg" vspace="0" width="456"></TD></TR><TR
><TD align="left" height="20" valign="top" width="168"><IMG border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.
org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
  <A href="../index.html" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="overview.html" onMouseOut="rolloverOff('side-overview');" onMouseOver="rolloverOn('side-overview');"><IMG alt="Release Notes" border="0" height="12" hspace="0" name="side-overview" onLoad="rolloverLoad('side-overview','graphics/overview-label-2.jpg','graphics/overview-label-3.jpg');" src="graphics/overview-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
  <A href="install.html" onMouseOut="rolloverOff('side-install');" onMouseOver="rolloverOn('side-install');"><IMG alt="Installation" border="0" height="12" hspace="0" name="side-install" onLoad="rolloverLoad('side-install','graphics/install-label-2.jpg','graphics/install-label-3.jpg');" src="graphics/install-label-3.jpg" vspace="0" width="120"></A><BR>
  
  <A href="readme.html" onMouseOut="rolloverOff('side-readme');" onMouseOver="rolloverOn('side-readme');"><IMG alt="Release Notes" border="0" height="12" hspace="0" name="side-readme" onLoad="rolloverLoad('side-readme','graphics/readme-label-2.jpg','graphics/readme-label-3.jpg');" src="graphics/readme-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
              
  <A href="commandline.html" onMouseOut="rolloverOff('side-commandline');" onMouseOver="rolloverOn('side-commandline');"><IMG alt="Command Line" border="0" height="12" hspace="0" name="side-commandline" onLoad="rolloverLoad('side-commandline','graphics/commandline-label-2.jpg','graphics/commandline-label-3.jpg');" src="graphics/commandline-label-3.jpg" vspace="0" width="120"></A><BR>
  
  <IMG alt="XalanAPI" border="0" height="12" hspace="0" src="graphics/api-label-1.jpg" vspace="0" width="120"><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="dtm.html" onMouseOut="rolloverOff('side-dtm');" onMouseOver="rolloverOn('side-dtm');"><IMG alt="Xalan DTM" border="0" height="12" hspace="0" name="side-dtm" onLoad="rolloverLoad('side-dtm','graphics/dtm-label-2.jpg','graphics/dtm-label-3.jpg');" src="graphics/dtm-label-3.jpg" vspace="0" width="120"></A><BR>            
     
  <IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" hei
ght="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Introduction</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
      <P>This document provides an overview of the Xalan API. For the details (javadoc), see 
      <A href="apidocs/index.html" target="_top">API Documentation</A>. For a general introduction to Xalan, see  
      <A href="overview.xml.html">Overview: XSL Transformer for Java (Xalan)</A>. For specifics
      concerning the current release, see <A href="readme.xml.html">Release Notes</A>.</P>
       
      <P>Xalan takes as primary input an XML source document and an XSL stylesheet. The XML document and the XSL stylesheet
      may be a URL or file, a character stream, an input stream, or a DOM tree. The stylesheet may also take the form of a
      compiled stylesheet. If the XML document contains a stylesheet Processing Instruction (PI), a separate stylesheet is not
      required.</P>
      <P>Xalan uses an implementation of the <A href="apidocs/org/apache/xalan/xpath/xml/XMLParserLiaison.html" target="_top">XMLParserLiaison interface</A> to interact with Xerces (or another
       XML parsser) and sends output events to a <A href="apidocs/org/apache/xalan/xpath/xml/FormatterListener.html" target="_top">FormatterListener</A>, an extension of
       <A href="http://www.megginson.com/SAX/sax.html" target="_top">SAX</A> <A href="http://www.megginson.com/SAX/javadoc/org.xml.sax.DocumentHandler.html#_top" target="_top">org.xml.sax.DocumentHandler</A>.</P>
       <P>The XSLT and XPath engines are independent from any given DOM or XML implementation. All parser-dependent calls are
       funneled through the XMLParserLiaison.</P>
    </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Packages</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src=
"resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
       <P>Xalan is composed of three XPATH4J packages and four Xalan packages. The XPATH4J packages can be used on their
       own, but for convenience are packaged in the same JAR as the XSLT processor.</P>
       <P>XPATH4J packages:</P> 
       <UL>
       <LI><P><A href="apidocs/org/apache/xalan/xpath/package-summary.html" target="_top">org.apache.xalan.xpath package</A> -- Contains the infrastructure for processing 
       XPATH expressions.</P></LI>
       <LI><P><A href="apidocs/org/apache/xalan/xpath/xml/package-summary.html" target="_top">org.apache.xalan.xpath.xml package</A> -- The <A href="apidocs/org/apache/xalan/xpath/xml/XMLParserLiaison.html" target="_top">XMLParserLiaison interface</A>
       provides a liaison between the XSLT processor and an XML parser. Unless you specify an XML parser and your own
       implementation of the XMLParserLiaison interface, Xalan uses <A href="apidocs/org/apache/xalan/xpath/xml/XMLParserLiaisonDefault.html" target="_top">XMLParserLiaisonDefault class</A> to
       interface the Xerces parser. This package also includes four implementations of the 
       <A href="apidocs/org/apache/xalan/xpath/xml/FormatterListener.html" target="_top">FormatterListener</A>, a SAX-based formatter interface for the XSL
       processor: the <A href="apidocs/org/apache/xalan/xpath/xml/FormatterToDOM.html" target="_top">FormatterToDOM class</A>, the <A href="apidocs/org/apache/xalan/xpath/xml/FormatterToXML.html" target="_top">FormatterToXML class</A>, the
       <A href="apidocs/org/apache/xalan/xpath/xml/FormatterToHTML.html" target="_top">FormatterToHTML class</A> (an extension of FormatterToXML), and the 
       <A href="apidocs/org/apache/xalan/xpath/xml/FormatterToText.html" target="_top">FormatterToText class</A>.</P></LI>
       <LI><P><A href="apidocs/org/apache/xalan/xpath/xml4j2dom/package-summary.html" target="_top">org.apache.xalan.xpath.xml4j2dom package</A> -- Contains the 
       <A href="apidocs/org/apache/xalan/xpath/xml4j2dom/XML4JLiaison4dom.html" target="_top">XML4JLiaison4dom class</A>, an extension of the XMLParserLiaisonDefault that provides an interface to
       XML4J Version 2.0.15.</P></LI>
       </UL>
       <P>Xalan packages:</P>
       <UL>
       <LI><P><A href="apidocs/org/apache/xalan/xslt/package-summary.html" target="_top">org.apache.xalan.xslt package</A> -- This is the main Xalan package.</P>
       <P>The <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html" target="_top">XSLTProcessor interface</A> defines the XSLT processor API. The 
       <A href="apidocs/org/apache/xalan/xslt/XSLTProcessorFactory.html" target="_top">XSLTProcessorFactory class</A> provides methods for creating an instance of the XSLT processor, 
       which actually uses <A href="apidocs/org/apache/xalan/xslt/XSLTEngineImpl.html" target="_top">XSLTEngineImpl class</A>, an implementation of XSLTProcessor that users never need
       to call directly.</P>
       <P>To perform a transformation, you also need <A href="apidocs/org/apache/xalan/xslt/XSLTInputSource.html" target="_top">XSLTInputSource class</A> objects to represent the the 
       XML source document and the XSL stylesheet, and an <A href="apidocs/org/apache/xalan/xslt/XSLTResultTarget.html" target="_top">XSLTResultTarget class</A> object to represent the
       result of the transformation.</P>
       </LI>
       <LI><P><A href="apidocs/org/apache/xalan/xslt/client/package-summary.html" target="_top">org.apache.xalan.xslt.client package</A> -- Contains 
       <A href="apidocs/org/apache/xalan/xslt/client/XSLTProcessorApplet.html" target="_top">XSLTProcessorApplet class</A>, a simple applet for hosting the Xalan processor.</P></LI>  
       <LI><P><A href="apidocs/org/apache/xalan/xslt/extensions/package-summary.html" target="_top">org.apache.xalan.xslt.extensions package</A> -- Contains <A href="apidocs/org/apache/xalan/xpath/extensions/Redirect.html" target="_top">Redirect class</A>, 
       an element extension class that allows an XSLT transformation to redirect its output to multiple FormatterListeners 
       and documents.</P></LI>
       <LI><P><A href="apidocs/org/apache/xalan/xslt/trace/package-summary.html" target="_top">org.apache.xalan.xslt.trace package</A> -- Contains a 
       <A href="#debugger-interface" target="_top">debugger interface</A> for Xalan.</P></LI>
       </UL>
       </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Performing XSL Transformations</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" h
eight="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
       <P>This release of Xalan supports three mechanisms for transforming an xml document.</P>
       <UL>
       <LI>Calling the Xalan processor from the command-line</LI>
       <LI>Calling the Xalan API from another java class</LI>
       <LI>Using the Xalan applet wrapper</LI>    
       </UL>
      <P>For information about performing transformation from the command-line or a script, see <A href="CommandLineUtility" target="_top"></A>.</P>
      <TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Calling the Xalan API from a java class</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resou
rces/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
      <P>In the java class where you want to perform an XSL transformation, do the following:</P>
      <OL> 
      <LI>Call one of the <A href="apidocs/org/apache/xalan/xslt/XSLTProcessorFactory.html" target="_top">XSLTProcessorFactory class</A> static getProcessor() methods to
       instantiate an implementation of the <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html" target="_top">XSLTProcessor interface</A>.
       <P>XSLTProcessorFactory uses XSLTEngineImpl, an implementation of the XSLTProcessor interface that you never need 
       to call directly.</P></LI>
       <LI><P>Create <A href="apidocs/org/apache/xalan/xslt/XSLTInputSource.html" target="_top">XSLTInputSource class</A> objects for the XML source document and the XSL stylesheet,
       and an <A href="apidocs/org/apache/xalan/xslt/XSLTResultTarget.html" target="_top">XSLTResultTarget class</A> object for the output.</P>
       <P>If the XML document contains a stylesheet Processing Instruction (PI), you do not need to create a separate
       XSLTInputSource object for an XSL stylesheet.</P></LI> 
       <LI><P>Call the  <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#process(org.apache.xalan.xslt.XSLTInputSource, org.apache.xalan.xslt.XSLTInputSource, org.apache.xalan.xslt.XSLTResultTarget)" target="_top">XSLTProcessor process() method</A>.</P></LI></OL>
       <P>In your application, for example, you could include the following transform method(), then call this method with file
       names or URLs for the source XML document, the XSL stylesheet and the new document to be produced.</P><DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="4" width="464"><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#ffffff" width="462"><FONT size="-1"><PRE>
  public static void transform(String xmlSourceURL, String xslURL, String outputURL)
    throws java.io.IOException, 
           java.net.MalformedURLException, 
           org.xml.sax.SAXException
  {
    // Instantiate an XSLTProcessor.
    org.apache.xalan.xslt.XSLTProcessor processor =
                   org.apache.xalan.xslt.XSLTProcessorFactory.getProcessor();
                   
    // Create the 3 objects the XSLTProcessor needs to perform the transformation.
    org.apache.xalan.xslt.XSLTInputSource xmlSource = 
                          new org.apache.xalan.xslt.XSLTInputSource (xmlSourceURL);
    org.apache.xalan.xslt.XSLTInputSource xslSheet = 
                         new org.apache.xalan.xslt.XSLTInputSource (xslURL);
    org.apache.xalan.xslt.XSLTResultTarget xmlResult = 
                         new org.apache.xalan.xslt.XSLTResultTarget (outputURL);
  
    // Perform the transformation.
    processor.process(xmlSource, xslSheet, xmlResult);
   }</PRE></FONT></TD><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></DIV>
       <P>The XSLTProcessor &quot;compiles&quot; the input XSL stylesheet into an internal representation,
       the <A href="apidocs/org/apache/xalan/xslt/Stylesheet.html" target="_top">Stylesheet class</A>.  You can compile the stylesheet separately,
       before the transformation is complete, via the <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#processStylesheet(java.lang.String)" target="_top">processStylesheet method</A>.  This is
       especially useful when you need to get information from the stylesheet before the tranformation occurs, 
       for instance, when you need to find out the output encoding in order to construct the right kind of Writer.</P>
       <P>Stylesheet parameters can be set via the <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#setStylesheetParam(java.lang.String, java.lang.String)" target="_top">setStylesheetParam method</A>.
       This method takes as input an <A href="apidocs/org/apache/xalan/xpath/XObject.html" target="_top">XObject class</A> or derivative. The 
       XObject class itself can hold any kind of Java object, if you need to pass it 
       to an extension.  Each XObject type has a convenience function on the XSLTProcessor class to make it easy 
       to create:</P>
       <UL>
       <LI><A href="apidocs/org/apache/xalan/xpath/XObject.html" target="_top">XObject class</A>, <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#createXObject(java.lang.Object)" target="_top">createXObject method</A></LI>
       <LI><A href="apidocs/org/apache/xalan/xpath/XNodeSet.html" target="_top">XNodeSet class</A>, <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#createXNodeSet(org.w3c.dom.NodeList)" target="_top">createXNodeSet(NodeList nl) method</A> or 
       <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#createXNodeSet(org.w3c.dom.Node)" target="_top">createXNodeSet(Node n) method</A></LI>
       <LI><A href="apidocs/org/apache/xalan/xpath/XBoolean.html" target="_top">XBoolean class</A>, <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#createXBoolean(boolean)" target="_top">createXBoolean method</A></LI>
       <LI><A href="apidocs/org/apache/xalan/xpath/XNumber.html" target="_top">XNumber class</A>, <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#createXNumber(double)" target="_top">createXNumber method</A></LI>
       <LI><A href="apidocs/org/apache/xalan/xpath/XNull.html" target="_top">XNull class</A>, <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#createXNull()" target="_top">createXNull method</A></LI>
       <LI><A href="apidocs/org/apache/xalan/xpath/XString.html" target="_top">XString class</A>, <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html#createXString(java.lang.String)" target="_top">createXString method</A></LI>
       </UL>
       <P>Xalan is thread-safe for one instance per thread.  However, 
       if you reuse the processor instance, you should call reset() between calls.</P>
       <P>The XPath engine has pluggable backend drivers called <A href="apidocs/org/apache/xalan/xpath/XLocator.html" target="_top">XLocator interface</A>s.
       The default implementation of the XLocator is the <A href="apidocs/org/apache/xalan/xpath/SimpleNodeLocator.html" target="_top">SimpleNodeLocator class</A>.
       Though users of the API can implement their own XLocators for custom data access, 
       it is not for the faint of heart.</P>         
  </FONT></TD></TR></TABLE><BR>
  
  <TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Using the Xalan applet</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace
="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <OL> 
  <LI><P>Include <A href="apidocs/org/apache/xalan/xslt/client/XSLTProcessorApplet.html" target="_top">XSLTProcessorApplet class</A> in an HTML client.</P></LI>
  <LI><P>Specify the XML source document and XSL stylesheet.</P>
  <P>You can use the DocumentURL and StyleURL PARAM tags or the <A href="apidocs/org/apache/xalan/xslt/client/XSLTProcessorApplet.html#setDocumentURL(java.lang.String)" target="_top">XSLTProcessorApplet setDocumentURL() method</A> and <A href="apidocs/org/apache/xalan/xslt/client/XSLTProcessorApplet.html#setStyleURL(java.lang.String)" target="_top">XSLTProcessorApplet setStyleURL() method</A>. If the XML document contains a stylesheet Processing Instruction (PI), you do not need to specify an XSL stylesheet.</P></LI>
  <LI>Call the <A href="apidocs/org/apache/xalan/xslt/client/XSLTProcessorApplet.html#transformToHtml(java.lang.String, java.lang.String)" target="_top">XSLTProcessorApplet transformHTML() method</A> which performs the transformation and returns the new document as a String.</LI></OL>
  </FONT></TD></TR></TABLE><BR>
  <A name="debugger-interface"></A> 
  </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Debugger Interface</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace=
"0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  		<P>Xalan contains a debugger interface in the org.apache.xalan.xslt.trace package. This
  		   should be looked upon as a work in progress, possibly to be replaced by a more 
  		   standard interface in the future. The source code information given is 
  		   somewhat limited by what the SAX interface provides... the line and column numbers 
  		   at the *end* of the event. I'll have to work on obtaining the character selection 
  		   of the executing event. Also, at this time there is no source tree line information 
  		   available.  Again, I'll be working on this. The interfaces are:</P> 
  		<UL>
  		  <LI><P>The <A href="apidocs/org/apache/xalan/xpath/trace/TraceListener.html" target="_top">TraceListener class</A> is an interface that debuggers 
  		  can implement. The interface can be set on the 
  		  <A href="apidocs/org/apache/xalan/xslt/XSLTProcessor.html" target="_top">XSLTProcessor interface</A> by calling the addTraceListener() function.</P></LI>
  		  <LI><P>The <A href="apidocs/org/apache/xalan/xpath/trace/PrintTraceListener.html" target="_top">PrintTraceListener class</A> is an implementation of 
  		  the TraceListener interface that is used by Xalan for the -TT, TG, and -TTC 
  		  switches.  It's code is a good example to look at when figuring out how to 
  		  use the trace functionality.</P></LI>
  		  <LI><P>The <A href="apidocs/org/apache/xalan/xpath/trace/TracerEvent.html" target="_top">TracerEvent class</A> is an event that is 
  		  passed to the TraceListener.trace() function.  It is called before a node is 'executed' 
  		  in the stylesheet.</P></LI>
  		  <LI><P>The <A href="apidocs/org/apache/xalan/xpath/trace/GenerateEvent.html" target="_top">GenerateEvent class</A> is an event that is 
  		  passed to the TraceListener.generated() function. It is called after an event 
  		  occurs to create something in the result tree.</P></LI>
  		</UL>
  	 </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Source Code</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" s
rc="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
  		<P>The source code is in the <A href="../src" target="_top">'xml-xalan/src' directory</A>.</P> 
  		<P>The <A href="src/org/apache/xalan/xslt/XSLTEngineImpl.java" target="_top">XSLTEngineImpl class</A> class is where the main
  		  stuff is going on. This is a big file, so I highly recommend using an IDE.</P> 
  		<P> The XPaths are parsed in the
  		  <A href="apidocs/org/apache/xalan/xpath/XPathProcessorImpl.html" target="_top">XPathProcessorImpl class</A>, the result XPath object is
  		  performed in the <A href="apidocs/org/apache/xalan/xpath/XPath.html" target="_top">XPath class</A>, and the query and pattern
  		  match is performed in the <A href="apidocs/org/apache/xalan/xpath/SimpleNodeLocator.html" target="_top">SimpleNodeLocator class</A>&gt;.</P> 
  	 </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Glossary</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src=
"resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
        <DL>
          <DT>XSL Instruction</DT>
          <DD>Any tag with an XSL namespace prefix.<P></P></DD>
          
          <DT>XSL Template Instruction</DT>
          <DD>Any tag with an XSL namespace prefix
              that occurs inside an xsl:template element.<P></P></DD>
              
          <DT>Template Child</DT>
          <DD>Any node that is a child of an xsl:template element.<P></P></DD>
          
          <DT>Source Tree</DT>
          <DD>The tree input to the XSL process.<P></P></DD>
          
          <DT>Result Tree</DT>
          <DD>The tree that is output by the XSL process.<P></P></DD>
          
          <DT>Stylesheet Tree</DT>
          <DD>The stylesheet tree produced from the XSL file.<P></P></DD>
          
          <DT>Pattern List</DT>
          <DD>A parsed query or match pattern.<P></P></DD>
        </DL>
      </FONT></TD></TR></TABLE><BR></TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I>
                Copyright  1999 The Apache Software Foundation.
                All Rights Reserved.
              </I></FONT></TD></TR></TABLE></BODY></HTML>
  
  
  1.1                  xml-site/targets/xalan/commandline.html
  
  Index: commandline.html
  ===================================================================
  <HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Command-Line Utility</TITLE></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="graphics/commandline-header.jpg" vspace="0" width=
"456"></TD></TR><TR><TD align="left" height="20" valign="top" width="168"><IMG border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A h
ref="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
  <A href="../index.html" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="overview.html" onMouseOut="rolloverOff('side-overview');" onMouseOver="rolloverOn('side-overview');"><IMG alt="Release Notes" border="0" height="12" hspace="0" name="side-overview" onLoad="rolloverLoad('side-overview','graphics/overview-label-2.jpg','graphics/overview-label-3.jpg');" src="graphics/overview-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
  <A href="install.html" onMouseOut="rolloverOff('side-install');" onMouseOver="rolloverOn('side-install');"><IMG alt="Installation" border="0" height="12" hspace="0" name="side-install" onLoad="rolloverLoad('side-install','graphics/install-label-2.jpg','graphics/install-label-3.jpg');" src="graphics/install-label-3.jpg" vspace="0" width="120"></A><BR>
  
  <A href="readme.html" onMouseOut="rolloverOff('side-readme');" onMouseOver="rolloverOn('side-readme');"><IMG alt="Release Notes" border="0" height="12" hspace="0" name="side-readme" onLoad="rolloverLoad('side-readme','graphics/readme-label-2.jpg','graphics/readme-label-3.jpg');" src="graphics/readme-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
              
  <IMG alt="Command Line" border="0" height="12" hspace="0" src="graphics/commandline-label-1.jpg" vspace="0" width="120"><BR>
  
  <A href="api.html" onMouseOut="rolloverOff('side-api');" onMouseOver="rolloverOn('side-api');"><IMG alt="XalanAPI" border="0" height="12" hspace="0" name="side-api" onLoad="rolloverLoad('side-api','graphics/api-label-2.jpg','graphics/api-label-3.jpg');" src="graphics/api-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="dtm.html" onMouseOut="rolloverOff('side-dtm');" onMouseOver="rolloverOn('side-dtm');"><IMG alt="Xalan DTM" border="0" height="12" hspace="0" name="side-dtm" onLoad="rolloverLoad('side-dtm','graphics/dtm-label-2.jpg','graphics/dtm-label-3.jpg');" src="graphics/dtm-label-3.jpg" vspace="0" width="120"></A><BR>            
     
  <IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" hei
ght="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Using the Command-Line Utility</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
        <P>To perform a transformation, you can call Xalan from the command line (or script), 
        an applet, an application, or a servlet. see <A href="api.xml-index.html" target="_top">API Overview</A> and <A href="apidocs/index.html" target="_top">API Documentation</A>.</P>
       <P>The org.apache.xml.xslt4j.Process main() method provides a comand-line interface
      for performing XSL transformation. To perform a transformation from the command line or a script,
      do the following:</P>
   		<OL>
      <LI><P>Install Xalan. See <A href="install.xml-index.html" target="_top">Installing Xalan</A>.</P></LI> 
      <LI><P>Set the java Classpath to include xalan.jar and xerces.jar.</P>.</LI>
      <LI><P>Call java and the Process class with the appropriate switches and
      arguments (described below). The following command line, for example, includes the -IN, -XSL,
      and -OUT switches with their accompanying arguments -- the XML source document, the XSL
      stylesheet, and the output file:</P>
      <CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process -IN foo.xml -XSL foo.xsl -OUT foo.out</FONT></CODE>
      </LI></OL>
      <P>The command line utility can take the following switches and arguments:</P> 
        <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="4" width="464"><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#ffffff" width="462"><FONT size="-1"><PRE>
          -IN inputXMLURL
          -XSL XSLTransformationURL
          -OUT outputFileName
          -LXCIN compiledStylesheetFileNameIn
          -LXCOUT compiledStylesheetFileNameOut (it will be big!)
          -PARSER fully qualified class name of parser liaison
          -E (Keep--do not expand -- entity refs)
          -V (Version info)
          -QC (Quiet Pattern Conflicts Warnings)
          -Q  (Quiet Mode)
          -LF (Use linefeeds only on output -- default is CR/LF)
          -CR (Use carriage returns only on output -- default is CR/LF)
          -INDENT (Number of spaces to indent each level in output tree --default is 0)
          -TT (Trace the templates as they are being called)
          -TG (Trace each result tree generation event)
          -TS (Trace each selection event)
          -TTC (Trace the template children as they are being processed)
          -VALIDATE (Validate the XML and XSL input -- validation is off by default)
          -EDUMP [optional]FileName (Do stackdump on error)
          -XML (Use XML formatter and add XML header)
          -TEXT (Use simple Text formatter)
          -HTML (Use HTML formatter)
          -PARAM name expression (Set a stylesheet parameter)
        </PRE></FONT></TD><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></DIV>
        <P>Use -IN to specify the XML source document. To specify the XSL stylesheet, use -XSL 
        or -LXCIN. To compile an XSL stylesheet for future use as -LXCIN input, use -LXCOUT.</P>
        <P>Include -PARSER if you supply your own parser liaison class, which is required
        if you do not use the Xerces parser.</P>
        <P>Use -TEXT if you want the output to include only element values (not element tags with element names and
        attributes). Use -HTML to write 4.0 transitional HTML (some elements, such as ltxxbr&gt;, are
        not well formed.</P>
        <P>To set stylesheet parameters from the command line, use -PARAM name expression. If 
        you want to set the parameter to a string value, enclose the string in single quotes (') to
        make it an expression.</P>
     </FONT></TD></TR></TABLE><BR></TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I>
                Copyright  1999 The Apache Software Foundation.
                All Rights Reserved.
              </I></FONT></TD></TR></TABLE></BODY></HTML>
  
  
  1.1                  xml-site/targets/xalan/install.html
  
  Index: install.html
  ===================================================================
  <HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Installation</TITLE></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="graphics/install-header.jpg" vspace="0" width="456"></TD><
/TR><TR><TD align="left" height="20" valign="top" width="168"><IMG border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://
www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
  <A href="../index.html" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="overview.html" onMouseOut="rolloverOff('side-overview');" onMouseOver="rolloverOn('side-overview');"><IMG alt="Release Notes" border="0" height="12" hspace="0" name="side-overview" onLoad="rolloverLoad('side-overview','graphics/overview-label-2.jpg','graphics/overview-label-3.jpg');" src="graphics/overview-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
  <IMG alt="Installation" border="0" height="12" hspace="0" src="graphics/install-label-1.jpg" vspace="0" width="120"><BR>
  
  <A href="readme.html" onMouseOut="rolloverOff('side-readme');" onMouseOver="rolloverOn('side-readme');"><IMG alt="Release Notes" border="0" height="12" hspace="0" name="side-readme" onLoad="rolloverLoad('side-readme','graphics/readme-label-2.jpg','graphics/readme-label-3.jpg');" src="graphics/readme-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
              
  <A href="commandline.html" onMouseOut="rolloverOff('side-commandline');" onMouseOver="rolloverOn('side-commandline');"><IMG alt="Command Line" border="0" height="12" hspace="0" name="side-commandline" onLoad="rolloverLoad('side-commandline','graphics/commandline-label-2.jpg','graphics/commandline-label-3.jpg');" src="graphics/commandline-label-3.jpg" vspace="0" width="120"></A><BR>
  
  <A href="api.html" onMouseOut="rolloverOff('side-api');" onMouseOver="rolloverOn('side-api');"><IMG alt="XalanAPI" border="0" height="12" hspace="0" name="side-api" onLoad="rolloverLoad('side-api','graphics/api-label-2.jpg','graphics/api-label-3.jpg');" src="graphics/api-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="dtm.html" onMouseOut="rolloverOff('side-dtm');" onMouseOver="rolloverOn('side-dtm');"><IMG alt="Xalan DTM" border="0" height="12" hspace="0" name="side-dtm" onLoad="rolloverLoad('side-dtm','graphics/dtm-label-2.jpg','graphics/dtm-label-3.jpg');" src="graphics/dtm-label-3.jpg" vspace="0" width="120"></A><BR>            
     
  <IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" hei
ght="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Installation Instructions</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  
       <OL> 
  		   <LI><P>Install <A href="http://java.sun.com/products/jdk/1.2/" target="_top">Sun's JDK-1.2</A> or <A href="http://java.sun.com/products/jdk/1.2/jre/index.html" target="_top">Sun's JRE-1.2</A>.
        (Xalan should also work fine with 1.1.6 or later versions of the JDK or Java
        runtime.)</P></LI> 
  		  <LI><P>Download <A href="http://www.alphaworks.ibm.com/tech/xml4j" target="_top">Version 3.0.0 of the XML Parser for Java</A>.</P></LI> 
  		 <LI><P>Download Xalan.</P></LI>
  		  <LI><P>Add Xerces and Xalan to the system classpath, or copy the Xerces jar
  			 into the Xalan directory. To add Xerces and Xalan onto the system classpath,
         include something like:</P>
         <P><CODE><FONT face="courier, monospaced">set CLASSPATH=\xml-xalan\xalan.jar;\xml-xerces\java\xerces.jar;%CLASSPATH%</FONT></CODE></P>
         <P>in your autoexec.bat.</P></LI>  
        
  		</OL>
  	</FONT></TD></TR></TABLE><BR></TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I>
                Copyright  1999 The Apache Software Foundation.
                All Rights Reserved.
              </I></FONT></TD></TR></TABLE></BODY></HTML>
  
  
  1.1                  xml-site/targets/xalan/overview.html
  
  Index: overview.html
  ===================================================================
  <HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>XSLT4J Overview</TITLE></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="graphics/overview-header.jpg" vspace="0" width="456"></
TD></TR><TR><TD align="left" height="20" valign="top" width="168"><IMG border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="htt
p://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
  <A href="../index.html" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <IMG alt="Release Notes" border="0" height="12" hspace="0" src="graphics/overview-label-1.jpg" vspace="0" width="120"><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
  <A href="install.html" onMouseOut="rolloverOff('side-install');" onMouseOver="rolloverOn('side-install');"><IMG alt="Installation" border="0" height="12" hspace="0" name="side-install" onLoad="rolloverLoad('side-install','graphics/install-label-2.jpg','graphics/install-label-3.jpg');" src="graphics/install-label-3.jpg" vspace="0" width="120"></A><BR>
  
  <A href="readme.html" onMouseOut="rolloverOff('side-readme');" onMouseOver="rolloverOn('side-readme');"><IMG alt="Release Notes" border="0" height="12" hspace="0" name="side-readme" onLoad="rolloverLoad('side-readme','graphics/readme-label-2.jpg','graphics/readme-label-3.jpg');" src="graphics/readme-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
              
  <A href="commandline.html" onMouseOut="rolloverOff('side-commandline');" onMouseOver="rolloverOn('side-commandline');"><IMG alt="Command Line" border="0" height="12" hspace="0" name="side-commandline" onLoad="rolloverLoad('side-commandline','graphics/commandline-label-2.jpg','graphics/commandline-label-3.jpg');" src="graphics/commandline-label-3.jpg" vspace="0" width="120"></A><BR>
  
  <A href="api.html" onMouseOut="rolloverOff('side-api');" onMouseOver="rolloverOn('side-api');"><IMG alt="XalanAPI" border="0" height="12" hspace="0" name="side-api" onLoad="rolloverLoad('side-api','graphics/api-label-2.jpg','graphics/api-label-3.jpg');" src="graphics/api-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="dtm.html" onMouseOut="rolloverOff('side-dtm');" onMouseOver="rolloverOn('side-dtm');"><IMG alt="Xalan DTM" border="0" height="12" hspace="0" name="side-dtm" onLoad="rolloverLoad('side-dtm','graphics/dtm-label-2.jpg','graphics/dtm-label-3.jpg');" src="graphics/dtm-label-3.jpg" vspace="0" width="120"></A><BR>            
     
  <IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" hei
ght="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Introduction</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
      <P>Xalan (named after a rare musical instrument) provides high- 
        performance XSL stylesheet processing. Xalan fully implements the W3C 
        XSLT recommendation. The stylesheet processor is feature rich and 
        robust. 
      </P>
      <P>XSL is a language for expressing stylesheets and other types of transformations. 
  		It consists of two parts:</P> 
  		  <OL> 
  		    <LI><P>XLST, a language for transforming XML documents into other XML documents,
          HTML documents, or other document types. This part of the language includes the XML 
        XSLT vocabulary and 
        XPath, a language for addressing parts of an XML document. XPath is designed to be used by both XSLT and XPointer.</P></LI>
  		    <LI><P>An XML vocabulary for specifying formatting semantics (called <I>Formatting
          Objects</I>).</P></LI> 
  			</OL> 
  
  		  <P>Xalan implements the first part of
  		    XSL, the <A href="http://www.w3.org/TR/1999/REC-xslt-19991116" target="_top">W3C Recommendation 16 November 1999 XSL Transformations (XSLT) Version 1.0</A>. An XSLT stylesheet specifies the
         transformation that may be performed with a range of XML documents by describing how to
         transform such a tree of nodes into another XML tree of nodes. <TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>The XSLT stylesheet may
         include cascading style sheets (CSS) in the result.</I></FONT></TD></TR></TABLE></P>
         <P>In the following example, the foo.xsl stylesheet is used to transform foo.xml into foo.out:</P>
         <P>foo.xml:</P>
          <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="4" width="464"><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#ffffff" width="462"><FONT size="-1"><PRE>
  ?xml version=&quot;1.0&quot;?&gt;
  doc&gt;Hello/doc&gt;
          </PRE></FONT></TD><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></DIV>
          <P>foo.xsl:</P>
          <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="4" width="464"><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#ffffff" width="462"><FONT size="-1"><PRE>
  xx?xml version=&quot;1.0&quot;?&gt; 
  xsl:stylesheet xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot; version=&quot;1.0&quot;&gt;
  xsl:template match=&quot;doc&quot;&gt;
  out&gt;xsl:value-of select=&quot;.&quot;/&gt;/out&gt;
  /xsl:template&gt;
  /xsl:stylesheet&gt;</PRE></FONT></TD><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></DIV>
        <P>foo.out:</P><DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="4" width="464"><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#ffffff" width="462"><FONT size="-1"><PRE>
  out&gt;Hello/out&gt;</PRE></FONT></TD><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="462"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="462"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></DIV>
  		  <P>By default, Xalan uses Xerces 
        to parse input XML documents and XSL stylesheets, but it can be adapted to work with 
        other DOM-producing mechanisms.</P>
        <P>During the course of a transformation, Xalan produces SAX events, 
        an output DOM, or an XML result document based on the transformations specified in the 
        XSL stylesheet.</P>
        </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>XSLT4J Features</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspa
ce="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  	    <UL> 
  		    <LI>Implements the <A href="http://www.w3.org/TR/1999/REC-xslt-19991116" target="_top">W3C Recommendation 16 November 1999 XSL Transformations (XSLT) Version 1.0</A>.</LI> 
      	  <LI>Uses Xerces&gt;</LI>
      	  <LI>Can interface to any XML parser that produces Java DOM Trees</LI>
      	  <LI>Can output to SAX or DOM</LI>
      	  <LI>Includes an applet wrapper</LI>
          <LI>Supports Java and JavaScript extensions</LI>
          <LI>Supports the production in a single operation 
          of multiple output documents</LI>        
  	    </UL> 
  	  </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Contact Info and Bug Reports</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" heigh
t="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
    		<P>Contact information for Xalan:
  			 <A href="mailto:scott_boag@lotus.com">Scott Boag</A></P>  
  	  </FONT></TD></TR></TABLE><BR></TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I>
                Copyright  1999 The Apache Software Foundation.
                All Rights Reserved.
              </I></FONT></TD></TR></TABLE></BODY></HTML>
  
  
  1.1                  xml-site/targets/xalan/readme.html
  
  Index: readme.html
  ===================================================================
  <HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Release Notes</TITLE></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="graphics/readme-header.jpg" vspace="0" width="456"></TD><
/TR><TR><TD align="left" height="20" valign="top" width="168"><IMG border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://
www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
  <A href="../index.html" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="overview.html" onMouseOut="rolloverOff('side-overview');" onMouseOver="rolloverOn('side-overview');"><IMG alt="Release Notes" border="0" height="12" hspace="0" name="side-overview" onLoad="rolloverLoad('side-overview','graphics/overview-label-2.jpg','graphics/overview-label-3.jpg');" src="graphics/overview-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
  <A href="install.html" onMouseOut="rolloverOff('side-install');" onMouseOver="rolloverOn('side-install');"><IMG alt="Installation" border="0" height="12" hspace="0" name="side-install" onLoad="rolloverLoad('side-install','graphics/install-label-2.jpg','graphics/install-label-3.jpg');" src="graphics/install-label-3.jpg" vspace="0" width="120"></A><BR>
  
  <IMG alt="Release Notes" border="0" height="12" hspace="0" src="graphics/readme-label-1.jpg" vspace="0" width="120"><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>            
              
  <A href="commandline.html" onMouseOut="rolloverOff('side-commandline');" onMouseOver="rolloverOn('side-commandline');"><IMG alt="Command Line" border="0" height="12" hspace="0" name="side-commandline" onLoad="rolloverLoad('side-commandline','graphics/commandline-label-2.jpg','graphics/commandline-label-3.jpg');" src="graphics/commandline-label-3.jpg" vspace="0" width="120"></A><BR>
  
  <A href="api.html" onMouseOut="rolloverOff('side-api');" onMouseOver="rolloverOn('side-api');"><IMG alt="XalanAPI" border="0" height="12" hspace="0" name="side-api" onLoad="rolloverLoad('side-api','graphics/api-label-2.jpg','graphics/api-label-3.jpg');" src="graphics/api-label-3.jpg" vspace="0" width="120"></A><BR>
  <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
  <A href="dtm.html" onMouseOut="rolloverOff('side-dtm');" onMouseOver="rolloverOn('side-dtm');"><IMG alt="Xalan DTM" border="0" height="12" hspace="0" name="side-dtm" onLoad="rolloverLoad('side-dtm','graphics/dtm-label-2.jpg','graphics/dtm-label-3.jpg');" src="graphics/dtm-label-3.jpg" vspace="0" width="120"></A><BR>            
     
  <IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" hei
ght="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Disclaimer</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
      <P>In its current form, Xalan is a Developer Preview, not a product.
      It implements a draft standard that is still in design.  APIs will continue to change, 
      with no promise of backwards compatibility.  This software contains known and unknown bugs.  
      We recommend against using this software for mission critical applications.  
      The Apache Software Foundation will not take responsibility for any problems that may ensue
      from using this software.</P>
   		<P>For a general overview of Xalan, see <A href="overview.xml-index.html" target="_top">Overview: XSL Transformer for Java</A>. For information about the Xalan
       API, see <A href="api.xml-index.html" target="_top">API Overview</A> and <A href="apidocs/index.html" target="_top">API Documentation</A>.</P>    
  		<P>For the Apacke Software License, see <A href="http://xml.apache.org/dist/LICENSE.txt" target="_top">The Apache Software License, Version 1.1</A>.</P> 
  	</FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Performance Notes</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace=
"0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
  		<P>We have done a great deal in versions 0.18 and 0.19 to improve performance. However, as these things often go, we
      have not yet met our goal for a 10-fold performance increase. We provide his list of what we understand the bottlenecks
      to be so that you may understand and, in some cases, work around them. The bottlenecks appear
      to be:</P> 
  		<DL> 
  		  <DT>Class load and JIT (Just In Time compiler)</DT> 
  		  <DD>As we've added architecture to improve raw transform performance, we've 
  		        also increased the number of classes and class instances that need loading, and 
  		        the amount of code that needs JIT compiling.  Although we can shrink the code size 
  		        a bit, the time required to load the processor will continue to be an issue.  The 
  		        one thing the caller of the API can do is pre-warm the JIT by transforming 
  		        a dummy document. For an example of this technique, see the init() method in the 
  		        <A href="XSLTProcessorAppletDoc" target="_top"></A>. During applet 
              initialization, a dummy document is transformed, so the response time for performing &quot;real&quot; 
              transformations will be reasonable.<P></P></DD> 
  		   <DT>Stylesheet Compilation</DT>
  		   <DD>Xalan now reads the stylesheet from the parser's SAX events (unless you 
  		         give it a DOM, in which case it produces SAX events from the DOM), and builds
  		         an internal tree structure. This structure processes the attributes, precompiles 
  		         the XPath expressions, and does other things that can be done before it knows
  		         about the input tree. The construction of large stylesheets is not as fast as 
  		         we would like. We have been focusing on the transformation itself, and will 
  		         have to concentrate on optimizing the stylesheet compilation down the road a bit.<P></P>
  		        </DD>
  		   <DT>The DOM</DT>
  		   <DD>DOM nodes are big.  Every node, including attribute nodes and whitespace nodes, 
  		        have a next, previous, parent, first child, last child, ownerDocument, name, value, userData,
  		        and a few internal flags. So building the input DOM can take a lot of memory 
  		        management. We are working on ways to get around this when Xalan builds 
  		        the input tree, while still maintaining our DOM input architecture.<P></P></DD>
  		   <DT>Union Sorting in Document Order</DT>
  		   <DD>XSLT has to return nodes in document order. Determining document order from 
  		         a pure DOM is difficult. We have developed a method to determine the order
  		         that is pretty good, but it is not as fast as simply determining document order 
  		         based on a integer.  Also, the collation method of combining two node lists 
  		         is not as effecient as it needs to be, simply because we haven't had time to 
  		         address it yet (the issues are more complex than was first apparent).  The net 
  		         of this is that union expressions aren't scalable to large node sets.  For instance,
  		         we have one user who has a large document with 3800 elements right under the 
  		         root node, and they apply a standard 
  		         select=&quot;*|@*|comment()|processing-instruction()|text()&quot; expression to these 
  		         nodes. The 3800 elements happen to have 3800 whitespace nodes interleafed 
  		         between them, and the union selection has to create a nodelist of 3800 elements 
  		         and 3800 whitespace nodes, and combine them, testing for document order as 
  		         it goes.  As a result, the processing takes forever.  We're working on ways 
  		         to fix this, but, the answer for this user was to not do the union selection 
  		         at the top level (they didn't care about the whitespace nodes anyway).<P></P>
  		        </DD>
  		     <DT>Selects in Large Documents</DT>
  		     <DD>Xalan currently builds no inverted indexes for the input document, and 
  		           does not take advantage of DTD structures to optimize, and otherwise does 
  		           no special magic to locate nodes other than try to implement efficient 
  		           algorithms.  While inverted indexes and taking advantage of DTD structures 
  		           are on our list for options, users should be aware that patterns such as 
  		           '//foo' at the top of the tree can be expensive.<P></P>
  		        </DD>
  		     <DT>xsl:number and xsl:sort</DT>
  		     <DD>Both sorting and numbering are not as efficient as they could be.
  		     </DD>
      	</DL>
  	 </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>API</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="reso
urces/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
  		<P>Please see the <A href="api.xml-index.html" target="_top">API Overview</A> for
  		  information about the Xalan Application Programmer's Interface and the 
  		  source code.</P> 
  		<P>The <A href="apidocs/index.html" target="_top">API Documentation</A> is in the <A href="apidocs" target="_top">'apidocs' directory</A>.</P> 
  	 </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Tips</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="res
ources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
        <UL>
     		     <LI>Xalan is thread-safe with an instance per thread.  You can not run 
             the same instance in multiple threads.<P></P></LI>
  		       <LI>Xalan contains a DTD for XSL when used for HTML. (Thanks be to
             Henrique M. Holschuh for this). This DTD should not be used for run-time
             production when performance is a concern, but is useful during the development
             stages. It is used in the readme XSL.<P></P></LI> 
          <LI>
          The rule for whitespace that can be stripped is as follows:<BR>
          If a text node contains whitespace followed by a non-whitespace 
          character followed by whitespace, none of the whitespace is ever 
          stripped.  If a text node is all whitespace, and does not have 
          siblings that are character data, it should be stripped.  A 
          CDATA section is interpreted as character data.<P></P>
          </LI>
          <LI>
          Be aware that select arguments for variables, or arguments passed through the 
          command line via the -PARAM switch, are expressions, not strings.  So to set 
          a variable to a string you need to do:<BR>
          <CODE><FONT face="courier, monospaced">
          &lt;xsl:variable name=&quot;ExpressionTest&quot; 
                                 select=&quot;'A test for xsl:constant and xsl:value-of'&quot;/&gt;
          </FONT></CODE><BR>
          Notice the extra single quotes (').<P></P>
          </LI>
          <LI>
          If you're using an XSL stylesheet with a DTD, attributes typed as IDs will 
          have a problem when you try and put an attribute template into them.  Just 
          something to watch out for.  We don't really have a solution for this, 
          except that you probably can't type literal result element attributes as 
          IDs for the XSL stylesheet.<P></P>
          </LI>
        </UL>
      </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Redirect Extension (Multiple Output Docs)</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG bo
rder="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
        <P>Xalan has a built in extension to let you produce multiple output documents 
        from a single stylesheet.  The extension is limited right now to producing 
        files, when the output method is &quot;xml&quot;, &quot;html&quot;, or &quot;text&quot;. See <A href="apidocs/org/apache/xalan/xpath/extensions/Redirect.html" target="_top">Redirect class</A> for details.</P>
      </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Version Notes</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="
0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
       <TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Things completed since the last version</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="reso
urces/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
    <P>Changes since version 0.19.0:</P>
      <UL>
        <LI><P>Fixed some major threading problems.  The stylesheet build is now 
        threadsafe processor instance per thread, the stylesheet is safe to be shared 
        over multiple threads.</P></LI>
        <LI><P>Fixed template conflicts when priority is different but pattern 
        is the same.  Also broke template handling into a TemplateList class, in 
        order to make it easier to navigate around template management and template 
        match resolution.</P></LI>
        <LI><P>match pattern &quot;node()&quot; now only matches non-attributes, as per: &quot;A pattern 
        is defined to match a node if and only if there is possible context such that 
        when the pattern is evaluated as an expression with that context, the node is 
        a member of the result.</P></LI>
        <LI><P>Pipe test now works properly.</P></LI>
        <LI><P>Fixed order of comparisons with nodesets, i.e. &quot;2  foo&quot; vs. &quot;foo  2&quot;.</P></LI>
        <LI><P>Fixed attribute set evaluation order.</P></LI>
        <LI><P>Fixed bad error messages when document(...) function fails, but the 
        error resources should come from the XSLT engine, and not from the XPath engine, 
        so this needs a longer term fix.</P></LI>
        <LI><P>Fix for xsl:copy-of for root node, if we just copy the whole document, a 
        startDoc and endDoc get, generated, so we need to only walk the child nodes.</P></LI>
        <LI><P>Fixed data being lost for PIs.</P></LI>
        <LI><P>Use string conversion for comparison of two result tree fragments.</P></LI>
        <LI><P>Trim whitespace before conversion to number in getNumberFromNode.</P></LI>
        <LI><P>Fixed URL encoding so that &gt;8 and  128  are left alone, all other chars 
        are escaped with the % encoding.</P></LI>
        <LI><P>Fixed minor bugs relating to extension handling, updated to new BSF.</P></LI>
        <LI><P>Fix for bug with not outputting the DOCTYPE name.</P></LI>
        <LI><P>Fixed normalization of cr/lf of input.</P></LI>
        <LI><P>Provide conversion of xsl:use attribute result to a string, if it is not 
        a node-set.</P></LI>
        <LI><P>Support for XLocator callbacks and depth-first in-order searches.  Not 
        enabled at the moment.</P></LI>
        <LI><P>Fixed order of evaluation for relational and equality operators, i.e. 
        &quot;1  2 = 1&quot;.</P></LI>
        <LI><P>Added union method to XLocator interface.  Tried depth-first union searches, 
        but put it on hold for the time being... code is commented out for right now.</P></LI>
        <LI><P>Only return a name for attributes, elements, and PIs, otherwise return 
        empty string.</P></LI>
        <LI><P>Fixes for self::@foo patterns.</P></LI>
        <LI><P>Added new collection classes for various optimizations.</P></LI>
        <LI><P>Performance tuning, better whitespace handling.</P></LI>
        <LI><P>Integration with Assaf's Serializer classes, though I still use the 
        Formatter listeners as the default.  The Formatter Listeners now implements Assafs 
        interface.</P></LI>
        <LI><P>Added support for xsl:namespace-alias</P></LI>
        <LI><P>Fixed HTML output method with document type declaration</P></LI>
        <LI><P>Added support for xsl:decimal-format.</P></LI>
        <LI><P>Fixed xsl-sort to ignore lang attribute with data-type=&quot;number&quot;.</P></LI>
        <LI><P>Renameed xml-declaration attribute of xsl:output to omit-xml-declaration.</P></LI>
        <LI><P>Renamed normalize function to normalize-space.</P></LI>
        <LI><P>Fixed xsl:output to output DOCTYPE as first element</P></LI>
        <LI><P>Fixed system-property function to use information from a properties file.</P></LI>
        <LI><P>Fixed xsl:message to ouput just the message.</P></LI>
        <LI><P>Check for command line errors in Process.java.</P></LI>
        <LI><P>Implement terminate attribute for xsl:message.</P></LI>
        <LI><P>Fixed round() function to round towards plus infinity.</P></LI>
        <LI><P>Handle incorrect use of disable-output-escaping attribute of xsl:text .</P></LI>
      </UL>
  </FONT></TD></TR></TABLE><BR>    
  
       <TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Things still to be done</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" 
vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
    <P>We still need to do the following:</P>
      <UL>
        <LI><P>attribute:: and child:: (ChildOrAttributeAxisSpecifier) in patterns are not 
        yet implemented.</P></LI>
        <LI><P>The main focus for the next release (0.19.2) will be performance.</P></LI>
        <LI><P>Extensions need further work to become more robust and less confusing.</P></LI>
        <LI><P>Beyond this, and a few other minor conformance issues, the goal is to 
        reach a level of stability that can be tagged as a 1.0.0 release.</P></LI>
      </UL>
  </FONT></TD></TR></TABLE><BR>    
  
       <TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Known bugs</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" wi
dth="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
    <P>We are aware of the following bugs (SPR ID# and description):</P>
      <UL>                                
  <LI><P>DMAN465L5N&nbsp;&nbsp;Browser hangs when running demo</P></LI>
  <LI><P>DMAN465R2V&nbsp;&nbsp;LotusXSL demo page doesn't work in HotJava Browser/Linux</P></LI>
  <LI><P>DMAN465KYD&nbsp;&nbsp;Demo page exposes possible timing issue</P></LI>
  <LI><P>SBOG45VNAM&nbsp;&nbsp;uri() function doesn't take into account the base uri of the stylesheet</P></LI>
  <LI><P>DMAN46HSBF&nbsp;&nbsp;Non-expanded entity references are lost</P></LI>
  <LI><P>SBOG45UNB6&nbsp;&nbsp;Need better error reporting in Browsers</P></LI>
  <LI><P>DMAN465LF8&nbsp;&nbsp;Problem with relative URIs in nested import/include</P></LI>
  <LI><P>DMAN4DHPJT&nbsp;&nbsp;Numeric sorting of NaN inconsistent; spec doesn't address</P></LI>
  <LI><P>MMIY4ELLNZ&nbsp;&nbsp;Error reporting mechanism needs major improvements</P></LI>
  <LI><P>PDIK4DVTJS&nbsp;&nbsp;Marginal error reporting for toplevel elements with undefined namespaces.</P></LI>
  <LI><P>DMAN4DXQLE&nbsp;&nbsp;Mistaken use of I instead of &quot;or&quot; causes a crash</P></LI>
  <LI><P>PDIK4DRPKM&nbsp;&nbsp;Use of 9/5 in a xpath expression generates a cryptic error message</P></LI>
  <LI><P>PDIK4E6MR3&nbsp;&nbsp;Concat() and last() do not check for number of arguments</P></LI>
  <LI><P>SCUU4EMMUC&nbsp;&nbsp;ValidateXPath sample throws exception with illegal xpath</P></LI>
  <LI><P>DMAN4E7UU8&nbsp;&nbsp;Included stylesheets need distinguished namespaces, etc.</P></LI>
  <LI><P>PDIK4DJS4Q&nbsp;&nbsp;cdata-section-elements not outputting literal result element correctly</P></LI>
  <LI><P>PDIK4E4KCL&nbsp;&nbsp;Not allowed to have xsl:apply-imports within a xsl:for-each</P></LI>
  <LI><P>PDIK4E6NZE&nbsp;&nbsp;Stylesheet should not contain more then 1 template with the same name</P></LI>
  <LI><P>DMAN4DHPAR&nbsp;&nbsp;LotusXSL should escape double-quotes in attribute</P></LI>
  <LI><P>SCUU4ELPRP&nbsp;&nbsp;TestThreads: running processors on multiple threads throws exceptions</P></LI>
  <LI><P>SCUU4ELPVP&nbsp;&nbsp;Performance: XT is often faster than LotusXSL</P></LI>
  <LI><P>SCUU4ELPWT&nbsp;&nbsp;Samples do not compile from LotusXSL distribution</P></LI>
      </UL>
   <P>The format-number function sometimes behaves incorrectly when the second argument (pattern-string) has two sub-patterns for positive and negative numbers. You may find that you do not get a minus sign on negative numbers. You can either avoid using the second pattern or insert a literal minus sign at the front of the second pattern. If you choose the latter, you will have to re-edit the pattern when we fix the problem. There may also be incorrect behavior if you set the zer0-digit to a different character.</P>
  </FONT></TD></TR></TABLE><BR>    
  
     </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Contact Info and Bug Reports</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" heigh
t="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
            <P>Contact information for Xalan: <A href="mailto:scott_boag@lotus.com">Scott Boag</A></P>
  	 </FONT></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Glossary</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src=
"resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"></TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
  		<DL> 
  		  <DT>XSL Instruction</DT> 
  		  <DD>Any tag with an XSL namespace prefix.<P></P></DD> 
  		  <DT>XSL Template Instruction</DT> 
  		  <DD>Any tag with an XSL namespace prefix that occurs inside an
  			 xsl:template element.<P></P></DD> 
  		  <DT>Template Child</DT> 
  		  <DD>Any node that is a child of an xsl:template element.<P></P></DD> 
  		  <DT>Source Tree</DT> 
  		  <DD>The tree input to the XSL process.<P></P></DD> 
  		  <DT>Result Tree</DT> 
  		  <DD>The tree that is output by the XSL process.<P></P></DD> 
  		  <DT>Stylesheet Tree</DT> 
  		  <DD>The stylesheet tree produced from the XSL file.<P></P></DD> 
  		  <DT>Pattern List</DT> 
  		  <DD>A parsed query or match pattern.<P></P></DD> 
  		</DL> 
  	 </FONT></TD></TR></TABLE><BR></TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I>
                Copyright  1999 The Apache Software Foundation.
                All Rights Reserved.
              </I></FONT></TD></TR></TABLE></BODY></HTML>
  
  

Mime
View raw message