xml-general-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dles...@apache.org
Subject cvs commit: xml-site/targets/xalan-j trax.html xsltc_usage.html commandline.html extensions.html extensionslib.html faq.html getstarted.html index.html overview.html readme.html samples.html todo.html usagepatterns.html whatsnew.html
Date Wed, 23 May 2001 17:12:35 GMT
dleslie     01/05/23 10:12:33

  Modified:    targets/xalan-j commandline.html extensions.html
                        extensionslib.html faq.html getstarted.html
                        index.html overview.html readme.html samples.html
                        todo.html usagepatterns.html whatsnew.html
  Added:       targets/xalan-j trax.html xsltc_usage.html
  Log:
  Updates for Xalan-J 2.1
  
  Revision  Changes    Path
  1.8       +10 -6     xml-site/targets/xalan-j/commandline.html
  
  Index: commandline.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/commandline.html,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- commandline.html	2001/03/16 23:02:04	1.7
  +++ commandline.html	2001/05/23 17:11:49	1.8
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,19 +16,22 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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" height="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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  
  
  
  1.9       +11 -7     xml-site/targets/xalan-j/extensions.html
  
  Index: extensions.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/extensions.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- extensions.html	2001/03/16 23:02:05	1.8
  +++ extensions.html	2001/05/23 17:11:51	1.9
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,19 +16,22 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="Extensions" border="0" height="12" hspace="0" src="graphics/extensions-label-1.jpg" vspace="0" width="120"><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
   <UL>
   <LI><A href="#intro">Introduction</A></LI>
  @@ -267,7 +271,7 @@
   <P>If the extension element is implemented in a loosely typed scripting language, such as JavaScript, the arguments and return value are untyped.</P>
   <P><B>Caution:</B> The value returned by an extension element is placed in the transformation result. If you are not interested in a return value, use a public void Java method or return null from a scripting language function.</P>
   <P>Java example: <CODE><FONT face="courier, monospaced">public void myElement</FONT></CODE><BR>
  -<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(org.apache.xalan.xslt.XSLProcessorContext, </FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(org.apache.xalan.extensions.XSLProcessorContext, </FONT></CODE><BR>
   <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;org.apache.xalan.templates.ElemExtensionCall extensionElement)</FONT></CODE></P>
   <P>JavaScript example: <CODE><FONT face="courier, monospaced">function myElement(xslProcContext, element)</FONT></CODE></P>
   <P>The <A href="extensionslib.html#redirect">Redirect extension</A> in the extensions library contains three extension elements.</P>
  
  
  
  1.7       +102 -20   xml-site/targets/xalan-j/extensionslib.html
  
  Index: extensionslib.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/extensionslib.html,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- extensionslib.html	2001/03/16 23:02:06	1.6
  +++ extensionslib.html	2001/05/23 17:11:53	1.7
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,19 +16,22 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <IMG alt="Extensions Library" border="0" height="12" hspace="0" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
   <UL>
   <LI><A href="#intro">Introduction</A></LI>
  @@ -38,7 +42,7 @@
   <LI><A href="#difference">difference</A></LI>
   <LI><A href="#distinct">distinct</A></LI>
   <LI><A href="#hassamenodes">hasSameNodes</A></LI>
  -<LI><A href="#sql">SQL extensions</A></LI>
  +<LI><A href="#sql">SQL library</A></LI>
   <LI><A href="#evaluate">evaluate</A></LI>
   <LI><A href="#tokenize">tokenize</A></LI>
   <LI><A href="#groupitem">group and item</A> <I>(to be done)</I></LI>
  @@ -185,29 +189,106 @@
   <CODE><FONT face="courier, monospaced">hasSameNodes(node-set1, node-set2)</FONT></CODE> returns true if both node-set1 and node-set2 contain exactly the same set of nodes.</P>
   </FONT></TD></TR></TABLE><BR><A name="sql"><!--anchor--></A>
   <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>SQL library</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +<UL>
  +<LI><A href="#sqlconn">Setting up a connection</A></LI>
  +<LI><A href="#sqlparam">Parameterized queries</A></LI>
  +<LI><A href="#ex-sql">SQL library example</A></LI>
  +<LI><A href="samples.html#sql">SQL library sample applications</A></LI>
  +</UL>
   <P><B>**Experimental**</B> Provides extension functions for connecting to a JDBC data source, executing a query,
  -and working incrementally through &quot;streamable&quot; result set.</P>
  -<P><B>The SQL extension use of a single row-set node to incrementally return a query result set is experimental. Keep in mind that you
  -can only access row elements one at a time moving forward through the result set. The use of XPath expressions in your stylesheet, for
  -example, that attempt to return nodes from the result set in any other manner may produce unpredictable results.</B></P>
  -<P><A href="apidocs/org/apache/xalan/lib/sql/XConnection.html">org.apache.xalan.lib.sql.XConnection</A> provides three extension functions that you can use in your stylesheet.</P>
  +and optionally working incrementally through a &quot;streamable&quot; result set. <I>Due to a bug, caching, not streaming, is currently 
  +the default mode of operation.</I> </P>
  +<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>Many features of the SQL library, including support for connection pools, parameterized queries, caching,  
  +and added support for extracting connection information and query parameters from XML source documents exist
  +thanks to John Gentilin (johnglinux@eyecatching.com), who has also added a number of SQL library samples.</I></FONT></TD></TR></TABLE>
  +<P><B>The SQL extension use in streaming mode of a single row-set node to incrementally return a query result set is experimental. If you use streaming mode, you can only access row elements one at a time moving forward through the result set. The use of XPath expressions in your stylesheet, for example, that attempt to return nodes from the result set in any other manner may produce unpredictable results.</B></P>
  +<P><A href="apidocs/org/apache/xalan/lib/sql/XConnection.html">org.apache.xalan.lib.sql.XConnection</A> provides a number 
  +of extension functions that you can use in your stylesheet.</P>
       <OL>
         <LI>new() -- Use one of the XConnection constructors to connect to a data source, and return an XConnection
  -       object.<BR><BR></LI>
  +       object. You can use one of the constructors creates a connection pool from which stylesheets can obtain connections 
  +       to a datasource. To support connction pools, SQL library includes a ConnectionPool interface and a implementation:
  +       DefaultConnectionPool. You can also provide your own ConnectionPool implementation.<BR><BR></LI>
         <LI>query() -- Use the XConnection object query() method to return a &quot;streamable&quot; result set in the form of a row-set
          node. Work your way through the row-set one row at a time. The same row element is used over and over again, so you can
          begin &quot;transforming&quot; the row-set before the entire result set has been returned.<BR><BR></LI>
  +       <LI>pquery(), addParameter(), addParameterFromElement(), clearParameters() -- Use the XConnection pquery() method in 
  +       conjunction with these other methods to set up and execute parameterized queries.<BR><BR></LI>
  +       <LI>Use disableCacheNodes() to use streaming node, and enableCacheNodes() to cache the query result set. <BR><BR></LI>
         <LI>close() -- Use the XConnection object close() method to terminate the connection.</LI>      
       </OL>
  -    <P>The query() extension function returns a Document node that contains (as needed) an array of column-header elements, 
  +    <P>The query() and pquery() extension functions return a Document node that contains (as needed) an array of column-header elements, 
       a single row element that is used repeatedly, and an array of col elements. Each column-header element (one per column in
       the row-set) contains an attribute (ColumnAttribute) for each of the column descriptors in the ResultSetMetaData object. 
       Each col element contains a text node with a textual representation of the value for that column in the current row.</P>
  -    <A name="ex-sql"><!--anchor--></A> 
  +    <A name="sqlconn"><!--anchor--></A>
  +    <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>Setting up a connection</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +    <P>You can place connection information (JDBC driver, datasource URL, and usually user ID and password) in stylesheets or
  +     in XML source documents.</P> 
  +     <P>The following stylesheet fragment uses stylesheet parameters to designate a JDBC driver and datasource. The default
  +     parameter values can be overridden with runtime parameter values.</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>&lt;xsl:param name=&quot;driver&quot; select=&quot;'org.enhydra.instantdb.jdbc.idbDriver'&quot;/&gt;
  +&lt;xsl:param name=&quot;datasource&quot; select=&quot;'jdbc:idb:../../instantdb/sample.prp'&quot;/&gt;
  +&lt;xsl:param name=&quot;query&quot; select=&quot;'SELECT * FROM import1'&quot;/&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>You can also obtain connection information from the XML source document that you use for the transformationl. Suppose 
  +      you have the following DBINFO nodeset in an XML document:</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>&lt;DBINFO&gt;
  +  &lt;dbdriver&gt;org.enhydra.instantdb.jdbc.idbDriver&lt;/dbdriver&gt;
  +  &lt;dburl&gt;jdbc:idb:../../instantdb/sample.prp&lt;/dburl&gt;
  +  &lt;user&gt;jbloe&lt;/user&gt;
  +  &lt;password&gt;geron07moe&lt;/password&gt;
  +&lt;/DBINFO&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>In the stylesheet, you can extract this information as follows:</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>&lt;xsl:stylesheet version 1.0
  +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
  +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xmlns:sql=&quot;org.apache.xalan.lib.sql.XConnection&quot;
  +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;extension-element-prefixes=&quot;sql&quot;&gt;
  +&nbsp;&nbsp;&lt;xsl:param name=&quot;cinfo&quot; select=&quot;//DBINFO&quot;/&gt;
  +&nbsp;&nbsp;&lt;xsl:variable name=&quot;db&quot; select=&quot;sql:new($cinfo)&quot;/&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>For an example of both approaches, see <A href="samples.html#basic-conn">Basic Connection</A> samples.</P>
  +      <P>You can also create a named connection pool that is maintained external to Xalan-Java.</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>import org.apache.xalan.lib.sql.DefaultConnectionPool;
  +import org.apache.xalan.lib.sql.XConnectionPoolManager;
  +...
  +DefaultConnectionPool cp = new DefaultConnectionPool();
  +cp.setDriver(&quot;org.enhydra.instantdb.jdbc.idbDriver&quot;);
  +cp.setURL(&quot;jdbc:idb:../../instantdb/sample.prp&quot;);
  +cp.setUser(&quot;jbloe&quot;);
  +cp.setPassword(&quot;geron07moe&quot;);
  +// Start with 10 connections.
  +cp.setMinConnections(10);
  +cp.enablePool();
  +// Register the connection pool so stylesheets can use it.
  +XConnectionPoolManager pm = new XConnectionPoolManager();
  +pm.registerPool(&quot;extpool&quot;, cp);</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>A stylesheet can use this connection pool as follows:</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>&lt;xsl:stylesheet version 1.0
  +     xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
  +     xmlns:sql=&quot;org.apache.xalan.lib.sql.XConnection&quot;
  +     extension-element-prefixes=&quot;sql&quot;&gt;
  +...
  +  &lt;xsl:variable name=&quot;db&quot; select=&quot;sql:new($driver, 'extpool')&quot;/&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>For an example, see the <A href="samples.html#ext-conn">ExternalConnection</A> sample.</P>
  +    </FONT></TD></TR></TABLE><BR><A name="sqlparam"><!--anchor--></A>
  +    <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>Parameterized queries</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +      <P>To define a parameterized query, use a SQL query string with a question mark (?) for each parameter. You can provide 
  +      the parameter values at runtime with stylesheet parameters or with nodes in the XML source document. For each parameter, 
  +      you should also designate the SQL data type.</P>
  +      <P>XConnection provides a number of addParameter() methods and an addParameterFromElement() method that you can use 
  +      as extension functions to pull in the parameter values (in the order the parameters appear in the query). To
  +      execute the query and return the result set, call the pquery() method as an extension function. There are two variations 
  +      of the pquery() method. The one you should ordinarily use includes as arguments the SQL query string and a string list 
  +      (delimited by the space, tab, or line feeds) of parameter types. For example:</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>&lt;xsl:variable name=&quot;resultset&quot; 
  +        select=sql:pquery($XConnectionObj, 
  +                          'select * from X where Y = ? and Z = ?',
  +                          'int string')&quot;/&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>For a complete example, see the <A href="samples.html#pquery">Parameterized query</A> sample.</P>
  +  </FONT></TD></TR></TABLE><BR><A name="ex-sql"><!--anchor--></A> 
       <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>Example with SQL library</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
       <P>This example displays the result set from a table in a sample InstantDB database. It is also
  -    available as a sample application; see 
  -    <A href="samples.html#ext6">6-sqllib-instantdb</A>.</P>
  +    available as a sample application; see <A href="samples.html#ext6">6-sqllib-instantdb</A>.</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>&lt;?xml version=&quot;1.0&quot;?&gt;
   &lt;xsl:stylesheet xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
                   version=&quot;1.0&quot;
  @@ -259,9 +340,10 @@
   &lt;/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>
   </FONT></TD></TR></TABLE><BR>
  -</FONT></TD></TR></TABLE><BR><A name="evaluate"><!--anchor--></A>
  -<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>evaluate</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -<P>Implemented in <A href="apidocs/org/apache/xalan/lib/Extensions.html">org.apache.xalan.lib.Extensions</A>,<BR>
  +  
  +  </FONT></TD></TR></TABLE><BR><A name="evaluate"><!--anchor--></A>
  +  <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>evaluate</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +  <P>Implemented in <A href="apidocs/org/apache/xalan/lib/Extensions.html">org.apache.xalan.lib.Extensions</A>,<BR>
   <CODE><FONT face="courier, monospaced">evaluate (xpath-expression)</FONT></CODE> function returns the result of evaluating the xpath-expression in the current 
   XPath expression context (automatically passed in by the extension mechanism).</P>
   <P>Use the evaluation extension function when the value of the expression is not known until run time.</P>
  
  
  
  1.5       +38 -11    xml-site/targets/xalan-j/faq.html
  
  Index: faq.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/faq.html,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- faq.html	2001/03/16 23:02:06	1.4
  +++ faq.html	2001/05/23 17:11:55	1.5
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,29 +16,32 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-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" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Questions</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"><UL><LI><A href="#faq-1">Where do I go to learn about XSLT</A></LI><LI><A href="#faq-2">Which version of Xerces should I be using?</A></LI><LI><A href="#faq-3">Compatibility with Xalan-Java version 1</A></LI><LI><A href="#faq-4">TrAX and JAXP</A></LI><LI><A href="#faq-5">Chaining transformations</A></LI><LI><A href="#faq-6">Issues running Xalan on JDK 1.3</A></LI><LI><A href="#faq-7">a &quot;DOM006 Hierarchy request error&quot;</A></LI><LI><A href="#faq-8">Speeding up transformations</A></LI><LI><A href="#faq-9">NoClassDefFound errors</A></LI><LI><A href="#faq-10">Stylesheet validation</A></LI><LI><A href="#faq-11">Retrieving nodes in the default namespace</A></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>Answers</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"><BR><A name="faq-1"><!--anchor--></A><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>Where do I go to learn about XSLT?</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>The definitive sources are the W3C XSLT and XPath recommendations: <A href="http://www.w3.org/TR/xslt" target="_top">W3C Recommendation XSL Transformations (XSLT) Version 1.0</A> and 
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Questions</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"><UL><LI><A href="#faq-1">Where do I go to learn about XSLT</A></LI><LI><A href="#faq-2">Which version of Xerces should I be using?</A></LI><LI><A href="#faq-3">Compatibility with Xalan-Java version 1</A></LI><LI><A href="#faq-4">TrAX and JAXP</A></LI><LI><A href="#faq-5">Chaining transformations</A></LI><LI><A href="#faq-6">Issues running Xalan on JDK 1.3</A></LI><LI><A href="#faq-7">a &quot;DOM006 Hierarchy request error&quot;</A></LI><LI><A href="#faq-8">Speeding up transformations</A></LI><LI><A href="#faq-9">NoClassDefFound errors</A></LI><LI><A href="#faq-10">Stylesheet validation</A></LI><LI><A href="#faq-11">Retrieving nodes in the default namespace</A></LI><LI><A href="#faq-12">Using the 'signature' file to verify a download</A></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>Answers</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"><BR><A name="faq-1"><!--anchor--></A><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>Where do I go to learn about XSLT?</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>The definitive sources are the W3C XSLT and XPath recommendations: <A href="http://www.w3.org/TR/xslt" target="_top">W3C Recommendation XSL Transformations (XSLT) Version 1.0</A> and 
       <A href="http://www.w3.org/TR/xpath" target="_top">XML Path Language (XPath) Version 1.0</A>.</P>
  -    <P>For a brief listing of tutorials, discussion forums, and other materials, see <A href="overview.html#uptospeed">Getting up to speed with XSLT</A>.</P></FONT></TD></TR></TABLE><BR><A name="faq-2"><!--anchor--></A><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>Which version of Xerces should I be using?</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>Xalan-Java version 2.0.1 has been tested with Xerces-Java version 1.3.0. See <A href="readme.html#status">Status</A>.</P></FONT></TD></TR></TABLE><BR><A name="faq-3"><!--anchor--></A><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>How do I run applications that use the Xalan-Java version 1 API with Xalan-Java 2</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>Use the Xalan-Java 1 compatibility JAR to recompile and run your Xalan-Java 1 applications with Xalan-Java 2. For more information, see 
  +    <P>For a brief listing of tutorials, discussion forums, and other materials, see <A href="overview.html#uptospeed">Getting up to speed with XSLT</A>.</P></FONT></TD></TR></TABLE><BR><A name="faq-2"><!--anchor--></A><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>Which version of Xerces should I be using?</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>Xalan-Java version 2.1.0 has been tested with Xerces-Java version 1.4. See <A href="readme.html#status">Status</A>.</P></FONT></TD></TR></TABLE><BR><A name="faq-3"><!--anchor--></A><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>How do I run applications that use the Xalan-Java version 1 API with Xalan-Java 2</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>Use the Xalan-Java 1 compatibility JAR to recompile and run your Xalan-Java 1 applications with Xalan-Java 2. For more information, see 
      <A href="usagepatterns.html#compat">Using the Xalan-Java version 1 API</A>.</P></FONT></TD></TR></TABLE><BR><A name="faq-4"><!--anchor--></A><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>What are TrAX and JAXP, and are they related?</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>TrAX is the Transformation API for XML. In November 2000, TrAX was revised and incorporated into JAXP, the JAVA API for XML
       Processing. JAXP (including TrAX) provides users a standard, vendor-neutral API for working with (and transforming) XML documents. 
       You can use this API to build applications that are not bound to the particular implementation details of a given XML parser or XSL
       transformer.</P>
       <P>Xalan-Java includes the JAXP packages, implements the TrAX portion of that API (javax.xml.transform....), and includes xerces.jar from
       Xerces-Java, which implements the parser portion of the API (javax.xml.parser....).</P>
  -<P>For more information, see <A href="apidocs/javax/xml/transform/trax.html" target="_top">TRaX (Transformation API for XML)</A> and <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063/jaxp-pd2.pdf" target="_top">Java API for XML Processing 1.1 Public Review 2</A>.</P></FONT></TD></TR></TABLE><BR><A name="faq-5"><!--anchor--></A><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>How do you chain together a series of transformations?&quot;</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>Xalan-Java supports two strategies for chaining together a series of transformations such that the output of each 
  +<P>For more information, see <A href="trax.html" target="_top">TRaX (Transformation API for XML)</A> and <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063/jaxp-pd2.pdf" target="_top">Java API for XML Processing 1.1 Public Review 2</A>.</P></FONT></TD></TR></TABLE><BR><A name="faq-5"><!--anchor--></A><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>How do you chain together a series of transformations?&quot;</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><P>Xalan-Java supports two strategies for chaining together a series of transformations such that the output of each 
       transformation provides input for the next transformation.</P>
       <UL>
         <LI>For each transformation in the series, you can set one SAX ContentHandler to process the input, and another ContenHandler to process
  @@ -86,7 +90,18 @@
       and be sure xalanj1compat.jar is on the classpath at run time (see <A href="usagepatterns.html#compat">Using the Xalan-Java version 1
       API)</A>.</LI>
       </OL>
  -    <P>For more information, see <A href="getstarted.html#classpath">Setting up the system classpath</A>.</P></FONT></TD></TR></TABLE><BR><A name="faq-10"><!--anchor--></A><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>How do I validate an XSL stylesheet?</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +    <P>For more information, see <A href="getstarted.html#classpath">Setting up the system classpath</A>.</P>
  +    <P><B>Using the EnvironmentCheck utility:</B> To help diagnose classpath problems, try running Xalan's environment checking utility, checked in at 
  +    xml-xalan/java/src/org/apache/xalan/xslt/EnvironmentCheck.</P>
  +    <P>You can run this utility from the command line as follows:</P>
  +    <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.EnvironmentCheck [-out outFile]</FONT></CODE></P>
  +    <P>You can also call this utility from within your application. For example,</P>
  +    <P><CODE><FONT face="courier, monospaced">boolean environmentOK = (new EnvironmentCheck()).checkEnvironment (yourPrintWriter);</FONT></CODE></P>
  +    <P>Be sure to run EnvironmentCheck in the environment where you are experiencing the problem. For example, if you get a 
  +    NoClassDefFound error from a command-line application, run EnvironmentCheck on the command line with exactly the same 
  +    classpath. If the error occurs inside your Java application (or in a servlet, etc.), be sure to call the 
  +    EnvironmentCheck checkEnvironment(...) method from within your running application.</P>
  +    </FONT></TD></TR></TABLE><BR><A name="faq-10"><!--anchor--></A><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>How do I validate an XSL stylesheet?</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
         <P>An XSL stylesheet is an XML document, so it can have a DOCTYPE and be subject to validation, right? </P>
         <P>The XSLT Recommendation includes a <A href="http://www.w3.org/TR/xslt#dtd">DTD Fragment 
         for XSL Stylesheets</A> with some indications of what you need to do to create a complete DTD for a given
  @@ -103,7 +118,19 @@
          <P>Add a nampespace declaration with a prefix:<BR>
          <CODE><FONT face="courier, monospaced">xmlns:foo=&quot;http://my-namespace&quot;</FONT></CODE></P>       
          <P>Then you can use foo: in your XPath expression.</P>
  -       <P>Hint: Don't use default namespaces, and the problem doesn't arise.</P></FONT></TD></TR></TABLE><BR></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>
  +       <P>Hint: Don't use default namespaces, and the problem doesn't arise.</P></FONT></TD></TR></TABLE><BR><A name="faq-12"><!--anchor--></A><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>How does I use the &quot;signature&quot; file to verify my download?</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +        <P>For each Xalan download file in <A href="http://xml.apache.org/dist/xalan-j/" target="_top">xalan-j distribution directory</A>, there is a corresponding signature file. 
  +        The signature file for xalan-j_2_0_1.tar.gz, for example, is xalan-j_2_0_1.tar.gz.sig.</P>
  +        <P>The .sig files are PGP signatures of the actual .zip or .tar.gz
  +        download files.  You can use these files to verify the authenticiy of the download. You do not need the .sig file to 
  +        use the corresponding donwload file.</P>
  +        <P>To check the authenticity of a Xalan distribution, you need a copy of
  +        PGP which is available in a number of licenses, including some free
  +        non-commercial licenses, either from an mit.edu site or on
  +        the pgp.com site. Once you have a version of PGP installed, you
  +        should be able to 'verify the signature' of the .sig file, which basically verifies that the corresponding 
  +        .zip or tar.gz file has not been changed since we signed it.</P>
  +      </FONT></TD></TR></TABLE><BR></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 &copy; 2000 The Apache Software Foundation.
                 All Rights Reserved.
               </I></FONT></TD></TR></TABLE></BODY></HTML>
  
  
  
  1.9       +14 -10    xml-site/targets/xalan-j/getstarted.html
  
  Index: getstarted.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/getstarted.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- getstarted.html	2001/03/16 23:02:08	1.8
  +++ getstarted.html	2001/05/23 17:11:56	1.9
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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 alt="Getting Started" border="0" height="12" hspace="0" src="graphics/getstarted-label-1.jpg" vspace="0" width="120"><BR>
  @@ -15,19 +16,22 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
   <UL>
   <LI><A href="#download">Downloading what you need</A></LI>
  @@ -45,14 +49,14 @@
   <LI>xerces.jar (or another <A href="usagepatterns.html#plug">XML Parser</A>)</LI>
   </UL>
   <P>You can get the JDK or JRE from <A href="http://www.ibm.com/java/jdk">ibm.com/java/jdk/</A> or <A href="http://www.java.sun.com">java.sun.com</A>.</P> 
  -<P>Download <A href="http://xml.apache.org/dist/xalan-j/xalan-j_2_0_1.zip" target="_top">xalan-j_2_0_1.zip</A> or <A href="http://xml.apache.org/dist/xalan-j/xalan-j_2_0_1.tar.gz" target="_top">xalan-j_2_0_1.tar.gz</A>. Both of these files contain <A href="http://xml.apache.org/xalan" target="_top">Xalan-Java version 2.0.1</A> (with xalan.jar) and xerces.jar from <A href="http://xml.apache.org/xerces-j/index.html" target="_top">Xerces-Java version 1.3.0</A>. You can use a zip or tar utility to expand these files into a full build.</P>
  +<P>Download <A href="http://xml.apache.org/dist/xalan-j/xalan-j_2_1_0.zip" target="_top">xalan-j_2_1_0.zip</A> or <A href="http://xml.apache.org/dist/xalan-j/xalan-j_2_1_0.tar.gz" target="_top">xalan-j_2_1_0.tar.gz</A>. Both of these files contain <A href="http://xml.apache.org/xalan" target="_top">Xalan-Java version 2.1.0</A> (with xalan.jar) and xerces.jar from <A href="http://xml.apache.org/xerces-j/index.html" target="_top">Xerces-Java version 1.4</A>. You can use a zip or tar utility to expand these files into a full build.</P>
   
   <P>If you plan to run <A href="extensions.html">XSLT extensions</A>, you need bsf.jar, which is included in the Xalan-Java distribution. If you plan to run XSLT extensions implemented in Javascript or another scripting language, you will need one or more additional files as indicated in <A href="extensions.html#supported-lang">extensions language requirements</A>.</P>
   </FONT></TD></TR></TABLE><BR><A name="classpath"><!--anchor--></A>
   <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>Setting up the system classpath</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
   <P>At the very minimum, you must include xalan.jar and xerces.jar (or another conformant XML parser -- see <A href="usagepatterns.html#plug">Plugging in a Transformer and XML parser</A>) on the system classpath. To run the sample applications, include xalansamples.jar (all samples other than the servlet) and xalanservlet.jar. To run extensions, include bsf.jar. All these JAR files are distributed with Xalan-Java. For extensions implemented in JavaScript or another scripting language, see <A href="extensions.html#supported-lang">extensions language requirements</A> to identify any additional JAR files you must place on the classpath and where you can get them.</P>
  -<P>If you are using JDK or JRE 1.1.8, also include classes.zip on the classpath.</P>
  -<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>If you are using xerces.jar from a Xerces release that is more recent than Xerces-Java version 1.3.0, you may need to put xerces.jar before xalan.jar on the classpath. Both JAR files include the org.w3c.dom packages. The Xerces team is tracking updates to DOM level 2, and the Xerces parser may require access to updates in these packages.</I></FONT></TD></TR></TABLE>
  +<P>If you are using JDK or JRE 1.1.8, also include classes.zip on the classpath. If you are using JDK or JRE 1.2, include tools.jar on the classpath.</P>
  +<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>If you are using xerces.jar from a Xerces release that is more recent than Xerces-Java version 1.4, you may need to put xerces.jar before xalan.jar on the classpath. Both JAR files include the org.w3c.dom packages. The Xerces team is tracking updates to DOM level 2, and the Xerces parser may require access to updates in these packages.</I></FONT></TD></TR></TABLE>
   </FONT></TD></TR></TABLE><BR><A name="samples"><!--anchor--></A>
   <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>Trying out the samples</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
   <P>The Xalan-Java distribution includes a number of basic sample applications. These samples are easy to run, and you can review the source files -- all of which are brief -- to see just how they work.</P>
  @@ -75,7 +79,7 @@
   <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;-xsl <I>stylesheet</I> -out <I>outputfile</I></FONT></CODE></P>
   <P>where <I>xmlSource</I> is the XML source file name, <I>stylesheet</I> is the XSL stylesheet file name, and <I>outputfile</I> is the output file name.</P>
   <P>If you want the output to be displayed on the screen, simply omit the -out flag and argument.</P>
  -<P>You can use this utility to try out XSL stylesheets you have written, to make sure they do what you expect with the XML source files they are designed to transform. The utility provides useful messages if the source file or stylesheet is not well formed. If you include a DOCTYPE statement in your XML source files and include the -validate flag on the command line, the utility will also let you know whether the XML document is valid (conforms to that DOCTYPE). For more information, see <A href="commandline.html">Command-Line Utility</A>.</P>
  +<P>You can use this utility to try out XSL stylesheets you have written, to make sure they do what you expect with the XML source files they are designed to transform. The utility provides useful messages if the source file or stylesheet is not well formed. For more information, see <A href="commandline.html">Command-Line Utility</A>.</P>
   </FONT></TD></TR></TABLE><BR><A name="java-apps"><!--anchor--></A>
   <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>Setting up your own Java applications</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
   <P>You can start by using your own XML source files and XSL stylesheets with the sample applications, which illustrate a number of the <A href="usagepatterns.html">basic usage patterns</A>.</P>
  
  
  
  1.11      +18 -13    xml-site/targets/xalan-j/index.html
  
  Index: index.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/index.html,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- index.html	2001/03/16 23:02:09	1.10
  +++ index.html	2001/05/23 17:11:58	1.11
  @@ -1,9 +1,10 @@
  -<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Xalan-Java version 2.0.1</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/index-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>
  +<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Xalan-Java version 2.1.0</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/index-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-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="Xalan-J 2.0.1" border="0" height="12" hspace="0" src="graphics/index-label-1.jpg" vspace="0" width="120"><BR>
  +  <IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" src="graphics/index-label-1.jpg" vspace="0" width="120"><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,19 +16,22 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>What is it?</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
       <P>Xalan is an XSLT processor for transforming XML documents into HTML, text, or other XML document types. It implements the
  @@ -35,26 +39,27 @@
        in an applet or a servlet, or as a module in other program.</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>I've heard of Xalan-Java, but what is version 2?</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -    <P>Xalan-Java version 2 recasts Xalan as an implementation of the <A href="apidocs/javax/xml/transform/trax.html" target="_top">TRaX (Transformation API for XML)</A> interfaces, part of the <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063/jaxp-pd2.pdf" target="_top">Java API for XML Processing 1.1 Public Review 2</A>. TRaX provides a
  +    <P>Xalan-Java version 2 recasts Xalan as an implementation of the <A href="trax.html" target="_top">TRaX (Transformation API for XML)</A> interfaces, part of the <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063/jaxp-pd2.pdf" target="_top">Java API for XML Processing 1.1 Public Review 2</A>. TRaX provides a
       modular framework and a standard API for performing XML transformations, and it utilizes system properties to determine which Transformer and which XML parser to use.</P>
        <P>Xalan-Java version 2 also builds on <A href="http://www.megginson.com/SAX/Java/index.html" target="_top">SAX 2</A>, <A href="http://www.w3.org/TR/DOM-Level-2/" target="_top">DOM level 2</A>, and the XML parser API in
        <A href="http://java.sun.com/xml/docs/api/index.html" target="_top">Java API for XML Parsing 1.0</A>.</P>
        <P>For more information, see <A href="whatsnew.html">What's new in Xalan-Java 2</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>How about this release?</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -  <P>Xalan-Java version 2.0.1 is a production release It incorporates a number of enhancements and bug fixes. For the details, see 
  -  <A href="readme.html">Release Notes</A>. Please send your feedback to the <A href="mailto:xalan-dev@xml.apache.org">Xalan Development Mailing List</A>.</P>
  +  <P>Xalan-Java version 2.1.0 is a production release. This is the first Xalan-Java release to include the 
  +  <A href="xsltc_usage.html">XSLTC</A> translet compiler and runtime,. This release also incorporates a number of bug fixes.
  +   For the details, see <A href="readme.html">Release Notes</A>. Please send your feedback to the <A href="mailto:xalan-dev@xml.apache.org">Xalan Development Mailing List</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>How do I get it?</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
       <P>Download and unzip either of the following:</P>
       <UL>
  -      <LI><A href="http://xml.apache.org/dist/xalan-j/xalan-j_2_0_1.zip" target="_top">xalan-j_2_0_1.zip</A></LI>
  -      <LI><A href="http://xml.apache.org/dist/xalan-j/xalan-j_2_0_1.tar.gz" target="_top">xalan-j_2_0_1.tar.gz</A></LI>
  +      <LI><A href="http://xml.apache.org/dist/xalan-j/xalan-j_2_1_0.zip" target="_top">xalan-j_2_1_0.zip</A></LI>
  +      <LI><A href="http://xml.apache.org/dist/xalan-j/xalan-j_2_1_0.tar.gz" target="_top">xalan-j_2_1_0.tar.gz</A></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>Where do I get Xerces?</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -    <P>The Xalan download includes xerces.jar from Xerces-Java version 1.3.0. This is all you need to run Xalan with the Xerces XML parser. 
  +    <P>The Xalan download includes xerces.jar from Xerces-Java version 1.4. This is all you need to run Xalan with the Xerces XML parser. 
       You can, however, download the complete Xerces distribution from the <A href="http://xml.apache.org/dist/xerces-j/" target="_top">xerces-j distribution directory</A>.</P>
       <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>If you plan to use a different XML parser, see <A href="usagepatterns.html#plug">Plugging in a Transformer
        and XML parser</A>.</I></FONT></TD></TR></TABLE> 
  
  
  
  1.9       +11 -7     xml-site/targets/xalan-j/overview.html
  
  Index: overview.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/overview.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- overview.html	2001/03/16 23:02:09	1.8
  +++ overview.html	2001/05/23 17:11:59	1.9
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" border="0" height="12" hspace="0" src="graphics/overview-label-1.jpg" vspace="0" width="120"><BR>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,19 +16,22 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
   <UL>
   <LI><A href="#intro">Introduction</A></LI>
  @@ -68,7 +72,7 @@
      	  <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>Xalan-Java Features</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
   	    <UL> 
   		    <LI>Implements the relevant W3C specifications: <A href="http://www.w3.org/TR/xslt" target="_top">W3C Recommendation XSL Transformations (XSLT) Version 1.0</A> and <A href="http://www.w3.org/TR/xpath" target="_top">XML Path Language (XPath) Version 1.0</A>.<BR><BR></LI>
  -        <LI>Implements <A href="apidocs/javax/xml/transform/trax.html" target="_top">TRaX (Transformation API for XML)</A>, now part of <A href="http://java.sun.com/xml/docs/api/index.html" target="_top">Java API for XML Parsing 1.0</A>, and builds on
  +        <LI>Implements <A href="trax.html" target="_top">TRaX (Transformation API for XML)</A>, now part of <A href="http://java.sun.com/xml/docs/api/index.html" target="_top">Java API for XML Parsing 1.0</A>, and builds on
            <A href="http://www.megginson.com/SAX/Java/index.html" target="_top">SAX 2</A> and <A href="http://www.w3.org/TR/DOM-Level-2/" target="_top">DOM level 2</A>.<BR><BR></LI>
       	  <LI>May be configured to work with any XML parser, such
           <A href="http://xml.apache.org/xerces-j/index.html">Xerces-Java</A>, that implements <A href="http://java.sun.com/xml/docs/api/index.html" target="_top">Java API for XML Parsing 1.0</A> (see <A href="usagepatterns.html#plug">Plugging in an XML
  
  
  
  1.10      +674 -240  xml-site/targets/xalan-j/readme.html
  
  Index: readme.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/readme.html,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- readme.html	2001/03/16 23:02:10	1.9
  +++ readme.html	2001/05/23 17:12:01	1.10
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,45 +16,696 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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/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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
  -<P>Xalan-Java version 2.0.1</P>
  +<P>Xalan-Java version 2.1.0</P>
    <UL>
  -  <LI><A href="#status0">Status</A></LI>
  +  <LI><A href="#status0">Status</A></LI><LI><A href="#xsltcreleasenotes">XSLTC Release Notes</A></LI>
     <LI><A href="#build">Build Notes</A></LI>
     <LI><A href="#contact">Getting in touch</A></LI>
     <LI><A href="#history">History of software changes</A></LI>
    </UL><A name="status0"><!--anchor--></A>
     <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>Status</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
      <UL>
  -    <LI><A href="#done">Changes since version 2.0</A></LI>
  +    <LI><A href="#done">Changes since version 2.0.1</A></LI>
       <LI><A href="#other">Other points of interest</A></LI>
       <LI><A href="#bugs">Bugs</A></LI>
       <LI><A href="#status">Version of Xerces to use</A></LI>
       <LI><A href="#to-do">To-do tasks for future Xalan-Java releases</A></LI>
      </UL>
        <A name="done"><!--anchor--></A>
  -     <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>Changes since Xalan-Java 2.0.0</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -     <P>This release includes a number of bug fixes to the Xalan-Java and TrAX core and Xalan-Java 1 compability API. We have also</P>
  -     <UL>
  -     <LI>Entered all known Xalan-Java 2 <A href="#bugs">bugs</A> in the Apache Bugzilla database<BR><BR></LI>
  -     <LI>Added support for using custom URIResolver, EntityResolver, and ContentHandler implementations with the <A href="commandline.html">command-line utility</A><BR><BR></LI> 
  -      <LI>Upgraded from Ant 1.2 to Ant 1.3 for our <A href="#build">builds</A> (the new ant.jar is in the bin directory).</LI>
  -      </UL>
  +     <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>Changes since Xalan-Java 2.0.1</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +     <P>The Sun XSLTC team (david.hofert@east.sun.com, tom.amiro@east.sun.com, todd.miller@east.sun.com, 
  +                 morten.jorgensen@Ireland.sun.com) has checked <A href="xsltc_usage.html">XSLTC</A> into the Xalan
  +                 source tree, and we have begun the process of merging XSLTC into Xalan. XSLTC provides a compiler for compiling
  +                 stylesheets into translets, and a streamlined runtime environment for using translets to transform XML input. 
  +                 In the near term, XSLTC will appear in a separate JAR file (xsltc.jar) with its own API and command-line
  +                 utilities. You can already use the same JAXP interfaces to perform
  +                 transformations with the Xalan transformer and with translets. Over time, we plan to merge the two codebases.
  +                 <I>See <A href="xsltc/index.html">XSLTC Design Documents</A>.</I></P>
  +                 <P>See <A href="#xsltcreleasenotes">XSLTC Release Notes</A>.</P>
  +     <P>This release also includes a number of bug fixes to Xalan-Java and TrAX. 
  +     We have also enhanced the ApplyXSLT servlet. It can now be set up to use a compiled Templates object to respond to multiple
  +     client transformation requests involving the same stylesheet.</P>
        
  -<P>Core source code updates:</P><UL><LI><I>Committed by </I>sboag@apache.org<I> on </I>02/06/2001<BR><I>Modified: </I>java/src/org/apache/xpath/axes ChildWalkerMultiStep.java<BR><I>Committer's log entry: </I>Fix for bug reported by &quot;Chris P. McCabe&quot; &lt;chris_mccabe@choicehotels.com&gt;
  +<P>Core source code updates:</P><UL><LI><I>Committed by </I>costin@apache.org<I> on </I>03/16/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor StylesheetHandler.java
  + java/src/org/apache/xpath Expression.java XPath.java
  + XPathContext.java
  + java/src/org/apache/xpath/compiler Compiler.java
  + XPathParser.java<BR><I>Committer's log entry: </I>Renamed &quot;assert()&quot; to &quot;assertion()&quot;.
  +
  + Assert can be a keyword, and brake the compilation.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>03/19/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer KeyWalker.java<BR><I>Committer's log entry: </I>Throw an error message if the key name in a key function was not defined<BR><BR></LI><LI><I>Committed by </I>jkesselm@apache.org<I> on </I>03/20/2001<BR><I>Modified: </I>java/src/org/apache/xml/utils FastStringBuffer.java<BR><I>Committer's log entry: </I>Reworked &quot;chunk growth&quot; algorithm again. Growing mode not
  + yet adequately tested, but fixed-size mode (which is what Xalan
  + is currently using) is simpler code and shows improved performance.<BR><BR></LI><LI><I>Committed by </I>curcuru@apache.org<I> on </I>03/20/2001<BR><I>Added: </I>java/src/org/apache/xalan/xslt EnvironmentCheck.java<BR><I>Committer's log entry: </I>Utility class to check your JVM environment for common problems<BR><BR></LI><LI><I>Committed by </I>curcuru@apache.org<I> on </I>03/22/2001<BR><I>Modified: </I>java/src/org/apache/xalan/xslt EnvironmentCheck.java<BR><I>Committer's log entry: </I>Added more .jar sizes to jarVersions listing<BR><BR></LI><LI><I>Committed by </I>jkesselm@apache.org<I> on </I>03/22/2001<BR><I>Modified: </I>java/src/org/apache/xml/utils FastStringBuffer.java<BR><I>Committer's log entry: </I>We've reworked the algorithm again. The fixed-chunk-size mode (initial
  + and max. chunk sizes equal) runs essentially unchanged, though with a
  + few cycles less overhead. The variable-chunk-size mode now uses a
  + recursive-encapsulation scheme, where the first chunk may itself be a
  + FastStringBuffer whose total length equals one chunk; every so often
  + we push the existing data down one level and restart with a larger
  + chunk size. The new scheme has been stress-tested and is apparently
  + working. At this writing, however, Xalan uses only the fixed-size
  + mode (initial size equals max size), and no effort has been made to
  + find the optimial values for the tuning parameters. It does appear
  + likely that the best values will vary with usage patterns, but we hope
  + to find a good compromise.
  +
  + I'll probably be putting this aside for a while to work on other things.
  + If someone wants to experiment with varying the block sizes and
  + how frequently they grow, and suggest good performance/memory
  + tradeoff points, go for it!<BR><BR></LI><LI><I>Committed by </I>jkesselm@apache.org<I> on </I>03/22/2001<BR><I>Modified: </I>java/src/org/apache/xml/utils FastStringBuffer.java<BR><I>Committer's log entry: </I>Minor tweak to the javadoc.<BR><BR></LI><LI><I>Committed by </I>jkesselm@apache.org<I> on </I>03/23/2001<BR><I>Modified: </I>java/src/org/apache/xml/utils FastStringBuffer.java<BR><I>Committer's log entry: </I>reset() versus setLength(0).<BR><BR></LI><LI><I>Committed by </I>sboag@apache.org<I> on </I>03/26/2001<BR><I>Modified: </I>java/src/org/apache/xalan/templates ElemForEach.java<BR><I>Committer's log entry: </I>Fix for bug# 1116, getMatchedTemplate throws ClassCastException.
  + Don't push template unless it is a xsl:template.<BR><BR></LI><LI><I>Committed by </I>sboag@apache.org<I> on </I>03/26/2001<BR><I>Modified: </I>java/src/org/apache/xalan/templates OutputProperties.java<BR><I>Committer's log entry: </I>Patches submitted by Patrick Moore &lt;patrickm@rioport.com&gt;
  + on 03/15/2001 01:25 PM:
  +
  + This proposed change does a number of things:
  +
  + 1. Problem: HTML output method does not uses XML output properties as
  + default.
  +
  + In both org/apache/xalan/templates/output_html.properties and in the java
  + doc for
  + org/apache/xalan/templates/OutputProperties#getDefaultMethodProperties(Strin
  + g) It specifically states that all OutputProperties use the
  + output_xml.properties as a base. In the code this is not true for html. This
  + is now changed to match the comments
  +
  + 2. Problem: unclear IOException.
  +
  + If there was a problem loading the XML properties file. The wrapped
  + exception now will say which file was trying to be loaded. If the file did
  + not exist I was getting a very strange &quot;Stream closed&quot; IOException message.
  +
  + 3. Problem: the streams were not closed after reading the property file.
  +
  + Fixed.
  +
  + 4. Problem: the double-check locking mechanism does not work in Java (see
  + bug #919)
  +
  + &lt;http://www.javaworld.com/javaworld/jw-02-2001/jw-0209-toolbox.html&gt;
  +
  + 5. QUESTION: now if there is a default properties (i.e.
  + output_xml.properties has been loaded) but the expected properties file does
  + not exist a error message will be printed to System.err and the processing
  + will continuing using just the default properties (output_xml.properties) I
  + felt that this is the best behavior.
  +
  + (comment by sboag: I think it's better to
  + throw a runtime exception in this case.
  + but we can discuss this over time. For now
  + the patch was modified to do the runtime exception).<BR><BR></LI><LI><I>Committed by </I>sboag@apache.org<I> on </I>03/27/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor XSLTSchema.java
  + java/src/org/apache/xalan/stree SourceTreeHandler.java
  + java/src/org/apache/xalan/templates ElemForEach.java
  + ElemLiteralResult.java
  + java/src/org/apache/xalan/transformer QueuedSAXEvent.java
  + ResultTreeHandler.java TransformerImpl.java
  + java/src/org/apache/xml/utils BoolStack.java
  + java/src/org/apache/xpath XPathContext.java<BR><I>Committer's log entry: </I>This check-in contains a couple things that overlapped on my
  + system, so I'm checking them in together.
  + 1) Unfinished (in progress) implementation of TransformSnapshot mechanism,
  + which will hopefully allow a result ContentHandler to take a snapshot
  + at a given point, and the restart execution from that point at some
  + later time. For tooling support.
  + 2) Check to make sure SourceTreeHandler isn't being entered twice,
  + which is related to the cocoon bug from a couple of weeks ago. This
  + will just help diagnose such a problem in the future.
  + 3) Removed the error stack trace print from postExceptionFromThread.
  + 4) Report exception in SourceTreeHandler#endDocument after
  + the join, if we can determine that the posted exception won't be
  + caught elsewhere.
  + 5) removed some catches that simply rethrew the exception
  + (thanks to Patrick Moore &lt;patrickm@rioport.com&gt;).
  + See my note on 3/27/2001 to Patrick for more info
  + on the last two.<BR><BR></LI><LI><I>Committed by </I>sboag@apache.org<I> on </I>03/27/2001<BR><I>Added: </I>java/src/org/apache/xalan/transformer TransformSnapshot.java
  + TransformSnapshotImpl.java<BR><I>Committer's log entry: </I>Unfinished (in progress) implementation of TransformSnapshot mechanism,
  + which will hopefully allow a result ContentHandler to take a snapshot
  + at a given point, and the restart execution from that point at some
  + later time. For tooling support.on the last two.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>03/29/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor
  + ProcessorStylesheetElement.java
  + ProcessorTemplateElem.java StylesheetHandler.java
  + XSLTElementDef.java XSLTElementProcessor.java
  + XSLTSchema.java<BR><I>Committer's log entry: </I>Try to catch element order and required element errors during stylesheet 
  +object creation. This new code adds an order and a required field to 
  +XSLElementDef objects where it is applicable.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>04/02/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer TransformerImpl.java<BR><I>Committer's log entry: </I>Fix bugzilla bug 1170. If we're trying an xsl:apply-imports at the top level 
  +(ie there are no
  + imported stylesheets), we need to indicate that there is no matching template 
  +and prevent and infinite recursion by using the built-in template.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>04/02/2001<BR><I>Modified: </I>java/src/org/apache/xalan/extensions MethodResolver.java<BR><I>Committer's log entry: </I>Code cleanup submitted by Art Welch &lt;art_w@EASTPOINT.COM&gt;.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>04/06/2001<BR><I>Modified: </I>java/src/org/apache/xml/utils TreeWalker.java<BR><I>Committer's log entry: </I>Add locator support to TreeWalker<BR><BR></LI><LI><I>Committed by </I>sboag@apache.org<I> on </I>04/06/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer
  + QueuedStartElement.java<BR><I>Committer's log entry: </I>Small fix made for getCurrentNode.<BR><BR></LI><LI><I>Committed by </I>sboag@apache.org<I> on </I>04/06/2001<BR><I>Modified: </I>java/src/org/apache/xml/utils TreeWalker.java<BR><I>Committer's log entry: </I>Commented out extra call to getData()... this could be a big performance
  + improvement for some stylesheets.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>04/09/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer
  + TransformSnapshotImpl.java TransformerImpl.java<BR><I>Committer's log entry: </I>Additional support for tooling. Allow tools to take a snapshot of context and 
  +restart execution at that point.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>04/10/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor
  + XSLTElementProcessor.java
  + java/src/org/apache/xalan/res XSLTErrorResources.java
  + java/src/org/apache/xalan/transformer
  + TransformSnapshotImpl.java TransformerImpl.java<BR><I>Committer's log entry: </I>Misc stuff left out from previous check in<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>04/11/2001<BR><I>Modified: </I>java/src/org/apache/xpath/functions FuncCurrent.java<BR><I>Committer's log entry: </I>Don't assume that the object returned by getSubContextList() is a 
  +PredicatedNodeTest object.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>04/11/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor ProcessorInclude.java
  + TransformerFactoryImpl.java
  + java/src/org/apache/xalan/transformer
  + TransformerIdentityImpl.java
  + java/src/org/apache/xml/utils TreeWalker.java<BR><I>Committer's log entry: </I>Create new TreeWalker constructor that takes a systemId parameter. Change 
  +TreeWalker to change fields in the locator and not set it for each node.<BR><BR></LI><LI><I>Committed by </I>curcuru@apache.org<I> on </I>04/17/2001<BR><I>Modified: </I>java/src/org/apache/xpath XPath.java<BR><I>Committer's log entry: </I>Fix Bugzilla bug:
  + PR: 1106
  + Submitted by: elharo@metalab.unc.edu<BR><BR></LI><LI><I>Committed by </I>curcuru@apache.org<I> on </I>04/18/2001<BR><I>Modified: </I>java/src/org/apache/xalan/lib/sql QueryParameter.java
  + SQLExtensionError.java XConnection.java<BR><I>Committer's log entry: </I>Minor Javadoc updates (add @author name, remove declared but unthrown @throws)<BR><BR></LI><LI><I>Committed by </I>johng@apache.org<I> on </I>04/18/2001<BR><I>Modified: </I>java/src/org/apache/xalan/lib/sql Column.java
  + ColumnAttribute.java ColumnData.java
  + ColumnHeader.java Row.java RowSet.java
  + StreamableNode.java XConnection.java
  + XStatement.java<BR><I>Committer's log entry: </I>Support for Streamable Mode- John Gentilin<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>04/24/2001<BR><I>Modified: </I>java/src/org/apache/xpath/objects XObject.java<BR><I>Committer's log entry: </I>Resolve bugzilla bug 1015 
  +&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1015&gt;.
  + Fix prevents null pointer exceptions when null non-XSLT arguments are
  + passed to an extension function.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>04/24/2001<BR><I>Modified: </I>java/src/org/apache/xalan/extensions MethodResolver.java<BR><I>Committer's log entry: </I>Resolve bugzilla bug 1015 
  +&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1015&gt;.
  + Fix prevents null pointer exceptions when null non-XSLT arguments are
  + passed to an extension function.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>04/24/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor
  + TransformerFactoryImpl.java<BR><I>Committer's log entry: </I>Fix copy/paste error. Want to use TransformerFactoryImpl's class loader.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>04/24/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer
  + TransformSnapshotImpl.java<BR><I>Committer's log entry: </I>Keep a copy of current contextNodeList is there is one<BR><BR></LI><LI><I>Committed by </I>curcuru@apache.org<I> on </I>04/25/2001<BR><I>Modified: </I>java/src/org/apache/xalan/xslt EnvironmentCheck.java<BR><I>Committer's log entry: </I>Added checkDirForJars() which checks java.ext.dirs as well now<BR><BR></LI><LI><I>Committed by </I>dleslie@apache.org<I> on </I>04/26/2001<BR><I>Added: </I>java/src/javax/xml/transform package.html
  + java/src/javax/xml/transform/dom package.html
  + java/src/javax/xml/transform/sax package.html
  + java/src/javax/xml/transform/stream package.html<BR><I>Committer's log entry: </I>Add package.html for each package in javax.xml.transform.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>04/27/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer TransformerImpl.java<BR><I>Committer's log entry: </I>Resolve bug 1496 &lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1496&gt; 
  +where xsl:param statements were not being reset properly if the TransformerImpl 
  +was reused.<BR><BR></LI><LI><I>Committed by </I>jkesselm@apache.org<I> on </I>04/27/2001<BR><I>Modified: </I>java/src/org/apache/xalan/stree DocImpl.java<BR><I>Committer's log entry: </I>Fix for #1561<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>04/29/2001<BR><I>Modified: </I>java/src/org/apache/xpath/functions FuncExtFunction.java<BR><I>Committer's log entry: </I>Resolve bugzilla bug 1373 
  +&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1373&gt;.
  + Added code to support return of Integer or Long by an external function.
  + Code was contributed by Patrick Moore &lt;patmoore@ieee.org&gt;.<BR><BR></LI><LI><I>Committed by </I>costin@apache.org<I> on </I>05/03/2001<BR><I>Modified: </I>java/src/javax/xml/transform/stream StreamResult.java
  + StreamSource.java<BR><I>Committer's log entry: </I>Small fix to avoid file:////path that may fail on some JDK.<BR><BR></LI><LI><I>Committed by </I>dleslie@apache.org<I> on </I>05/04/2001<BR><I>Modified: </I>java/src/org/apache/xalan/lib/sql package.html<BR><I>Committer's log entry: </I>Preliminary updates for John G's work.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>05/07/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer TransformerImpl.java<BR><I>Committer's log entry: </I>Check for a null contextNodeList before returning its clone<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>05/07/2001<BR><I>Modified: </I>java/src/org/apache/xalan/stree StreeDOMBuilder.java<BR><I>Committer's log entry: </I>Set the element's level correctly, before we process attributes.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/08/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer
  + TransformerIdentityImpl.java<BR><I>Committer's log entry: </I>Resolve bugzilla 1648 
  +(http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1648).
  + TransformerIdentityImpl was improperly using an old LexicalHandler when 
  +invoked for a second transform.
  + This bug only affects identity transforms with StreamResults.
  + Many thanks to John Keyes &lt;johnkeyes@yahoo.com&gt; for reporting this bug.<BR><BR></LI><LI><I>Committed by </I>dleslie@apache.org<I> on </I>05/10/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor XSLProcessorVersion.java<BR><I>Committer's log entry: </I>Updated version number to 2.1.0<BR><BR></LI><LI><I>Committed by </I>dleslie@apache.org<I> on </I>05/10/2001<BR><I>Modified: </I>java/src/org/apache/xalan/res XSLTInfo.properties<BR><I>Committer's log entry: </I>Updated version number to 2.1.0<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/10/2001<BR><I>Modified: </I>java/src/org/apache/xpath/functions FuncExtFunction.java<BR><I>Committer's log entry: </I>Change submitted by Patrick Moore &lt;patmoore@ieee.org&gt; as part of bugzilla 
  +1373 (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1373).
  + Return value from extension function is now generalized so that all 
  +derivatives of Number are now properly handled.<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>05/11/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor XSLTSchema.java<BR><I>Committer's log entry: </I>Set the correct order of xsl:include elements<BR><BR></LI><LI><I>Committed by </I>johng@apache.org<I> on </I>05/13/2001<BR><I>Modified: </I>java/src/org/apache/xalan/lib/sql Column.java
  + ColumnAttribute.java ColumnData.java
  + ColumnHeader.java ConnectionPool.java
  + DefaultConnectionPool.java ExtensionError.java
  + PooledConnection.java QueryParameter.java Row.java
  + RowSet.java SQLExtensionError.java
  + StreamableNode.java XConnection.java
  + XConnectionPoolManager.java XStatement.java
  + package.html<BR><I>Committer's log entry: </I>Updates Javadocs
  + Submitted by:John Gentilin mailto://johnglinux@eyecatching.com<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/14/2001<BR><I>Modified: </I>java/src/org/apache/xalan/xslt Process.java<BR><I>Committer's log entry: </I>Correct typo introduced in revision 1.30 causing problems with transforms on 
  +Unix platforms.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/14/2001<BR><I>Modified: </I>java/src/org/apache/xalan/templates ElemChoose.java<BR><I>Committer's log entry: </I>Correct bugzilla bug 1748 
  +&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1748&gt;.
  + When evaluating xsl:when, the xsl:choose element was used to resolve 
  +namespace prefixes instead of
  + the xsl:when element itself. This caused namespace prefixes defined on the 
  +xsl:when to be ignored.<BR><BR></LI><LI><I>Committed by </I>costin@apache.org<I> on </I>05/15/2001<BR><I>Modified: </I>java/src/javax/xml/parsers DocumentBuilderFactory.java
  + SAXParserFactory.java
  + java/src/javax/xml/transform TransformerFactory.java<BR><I>Committer's log entry: </I>Use the context class loader if available.
  +
  + The implementation is based on ExtensionHandler, and it's needed in order
  + to work in certain environments ( like tomcat ).<BR><BR></LI><LI><I>Committed by </I>costin@apache.org<I> on </I>05/15/2001<BR><I>Modified: </I>java/src/org/apache/xalan/extensions ExtensionHandler.java
  + ExtensionHandlerGeneral.java<BR><I>Committer's log entry: </I>Make getClassForName a public method. There are few other places in xalan
  + where Class.forName is used, and this can create problems in some cases
  + where the Thread.getContextClassLoader should be used.
  +
  + getClassForName uses introspection to call getContextClassLoader
  + ( so it works in JDK1.1 ).
  +
  + In ExtensionHandlerGeneral, use the thread loader to find BSF ( it may be
  + possible that xalan is installed in CLASSPATH, but BSF is in a webapp ).<BR><BR></LI><LI><I>Committed by </I>costin@apache.org<I> on </I>05/15/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor
  + CompilingStylesheetHandler.java
  + java/src/org/apache/xalan/serialize SerializerFactory.java<BR><I>Committer's log entry: </I>2 more instances where Class.forName was used.
  +
  + Use the method in ExtensionHandler for consistency ( we could move it in
  + org.apache.xml.utils, but for now it's easier to just use it as it is )<BR><BR></LI><LI><I>Committed by </I>costin@apache.org<I> on </I>05/15/2001<BR><I>Modified: </I>java/src/org/apache/xalan/stree SourceTreeHandler.java
  + java/src/org/apache/xalan/transformer TransformerImpl.java<BR><I>Committer's log entry: </I>This is the &quot;thread pooling hook&quot;.
  +
  + It slightly changes the API used to create and wait for the transform thread.
  + Instead of using threadCreate() and Thread.start() that creates a new thread
  + and thread.join() that waits for a thread to end, we now use a 
  +ThreadControler
  + class that has the equivalent methods:
  + - run( Runnable ) - executes a task in a thread. The default implementation
  + is identical with what we had, using new Thread() and start()
  + - waitTread() - waits for a task to end. The default impl. is identical with
  + the previous code, using thread.join().
  +
  + Someone wanting to use a thread pool for xalan will have to extend
  + the ThreadControler and override the 2 methods, then call setThreadController.
  +
  + Xalan itself doesn't implement a thread pool right now ( for mosts uses it's
  + not even needed - if you just do few transforms for example ), instead
  + a server that runs xalan could plug it's own thread pool.<BR><BR></LI><LI><I>Committed by </I>Gary L Peskin &lt;garyp@firstech.com&gt;<I> on </I>05/15/2001<BR><I>Committer's log entry: </I>
  +&gt; Use the context class loader if available.
  +&gt;
  +&gt; The implementation is based on ExtensionHandler, and it's needed in order
  +&gt; to work in certain environments ( like tomcat ).
  +&gt;
  +&gt;<BR><BR></LI><LI><I>Committed by </I>dleslie@apache.org<I> on </I>05/16/2001<BR><I>Modified: </I>java/src/org/apache/xalan/lib/sql ExtensionError.java<BR><I>Committer's log entry: </I>Fixed &quot;conflict&quot; in javadoc comments.<BR><BR></LI><LI><I>Committed by </I>dleslie@apache.org<I> on </I>05/16/2001<BR><I>Modified: </I>java/src/org/apache/xalan/lib/sql package.html<BR><I>Committer's log entry: </I>Editing pass.<BR><BR></LI><LI><I>Committed by </I>tmiller@apache.org<I> on </I>05/17/2001<BR><I>Modified: </I>java/src/org/apache/xalan/xsltc TransletOutputHandler.java<BR><I>Committer's log entry: </I>bug # 1406 fixed, omit xml header implemented<BR><BR></LI><LI><I>Committed by </I>curcuru@apache.org<I> on </I>05/17/2001<BR><I>Modified: </I>java/src/org/apache/xalan/xslt Process.java<BR><I>Committer's log entry: </I>Update Javadoc and remove commented out reference to properties file
  + PR:Bugzilla1627<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/18/2001<BR><I>Modified: </I>java/src/org/apache/xalan/transformer ResultTreeHandler.java<BR><I>Committer's log entry: </I>Resolve bug 1330 &lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1330&gt;.
  + setContentHandler failed to also reset m_lexicalHandler if the ContentHandler
  + was also a LexicalHandler. This caused the old LexicalHandler to be used 
  +which
  + was pointing to a previous result tree.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/18/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor
  + TransformerFactoryImpl.java<BR><I>Committer's log entry: </I>Resolve bug 1762 &lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1762&gt;.
  + TransformerFactoryImpl's URIResolver was not propagated to created 
  +Transformers.
  + Modified code to propagate.<BR><BR></LI><LI><I>Committed by </I>curcuru@apache.org<I> on </I>05/19/2001<BR><I>Modified: </I>java/src/org/apache/xml/utils TreeWalker.java
  + SystemIDResolver.java<BR><I>Committer's log entry: </I>Catch SecurityException whenever accessing System.getProperty(&quot;user.dir&quot;);
  + minor javadoc update<BR><BR></LI><LI><I>Committed by </I>sboag@apache.org<I> on </I>05/21/2001<BR><I>Modified: </I>java/src/org/apache/xalan/templates ElemCopy.java
  + ElemValueOf.java
  + java/src/org/apache/xalan/transformer TreeWalker2Result.java
  + java/src/org/apache/xpath/functions FuncLast.java<BR><I>Committer's log entry: </I>Fix for bugs reported by the Eclipse folks for TransformState, where
  + some operations (xsl:value-of, xsl-copy) were not pushing the
  + current node on the current node stack. Addresses
  + http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1524.<BR><BR></LI><LI><I>Committed by </I>curcuru@apache.org<I> on </I>05/21/2001<BR><I>Modified: </I>java/src/org/apache/xalan/templates OutputProperties.java<BR><I>Committer's log entry: </I>Catch SecurityException as needed
  + PR: Bugzilla1258<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/21/2001<BR><I>Modified: </I>java/src/org/apache/xalan/templates OutputProperties.java<BR><I>Committer's log entry: </I>Fix to the following bug reported by dims@yahoo.com:
  +
  + loadPropertiesFile method in org\apache\xalan\templates\OutputProperties.java 
  +does not fall back
  + to the Thread Context Class Loader to load properties files like 
  +output_xml.properties etc. This
  + is causing problems in ServletExec_3_1+C2.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/21/2001<BR><I>Modified: </I>java/src/org/apache/xalan/templates OutputProperties.java<BR><I>Committer's log entry: </I>Correct implementation of ContextClassLoader to support case where properties 
  +file is to be loaded by a different ClassLoader than the OutputProperties 
  +class. Thanks to Davanum Srinivas &lt;dims@yahoo.com&gt; for this code and for 
  +reporting this bug.
  + loadPropertiesFile should eventually be moved into a thread-specific class.<BR><BR></LI><LI><I>Committed by </I>garyp@apache.org<I> on </I>05/21/2001<BR><I>Modified: </I>java/src/org/apache/xalan/processor
  + TransformerFactoryImpl.java
  + java/src/org/apache/xalan/serialize CharInfo.java
  + java/src/org/apache/xpath/functions FuncSystemProperty.java<BR><I>Committer's log entry: </I>Modify getResourceAsStream calls to use the contextClassLoader, if available.
  + This is a temporary fix until we can centralize this function.<BR><BR></LI></UL><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>This release includes no updates of the compatibility source code.</I></FONT></TD></TR></TABLE>
  +     </FONT></TD></TR></TABLE><BR>
  +     <A name="other"><!--anchor--></A>
  +     <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>Other points of interest</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +     <UL>
  +     <LI>Handling xsl:namespace-alias declarations: In release 2.0.D01, we reported the need to do some research concerning exactly how Xalan
  +     should handle xsl:namespace-alias declarations. As a result of discussions among members of the W3C Working Group on XSL, we have reached a
  +     more precise consensus on how namespaces should be represented when an xsl:namespace-alias declaration is in effect.<BR><BR>
  +     If a literal result element has a namespace prefix, the prefix will be preserved and the namespace URI of the element will be as
  +     specified in the xsl:namespace-alias element, but the result-prefix is not required to appear in the result. This also applies to the
  +     two other cases of &quot;Literal namespace URI&quot; mentioned in the XSLT Recommendation on 
  +     <A href="http://www.w3.org/TR/xslt#literal-result-element">Literal Result Elements</A>. More simply, if the stylesheet calls for
  +     &lt;axsl:foo&gt; to be output as a literal result element, then it will be output as &lt;axsl:foo&gt; in the result, but the namespace
  +     associated with this &quot;axsl&quot; prefix will be as designated in the xsl:namespace-alias declaration.<BR><BR></LI>
  +     <LI>For HTML output, Xalan-Java 2 outputs character entity references (&amp;copy; etc.) for the special characters designated in  
  +     <A href="http://www.w3.org/TR/xhtml1/#dtds">Appendix A. DTDs of the XHTML 1.0: The Extensible HyperText Markup
  +     Language</A>. Xalan-Java 1.x, on the other hand, outputs literal characters for some of these special characters.<BR><BR></LI>
  +     <LI>In conformance with the <A href="http://www.w3.org/TR/xslt#section-HTML-Output-Method">XSLT Recommendation on the HTML 
  +     Output Method</A> and <A href="http://www.w3.org/TR/REC-html40/appendix/notes.html#h-B.2.1">Section B.2.1 of the HTML 4.0
  +     Recommendation</A>, Xalan-Java 2 uses %hh encoding for each byte of the UTF-8 representation of non-ASCII characters in HTML URI
  +     attributes.<BR><BR></LI>
  +     <LI>When your stylesheet asks for an explicit carriage-return character (&amp;#13;) to be inserted into the output, it is output during
  +     the serialization process in escaped form unless escaping has been disabled.  When your stylesheet asks for an explicit line-feed character
  +     (&amp;#10;) to be output, the system-default line-break character(s) is/are output during the serialization process.  Also keep in mind that
  +     the XML parser normalizes line-breaks to line-feeds when it sends character events to the processor.<BR><BR></LI>
  +     <LI>If your XML input is a DOM, use the javax.xml.parsers.DocumentBuilderFactory setCoalescing() method to set coalescing to true (it is
  +     false by default), if you want to append CDATA sections to adjacent text sections to form a single text node (as the XPath standard calls
  +      for), and if the XML parser supports this feature (Xerces-Java version 1.4 does not).</LI>
  +     </UL>
  +     </FONT></TD></TR></TABLE><BR><A name="bugs"><!--anchor--></A>
  +     <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>Bugs</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +     <P>All known Xalan-Java bugs are listed in <A href="http://nagoya.betaversion.org/bugzilla/" target="_top">Bugzilla (the Apache bug database)</A>. For a list of open bugs with links to each bug
  +      report, see <A href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=XalanJ2&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=%27Importance%27" target="_top">XalanJ2 open bugs</A>. If you find a new bug, please enter a XalanJ2 bug report in this
  +      database.</P>
  +     <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>Before you can enter your first bug report, you must submit your email address to Bugzilla and receive a password.</I></FONT></TD></TR></TABLE> 
  +     <P>We strongly encourage you write patches for problems you find and submit them to
  +      xalan-dev@xml.apache.org. We review the patches we receive to make sure they do not break something else, and (assuming they 
  +     do not) include them in our next release. In the interest of fixing bugs, adding enhancements, and addressing outstanding design
  +     issues, we sincerely want (and need!) your active participation in the ongoing development of Xalan.</P>
  +     <P>Xerces bug in Xerces-Java version 1.4:</P>
  +     <UL>
  +       <LI>Xerces-Java version 1.4 does not process namespaces in SAX events when parsing UTF-16 documents, which causes Xalan-Java to fail with UTF-16
  +        documents. Xerces will post a fix shortly.<BR><BR></LI>
  +     </UL>
  +     </FONT></TD></TR></TABLE><BR>     
  +     <A name="status"><!--anchor--></A>
  +       <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>Version of Xerces to use</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"> 
  +<P>The Xalan-Java version 2.1.0 has been tested with Xerces-Java version 1.4. The Xalan-Java version 2.1.0 download from xml.apache.org includes xerces.jar from Xerces-Java version 1.4. For information about including xerces.jar on the system class path, see <A href="getstarted.html#classpath">Setting up the system class path</A>.</P>
  +<P><B>Important</B> You may experience unpredictable anomalies if your Xalan and Xerces builds are not in synch. If you download an update to Xalan, check the release notes to determine which version of Xerces you should use.</P>
  +<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>You can use Xalan with other XML parsers that implement the <A href="http://java.sun.com/xml/docs/api/index.html" target="_top">Java API for XML Parsing 1.0</A>. See 
  +<A href="usagepatterns.html#plug">Plugging in the Transformer and XML parser</A>.</I></FONT></TD></TR></TABLE>
  +</FONT></TD></TR></TABLE><BR>
  +     <A name="to-do"><!--anchor--></A>
  +     <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>To-do tasks</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +       <P>For a list of goals, tasks, and target dates for completion, see <A href="todo.html">Xalan-Java Version 2: Things To Do</A>. 
  +       As tasks are completed, they are moved from the to-do list to 
  +       <A href="todo.html#release-date-completed">Completed</A>.</P>
  +       <P>The source document for the to-do list is an active document in the Apache CVS repository: 
  +       <A href="http://xml.apache.org/websrc/cvsweb.cgi/xml-xalan/java/todo.xml">xml-xalan/java/todo.xml</A>.</P>
  +      </FONT></TD></TR></TABLE><BR> 
  +  </FONT></TD></TR></TABLE><BR>
  +  <A name="xsltcreleasenotes"><!--anchor--></A>
  +<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>XSLTC Release 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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +<P>For this release, please note the following changes, additions, omissions, problems, procedures for running demos, and new support 
  +for the TrAX API.
  +</P>
  +<UL>
  +  <LI><A href="#xsltcnew">Changes and New Features</A></LI>
  +  <LI><A href="#xsltcconf">Conformance</A></LI>
  +  <LI><A href="#xsltcknownproblems">Known Problems</A></LI>
  +  <LI><A href="#xsltcdemos">Running Demos</A></LI>  
  +  <LI><A href="#xsltctrax">Translets and TrAX</A></LI>
  +</UL>
  +<A name="xsltcnew"><!--anchor--></A>
  +<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>Changes and New Features</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +<P>Since this is the first release of XSLTC on Apache (xml.apache.org), changes are  
  +relative to Preview 5 of XSLTC posted on www.sun.com/xml/developers.</P>
  +<UL>
  +  <LI>Simplified stylesheets are now implemented.</LI>
  +  <LI>Base package name has changed from <CODE><FONT face="courier, monospaced">com.sun.xslt</FONT></CODE> to <CODE><FONT face="courier, monospaced">org.apache.xalan.xsltc</FONT></CODE></LI>
  +  <LI>You no longer have to get the BCEL.jar file; it is included in the distribution.</LI>
  +  <LI>The Project X parser components and APIs have all been replaced with JAXP equivalents. 
  +  Consequently, you may deploy XSLTC with JAXP-conformant parsers, such as Xerces or Crimson.</LI>
  +  <LI>Previously undocumented feature: -x. You can use the -x option on the java command line when you
  +  compile translets or run them to get more detailed information on errors.</LI>
  +  <LI>Addition of -s to DefaultRun - a new -s option has been added to the DefaultRun class 
  +  for use with test auotmation. When you use the option, it prevents System.exit() from being called when 
  +  and exception is encountered.</LI>
  +</UL>
  +</FONT></TD></TR></TABLE><BR>
  +<A name="xsltcconf"><!--anchor--></A>
  +<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>XSLT 1.0 Conformance and Extensions</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +<P>XSLTC does not yet support the following features of the <A href="http://www.w3.org/TR/xsl" target="_top">Extensible Stylesheet Language (XSL) Version 1.0 W3C Candidate Recommendation</A>:</P>
  +<UL>
  +  <LI>The namespace axis is not implemented. You cannot get a node set containing the namespace nodes
  +    in scope from a context node in the document tree. Otherwise, namespace functionality is implemented.</LI>
  +</UL>
  +<P>XSLTC does not support a number of features that are not required by the XSLT 1.0 specification,
  +but which are supported by a number of other XSLT processors:</P>
  +<UL>
  +  <LI>Incomplete support for extension elements and external Java functions. Currently you can set up an extension function
  +    to call a static Java function. For the extension namespace, use<BR>
  +    &nbsp;&nbsp;&nbsp;&nbsp;http://xml.apache.org/xalan/xsltc/java/java/&lt;class&gt;<BR>
  +    where &lt;class&gt; identifies the class with the static method.</LI>
  +  <LI>Lack of support for the redirection of output to multiple
  +    output files from within a stylesheet (equivalent to xalan:redirect or
  +    saxon:output).</LI>
  +  <LI>XSLTC does not implement a node-set extension to convert result tree fragments to
  +    node-sets. This would enable sorting and grouping of nodes assigned to a tree </LI>
  +</UL>
  +</FONT></TD></TR></TABLE><BR>
  +<A name="xsltcknownproblems"><!--anchor--></A>
  +<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 Problems</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +<UL>
  +  <LI>Casting variables: XSLTC requires you to explicitly type cast values 
  +  returned by variables or expressions, when you use them in tests. Always a good
  +  practice, but it may seem like overkill in some in contexts, where other XSLT processors
  +  automatically assume or convert to the correct type. For example. unless you cast $country
  +  to a string in the following apply-templates, entry nodes whose &lt;country&gt; elements
  +  contain a string matching the global $country parameter are NOT selected.<BR><BR>
  +&nbsp;&nbsp;&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">&lt;xsl:apply-templates select=&quot;entry[country=string($country)]&quot;/&gt;</FONT></CODE></LI>
  +  <LI>Order dependency of conditions within a predicate: If you have a predicate in a select or match
  +  expression that has multiple conditions, one of which contains a union (X or Y), put it last. 
  +  Otherwise, the predicate fails to match node that it should.</LI>
  +  <LI>When using DOM caching, as shown in the Servlet demo, if the source document is local to the 
  +  server, the cache is not refreshed when the source XML document is modified. This 
  +  problem does not apply when the source is associated with a URL.</LI>
  +  <LI>If you have a list of references included or imported stylesheets, put any with 
  +  a relative path last; otherwise, stylesheets in the current directory are not found.</LI>
  +  <LI>[1] should be treated equivalent to position()=1, but it is not. Therefore, if 
  +  you get unexpected results using such shortcut positional predicates, substitute the 
  +  full postion()= version.</LI>
  +  <LI>XSLTC fails to match existing nodes when match expressions have 
  +  multiple steps with predicates containing the position function.
  +  The following examples are taken from the XSLTMark oddtemplates.xsl test:<BR><BR>
  +  <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;match='top/*[position()=2]'</FONT></CODE><BR>
  +  <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;match='top/*[6]/kid[2]'</FONT></CODE><BR>
  +  <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;match='top/*[position()=last()]'</FONT></CODE><BR></LI>
  +  <LI>XSTLC has problems with output escaping, see bug 1403.</LI>
  +  <LI>Case-order option with sorting is ignored.</LI>
  +  <LI>As a minor side-effect of implementing simplified stylesheets, if you inadvertenly 
  +  go to compile a stylesheet and give the name of the .xml doc instead of the .xsl doc,
  +  it may compile without a warning. In some cases, the compiler aborts with an error 
  +  about too many branches.</LI>
  +</UL>
  +</FONT></TD></TR></TABLE><BR>
  +<A name="xsltcdemos"><!--anchor--></A>
  +<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>Running Demos</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +<P>XSLTC provides demos for using XSLTC as a servlet and as a handler for 
  +Brazil (a new and powerful Web techology from Sun labs). To run these demos,
  +download Brazil from sunlabs:</P>
  +<P><CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://research.sun.com/research/download/index.html">http://research.sun.com/research/download/index.html</A></FONT></CODE></P>
  +<P>and the java extensions for servlets from Sun:</P>
  +<P><CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;
  +<A href="http://java.sun.com/products/servlet/download.html">
  +http://java.sun.com/products/servlet/download.html</A>
  +</FONT></CODE></P>
  +<P>The translet must be specified as a pure class name, accessible
  +through the Brazil handler's classpath. For example:</P>
  +<P><CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;translet=mk054</FONT></CODE></P>
  +<P>The document must be specified as a valid URL. For example:</P>
  +<P><CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;document=http://server/path/to/filename.xml</FONT></CODE></P>
  +<P>If the file is local to the Brazil handler, it has to be
  +specified using the &quot;file:filename.xml&quot; format.</P>
  +<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>You also need to make the Brazil and javax classes available from your classpath</I></FONT></TD></TR></TABLE>
  +<P>See also: <A href="samples.html#translets">sample JAXP translets</A>.</P>
  +</FONT></TD></TR></TABLE><BR>
  +
  +<A name="xsltctrax"><!--anchor--></A>
  +<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>Translets and TrAX</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +<P>
  +The Translet API has been extended to conform with the JAXP1.1 TrAX model.
  +This release contains the first implementation of that extension. Two
  +new classes have been added to the Translet XSLT codebase, they are:</P>
  +<P>(1) <CODE><FONT face="courier, monospaced">org.apache.xalan.xsltc.runtime.TransformerFactoryImpl</FONT></CODE> -<BR>
  +&nbsp;&nbsp;&nbsp;&nbsp;the Translet implementation of a SAXTransformerFactory.</P>
  +<P>(2) <CODE><FONT face="courier, monospaced">org.apache.xalan.xsltc.runtime.TransletTemplates</FONT></CODE> -
  +&nbsp;&nbsp;&nbsp;&nbsp;the Translet implementation of a Templates object.</P>
  +<P>
  +The existing XSLT class 'org.apache.xalan.xsltc.runtime.AbstractTranslet'
  +that implements the Translet interface is now also extending the 
  +javax.xml.transform.Transformer abstract class.
  +</P>
  +<P>
  +This implementation is only a partial implementation, with many limitations.
  +These limitations include:
  +</P>
  +<OL>
  +<LI>Currently  'StreamSource' and 'StreamResult' are the only
  + TrAX Sources and Results that are supported.</LI>
  +<LI>The translet is compiled everytime a call is made to the<BR>
  +<CODE><FONT face="courier, monospaced">TransformerFactoryImpl 'newTransformer()'</FONT></CODE> method.</LI>
  +<LI>The translet is compiled everytime a call is made to the <BR>
  +<CODE><FONT face="courier, monospaced">TemplateFactoryImpl 'newTransformer()'</FONT></CODE> method.</LI>
  +<LI>Translet are currently not cached. (See (2) and (3)).</LI>
  +<LI>Several abstract methods from SAXTransformerFactory still need to
  +be implemented in the xsltc.runtime.TransformerFactoryImpl class:<BR><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;TemplatesHandler newTemplatesHandler()</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;TransformerHandler newTransformerHandler()</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;TransformerHandler newTransformerHandler(Source src)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;TransformerHandler newTransformerHandler(Templates templates)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;XMLFilter newXMLFilter(Source src)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;XMLFilter newXMLFilter(Templates templates)</FONT></CODE></LI>
  +<LI>Several abstract methods from Transformer still need to be implemented in the 
  +AbstractTranslet class:<BR><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;ErrorListener getErrorListener()</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;void setErrorListener(ErrorListener)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;Properties getOutputProperties()</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;String getOutputProperty(String name)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;void setOutputProperties(Properties props)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;void setOutputProperty(String name, String value)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;URIResolver getURIResolver()</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;void setURIResolver(URIResolver resolver)</FONT></CODE></LI>
  +<LI>Abstract method from Templates still need to be implemented in the TransletTemplates class:<BR><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;Properties getOutputProperties()</FONT></CODE></LI>
  +<LI>Several abstract methods from TransformerFactory still need to be implemented 
  +in the <CODE><FONT face="courier, monospaced">xsltc.runtime.TransformerFactoryImpl</FONT></CODE> class:<BR><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;ErrorListener getErrorListener()</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;void setErrorListener(ErrorListener listener)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;Object getAttribute(String name)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;void setAttribute(String name, Object value)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;boolean getFeature(String name)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;URIResolver getURIResolver()</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;void setURIResolver(URIResolver resolver)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;Source getAssociatedStylesheet(Source src, String media, String title,</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String charset)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;Templates newTemplates(Source xslSrc)</FONT></CODE><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;Transformer newTransformer()</FONT></CODE></LI>
  +<LI>Whenever possible, the required methods that are currently unimplemented will throw an 
  +exception if someone tries to call them- this will alert the user that the method is not implemented. 
  +The message is of the form:<BR><BR>
  +<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;&quot;&lt;Class Name&gt;:&lt;Method Name&gt;( &lt;args&gt; ) not implemented yet.&quot;</FONT></CODE>
  +</LI>
  +</OL>
  +</FONT></TD></TR></TABLE><BR>
  +</FONT></TD></TR></TABLE><BR>
  +  <A name="build"><!--anchor--></A>  
  +  <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>Build 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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +<UL>
  +<LI><A href="#ant">Using Ant</A></LI>
  +<LI><A href="#jar">Rebuilding xalan.jar</A></LI>
  +<LI><A href="#samples">Rebuilding sample applications</A></LI>
  +<LI><A href="#doc">Rebuilding the Xalan-Java documentation</A></LI>
  +</UL>
  +<A name="ant"><!--anchor--></A>
  +   <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 Ant</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +     <P>Apache <A href="http://jakarta.apache.org/ant/index.html" target="_top">Ant</A> is a flexible, powerful, and easy-to-use Java build tool that we include with the
  +     Xalan-Java distribution. The Ant JAR file is in the bin directory, and the cross-platform XML build file (build.xml) is in 
  +     the root directory along with a Windows32 batch file (build.bat) and a UNIX shell file (build.sh). The build file defines 
  +     the &quot;targets&quot; that you can use Ant to build. The batch and shell files set up the classpath and launch Ant with the target 
  +     (and any other arguments) you provide.</P>
  +     <P><B>Instructions for using Ant</B></P>
  +     <OL>
  +       <LI>Set the JAVA_HOME environment variable to the JDK root directory.<BR><BR>
  +       If you are using JDK 1.1.8, you must also put classes.zip in the JDK bin directory on the classpath. You can use Ant 
  +       with JDK 1.1.8 to compile and jar the Xalan-Java source files, but you must have JDK 1.2.2 or higher to build the
  +       documentation.<BR><BR></LI>
  +       <LI>Depending on your environment, run the batch file (build.bat) or shell file (build.sh) from the Xalan-Java root
  +       directory, optionally with arguments (see the table of targets below).<BR><BR>
  +       The batch/shell file adds several JAR files to the classpath and launches Ant with any arguments you provide. If you
  +       provide no target, Ant compiles the source files and rebuilds xalan.jar (the &quot;jar&quot; target).</LI>
  +     </OL>
  +     <P>You can also set up your classpath manually (see build.bat or build.sh for the details), and then run Ant as
  +     follows:<BR><BR>
  +     <CODE><FONT face="courier, monospaced">java org.apache.tools.ant.Main <I>target</I></FONT></CODE><BR><BR>
  +     where <I>target</I> is nothing (for the default target) or one of the following.</P>
  +     <TABLE border="0" cellpadding="2" cellspacing="2" width="100%">
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><B>Target</B>&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><B>What Ant does</B>&nbsp;
  +      </FONT></TD></TR>
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">compile&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">compiles Xalan-Java in build/classes.&nbsp;
  +      </FONT></TD></TR>
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">jar (the default)&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">creates xalan.jar in the build directory&nbsp;
  +      </FONT></TD></TR>
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">samples&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">compiles and jars the sample apps in build/xalansamples.jar&nbsp;
  +      </FONT></TD></TR>
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">servlet&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">compiles and jars the sample servlet in build/xalanservlet.jar&nbsp;
  +      </FONT></TD></TR>       
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">docs&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">creates the HTML User's Guide in build/docs&nbsp;
  +      </FONT></TD></TR>
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">javadocs&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">generates the API documentation in ./build/docs/apidocs&nbsp;
  +      </FONT></TD></TR>
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">dist&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">generates a complete distribution tree with zip and tar.gz distribution files in build&nbsp;
  +      </FONT></TD></TR>
  +       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">clean&nbsp;
  +      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">purges the build and distribution&nbsp;
  +      </FONT></TD></TR> 
  +  </TABLE>
  +  <P>If you build a target that depends on other targets, Ant creates those other targets in the correct order.</P>
  +   </FONT></TD></TR></TABLE><BR><A name="jar"><!--anchor--></A> 
  +   <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>Rebuilding Xalan-Java</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +     <P>The Xalan-Java build is in xalan.jar. The Xalan-Java source code tree is in the src directory.</P>
  +     <P>If you are using Ant, the target is jar (the default). For more information, see <A href="#ant">Using
  +     Ant</A>.</P>
  +     <P>If you want to do the build without Ant, keep the following in mind:</P>
  +     <UL>
  +     <LI>Set the classpath to include the src directory, xerces.jar, bsf.jar, and bsfengines.jar.</LI>
  +     <LI>Use a Java compiler (such as the IBM Just-In-Time compiler or the Sun javac) to compile all the .java files in the src
  +     tree. </LI>
  +     <LI>Use the Sun jar utility to store the resulting .class files in xalan.jar</LI>
  +     </UL>
  +   </FONT></TD></TR></TABLE><BR><A name="samples"><!--anchor--></A>
  +   <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>Rebuilding a sample application</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +   <P>If you modify a sample and want to recompile it, you can run the Java compiler in the directory containing the
  +   example. Be sure xalan.jar and xerces.jar are on the classpath. To recompile (and run!) the class files in the
  +   Servlet subdirectory, the javax.servlet and javax.servlet.http packages must also be on the classpath. Sun
  +   distributes these packages in the JSWDK 1.0.1 servlet.jar file.</P> 
  +   <P>After recompiling a sample, you can use the Sun jar utility to place your new .class files in
  +    xalansamples.jar.</P>
  +    <P>You can use Ant with the samples target to recompile the samples and place the unpackaged class files in xalansamples.jar.
  +     For more information, see <A href="#ant">Using Ant</A>.</P>
  +    <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>To rebuild (and to run) the sample servlet, the javax.servlet and javax.servlet.http packages must be on your
  +    classpath.</I></FONT></TD></TR></TABLE>
  +   </FONT></TD></TR></TABLE><BR><A name="doc"><!--anchor--></A>
  +   <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>Rebuilding the Xalan-Java documentation</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +     <P>Xalan-Java includes a number of XML source files, XSL stylesheets, document type definition (DTD)
  +      files, entity relationship (ENT) files, graphics, and a JavaScript file that provide the input for the Xalan
  +      HTML User's Guide, and the overview and package-level documents used during the generation of Javadoc.</P>
  +      <P>To rebuild the documentation, you must use the StyleBook tool and the JDK 1.2.2 java and javadoc
  +      tools. StyleBook (which uses Xalan and Xerces) is in stylebook-1.0-b2.jar. Some of the document definition files,
  +      stylesheets, and resources are stored in xml-site-style.tar.gz, and are unzipped when you run Ant as described
  +       below.</P>
  +      <P>You can use Ant with the docs target to regenerate the User's Guide and with the javadocs target to regenerate the
  +      Javadoc API documentation. For more information, see <A href="#ant">Using Ant</A>.</P>
  +      <P>If you want to rebuild the documentation without using Ant, keep the following in mind:</P>
  +       <UL>
  +       <LI>Unzip xml-site-style.tar.gz into the xdocs directory (the operation places files in a number of subdirectories).
  +       <BR><BR></LI>
  +       <LI>Be sure stylebook-1.0-b2.jar, xalanjdoc.jar, xalan.jar, bsf.jar, bsfengines.jar, and xerces.jar are on the class
  +       path.<BR><BR></LI>
  +       <LI>To build doc in a build/docs subdirectory, run StyleBook from the xdocs directory as follows:<BR><BR>
  +       <CODE><FONT face="courier, monospaced">java org.apache.stylebook.StyleBook &quot;targetDirectory=../build/docs/&quot; sources/xalanLocal.xml style</FONT></CODE>
  +       <BR><BR></LI>
  +       <LI>To build the HTML source files that javadoc needs for the TrAX top-level and package-level documentation, add
  +       a build/docs/apdidocs/javax/xml/transform directory and run the Xalan command-line utility from the xdocs directory 
  +       as follows (all one line):<BR><BR>
  +<CODE><FONT face="courier, monospaced">
  +java org.apache.xalan.xslt.Process 
  +  -in sources/trax/trax.xml
  +  -param package-root '../../../src/'
  +  -xsl style/stylesheets/spec.xsl 
  +  -out build/docs/apidocs/javax/xml/transform/trax.html</FONT></CODE><BR><BR></LI>
  +        <LI>Before you run javadoc, make sure the following directory structure exists under the Xalan root
  +         directory: build/docs/apidocs.<BR><BR></LI>
  +       <LI>To build the API documentation, run the JDK 1.2.2 javadoc tool from the xdocs directory (all one line):<BR><BR>
  +<CODE><FONT face="courier, monospaced">
  +javadoc -doclet xalanjdoc.Standard 
  + -docletpath ../bin/xalanjdoc.jar 
  + -private
  + -overview ../src/javadocOverview.html -sourcepath ../src 
  + -group TrAX &quot;javax.xml.transform*&quot; 
  + -group Xalan_Core &quot;org.apache.xalan.processor:
  +        org.apache.xalan.templates:
  + org.apache.xalan.transformer&quot;
  + -group XPath &quot;org.apache.xpath*&quot;
  + -group Utilities &quot;org.apache.xml.utils*&quot;
  + -group Xalan_Other &quot;org.apache.xalan.client:
  +        org.apache.xalan.dtm:
  + org.apache.xalan.extensions:org.apache.xalan.res:
  + org.apache.xalan.stree:org.apache.xalan.trace:
  + org.apache.xalan.xslt&quot; 
  + -group Xalan_Extensions &quot;org.apache.xalan.lib*&quot; 
  + -group Serializers &quot;org.apache.xalan.serialize&quot; 
  + org.apache.xalan.client org.apache.xalan.dtm 
  + org.apache.xalan.extensions org.apache.xalan.lib 
  + org.apache.xalan.lib.sql org.apache.xalan.processor 
  + org.apache.xalan.res org.apache.xalan.stree 
  + org.apache.xalan.templates org.apache.xalan.trace 
  + org.apache.xalan.transformer org.apache.xalan.xslt 
  + org.apache.xpath org.apache.xpath.axes 
  + org.apache.xpath.compiler org.apache.xpath.functions 
  + org.apache.xpath.objects org.apache.xpath.operations 
  + org.apache.xpath.patterns org.apache.xpath.res
  + org.apache.xalan.serialize javax.xml.transform  
  + javax.xml.transform.dom javax.xml.transform.sax 
  + javax.xml.transform.stream javax.xml.parsers
  + -d ../build/docs/apidocs -windowtitle &quot;Xalan-Java 2&quot; 
  + -doctitle &quot;Xalan-Java 2&quot; -bottom &quot;Copyright &copy; 
  +  2000 Apache XML Project. All Rights Reserved.&quot;
  +</FONT></CODE></LI>
  +</UL>
  +  </FONT></TD></TR></TABLE><BR>    
  + </FONT></TD></TR></TABLE><BR><A name="contact"><!--anchor--></A>
  + <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>Getting in Touch</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +  <P>Your feedback is more than welcome. Offers of help are even more so! Perhaps you would like to take on an active role in the ongoing development, testing, and documentation of Xalan-Java?</P> 
  +<P>Please email your comments, questions, suggestions, and offers to join the Xalan team to <A href="mailto:xalan-dev@xml.apache.org">Xalan Development Mailing List</A>.</P>
  + </FONT></TD></TR></TABLE><BR><A name="history"><!--anchor--></A>
  + <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>Cumulative history of software changes</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +   <P>The following sections list the changes in each release since Xalan-Java version 2.0.D01.</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>Changes for Xalan-Java 2.0.1</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +<P>This release includes a number of bug fixes to the Xalan-Java and TrAX core and Xalan-Java 1 compability API. We have also</P>
  +<UL>
  +  <LI>Entered all known Xalan-Java 2 <A href="#bugs">bugs</A> in the Apache Bugzilla database<BR><BR></LI>
  +  <LI>Added support for using custom URIResolver, EntityResolver, and ContentHandler implementations with the <A href="commandline.html">command-line utility</A><BR><BR></LI> 
  +  <LI>Upgraded from Ant 1.2 to Ant 1.3 for our <A href="#build">builds</A> (the new ant.jar is in the bin directory).</LI>
  +</UL>
  +<P>Core source code updates:</P>
  +<UL>
  +<LI><I>Committed by </I>sboag@apache.org<I> on </I>02/06/2001<BR><I>Modified: </I>java/src/org/apache/xpath/axes ChildWalkerMultiStep.java<BR><I>Committer's log entry: </I>Fix for bug reported by &quot;Chris P. McCabe&quot; &lt;chris_mccabe@choicehotels.com&gt;
    02/06/2001 06:55 PM.
    Defensive fix for if the last used walker is null, then don't check to
    see if it is a fast walker! Without this, a null pointer exception is
  @@ -326,229 +978,11 @@
    Fix problem with reading an input source file twice if it has a PI<BR><BR></LI><LI><I>Committed by </I>mmidy@apache.org<I> on </I>02/22/2001<BR><I>Modified: </I>java/compat_src/org/apache/xalan/xslt StylesheetRoot.java<BR><I>Committer's log entry: </I>Add getOutputMethod API.<BR><BR></LI><LI><I>Committed by </I>dleslie@apache.org<I> on </I>03/07/2001<BR><I>Modified: </I>java/compat_src/org/apache/xalan/xpath/xml
    XMLParserLiaisonDefault.java<BR><I>Committer's log entry: </I>Put in Apache copyright.<BR><BR></LI><LI><I>Committed by </I>sboag@apache.org<I> on </I>03/13/2001<BR><I>Modified: </I>java/compat_src/org/apache/xalan/xpath/xml TreeWalker.java
    java/compat_src/org/apache/xalan/xslt XSLTEngineImpl.java<BR><I>Committer's log entry: </I>Made changes for change to API for XalanJ2 TreeWalker, which
  - now requires that the DOM helper be created by the caller.<BR><BR></LI></UL>
  -     </FONT></TD></TR></TABLE><BR>
  -     <A name="other"><!--anchor--></A>
  -     <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>Other points of interest</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -     <UL>
  -     <LI>Handling xsl:namespace-alias declarations: In release 2.0.D01, we reported the need to do some research concerning exactly how Xalan
  -     should handle xsl:namespace-alias declarations. As a result of discussions among members of the W3C Working Group on XSL, we have reached a
  -     more precise consensus on how namespaces should be represented when an xsl:namespace-alias declaration is in effect.<BR><BR>
  -     If a literal result element has a namespace prefix, the prefix will be preserved and the namespace URI of the element will be as
  -     specified in the xsl:namespace-alias element, but the result-prefix is not required to appear in the result. This also applies to the
  -     two other cases of &quot;Literal namespace URI&quot; mentioned in the XSLT Recommendation on 
  -     <A href="http://www.w3.org/TR/xslt#literal-result-element">Literal Result Elements</A>. More simply, if the stylesheet calls for
  -     &lt;axsl:foo&gt; to be output as a literal result element, then it will be output as &lt;axsl:foo&gt; in the result, but the namespace
  -     associated with this &quot;axsl&quot; prefix will be as designated in the xsl:namespace-alias declaration.<BR><BR></LI>
  -     <LI>For HTML output, Xalan-Java 2 outputs character entity references (&amp;copy; etc.) for the special characters designated in  
  -     <A href="http://www.w3.org/TR/xhtml1/#dtds">Appendix A. DTDs of the XHTML 1.0: The Extensible HyperText Markup
  -     Language</A>. Xalan-Java 1.x, on the other hand, outputs literal characters for some of these special characters.<BR><BR></LI>
  -     <LI>In conformance with the <A href="http://www.w3.org/TR/xslt#section-HTML-Output-Method">XSLT Recommendation on the HTML 
  -     Output Method</A> and <A href="http://www.w3.org/TR/REC-html40/appendix/notes.html#h-B.2.1">Section B.2.1 of the HTML 4.0
  -     Recommendation</A>, Xalan-Java 2 uses %hh encoding for each byte of the UTF-8 representation of non-ASCII characters in HTML URI
  -     attributes.<BR><BR></LI>
  -     <LI>When your stylesheet asks for an explicit carriage-return character (&amp;#13;) to be inserted into the output, it is output during
  -     the serialization process in escaped form unless escaping has been disabled.  When your stylesheet asks for an explicit line-feed character
  -     (&amp;#10;) to be output, the system-default line-break character(s) is/are output during the serialization process.  Also keep in mind that
  -     the XML parser normalizes line-breaks to line-feeds when it sends character events to the processor.<BR><BR></LI>
  -     <LI>If your XML input is a DOM, use the javax.xml.parsers.DocumentBuilderFactory setCoalescing() method to set coalescing to true (it is
  -     false by default), if you want to append CDATA sections to adjacent text sections to form a single text node (as the XPath standard calls
  -      for), and if the XML parser supports this feature (Xerces-Java version 1.3.0 does not).</LI>
  -     </UL>
  -     </FONT></TD></TR></TABLE><BR><A name="bugs"><!--anchor--></A>
  -     <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>Bugs</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -     <P>All known Xalan-Java bugs are listed in <A href="http://nagoya.betaversion.org/bugzilla/" target="_top">Bugzilla (the Apache bug database)</A>. For a list of open bugs with links to each bug
  -      report, see <A href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=XalanJ2&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=%27Importance%27" target="_top">XalanJ2 open bugs</A>. If you find a new bug, please enter a XalanJ2 bug report in this
  -      database.</P>
  -     <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>Before you can enter your first bug report, you must submit your email address to Bugzilla and receive a password.</I></FONT></TD></TR></TABLE> 
  -     <P>We strongly encourage you write patches for problems you find and submit them to
  -      xalan-dev@xml.apache.org. We review the patches we receive to make sure they do not break something else, and (assuming they 
  -     do not) include them in our next release. In the interest of fixing bugs, adding enhancements, and addressing outstanding design
  -     issues, we sincerely want (and need!) your active participation in the ongoing development of Xalan.</P>
  -     <P>Xerces bug in Xerces-Java version 1.3.0:</P>
  -     <UL>
  -       <LI>Xerces-Java 1.2.3 does not process namespaces in SAX events when parsing UTF-16 documents, which causes Xalan-Java to fail with UTF-16
  -        documents. Xerces will post a fix shortly.<BR><BR></LI>
  -     </UL>
  -     </FONT></TD></TR></TABLE><BR>     
  -     <A name="status"><!--anchor--></A>
  -       <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>Version of Xerces to use</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"> 
  -<P>The Xalan-Java version 2.0.1 has been tested with Xerces-Java version 1.3.0. The Xalan-Java version 2.0.1 download from xml.apache.org includes xerces.jar from Xerces-Java version 1.3.0. For information about including xerces.jar on the system class path, see <A href="getstarted.html#classpath">Setting up the system class path</A>.</P>
  -<P><B>Important</B> You may experience unpredictable anomalies if your Xalan and Xerces builds are not in synch. If you download an update to Xalan, check the release notes to determine which version of Xerces you should use.</P>
  -<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>You can use Xalan with other XML parsers that implement the <A href="http://java.sun.com/xml/docs/api/index.html" target="_top">Java API for XML Parsing 1.0</A>. See 
  -<A href="usagepatterns.html#plug">Plugging in the Transformer and XML parser</A>.</I></FONT></TD></TR></TABLE>
  + now requires that the DOM helper be created by the caller.</LI>
  + </UL>
   </FONT></TD></TR></TABLE><BR>
  -     <A name="to-do"><!--anchor--></A>
  -     <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>To-do tasks</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -       <P>For a list of goals, tasks, and target dates for completion, see <A href="todo.html">Xalan-Java Version 2: Things To Do</A>. 
  -       As tasks are completed, they are moved from the to-do list to 
  -       <A href="todo.html#release-date-completed">Completed</A>.</P>
  -       <P>The source document for the to-do list is an active document in the Apache CVS repository: 
  -       <A href="http://xml.apache.org/websrc/cvsweb.cgi/xml-xalan/java/todo.xml">xml-xalan/java/todo.xml</A>.</P>
  -      </FONT></TD></TR></TABLE><BR> 
  -  </FONT></TD></TR></TABLE><BR>
  -  <A name="build"><!--anchor--></A>
  -  
  -  <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>Build 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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -<UL>
  -<LI><A href="#ant">Using Ant</A></LI>
  -<LI><A href="#jar">Rebuilding xalan.jar</A></LI>
  -<LI><A href="#samples">Rebuilding sample applications</A></LI>
  -<LI><A href="#doc">Rebuilding the Xalan-Java documentation</A></LI>
  -</UL>
  -<A name="ant"><!--anchor--></A>
  -   <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 Ant</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -     <P>Apache <A href="http://jakarta.apache.org/ant/index.html" target="_top">Ant</A> is a flexible, powerful, and easy-to-use Java build tool that we include with the
  -     Xalan-Java distribution. The Ant JAR file is in the bin directory, and the cross-platform XML build file (build.xml) is in 
  -     the root directory along with a Windows32 batch file (build.bat) and a UNIX shell file (build.sh). The build file defines 
  -     the &quot;targets&quot; that you can use Ant to build. The batch and shell files set up the classpath and launch Ant with the target 
  -     (and any other arguments) you provide.</P>
  -     <P><B>Instructions for using Ant</B></P>
  -     <OL>
  -       <LI>Set the JAVA_HOME environment variable to the JDK root directory.<BR><BR>
  -       If you are using JDK 1.1.8, you must also put classes.zip in the JDK bin directory on the classpath. You can use Ant 
  -       with JDK 1.1.8 to compile and jar the Xalan-Java source files, but you must have JDK 1.2.2 or higher to build the
  -       documentation.<BR><BR></LI>
  -       <LI>Depending on your environment, run the batch file (build.bat) or shell file (build.sh) from the Xalan-Java root
  -       directory, optionally with arguments (see the table of targets below).<BR><BR>
  -       The batch/shell file adds several JAR files to the classpath and launches Ant with any arguments you provide. If you
  -       provide no target, Ant compiles the source files and rebuilds xalan.jar (the &quot;jar&quot; target).</LI>
  -     </OL>
  -     <P>You can also set up your classpath manually (see build.bat or build.sh for the details), and then run Ant as
  -     follows:<BR><BR>
  -     <CODE><FONT face="courier, monospaced">java org.apache.tools.ant.Main <I>target</I></FONT></CODE><BR><BR>
  -     where <I>target</I> is nothing (for the default target) or one of the following.</P>
  -     <TABLE border="0" cellpadding="2" cellspacing="2" width="100%">
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><B>Target</B>&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><B>What Ant does</B>&nbsp;
  -      </FONT></TD></TR>
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">compile&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">compiles Xalan-Java in build/classes.&nbsp;
  -      </FONT></TD></TR>
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">jar (the default)&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">creates xalan.jar in the build directory&nbsp;
  -      </FONT></TD></TR>
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">samples&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">compiles and jars the sample apps in build/xalansamples.jar&nbsp;
  -      </FONT></TD></TR>
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">servlet&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">compiles and jars the sample servlet in build/xalanservlet.jar&nbsp;
  -      </FONT></TD></TR>       
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">docs&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">creates the HTML User's Guide in build/docs&nbsp;
  -      </FONT></TD></TR>
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">javadocs&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">generates the API documentation in ./build/docs/apidocs&nbsp;
  -      </FONT></TD></TR>
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">dist&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">generates a complete distribution tree with zip and tar.gz distribution files in build&nbsp;
  -      </FONT></TD></TR>
  -       <TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">clean&nbsp;
  -      </FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">purges the build and distribution&nbsp;
  -      </FONT></TD></TR> 
  -  </TABLE>
  -  <P>If you build a target that depends on other targets, Ant creates those other targets in the correct order.</P>
  -   </FONT></TD></TR></TABLE><BR><A name="jar"><!--anchor--></A> 
  -   <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>Rebuilding Xalan-Java</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -     <P>The Xalan-Java build is in xalan.jar. The Xalan-Java source code tree is in the src directory.</P>
  -     <P>If you are using Ant, the target is jar (the default). For more information, see <A href="#ant">Using
  -     Ant</A>.</P>
  -     <P>If you want to do the build without Ant, keep the following in mind:</P>
  -     <UL>
  -     <LI>Set the classpath to include the src directory, xerces.jar, bsf.jar, and bsfengines.jar.</LI>
  -     <LI>Use a Java compiler (such as the IBM Just-In-Time compiler or the Sun javac) to compile all the .java files in the src
  -     tree. </LI>
  -     <LI>Use the Sun jar utility to store the resulting .class files in xalan.jar</LI>
  -     </UL>
  -   </FONT></TD></TR></TABLE><BR><A name="samples"><!--anchor--></A>
  -   <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>Rebuilding a sample application</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -   <P>If you modify a sample and want to recompile it, you can run the Java compiler in the directory containing the
  -   example. Be sure xalan.jar and xerces.jar are on the classpath. To recompile (and run!) the class files in the
  -   Servlet subdirectory, the javax.servlet and javax.servlet.http packages must also be on the classpath. Sun
  -   distributes these packages in the JSWDK 1.0.1 servlet.jar file.</P> 
  -   <P>After recompiling a sample, you can use the Sun jar utility to place your new .class files in
  -    xalansamples.jar.</P>
  -    <P>You can use Ant with the samples target to recompile the samples and place the unpackaged class files in xalansamples.jar.
  -     For more information, see <A href="#ant">Using Ant</A>.</P>
  -    <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>To rebuild (and to run) the sample servlet, the javax.servlet and javax.servlet.http packages must be on your
  -    classpath.</I></FONT></TD></TR></TABLE>
  -   </FONT></TD></TR></TABLE><BR><A name="doc"><!--anchor--></A>
  -   <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>Rebuilding the Xalan-Java documentation</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -     <P>Xalan-Java includes a number of XML source files, XSL stylesheets, document type definition (DTD)
  -      files, entity relationship (ENT) files, graphics, and a JavaScript file that provide the input for the Xalan
  -      HTML User's Guide, and the overview and package-level documents used during the generation of Javadoc.</P>
  -      <P>To rebuild the documentation, you must use the StyleBook tool and the JDK 1.2.2 java and javadoc
  -      tools. StyleBook (which uses Xalan and Xerces) is in stylebook-1.0-b2.jar. Some of the document definition files,
  -      stylesheets, and resources are stored in xml-site-style.tar.gz, and are unzipped when you run Ant as described
  -       below.</P>
  -      <P>You can use Ant with the docs target to regenerate the User's Guide and with the javadocs target to regenerate the
  -      Javadoc API documentation. For more information, see <A href="#ant">Using Ant</A>.</P>
  -      <P>If you want to rebuild the documentation without using Ant, keep the following in mind:</P>
  -       <UL>
  -       <LI>Unzip xml-site-style.tar.gz into the xdocs directory (the operation places files in a number of subdirectories).
  -       <BR><BR></LI>
  -       <LI>Be sure stylebook-1.0-b2.jar, xalanjdoc.jar, xalan.jar, bsf.jar, bsfengines.jar, and xerces.jar are on the class
  -       path.<BR><BR></LI>
  -       <LI>To build doc in a build/docs subdirectory, run StyleBook from the xdocs directory as follows:<BR><BR>
  -       <CODE><FONT face="courier, monospaced">java org.apache.stylebook.StyleBook &quot;targetDirectory=../build/docs/&quot; sources/xalanLocal.xml style</FONT></CODE>
  -       <BR><BR></LI>
  -       <LI>To build the HTML source files that javadoc needs for the TrAX top-level and package-level documentation, add
  -       a build/docs/apdidocs/javax/xml/transform directory and run the Xalan command-line utility from the xdocs directory 
  -       as follows (all one line):<BR><BR>
  -<CODE><FONT face="courier, monospaced">
  -java org.apache.xalan.xslt.Process 
  -  -in sources/trax/trax.xml
  -  -param package-root '../../../src/'
  -  -xsl style/stylesheets/spec.xsl 
  -  -out build/docs/apidocs/javax/xml/transform/trax.html</FONT></CODE><BR><BR></LI>
  -        <LI>Before you run javadoc, make sure the following directory structure exists under the Xalan root
  -         directory: build/docs/apidocs.<BR><BR></LI>
  -       <LI>To build the API documentation, run the JDK 1.2.2 javadoc tool from the xdocs directory (all one line):<BR><BR>
  -<CODE><FONT face="courier, monospaced">
  -javadoc -doclet xalanjdoc.Standard 
  - -docletpath ../bin/xalanjdoc.jar 
  - -private
  - -overview ../src/javadocOverview.html -sourcepath ../src 
  - -group TrAX &quot;javax.xml.transform*&quot; 
  - -group Xalan_Core &quot;org.apache.xalan.processor:
  -        org.apache.xalan.templates:
  - org.apache.xalan.transformer&quot;
  - -group XPath &quot;org.apache.xpath*&quot;
  - -group Utilities &quot;org.apache.xml.utils*&quot;
  - -group Xalan_Other &quot;org.apache.xalan.client:
  -        org.apache.xalan.dtm:
  - org.apache.xalan.extensions:org.apache.xalan.res:
  - org.apache.xalan.stree:org.apache.xalan.trace:
  - org.apache.xalan.xslt&quot; 
  - -group Xalan_Extensions &quot;org.apache.xalan.lib*&quot; 
  - -group Serializers &quot;org.apache.xalan.serialize&quot; 
  - org.apache.xalan.client org.apache.xalan.dtm 
  - org.apache.xalan.extensions org.apache.xalan.lib 
  - org.apache.xalan.lib.sql org.apache.xalan.processor 
  - org.apache.xalan.res org.apache.xalan.stree 
  - org.apache.xalan.templates org.apache.xalan.trace 
  - org.apache.xalan.transformer org.apache.xalan.xslt 
  - org.apache.xpath org.apache.xpath.axes 
  - org.apache.xpath.compiler org.apache.xpath.functions 
  - org.apache.xpath.objects org.apache.xpath.operations 
  - org.apache.xpath.patterns org.apache.xpath.res
  - org.apache.xalan.serialize javax.xml.transform  
  - javax.xml.transform.dom javax.xml.transform.sax 
  - javax.xml.transform.stream javax.xml.parsers
  - -d ../build/docs/apidocs -windowtitle &quot;Xalan-Java 2&quot; 
  - -doctitle &quot;Xalan-Java 2&quot; -bottom &quot;Copyright &copy; 
  -  2000 Apache XML Project. All Rights Reserved.&quot;
  -</FONT></CODE></LI>
  -</UL>
  -  </FONT></TD></TR></TABLE><BR>    
  - </FONT></TD></TR></TABLE><BR><A name="contact"><!--anchor--></A>
  - <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>Getting in Touch</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -  <P>Your feedback is more than welcome. Offers of help are even more so! Perhaps you would like to take on an active role in the ongoing development, testing, and documentation of Xalan-Java?</P> 
  -<P>Please email your comments, questions, suggestions, and offers to join the Xalan team to <A href="mailto:xalan-dev@xml.apache.org">Xalan Development Mailing List</A>.</P>
  - </FONT></TD></TR></TABLE><BR><A name="history"><!--anchor--></A>
  - <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>Cumulative history of software changes</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -   <P>The following sections list the changes in each release since Xalan-Java version 2.0.D01.</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>Changes for Xalan-Java version 2.0</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +
  +<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>Changes for Xalan-Java version 2.0.0</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
   <P>Release 2.0 includes several bug fixes to the Xalan-Java and TrAX core and to the Xalan-Java 1 compatibility API. We also updated bsf.jar to the <A href="http://oss.software.ibm.com/developerworks/projects/bsf" target="_top">Bean Scripting Framework (BSF)</A> release candidate 2.2, which fixes a bug running JPython extensions.</P>
   <P><B>Core bug fixes:</B></P>
   <UL>
  @@ -653,7 +1087,7 @@
   <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>Changes for Xalan-Java version 2.0.D05</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
   <P>All of the bugs reported in Xalan-Java 2.0.D01 have been fixed. The remainder of this section discusses two changes that we believe are of particular importance:</P>
   <P><B>TrAX</B></P>
  -<P>The Transformation API for XML (TrAX) that Xalan-Java 2 implements has undergone substantial revisions since the release of Xalan-Java 2.0.D01. TrAX has joined the Java API for XML Parsing (JAXP) as part of the Sun&reg; <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063" target="_top">Java Specification Request 63</A>. Accordingly, the TrAX package names have changed. The conceptual organization has also changed somewhat: The primary transformation interfaces are defined in javax.xml.transform, with concrete classes for managing stream input/output, SAX parsers and ContentHandler, and DOM parsers and DOM trees in javax.xml.transform.stream, javax.xml.transform.sax, and javax.xml.transform.dom. For more information, see <A href="apidocs/javax/xml/transform/trax.html" target="_top">TRaX (Transformation API for XML)</A>, and review <A href="usagepatterns.html">Usage Patterns</A>.</P>
  +<P>The Transformation API for XML (TrAX) that Xalan-Java 2 implements has undergone substantial revisions since the release of Xalan-Java 2.0.D01. TrAX has joined the Java API for XML Parsing (JAXP) as part of the Sun&reg; <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063" target="_top">Java Specification Request 63</A>. Accordingly, the TrAX package names have changed. The conceptual organization has also changed somewhat: The primary transformation interfaces are defined in javax.xml.transform, with concrete classes for managing stream input/output, SAX parsers and ContentHandler, and DOM parsers and DOM trees in javax.xml.transform.stream, javax.xml.transform.sax, and javax.xml.transform.dom. For more information, see <A href="trax.html" target="_top">TRaX (Transformation API for XML)</A>, and review <A href="usagepatterns.html">Usage Patterns</A>.</P>
   <A name="outputprops"><!--anchor--></A><P><B>Output properties</B></P>
   <P>The handling of xsl:output properties has changed: org.apache.xalan.serialize.OutputFormat and apache.xalan.templates.OutputFormatExtended were removed and replaced with org.apache.xalan.templates.OutputProperties. The SerializerFactory getSerializer() method now takes Properties rather than a String indicating the output method. You can replace <CODE><FONT face="courier, monospaced">getSerializer(&quot;xml&quot;)</FONT></CODE>, for example, with <CODE><FONT face="courier, monospaced">getSerializer(OutputProperties.getDefaultMethodProperties(&quot;xml&quot;))</FONT></CODE>.</P>
   <P>HTML, XML, and text xsl:output properties are specified in property files in org.apache.xalan.templates: output_html.properties, output_xml.properties, and output_text.properties.</P>
  
  
  
  1.9       +196 -36   xml-site/targets/xalan-j/samples.html
  
  Index: samples.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/samples.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- samples.html	2001/03/16 23:02:10	1.8
  +++ samples.html	2001/05/23 17:12:03	1.9
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,19 +16,22 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
   <UL>
   <LI><A href="#simpletransform">SimpleTransform</A></LI>
  @@ -43,7 +47,7 @@
   <LI><A href="#servlet">servlet</A></LI>
   <LI><A href="#extensions">Extensions</A></LI>
   <LI><A href="#trace">Trace</A></LI>
  -<LI><A href="#trax">trax</A></LI>
  +<LI><A href="#trax">trax</A></LI><LI><A href="#translets">translets</A></LI>
   </UL>  
   	  <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>Samples to help you get started</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
       <P>Each of the subdirectories in the Xalan-Java java/samples directory contains the source files for one or more
  @@ -154,20 +158,24 @@
       </FONT></TD></TR></TABLE><BR><A name="servlet"><!--anchor--></A>
       <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>servlet</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
      <P>For a general introduction, see <A href="usagepatterns.html#servlet">Using Xalan-Java in a servlet</A>.</P>
  -    <P>The servlet subdirectory contains three sample servlets that use Xalan-Java to perform transformations. These servlets are in a package
  -    named servlet and are compiled in
  -    xalanservlet.jar. To run these samples, you must place xalanservlet.jar, and any XML and XSL files you want to use
  -    on a web server with a servlet engine, place xalanservlet.jar on the servlet engine class path, and configure the servlet engine to
  +    <P>The servlet subdirectory contains four sample servlets that use Xalan-Java to perform transformations. These servlets 
  +    are in a package named servlet and are compiled in xalanservlet.jar. To run these samples, you must place 
  +    xalanservlet.jar, and any XML and XSL files you want to use on a web server with a servlet engine, place 
  +    xalanservlet.jar, xalan.jar, and xerces.jar on the servlet engine class path, and configure the servlet engine to
       locate the XML and XSL files, and the properties file used by ApplyXSL.</P>
  -    <P>SimplestXSLTServlet applies a particular stylesheet to a particular XML document. XSLTServletWithParams accepts parameters for
  -    stylesheet, XML document, and stylesheet parameters. ApplyXSLT (and associated classes) is much closer 
  -    to a production level servlet. It accepts parameters, provides a listener for capturing and reporting debugger messages, and supports 
  -    use of a property file to determine which stylesheet to apply based on the identity of the client browser/device.</P>
  -    <UL>
  -      <LI><A href="#simplexsltservlet">servlet.SimpleXSLTServlet</A></LI>      
  -      <LI><A href="#xsltservletwithparams">servlet.XSLTServletWithParams</A></LI>      
  -      <LI><A href="#applyxslt">servlet.ApplyXSLT</A></LI>
  -    </UL><A name="simplexsltservlet"><!--anchor--></A>
  +    <P><A href="#simplexsltservlet">servlet.SimpleXSLTServlet</A> applies a particular stylesheet to a particular 
  +    XML document.</P> 
  +    <P><A href="#usestylesheetparamservlet">servlet.UseStylesheetParamServlet</A> sets a stylesheet parameter 
  +    (the parameter name is hardwired into the servlet), and requires the user to supply parameters for the 
  +    XML document and XSL stylesheet.</P>
  +    <P><A href="#jspsample">jspSample.jsp</A> is a Java ServerPage that sets a stylesheet parameter and applies the
  +     stylesheet to the XML document.</P>
  +    <P><A href="#xsltservletwithparams">servlet.XSLTServletWithParams</A> accepts parameters for the XML document, 
  +    the XSL stylesheet, and any number of stylesheet parameters.</P>
  +    <P><A href="#applyxslt">servlet.ApplyXSLT</A> (and associated classes) is closer to a production level servlet. It accepts parameters, provides a 
  +    listener for capturing and reporting debugger messages, and supports  use of a property file to determine which 
  +    stylesheet to apply based on the identity of the client browser/device.</P>
  +    <A name="simplexsltservlet"><!--anchor--></A>
       <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>servlet.SimpleXSLTServlet</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
       <P>What it does: servlet.SimpleXSLTServlet applies the todo.xsl stylesheet to todo.xml and returns the transformation result to the
       HTTP client.</P>
  @@ -175,6 +183,35 @@
       looks for HTTP documents, place xalanservlet.jar on the servlet engine classpath, and set up an HTML page to call the servlet as
       follows:</P>
   <DL><DT>http://localhost/servlethome/servlet.SimpleXSLTServlet</DT></DL>
  +     </FONT></TD></TR></TABLE><BR><A name="usestylesheetparamservlet"><!--anchor--></A>
  +     <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>servlet.UseStylesheetParamServlet</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +     <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>Paul Campbell &lt;seapwc@halcyon.com&gt; wrote this servlet and the following explanatory text.
  +     Thank you, Paul!</I></FONT></TD></TR></TABLE>
  +     <P>What it does: The client (perhaps an HTML form ) specifies an XML document, a stylesheet, and a value to be passed
  +      to the stylesheet for a stylesheet parameter named &quot;param1&quot;. The servlet performs the transformation and returns
  +      the output to the client. The client must specify which stylesheet (containing a &quot;param1&quot; stylesheet parameter&quot;) 
  +      and XML file are to be used.</P>
  +     <P>How to run it: Configure your application server (Tomcat, Websphere or JServ, for example)
  +     so it can find servlet.UseStylesheetParamServlet (in xalanservlet.jar) as well as the XML document 
  +     and XSL stylesheet. For example, you can copy fooparam.xml and fooparam.xsl from samples/servlet to the application 
  +     server root directory for documents.</P>
  +     <P>Then you can set up an HTML client to call the servlet with arguments along the lines of</P>
  +    <DL><DT>http://localhost/servlethome/servlet.UseStylesheetParamServlet?
  +    XML=fooparam.xml&amp;XSL=fooparam.xsl&amp;PVAL=GoodBye</DT></DL>
  +     <P>In the doGet() method, the servlet obtains the PVAL value &quot;GoodBye&quot;) from the servlet request and passes it to the 
  +     stylesheet as the paramValue argument in a Transformer setParameter() call:</P>
  +      <P><CODE><FONT face="courier, monospaced">String paramValue = httpServletRequest.getParameter(&quot;PVAL&quot;);</FONT></CODE><BR>
  +      <CODE><FONT face="courier, monospaced">...</FONT></CODE><BR>
  +     <CODE><FONT face="courier, monospaced">transformer.setParameter(&quot;param1&quot;, paramValue);</FONT></CODE></P>
  + <P>The result is returned to the client:</P>
  +<P><CODE><FONT face="courier, monospaced">&lt;html&gt;&lt;body&gt;&lt;p&gt;GoodBye&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</FONT></CODE></P>
  +     </FONT></TD></TR></TABLE><BR><A name="jspsample"><!--anchor--></A>
  +     <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>jspSample.jsp</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +     <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>Paul Campbell &lt;seapwc@halcyon.com&gt; wrote this Java Server Page.</I></FONT></TD></TR></TABLE>
  +     <P>This Java Server Page performs essentially the same operation as 
  +     <A href="#usestylesheetparamservlet">servlet.UseStylesheetParamServlet</A>. It applies a stylesheet parameter 
  +      to a stylesheet (fooparam.xsl), applies the stylesheet to an XML source document (fooparam.xml), and returns the
  +      result.</P>     
        </FONT></TD></TR></TABLE><BR><A name="xsltservletwithparams"><!--anchor--></A>
        <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>servlet.XSLTServletWithParams</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
        <P>What it does: servlet.XSLTServletWithParams takes parameters in the request -- a URL parameter for
  @@ -234,7 +271,7 @@
         <LI><A href="#ext3">3-java-namespace</A></LI>
         <LI><A href="#ext4">4-numlistJava</A></LI>
         <LI><A href="#ext5">5-numlistJScript</A></LI>
  -      <LI><A href="#ext6">6-sqllib-instantdb</A></LI>
  +      <LI><A href="#sql">SQL library extensions</A></LI>
       </UL>
       <P>The extensions subdirectory contains six samples with Xalan-Java extensions. Two of the samples use
        extensions implemented in JavaScript, and four of the samples use extensions implemented in Java.</P>
  @@ -289,22 +326,105 @@
       <P>Run this sample from the extensions subdirectory with</P>
         <P><CODE><FONT face="courier, monospaced"> java org.apache.xalan.xslt.Process -in numlist.xml</FONT></CODE>
           <BR>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">-xsl 5-numlistJscript.xsl</FONT></CODE></P>
  -      </FONT></TD></TR></TABLE><BR><A name="ext6"><!--anchor--></A>
  -      <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>6-sqllib-instantdb</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  -      <P>What it does: Uses <A href="extensionslib.html#sql">SQL library XConnection
  -      extension</A> to connect to an InstantDB sample database, perform a query, and display the
  -      query result in an HTML table.</P>
  -      <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>You must include idb.jar on the classpath. We have placed a copy of idb.jar from
  +      </FONT></TD></TR></TABLE><BR>
  +      </FONT></TD></TR></TABLE><BR><A name="sql"><!--anchor--></A>
  +      <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>SQL Library extensions</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +      <P>The SQL Library extension samples use <A href="extensionslib.html#sql">SQL library XConnection
  +      extension</A>to connect to an InstantDB datasource, perform queries, and return query result sets.</P>
  +      <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>To run these samples, you must include idb.jar on the classpath. We have placed a copy of idb.jar from
         InstantDB version 3.25 in samples/extensions/instantdb. For information about InstantDB, see
         <A href="http://instantdb.enhydra.org/software/documentation/index.html">InstantDB</A>
         and the <A href="http://instantdb.enhydra.org/software/license/index.html">Enydra Public
  -      License</A>.</I></FONT></TD></TR></TABLE>
  -      <P>Run this sample from the extensions subdirectory with (adjust the Windows classpath setting 
  -      below for your operating environment):</P>
  -      <P><CODE><FONT face="courier, monospaced">java -cp instantdb/idb.jar;%classpath%</FONT></CODE> 
  -      <BR>&nbsp;&nbsp;org.apache.xalan.xslt.Process<CODE><FONT face="courier, monospaced"></FONT></CODE>
  +      License</A>.</I></FONT></TD></TR></TABLE>      
  +      <UL>
  +      <LI><A href="#ext6">6-sqllib-instantdb</A></LI>
  +      <LI><A href="#basic-conn">Basic Connections</A></LI>      
  +      <LI><A href="#ext-conn">ExternalConnection</A></LI>      
  +      <LI><A href="#pquery">Parameterized query</A></LI>
  +      <LI><A href="#streamable">Streamable</A></LI>
  +      <LI><A href="#showerror">Show-error</A></LI>
  +      </UL>
  +      <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>Except for 6-sqllib-instantdb, all these samples have been created by John Gentilin 
  +      (johnglinux@eyecatching.com) to take illustrate the rich feature set he has contributed to the SQL Library. 
  +      To run each of these samples, be sure  you are in the appropriate extensions/sql subdirectory.</I></FONT></TD></TR></TABLE>
  +     <A name="ext6"><!--anchor--></A>
  +      <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>6-sqllib-instantdb</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +      <P>What it does: Uses the SQL library XConnection extension to connect to the InstantDB sample database, 
  +      performs a query, and returns the query result in an HTML table.</P>
  +      <P>Add idb.jar to the classpath, and run this sample from the extensions subdirectory:</P>
  +      <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process</FONT></CODE>
         <BR>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">-xsl 6-sqllib-instantdb.xsl -out import1.html</FONT></CODE></P>
  -      </FONT></TD></TR></TABLE><BR>
  +      </FONT></TD></TR></TABLE><BR><A name="basic-conn"><!--anchor--></A>
  +      <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>Basic-Connection</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +      <P><B>Contributed by John Gentilin (johnglinux@eyecatching.com).</B></P>
  +      <P>What it does: illustrates two strategies for connecting to a database, executing a static query, and returning 
  +      the query result.</P>
  +      <P>The first strategy is to get connection information along with the static query from the stylesheet (dbtest.xsl)\
  +      in the form of stylesheet parameters.</P>      
  +      <P>The second strategy is to get connection information from a nodeset in an XML source document (dbInfo.xml).</P>
  +      
  +      <P>Add extensions/instantdb/idb.jar to the classpath, and run this sample from the extensions/sql/basic-connection 
  +       directory.</P>
  +       <P>1. To get connection information from the stylesheet:</P>
  +      <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process</FONT></CODE>
  +      <BR>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">-xsl dbtest.xsl -out import1.html</FONT></CODE></P>
  +      <P>2. To get connection information in the form of a nodeset from the XML source document:</P>      
  +      <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process</FONT></CODE>
  +      <BR>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">-in dbinfo.xml -xsl dbtest-cinfo.xsl</FONT></CODE> 
  +      <BR>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">-out import1.html</FONT></CODE></P>
  +      <P>3. To get connection information from the stylesheet and dump the raw result set to an XML file:</P>
  +      <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process</FONT></CODE>
  +      <BR>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">-xsl DumpSQL.xsl -out import1.xml</FONT></CODE></P>
  +    </FONT></TD></TR></TABLE><BR> <A name="ext-conn"><!--anchor--></A>
  +    <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>ExternalConnection</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +    <P><B>Contributed by John Gentilin (johnglinux@eyecatching.com).</B></P>
  +    <P>What it does: The ExternalConnection classes uses the default implementation of the ConnectionPool interface 
  +    to create a pool of connections. A stylesheet in turn uses a connection from this pool to instantiate an 
  +    XConnection object and connect to a datasouce.</P>
  +    <P>The stylesheet uses this named connection pool to instantiate an XConnection object and connect to the datasource.</P>
  +    <P>The ExternalConnection class is in xalansamples.jar. Be sure xalansamples.jar and idb.jar are on the classpath, and 
  +    run this sample from the extensions/sql/ext-connection directory:</P>
  +    <P><CODE><FONT face="courier, monospaced">java ExternalConnection</FONT></CODE></P>
  +    <P>ExternalConnection creates the ConnectionPool, and performs a transformation wiht dbtest.xsl, which draws 
  +    from the pool to instantiate an XConnection object, connect to the datasource, execute a static query, and return the
  +    query result.</P>
  +    </FONT></TD></TR></TABLE><BR><A name="pquery"><!--anchor--></A>
  +    <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>Parameterized query</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +    <P><B>Contributed by John Gentilin (johnglinux@eyecatching.com).</B></P>
  +    <P>What it does: connect to a datasource, execute a parameterized query, and return the result. The XML source document
  +    provides the parameter value as well as the connection information. The parameter value is in a node in the XML source.</P>
  +    <P>The stylesheet gets the required connection and parameter information from the XML source, sets up and executes the
  +    parameterized query, and retuns the query result set.</P>
  +    <P>Be sure idb.jar is on the classpath, and run this sample from the sql/pquery subdirectory:</P>
  +    <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process -in dbInfo.xml</FONT></CODE>
  +    <BR><CODE><FONT face="courier, monospaced">-xsl dbTest.xsl -out dbTest.html</FONT></CODE></P>    
  +    </FONT></TD></TR></TABLE><BR><A name="streamable"><!--anchor--></A>
  +    <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>Streamable</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +    <P><B>Contributed by John Gentilin (johnglinux@eyecatching.com).</B></P>    
  +    <P>What it does: Illustrates enabling and disabling of caching the streamable result set returned by a query.</P>
  +    <P>The stylesheets use the XConnection enableCacheNodes() and disableCacheNodes() methods.</P>
  +    <P>Be sure idb.jar is on the classpath, and run these samples from the sql/streamable subdirectory.</P>
  +    <P>1. To turn caching on:</P>
  +    <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process</FONT></CODE>
  +    <BR><CODE><FONT face="courier, monospaced">-xsl cachedNodes.xsl</FONT></CODE></P>
  +    <P>1. To turn caching off:</P>
  +    <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process</FONT></CODE>
  +    <BR><CODE><FONT face="courier, monospaced">-xsl streamNodes.xsl</FONT></CODE></P>
  +    <P>3. <I>To be added</I></P>
  +    </FONT></TD></TR></TABLE><BR><A name="showerror"><!--anchor--></A>
  +    <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>Show-error</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +    <P><B>Contributed by John Gentilin (johnglinux@eyecatching.com).</B></P>
  +    <P>What it does: use the SQL library ExtensionError class to return an error message in the output stream. The stylesheet
  +    (dbtest.xsl) calls a template with a select statement that only returns a nodeset if an error has occured:</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>&lt;xsl:variable name=&quot;table&quot; select='sql:query($db, $query)'/&gt;
  +  &lt;xsl:apply-templates select=&quot;$table/row-set&quot; /&gt;	
  +  &lt;xsl:apply-templates select=&quot;$table/ext-error&quot;/&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>Since the query contains an incorrect table name, this example does return an error message. Correct the table name (change 
  +  'import1X' to 'import1') and the example returns a standard result set.</P>
  +  <P>With idb.jar on the classpath, run this sample from the extensions/sql/show-error subdirectory:</P>
  +  <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xslt.Process</FONT></CODE>
  +  <BR><CODE><FONT face="courier, monospaced"> -in dbtest.xsl -out dbtestout.html</FONT></CODE></P>
  +    </FONT></TD></TR></TABLE><BR>
       </FONT></TD></TR></TABLE><BR><A name="trace"><!--anchor--></A>
       <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>Trace</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
         <P>What it does: Trace uses the TraceListener and TraceManager classes to log transformation events.</P>
  @@ -314,13 +434,53 @@
         Interface</A></P>
        </FONT></TD></TR></TABLE><BR><A name="trax"><!--anchor--></A>
        <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>trax</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -     <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>To run the trax sample, you must be using an XML parser (such as Xerces 1.3.0 or Crimson 1.1) 
  +     <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>To run the trax sample, you must be using an XML parser (such as Xerces 1.4 or Crimson 1.1) 
                            that fully implements the JAXP 1.1 javax.xml.parsers interface.</I></FONT></TD></TR></TABLE>
  -     <P>What it does: run a number of samples illustrating uses of the <A href="apidocs/javax/xml/transform/trax.html" target="_top">TRaX (Transformation API for XML)</A> interfaces.</P>
  +     <P>What it does: run a number of samples illustrating uses of the <A href="trax.html" target="_top">TRaX (Transformation API for XML)</A> interfaces.</P>
        <P>Run this sample from the trax subdirectory with</P>
        <P><CODE><FONT face="courier, monospaced">java Examples</FONT></CODE></P>
        <P>and examine the source in Examples.java and ExampleContentHandler.java.</P>
  -     </FONT></TD></TR></TABLE><BR>
  +     </FONT></TD></TR></TABLE><BR><A name="translets"><!--anchor--></A><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>Translets</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +                 <UL>
  +                 <LI><A href="#xsltc1">JAXPTransletOneTransformation</A></LI>
  +                 <LI><A href="#xsltc2">JAXPTransletMultipleTransformations</A></LI>
  +                 </UL>
  +                 <P>See also: <A href="readme.html#xsltcdemos">XSLTC demos</A>.</P><A name="xsltc1"><!--anchor--></A>
  +                 <P>You can use the TrAX/JAXP 1.1 interfaces to compile and run translets. For this release, you must still
  +                 use StreamSource objects for the XSL stylesheet and XML input document, and a StreamResult object for the 
  +                 transformation output. For an overview of the usage patterns these samples illustrate, see 
  +                 <A href="xsltc_usage.html#api">Calling XSLTC with the TrAX/JAXP API</A>.</P>
  +                 <A name="xsltcprepare"><!--anchor--></A>
  +                 <P><B>Important:</B> To run these samples, you must compile the sample class files and adjust the 
  +                 system classpath.</P>
  +                 <OL>
  +                   <LI>To compile the samples, you can run the Ant build from the root directory as follows:<BR><BR>
  +                   <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;build xsltc.samples</FONT></CODE><BR><BR></LI>
  +                   <LI>Add xsltc.jar, runtime.jar, BCEL.jar, java_cup.jar, and the samples/translets subdirectory to 
  +                   the classpath</LI>
  +                 </OL>
  +                 <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 JAR files listed above are in the bin directory. 
  +                 The samples/translets directory contains the sample class files as well as the translet class file that is
  +                 generated at tun time (todo.class from the todo.xsl stylesheet).</I></FONT></TD></TR></TABLE> 
  +                 <A name="xsltc1"><!--anchor--></A>
  +                 <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>JAXPTransletOneTransformation</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +                 <P>What it does: Uses the XSLTC TransformerFactory to compile a translet and use
  +                 the translet to transform the XSLTC to-do list from XML into HTML.</P>
  +                 <P>Complete the <A href="#xsltcprepare">steps detailed above</A>, and run this sample 
  +                 from the translets subdirectory with</P>
  +                 <P><CODE><FONT face="courier, monospaced">java JAXPTransletOneTransformation</FONT></CODE></P>
  +                 <P>View the result in todo-xsltc.html.</P>
  +                 </FONT></TD></TR></TABLE><BR><A name="xsltc2"><!--anchor--></A>
  +                 <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>JAXPTransletMultipleTransformations</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  +                 <P>What it does: Uses the XSLTC TransformerFactory to compile a translet and use
  +                 the Templates object associated with the translet to transform the XSLTC and Xalan to-do lists from XML 
  +                 into HTML.</P>
  +                 <P>Complete the <A href="#xsltcprepare">steps detailed above</A>, and run this sample 
  +                 from the translets subdirectory with</P>
  +                 <P><CODE><FONT face="courier, monospaced">java JAXPTransletOneTransformation</FONT></CODE></P>
  +                 <P>View the results in todo-xsltc.html and todo-xalan.html.</P>                
  +                 </FONT></TD></TR></TABLE><BR>
  +                 </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 &copy; 2000 The Apache Software Foundation.
                 All Rights Reserved.
  
  
  
  1.3       +14 -4     xml-site/targets/xalan-j/todo.html
  
  Index: todo.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/todo.html,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- todo.html	2001/02/02 21:46:51	1.2
  +++ todo.html	2001/05/23 17:12:05	1.3
  @@ -1,10 +1,10 @@
   <HTML>
   <HEAD>
   <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
  -<TITLE>Xalan-Java Version 2</TITLE>
  +<TITLE>Xalan-Java 2</TITLE>
   </HEAD>
   <BODY>
  -<H2>Xalan for Java Version 2: Things To Do</H2>
  +<H2>Xalan-Java 2: Things To Do</H2>
   <p>
   <font size="-1">See a 
             <a href="#developer-list">list of developers/initials.</a></font>
  @@ -376,7 +376,7 @@
   <H3>
   <a name="developer-list">Developers:</a>
   </H3>
  -<p>A list of some of people working on Xalan currently:</p>
  +<p>A list of some of people currently working on working on Xalan-Java:</p>
   <ul>
   <li>
   <a href="mailto:scott_boag@lotus.com">Scott Boag</a><a name="personref-SB"> (SB)</a>
  @@ -401,7 +401,7 @@
   <li>
   <a href="mailto:donald_leslie@lotus.com">Donald Leslie</a><a name="personref-DL"> (DL)</a>
   <BR>
  -    Xalan-J and -C documentation, servlets and samples.
  +    Xalan-J and -C documentation, servlets, applets, and samples.
     </li>
   <li>
   <a href="mailto:cmanolache@yahoo.com">Costin Manolache</a><a name="personref-CM"> (CM)</a>
  @@ -423,6 +423,16 @@
   <BR>
       Xalan-J 1.x and 2.x developer, especially extension mechanisim.
     </li>
  +<li>
  +<a href="mailto:johng@apache.org">John Gentilin</a><a name="personref-JG"> (JG)</a>
  +<BR>
  +    Major work on the SQL extensions library.
  +   </li>
  +<li>
  +<a href="mailto:costin@apache.org">Costin Manolache</a><a name="personref-CM"> (CM)</a>
  +<BR>
  +     JAXP expert.
  +   </li>
   </ul>
   </BODY>
   </HTML>
  
  
  
  1.10      +28 -13    xml-site/targets/xalan-j/usagepatterns.html
  
  Index: usagepatterns.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/usagepatterns.html,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- usagepatterns.html	2001/03/16 23:02:11	1.9
  +++ usagepatterns.html	2001/05/23 17:12:07	1.10
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,19 +16,22 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <IMG alt="Usage Patterns" border="0" height="12" hspace="0" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
   <UL>
   <LI><A href="#basic">Basic steps</A></LI>
  @@ -105,6 +109,8 @@
     <LI>Set the system property in jaxp.properties in the JAVA_HOME/lib directory, where JAVA_HOME is the root of the JDK.<BR><BR></LI>
     <LI>Revise the entry in src/META-INF/services and rebuild xalan.jar.<BR><BR></LI>
   </OL>
  +<P>For example, to use the Crimson XML parser in place of the Xerces XML parser, place Crimson on the class path and set the 
  +<CODE><FONT face="courier, monospaced">javax.xml.parsers.SAXParserFactory</FONT></CODE> system property to <CODE><FONT face="courier, monospaced">org.apache.crimson.jaxp.SAXParserFactoryImpl</FONT></CODE>.</P>
   <P>For more information about the mechanism used to determine system property values and how you can plug other implementations into your applications, see &quot;Section 3: Plugability Layer&quot; in the <I>Java API for XML Processing</I> at 
   <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063/index.html">JSR-000063 1.1</A>.</P> 
   </FONT></TD></TR></TABLE><BR><A name="outputprops"><!--anchor--></A>
  @@ -113,9 +119,19 @@
   <P>You can change these settings as follows:</P>
   <OL>
     <LI>Declare the xalan namespace in your stylesheet element (xmlns:xalan=&quot;http://xml.apache.org/xslt&quot;).<BR><BR></LI>
  -  <LI>Use the namespace prefix you assign (we use &quot;xalan&quot; here in the text) to redefine properties of interest in the stylesheet xsl:output
  +  <LI>Use the namespace prefix you assign (for example, &quot;xalan&quot;) to redefine properties of interest in the stylesheet xsl:output
         element (for example, xalan:indent-amount=&quot;5&quot;).</LI>
   </OL>
  +<P>The following stylesheet fragment declares the xalan namespace and sets indent-amount to 2:</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>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
  +&lt;xsl:stylesheet version=&quot;1.0&quot; 
  +                xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
  +                xmlns:xalan=&quot;http://xml.apache.org/xslt&quot;&gt;
  +                
  +  &lt;xsl:output method=&quot;xml&quot; 
  +              encoding=&quot;UTF-8&quot;
  +              indent=&quot;yes&quot; 
  +              xalan:indent-amount=&quot;2&quot;/&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>If you want to change the property settings globally, edit the values in the property files in src/org/apache/xalan/templates, 
     and use Ant to <A href="readme.html#jar">rebuild xalan.jar</A>.</P>
   <P>The properties files define the following properties:</P>
  @@ -223,7 +239,7 @@
   </OL>
   </FONT></TD></TR></TABLE><BR><A name="serialize"><!--anchor--></A>
   <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>Serializing output</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  -<P>In some cases, you may want to &quot;transform&quot; a DOM tree into a stream, which the XML community calls serialization. <A href="apidocs/javax/xml/transform/trax.html" target="_top">TRaX (Transformation API for XML)</A> and the Xalan-Java Transformer implementation provide direct support for this operation. Simply use the TransformerFactory newTransformer() method (no arguments) to create a Transformer that you can use to &quot;copy&quot; a DOMSource to a StreamResult. For examples, see Examples.exampleDOM2DOM(), Examples.exampleSerializeNode(), and Examples.exampleAsSerializer() in the <A href="samples.html#trax">trax sample</A>.</P>
  +<P>In some cases, you may want to &quot;transform&quot; a DOM tree into a stream, which the XML community calls serialization. <A href="trax.html" target="_top">TRaX (Transformation API for XML)</A> and the Xalan-Java Transformer implementation provide direct support for this operation. Simply use the TransformerFactory newTransformer() method (no arguments) to create a Transformer that you can use to &quot;copy&quot; a DOMSource to a StreamResult. For examples, see Examples.exampleDOM2DOM(), Examples.exampleSerializeNode(), and Examples.exampleAsSerializer() in the <A href="samples.html#trax">trax sample</A>.</P>
   </FONT></TD></TR></TABLE><BR><A name="params"><!--anchor--></A>
   <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>Setting stylesheet parameters</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
   <P>An XSLT stylesheet may include parameters that are set at run time each time a transformation is performed. To set a stylesheet parameter, use the Transformer 
  @@ -363,11 +379,10 @@
                        javax.servlet.http.HttpServletResponse response)
       throws javax.servlet.ServletException, java.io.IOException
     {
  -    // Output goes in the response stream.
  -    java.io.PrintWriter out = 
  -                         new java.io.PrintWriter(response.getOutputStream());
       // Set content type for HTML.
  -    response.setContentType(&quot;text/html&quot;);    
  +    response.setContentType(&quot;text/html; charset=UTF-8&quot;);    
  +    // Output goes to the response PrintWriter.
  +    java.io.PrintWriter out = response.getWriter());
       try
       {	
         javax.xml.transform.TransformerFactory tFactory = 
  @@ -398,7 +413,7 @@
     }  
   }</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>For a working sample, see <A href="samples.html#simplexsltservlet">SimpleXSLTServlet</A>.</P>
  -<P>In the preceding example, the URLs for the XML document and XSL stylesheet are hardcoded in the servlet. You can also create a servlet that parses the request URL for input parameters specifying the XML document, XSL stylesheet, and any relevant stylesheet parameters. For a sample, see <A href="samples.html#xsltservletwithparams">XSLTServletWithParams</A>. For a more robust and complex sample that also employs a properties file to determine which stylesheet to use depending on the client browser/device, see <A href="samples.html#applyxslt">ApplyXSLT</A>.</P>
  +<P>In the preceding example, the URLs for the XML document and XSL stylesheet are hardcoded in the servlet. You can also create a servlet that parses the request URL for input parameters specifying the XML document, XSL stylesheet, and any relevant stylesheet parameters. For samples, see <A href="samples.html#usestylesheetparamservlet">UseStylesheetParamServlet</A> and <A href="samples.html#xsltservletwithparams">XSLTServletWithParams</A>. For a more robust and complex sample that also employs a properties file to determine which stylesheet to use depending on the client browser/device, see <A href="samples.html#applyxslt">ApplyXSLT</A>.</P>
   </FONT></TD></TR></TABLE><BR><A name="extensions"><!--anchor--></A>
   <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>Creating and using extensions</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
   <P>For those cases where you want to be able to call procedural code from within a stylesheet, the Xalan-Java Extensions facility supports the creation of extension elements and extension functions. See <A href="extensions.html">Extensions</A> and <A href="samples.html#extensions">Extensions samples</A>.</P>
  
  
  
  1.9       +22 -9     xml-site/targets/xalan-j/whatsnew.html
  
  Index: whatsnew.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/xalan-j/whatsnew.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- whatsnew.html	2001/03/16 23:02:12	1.8
  +++ whatsnew.html	2001/05/23 17:12:08	1.9
  @@ -2,8 +2,9 @@
     
     <A href="../index.html" onMouseOut="rolloverOff('side-ext-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.0.1" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
     <IMG alt="What's New" border="0" height="12" hspace="0" src="graphics/whatsnew-label-1.jpg" vspace="0" width="120"><BR>
  +  <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
     <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR>
  @@ -15,29 +16,41 @@
     <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
     <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="apidocs/index.html" onMouseOut="rolloverOff('side-ext-34');" onMouseOver="rolloverOn('side-ext-34');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-34" onLoad="rolloverLoad('side-ext-34','graphics/ext-34-label-2.jpg','graphics/ext-34-label-3.jpg');" src="graphics/ext-34-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
     <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-48');" onMouseOver="rolloverOn('side-ext-48');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-48" onLoad="rolloverLoad('side-ext-48','graphics/ext-48-label-2.jpg','graphics/ext-48-label-3.jpg');" src="graphics/ext-48-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>  
  -  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
  +  <A href="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
  +  <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
  -
  +  <UL>
  +                      <LI><A href="#design">New design</A></LI>
  +                      <LI><A href="#xsltc">XSLTC</A></LI>
  +                    </UL><A name="design"><!--anchor--></A>
     <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>New Design</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
     <P>Xalan-Java 2 represents a fundamental redesign of Xalan. The primary objective of this redesign is an easier-to-use, more understandable, and more modular API that encourages wider participation in its ongoing development by the open-source XML developer community, and that lends itself to &quot;streaming,&quot; the production of transformation output while the input is still being parsed.</P>
   <P>Xalan-Java 2 builds on <A href="http://www.megginson.com/SAX/Java/index.html" target="_top">SAX 2</A>, <A href="http://www.w3.org/TR/DOM-Level-2/" target="_top">DOM level 2</A>, and the <A href="http://java.sun.com/xml/docs/api/index.html" target="_top">Java API for XML Parsing 1.0</A>. For example, Xalan-Java 2 incorporates the SAX parsing event model in its support for the incremental production of transformation output. Xalan-Java 2 also implements the  standard TrAX API (see below) that enables you to code your XML applications without reference to the internal details of a particular Transformer or XML parser.</P>
   <P>Given the scope of the redesign, the changes with respect to <A href="http://xml.apache.org/xalan/index.html">Xalan-Java 1.x</A> are global in nature. For an introduction to the Xalan-Java 2 usage patterns, see <A href="usagepatterns.html">Basic Usage Patterns</A>.</P>
  -<P>Xalan-Java 2 implements the <A href="apidocs/javax/xml/transform/trax.html" target="_top">TRaX (Transformation API for XML)</A> interfaces. The product of extensive open-source collaboration by members of the XML developer community, TrAX provides a conceptual framework and a standard API for performing XML transformations. During its evolution, the TrAX API has undergone several revisions. We believe this API has now reached or is very close to final form. In November 2000, TrAX was incorporated into <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063" target="_top">Java Specification Request 63</A>, the Java API for XML Processing 1.1 , which has been published for public review (see <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063/jaxp-pd2.pdf" target="_top">Java API for XML Processing 1.1 Public Review 2</A>). We strongly encourage you to utilize the TrAX framework when you use Xalan-Java 2 to perform XML transformations.</P>
  +<P>Xalan-Java 2 implements the <A href="trax.html" target="_top">TRaX (Transformation API for XML)</A> interfaces. The product of extensive open-source collaboration by members of the XML developer community, TrAX provides a conceptual framework and a standard API for performing XML transformations. During its evolution, the TrAX API has undergone several revisions. We believe this API has now reached or is very close to final form. In November 2000, TrAX was incorporated into <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063" target="_top">Java Specification Request 63</A>, the Java API for XML Processing 1.1 , which has been published for public review (see <A href="http://java.sun.com/aboutJava/communityprocess/review/jsr063/jaxp-pd2.pdf" target="_top">Java API for XML Processing 1.1 Public Review 2</A>). We strongly encourage you to utilize the TrAX framework when you use Xalan-Java 2 to perform XML transformations.</P>
   <P>The basic organization of TrAX is quite simple: use a TransformerFactory to process transformation instructions and generate a Transformer, with which you can apply the processed transformation instructions to your XML Source, producing a transformation Result. For more detail, see <A href="usagepatterns.html#basic">Basic steps</A>.</P>
   <P>As part of the Java API for XML Processing, TraX provides a stable framework for plugging Transformers (like Xalan-Java) and XML parsers (like Xerces-Java) into your applications without tying yourself to the internal details of those implementations. See <A href="usagepatterns.html#plug">Plugging in a Transformer and XML parser</A>.</P>
  -</FONT></TD></TR></TABLE><BR>
  +</FONT></TD></TR></TABLE><BR><A name="xsltc"><!--anchor--></A><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>XSLTC</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  +                <P>In April 2001, Sun donated XSLTC to the Xalan project. XSLTC compiles stylesheets into translets and
  +                provides a runtime environment for using translets to transform XML documents. Initially, XSLTC is
  +                available in a separate JAR. Over time, we plan to integrate the two codebases. For more information,
  +                see <A href="xsltc_usage.html">Using XSLTC</A>, <A href="readme.html#xsltcreleasenotes">XSLTC 
  +                Release Notes</A>, and <A href="xsltc/index.html">XSLTC Design</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 &copy; 2000 The Apache Software Foundation.
                 All Rights Reserved.
  
  
  
  1.1                  xml-site/targets/xalan-j/trax.html
  
  Index: trax.html
  ===================================================================
  <HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Transformation API For XML</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/trax-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-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="xsltc_usage.html" onMouseOut="rolloverOff('side-xsltc_usage');" onMouseOver="rolloverOn('side-xsltc_usage');"><IMG alt="XSLTC Translets" border="0" height="12" hspace="0" name="side-xsltc_usage" onLoad="rolloverLoad('side-xsltc_usage','graphics/xsltc_usage-label-2.jpg','graphics/xsltc_usage-label-3.jpg');" src="graphics/xsltc_usage-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="Overview" 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>
    <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-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="faq.html" onMouseOut="rolloverOff('side-faq');" onMouseOver="rolloverOn('side-faq');"><IMG alt="FAQs" border="0" height="12" hspace="0" name="side-faq" onLoad="rolloverLoad('side-faq','graphics/faq-label-2.jpg','graphics/faq-label-3.jpg');" src="graphics/faq-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="samples.html" onMouseOut="rolloverOff('side-samples');" onMouseOver="rolloverOn('side-samples');"><IMG alt="Sample Apps" border="0" height="12" hspace="0" name="side-samples" onLoad="rolloverLoad('side-samples','graphics/samples-label-2.jpg','graphics/samples-label-3.jpg');" src="graphics/samples-label-3.jpg" vspace="0" width="120"></A><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 border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
    <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="TrAX" border="0" height="12" hspace="0" src="graphics/trax-label-1.jpg" vspace="0" width="120"><BR>
    <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
    <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
  <UL>
   <LI><A href="#intro">Introduction</A></LI>
   <LI><A href="#terminology">General Terminology</A></LI>
   <LI><A href="#requirements">Requirements</A></LI>
   <LI><A href="#model">Model</A></LI>
   <LI><A href="#patterns">Patterns</A></LI> 
  </UL><A name="intro"><!--anchor--></A>
  <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>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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">   
  <P>This document describes the transformation API for XML (TrAX), the set of APIs contained in
  	 <A href="apidocs/javax/xml/transform/package-summary.html">javax.xml.transform</A>, <A href="apidocs/javax/xml/transform/stream/package-summary.html">javax.xml.transform.stream</A>, <A href="apidocs/javax/xml/transform/dom/package-summary.html">javax.xml.transform.dom</A>, and <A href="apidocs/javax/xml/transform/sax/package-summary.html">javax.xml.transform.sax</A>.</P> 
    
  <P>There is a broad need for Java applications to be able to transform XML
  	 and related tree-shaped data structures. In fact, XML is not normally very
  	 useful to an application without going through some sort of transformation,
  	 unless the semantic structure is used directly as data. Almost all XML-related
  	 applications need to perform transformations. Transformations may be described
  	 by Java code, Perl code, <A href="http://www.w3.org/TR/xslt">XSLT</A>
  	 Stylesheets, other types of script, or by proprietary formats. The inputs, one
  	 or multiple, to a transformation, may be a URL, XML stream, a DOM tree, SAX
  	 Events, or a proprietary format or data structure. The output types are the
  	 pretty much the same types as the inputs, but different inputs may need to be
  	 combined with different outputs.</P> 
    
  <P>The great challenge of a transformation API is how to deal with all the
  	 possible combinations of inputs and outputs, without becoming specialized for
  	 any of the given types.</P> 
    
  <P>The Java community will greatly benefit from a common API that will
  	 allow them to understand and apply a single model, write to consistent
  	 interfaces, and apply the transformations polymorphically. TrAX attempts to
  	 define a model that is clean and generic, yet fills general application
  	 requirements across a wide variety of uses. </P> 
     
  </FONT></TD></TR></TABLE><BR><A name="terminology"><!--anchor--></A>	 
  <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>General Terminology</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
  	 
  <P>This section will explain some general terminology used in this
  		document. Technical terminology will be explained in the Model section. In many
  		cases, the general terminology overlaps with the technical terminology.</P> 
  	 
  <DL>
  <DT>Tree</DT>
  <DD>This term, as used within this document, describes an
  			 abstract structure that consists of nodes or events that may be produced by
  			 XML. A Tree physically may be a DOM tree, a series of well balanced parse
  			 events (such as those coming from a SAX2 ContentHander), a series of requests
  			 (the result of which can describe a tree), or a stream of marked-up
  			 characters.</DD>
  
  <DT>Source Tree(s)</DT>
  <DD>One or more trees that are the inputs to the
  			 transformation.</DD>
  
  <DT>Result Tree(s)</DT>
  <DD>One or more trees that are the output of the
  			 transformation.</DD>
  
  
  
  <DT>Transformation</DT>
  <DD>The process of consuming a stream or tree to produce
  			 another stream or tree.</DD>
  
  
  
  <DT>Identity (or Copy) Transformation</DT>
  <DD>The process of transformation from a source to a result,
  			 making as few structural changes as possible and no informational changes. The
  			 term is somewhat loosely used, as the process is really a copy. from one
  			 &quot;format&quot; (such as a DOM tree, stream, or set of SAX events) to
  			 another.</DD>
  
  
  
  <DT>Serialization</DT>
  <DD>The process of taking a tree and turning it into a stream. In
  			 some sense, a serialization is a specialized transformation.</DD>
  
  
  
  <DT>Parsing</DT>
  <DD>The process of taking a stream and turning it into a tree. In
  			 some sense, parsing is a specialized transformation.</DD>
  
  
  
  <DT>Transformer</DT>
  <DD>A Transformer is the object that executes the transformation.
  			 </DD>
  
  
  
  <DT>Transformation instructions</DT>
  <DD>Describes the transformation. A form of code, script, or
  			 simply a declaration or series of declarations.</DD>
  
  
  
  <DT>Stylesheet</DT>
  <DD>The same as &quot;transformation instructions,&quot; except it is
  			 likely to be used in conjunction with <A href="http://www.w3.org/TR/xslt">XSLT</A>.</DD>
  
  
  
  <DT>Templates</DT>
  <DD>Another form of &quot;transformation instructions.&quot; In the TrAX
  			 interface, this term is used to describe processed or compiled transformation
  			 instructions. The Source flows through a Templates object to be formed into the
  			 Result.</DD>
  
  
  
  <DT>Processor</DT>
  <DD>A general term for the thing that may both process the
  			 transformation instructions, and perform the transformation.</DD>
  
         
  
  
  <DT>DOM</DT>
  <DD>Document Object Model, specifically referring to the
  			 <A href="http://www.w3.org/TR/DOM-Level-2%20">Document Object Model
  			 (DOM) Level 2 Specification</A>.</DD>
  
  
  <DT>SAX</DT>
  <DD>Simple API for XML, specifically referring to the
  			 <A href="http://www.megginson.com/SAX/SAX2">SAX 2.0
  			 release</A>.</DD>
  </DL> 
  </FONT></TD></TR></TABLE><BR> <A name="requirements"><!--anchor--></A>
  <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>Requirements</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
    
  <P>The following requirements have been determined from broad experience
  	 with XML projects from the various members participating on the JCP.</P> 
    
  <UL>
  <LI>TrAX must provide a clean, simple
  		interface for simple uses.</LI>
  <LI>TrAX must be powerful enough to be
  		applied to a wide range of uses, such as, e-commerce, content management,
  		server content delivery, and client applications.</LI>
  <LI>A processor that implements a TrAX
  		interface must be optimizeable. Performance is a critical issue for most
  		transformation use cases.</LI>
  <LI>As a specialization of the above
  		requirement, a TrAX processor must be able to support a compiled model, so that
  		a single set of transformation instructions can be compiled, optimized, and
  		applied to a large set of input sources.</LI>
  <LI>TrAX must not be dependent an any
  		given type of transformation instructions. For instance, it must remain
  		independent of <A href="http://www.w3.org/TR/xslt">XSLT</A>.</LI>
  <LI>TrAX must be able to allow processors
  		to transform DOM trees.</LI>
  <LI>TrAX must be able to allow processors to
  		produce DOM trees.</LI>
  <LI>TrAX must allow processors to transform
  		SAX events.</LI>
  <LI>TrAX must allow processors to produce SAX
  		events.</LI>
  <LI>TrAX must allow processors to
  		transform streams of XML.</LI>
  <LI>TrAX must allow processors to produce
  		XML, HTML, and other types of streams.</LI>
  <LI>TrAX must allow processors to
  		implement the various combinations of inputs and outputs within a single
  		processor.</LI>
  <LI>TrAX must allow processors
  		to implement only a limited set of inputs. For instance, it should be possible
  		to write a processor that implements the TrAX interfaces and that only
  		processes DOM trees, not streams or SAX events.</LI>
  <LI>TrAX should allow a
  		processor to implement transformations of proprietary data structures. For
  		instance, it should be possible to implement a processor that provides TrAX
  		interfaces that performs transformation of JDOM trees.</LI>
  <LI>TrAX must allow the setting
  		of serialization properties, without constraint as to what the details of those
  		properties are.</LI>
  <LI>TrAX must allow the setting
  		of parameters to the transformation instructions.</LI>
  <LI>TrAX must support the
  		setting of parameters and properties as XML Namespaced items (i.e., qualified
  		names).</LI>
  <LI>TrAX must support URL
  		resolution from within the transformation, and have it return the needed data
  		structure.</LI>
  <LI>TrAX must have a mechanism for
  		reporting errors and warnings to the calling application.</LI>
  </UL>  
     
  </FONT></TD></TR></TABLE><BR> <A name="model"><!--anchor--></A>
  <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>Model</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> 
    
  <P>The section defines the abstract model for TrAX, apart from the details
  	 of the interfaces.</P> 
    
  <P>A TRaX <A href="#pattern-TransformerFactory">TransformerFactory</A> is an object
  	 that processes transformation instructions, and produces
  	 <A href="#pattern-Templates">Templates</A> (in the technical
  	 terminology). A <A href="#pattern-Templates">Templates</A>
  	 object provides a <A href="#pattern-Transformer">Transformer</A>, which transforms one or
  	 more <A href="#pattern-Source">Source</A>s into one or more
  	 <A href="#pattern-Result">Result</A>s.</P> 
    
  <P>To use the TRaX interface, you create a
  	 <A href="#pattern-TransformerFactory">TransformerFactory</A>,
  	 which may directly provide a <A href="#pattern-Transformers">Transformers</A>, or which can provide
  	 <A href="#pattern-Templates">Templates</A> from a variety of
  	 <A href="#pattern-Source">Source</A>s. The
  	 <A href="#pattern-Templates">Templates</A> object is a processed
  	 or compiled representation of the transformation instructions, and provides a
  	 <A href="#pattern-Transformer">Transformer</A>. The
  	 <A href="#pattern-Transformer">Transformer</A> processes a
  	 <A href="#pattern-Transformer">Source</A> according to the
  	 instructions found in the <A href="#pattern-Templates">Templates</A>, and produces a
  	 <A href="#pattern-Result">Result</A>.</P> 
    
  <P>The process of transformation from a tree, either in the form of an
  	 object model, or in the form of parse events, into a stream, is known as
  	 <I>serialization</I>. We believe this is the most suitable term for
  	 this process, despite the overlap with Java object serialization.</P> 
  </FONT></TD></TR></TABLE><BR><A name="patterns"><!--anchor--></A>
  <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>TRaX Patterns</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  <P>The intent, responsibilities, and thread safety of TrAX objects:</P>
  <UL>
    <LI><A href="#pattern-Processor">Processor</A></LI>
    <LI><A href="#pattern-TransformerFactory">TransformerFactory</A></LI>
    <LI><A href="#pattern-Templates">Templates</A></LI>
    <LI><A href="#pattern-Transformer">Transformer</A></LI>
    <LI><A href="#pattern-Source">Source</A></LI>
    <LI><A href="#pattern-Result">Result</A></LI>  
  </UL>
  <A name="pattern-Processor"><!--anchor--></A><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>Processor</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <DL>
  <DT>Intent</DT>
  <DD>Generic concept for the
    set of objects that implement the TrAX interfaces.</DD>
  <DT>Responsibilities</DT>
  <DD>Create compiled transformation instructions, transform
    sources, and manage transformation parameters and
    properties.</DD>
  <DT>Thread safety</DT>
  <DD>Only the Templates object can be
    used concurrently in multiple threads. The rest of the processor does not do
    synchronized blocking, and so may not be used to perform multiple concurrent
    operations.</DD>
  </DL>
  </FONT></TD></TR></TABLE><BR> <A name="pattern-TransformerFactory"><!--anchor--></A>
  <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>TransformerFactory</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <DL>
  <DT>Intent</DT>
  <DD>Serve as a vendor-neutral Processor interface for
    <A href="http://www.w3.org/TR/xslt">XSLT</A> and similar
    processors.</DD>
  <DT>Responsibilities</DT>
  <DD>Serve as a factory for a concrete
    implementation of an TransformerFactory, serve as a direct factory for
    Transformer objects, serve as a factory for Templates objects, and manage
    processor specific features.</DD>
  <DT>Thread safety</DT>
  <DD>A TransformerFactory may not perform mulitple concurrent
    operations.</DD>
  </DL>  
  </FONT></TD></TR></TABLE><BR><A name="pattern-Templates"><!--anchor--></A>
  <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>Templates</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <DL>
  <DT>Intent</DT>
  <DD>The runtime representation of the transformation instructions.</DD>
  <DT>Responsibilities</DT>
  <DD>A data bag for transformation instructions; act as a factory
    for Transformers.</DD>
  <DT>Thread safety</DT>
  <DD>Threadsafe for concurrent
    usage over multiple threads once construction is complete.</DD>
  </DL>  
  </FONT></TD></TR></TABLE><BR><A name="pattern-Transformer"><!--anchor--></A>
  <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>Transformer</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <DL>
  <DT>Intent</DT>
  <DD>Act as a per-thread
    execution context for transformations, act as an interface for performing the
    transformation.</DD>
  <DT>Responsibilities</DT>
  <DD>Perform the
    transformation.</DD>
  <DT>Thread safety</DT>
  <DD>Only one instance per thread
    is safe.</DD>
  </DL>  
  <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 Transformer is bound to the Templates
    object that created it.</I></FONT></TD></TR></TABLE>
  </FONT></TD></TR></TABLE><BR><A name="pattern-Source"><!--anchor--></A>
  <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>Source</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <DL>
  <DT>Intent</DT>
  <DD>Serve as a
    single vendor-neutral object for multiple types of input.</DD>
  <DT>Responsibilities</DT>
  <DD>Act as simple data holder for System IDs, DOM nodes, streams,
    etc.</DD>
  <DT>Thread safety</DT>
  <DD>Threadsafe concurrently over multiple
    threads for read-only operations; must be synchronized for edit
    operations.</DD>
  </DL>  
  </FONT></TD></TR></TABLE><BR><A name="pattern-Result"><!--anchor--></A>
  <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>Result</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <P>Alternative name: ResultTarget.</P>
  <DL>
  <DT>Intent</DT>
  <DD>Serve
    as a single object for multiple types of output, so there can be simple process
    method signatures.</DD>
  <DT>Responsibilities</DT>
  <DD>Act as simple data holder for
    output stream, DOM node, ContentHandler, etc.</DD>
  <DT>Thread safety</DT>
  <DD>Threadsafe concurrently over multiple threads for read-only,
    must be synchronized for edit.</DD>
  </DL>
  </FONT></TD></TR></TABLE><BR> 
   </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 &copy; 2000 The Apache Software Foundation.
                All Rights Reserved.
              </I></FONT></TD></TR></TABLE></BODY></HTML>
  
  
  1.1                  xml-site/targets/xalan-j/xsltc_usage.html
  
  Index: xsltc_usage.html
  ===================================================================
  <HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Using XSLTC</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/xsltc_usage-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-4');" onMouseOver="rolloverOn('side-ext-4');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-4" onLoad="rolloverLoad('side-ext-4','graphics/ext-4-label-2.jpg','graphics/ext-4-label-3.jpg');" src="graphics/ext-4-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="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-J 2.1.0" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
    <IMG alt="XSLTC Translets" border="0" height="12" hspace="0" src="graphics/xsltc_usage-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="overview.html" onMouseOut="rolloverOff('side-overview');" onMouseOver="rolloverOn('side-overview');"><IMG alt="Overview" 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>
    <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-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="faq.html" onMouseOut="rolloverOff('side-faq');" onMouseOver="rolloverOn('side-faq');"><IMG alt="FAQs" border="0" height="12" hspace="0" name="side-faq" onLoad="rolloverLoad('side-faq','graphics/faq-label-2.jpg','graphics/faq-label-3.jpg');" src="graphics/faq-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="samples.html" onMouseOut="rolloverOff('side-samples');" onMouseOver="rolloverOn('side-samples');"><IMG alt="Sample Apps" border="0" height="12" hspace="0" name="side-samples" onLoad="rolloverLoad('side-samples','graphics/samples-label-2.jpg','graphics/samples-label-3.jpg');" src="graphics/samples-label-3.jpg" vspace="0" width="120"></A><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 border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
    <A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-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="trax.html" onMouseOut="rolloverOff('side-trax');" onMouseOver="rolloverOn('side-trax');"><IMG alt="TrAX" border="0" height="12" hspace="0" name="side-trax" onLoad="rolloverLoad('side-trax','graphics/trax-label-2.jpg','graphics/trax-label-3.jpg');" src="graphics/trax-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-38');" onMouseOver="rolloverOn('side-ext-38');"><IMG alt="API (Javadoc)" border="0" height="12" hspace="0" name="side-ext-38" onLoad="rolloverLoad('side-ext-38','graphics/ext-38-label-2.jpg','graphics/ext-38-label-3.jpg');" src="graphics/ext-38-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="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-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="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="design/design2_0_0.html" onMouseOut="rolloverOff('side-ext-52');" onMouseOver="rolloverOn('side-ext-52');"><IMG alt="Xalan 2 Design" border="0" height="12" hspace="0" name="side-ext-52" onLoad="rolloverLoad('side-ext-52','graphics/ext-52-label-2.jpg','graphics/ext-52-label-3.jpg');" src="graphics/ext-52-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="xsltc/index.html" onMouseOut="rolloverOff('side-ext-54');" onMouseOver="rolloverOn('side-ext-54');"><IMG alt="XSLTC Design" border="0" height="12" hspace="0" name="side-ext-54" onLoad="rolloverLoad('side-ext-54','graphics/ext-54-label-2.jpg','graphics/ext-54-label-3.jpg');" src="graphics/ext-54-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="readme.html#bugs" onMouseOut="rolloverOff('side-ext-58');" onMouseOver="rolloverOn('side-ext-58');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-58" onLoad="rolloverLoad('side-ext-58','graphics/ext-58-label-2.jpg','graphics/ext-58-label-3.jpg');" src="graphics/ext-58-label-3.jpg" vspace="0" width="120"></A><BR>  
    <A href="http://xml.apache.org/xalan-j/test/overview.html" onMouseOut="rolloverOff('side-ext-60');" onMouseOver="rolloverOn('side-ext-60');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-60" onLoad="rolloverLoad('side-ext-60','graphics/ext-60-label-2.jpg','graphics/ext-60-label-3.jpg');" src="graphics/ext-60-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="todo.html#developer-list" onMouseOut="rolloverOff('side-ext-64');" onMouseOver="rolloverOn('side-ext-64');"><IMG alt="Credits" border="0" height="12" hspace="0" name="side-ext-64" onLoad="rolloverLoad('side-ext-64','graphics/ext-64-label-2.jpg','graphics/ext-64-label-3.jpg');" src="graphics/ext-64-label-3.jpg" vspace="0" width="120"></A><BR>
    <A href="xsltc/todo.html#developer-list" onMouseOut="rolloverOff('side-ext-66');" onMouseOver="rolloverOn('side-ext-66');"><IMG alt="XSLTC Credits" border="0" height="12" hspace="0" name="side-ext-66" onLoad="rolloverLoad('side-ext-66','graphics/ext-66-label-2.jpg','graphics/ext-66-label-3.jpg');" src="graphics/ext-66-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>
  
  <UL>
  <LI><A href="#intro">Introduction</A></LI>
    <LI><A href="#classpath">Setting the system classpath for XSLTC</A></LI>
    <LI><A href="#compile">Compiling translets from the command line</A></LI>
    <LI><A href="#run">Running translets from the command line</A></LI>
    <LI><A href="#api">Calling XSLTC with the TrAX/JAXP API</A></LI>
    <LI><A href="#constraints">XSLTC usage constraints</A></LI>  
  </UL>
  <P>See also: <A href="xsltc/index.html">XSLTC Design</A></P>
  <A name="intro"><!--anchor--></A>
  <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>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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  <P>XSLT provides a compiler and a runtime processor. Use the compiler to compile an XSL stylesheet into a translet, a set of Java classes. Use the runtime processor to apply the translet to an XML document and perform a transformation.</P>
  <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>To compile translets, you must be running the JDK or JRE 1.2 or higher. You can run translets with the JDK or JRE 1.1.8 or higher.</I></FONT></TD></TR></TABLE>
  </FONT></TD></TR></TABLE><BR><A name="classpath"><!--anchor--></A>
  <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>Setting the system classpath for XSLTC</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  <P>To compile translets, run translets, and use the XSLTC API, put the following on the system classpath:</P>
  <TABLE border="0" cellpadding="2" cellspacing="2" width="100%">
  <TR>
    <TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Classes or JAR</B>&nbsp;
        </FONT></TD>
    <TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>To compile a translet</B>&nbsp;
        </FONT></TD>
    <TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>To run a translet</B>&nbsp;
        </FONT></TD>
    <TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>To use the XSLTC API</B>&nbsp;
        </FONT></TD>
  </TR>
  <TR>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">the translet&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>  
  </TR>
  <TR>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">xsltc.jar&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>  
  </TR>
  
  
  <TR>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">runtime.jar&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>  
  </TR>
  <TR>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">BCEL.jar&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>  
  </TR>
  <TR>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Jlex.jar&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>  
  </TR>
  <TR>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">java_cup.jar&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">&nbsp;
        </FONT></TD>
    <TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">required&nbsp;
        </FONT></TD>  
  </TR>
  </TABLE>
  <P>The JAR files listed above are in the Xalan-Java bin directory. The translet is the set of class files or the JAR file that you generate with the compiler; see <A href="#compile">Compiling translets</A>.</P>
  <P>If you are using JDK or JRE 1.1.8, also include classes.zip on the classpath. If you are using JDK or JRE 1.2, include tools.jar on the classpath.</P>
  <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>For the time being, the Xalan processor and XSLT do not yet use the same DOM, SAX, and parser infastructures. Accordingly, you may find it necessary to reset the system classpath each time you switch between the Xalan processor and XSLTC. For information on setting the classpath for the Xalan processor, see <A href="getstarted.html#classpath">Setting the system classpath for Xalan</A>.</I></FONT></TD></TR></TABLE>
  </FONT></TD></TR></TABLE><BR>
  <A name="compile"><!--anchor--></A>
  <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>Compiling translets from the command line</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
      <UL>
        <LI><A href="#comp-synopsis">Synopis</A></LI>
        <LI><A href="#comp-args">Flags and arguments</A></LI>
        <LI><A href="#comp-examples">Examples</A></LI>
      </UL>
  	<P>The XSLT Compiler is a Java-based tool for compiling XSLT
  	stylesheets into lightweight and portable Java byte codes 
  	called translets.</P>  
  
  	<P>The XSLT Compiler can be run on any platform including UNIX,
  	Windows, NT, or Mac that supports Java 1.2.x or later. The generated
  	translets can be run on any platform that supports a Java
  	Runtime Environment, including a Palm Pilot with J2ME CLDC 
  	(Java 2 Micro Edition, Connected Limited Device Configuration).</P>
      
      <P>To run the compiler from the command line or a script, <A href="#classpath">set the classpath</A> and 
      run the XSLTC class with the appropriate flags and arguments (described below).</P>
      <A name="comp-synopsis"><!--anchor--></A>
  <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>Synopsis</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <P>
  <CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.compiler.XSLTC</FONT></CODE><BR>
  <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;[-o &lt;output&gt;] [-d &lt;directory&gt;] [-j &lt;jarfile&gt;]</FONT></CODE><BR>
  <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;[-p &lt;package name&gt;] [-u] &lt;stylesheet&gt;...</FONT></CODE></P> 
  
  </FONT></TD></TR></TABLE><BR><A name="comp-args"><!--anchor--></A>
  <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>Flags and arguments</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  	<P>The following flags and arguments are supported:</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>-o &lt;output&gt;
     Specifies the name of the generated translet class.
     If you omit this argument, the translet class is
     named &lt;stylesheet&gt;. Translets are written as 
     .class files.
  
  -d &lt;directory&gt;
     Specifies the destination directory. If you omit
     this argument, the translet class files are placed
     in the current working directory.
  
  -j &lt;jarfile&gt;
     Outputs the generated translet class files into a 
     jar file named &lt;jarfile&gt;.jar. When this option is 
     used, only the jar file is output.
  
  -p &lt;package name&gt;
     Specifies a package name for the generated translet
     classes.		
  
  -u  &lt;stylesheet&gt;
    Specifies the stylesheet with a URI such as 
    'http://myserver/stylesheet1.xsl'.
  
     &lt;stylesheet&gt;
     (No flag) The pathname of the stylesheet file.</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>
  
  </FONT></TD></TR></TABLE><BR><A name="comp-examples"><!--anchor--></A>
  <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>Examples</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  	<P>The following examples assume that you have already set the classpath to include the translet and the required JAR
      files (see <A href="#classpath">setting the system classpath</A>).</P>
  
  	<P><B>Example 1:</B>  Creating a translet from the hamlet.xsl stylesheet.</P>
  	<P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.compiler.XSLTC</FONT></CODE><BR>
      <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; hamlet.xsl</FONT></CODE></P>    
      <P>Example 1 produces a set of class files such as hamlet.class, hamlet$0.class, hamlet$1.class.</P>	
  
  	<P><B>Example 2:</B>  Outputting to a JAR file.</P>
      <P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.compiler.XSLTC</FONT></CODE><BR>
      <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; -j hamlet.jar hamlet.xsl</FONT></CODE></P>
      <P>Example 2 produces hamlet.jar, which contains the translet class files.</P>	
  
  	<P><B>Example 3:</B> Specifying the translet class name. </P> 
  	<P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.compiler.XSLTC</FONT></CODE><BR>
      <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; -o newhamlet hamlet.xsl</FONT></CODE></P>
      <P>Example 3 producs a set of class files such as newhamlet.class, newhamlet$0.class, etc., rather than hamlet.class,
      hamles$0.class, etc.</P>
  
  
  	<P><B>Example 4:</B> Compiling multiple stylesheets.</P>
  	<P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.compiler.XSLTC</FONT></CODE><BR>
      <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; hamlet1.xsl hamlet2.xsl hamlet3.xsl</FONT></CODE></P>
      <P>Example 4 produces three translets and set of class files derived from the three stylesheets.</P>
  
  	<P><B>Example 5:</B> Package Specification.</P>
  	<P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.compiler.XSLTC</FONT></CODE><BR>
      <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; -p com.mycompany.translets hamlet.xsl</FONT></CODE></P>
      <P>Example 5 produces a set of class files such as com/mycompany/translets/hamlet.class,
  	com/mycompany/translets/hamlet$0.class', etc.</P>
  </FONT></TD></TR></TABLE><BR>
  </FONT></TD></TR></TABLE><BR><A name="run"><!--anchor--></A>
  <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>Running translets from the command line</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
      <UL>
        <LI><A href="#run-synopsis">Synopis</A></LI>
        <LI><A href="#run-args">Flags and arguments</A></LI>
        <LI><A href="#run-examples">Examples</A></LI>
      </UL>
  
      <P>The Sun XSLT runtime processor is a Java-based tool for 
  	transforming XML document files using a translet (compiled 
  	stylesheet). </P>
  
  	<P>The XSLT processor can be run on any platform including UNIX,
  	Windows, NT, Mac that supports Java, including a Palm Pilot
  	with J2ME CLDC (Java 2 Micro Edition, Connected Limited Device
  	Configuration).</P>
      
      <P>To run  translet from the command line or a script, <A href="#classpath">set the classpath</A> (be sure to include
       the translet) and run the translset with the appropriate flags and arguments (described below).</P>
  <A name="run-synopsis"><!--anchor--></A>
  <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>Synopsis</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <P><CODE><FONT face="courier, monospaced">java &lt;translet&gt;</FONT></CODE><BR>
  <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; {-u &lt;document_url&gt; | &lt;document&gt;} &lt;class&gt;</FONT></CODE><BR>
  <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; [&lt;name1&gt;=&lt;value1&gt; ...]</FONT></CODE></P>
  
  </FONT></TD></TR></TABLE><BR><A name="run-args"><!--anchor--></A>
  <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>Flags and arguments</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  
  	<P>The following flags and arguments are supported:</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>-u
     Specifies the XML input &lt;document&gt; with a URI,
     such as 'http://myserver/hamlet.xml'.		
  
  Arguments wirhout flags:
  
     &lt;document&gt;     		
     Filename of the XML input document. 
     
     &lt;document_url&gt;     	
     URI of the XML input document (see the -u flag above). 
  
     &lt;class&gt;
     The translet that performs the transformation. The translet
     may take a set of stylesheet parameters specified as
     name-value pairs. The format for a name-value pair is
     &lt;name&gt;=&lt;value&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>
  </FONT></TD></TR></TABLE><BR><A name="run-examples"><!--anchor--></A>
  <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>Examples</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  
  	<P>The following examples assume that you have already set the classpath to include the translet and the required JAR
      files (see <A href="#classpath">setting the system classpath</A>).</P>
      <P>A possible variation: You have set the classpath to include the required JAR files, but when you run the translet,
      you use the java -cp flag to add the current working directory (containing the translet class files you have just generated)
      to the classpath.</P>
      <P><I>Windows:</I><CODE><FONT face="courier, monospaced"> java -cp .;%CLASSPATH% ...</FONT></CODE><BR>
         <I>UNIX:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</I><CODE><FONT face="courier, monospaced"> java -cp .:$CLASSPATH ...</FONT></CODE></P>
      
      <P><B>Example 1:</B> Processing an XML document.</P>
  
  	<P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.runtime.DefaultRun</FONT></CODE><BR>
         <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;  hamlet.xml hamlet</FONT></CODE></P> 
  
  	<P>Example 1 uses the specified translet (hamlet) to transform the specified XML input document (hamlet.xml). 
      The XML input document is in the current working directory. The translet was created by using
      org.apache.xalan.xslt.compiler.XSLTC to compile an XSL stylesheet (hamlet.xsl). </P>
  
  	<P><B>Example 2:</B> Passing stylesheet parameters to the translet.</P>
  
  	<P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.runtime.DefaultRun</FONT></CODE><BR>
         <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; hamlet.xml hamlet</FONT></CODE><BR>
         <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp; speaker=HAMLET 'scene=SCENE IV'</FONT></CODE></P>
  
  	<P>Example 2 passes &quot;HAMLET&quot; to the stylesheet for the stylesheet parameter named speaker, and &quot;SCENE IV&quot; for the
      stylesheet parameter named scene. The second name-value pair was placed in single quotes to 
      specify a value containing a space.</P>
      
      <P><B>Example 3:</B> Processing an XML input document specified with a URI.</P>
  
  	<P><CODE><FONT face="courier, monospaced">java org.apache.xalan.xsltc.runtime.DefaultRun</FONT></CODE><BR>
         <CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;  -u http://zarya.east/test.xml hamlet</FONT></CODE></P>
  
  	<P>Example 3 applies the translet (hamlet) to the XML input document (http://zarya.east/test.xml hamlet). Inclusion of
      the flag (-u) is optional.</P>
  </FONT></TD></TR></TABLE><BR>
  </FONT></TD></TR></TABLE><BR><A name="api"><!--anchor--></A>
  <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>Calling XSLTC with the TrAX/JAXP API</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  <P>G. Todd Miller has begun integrating the translet with the TrAX/JAXP 1.1 API. See <A href="xsltc/xsltc_trax.html">The Translet API &amp; TrAX</A>. Accordingly, it is now possible to set a system property and use a TransformerFactory to generate a Transformer that performs a transformation by compiling and running a translet.</P>
  
  
  <P>When you use the JAXP 1.1 API to run Xalan-Java, the <CODE><FONT face="courier, monospaced">javax.xml.transformer.TransformerFactory</FONT></CODE> system property is set to <CODE><FONT face="courier, monospaced">org.apache.xalan.processor.TransformerFactoryImpl</FONT></CODE>. As it currently stands, this Xalan implementation of TransformerFactory always uses the Xalan Transformer to perform transformations. To use translets to perform transformations, set this system property to <CODE><FONT face="courier, monospaced">org.apache.xalan.xsltc.runtime.TransformerFactoryImpl</FONT></CODE>. For information on setting this and related system properties designating XML parsere and XSL transformer, see <A href="usagepatterns.html#plug">Plugging in a Transformer and XML parser</A>.</P>
  <P>To Use the JAXP 1.1 API to perform transformations with translets do the following:</P>
  <OL>
    <LI>Set the <CODE><FONT face="courier, monospaced">javax.xml.transformer.TransformerFactory</FONT></CODE> system property as indicated above.<BR><BR></LI>
    <LI>Instantiate a TransformerFactory.<BR><BR></LI>
    <LI>Assuming you want to perform a series of transformations with the same translet, use the TransformerFactory and a
     StreamSource XSL stylesheet to generate a Templates object (the translet). If you are performing a single
     transformation, use the TransformerFactory and the StreamSource object to instantiate a Transformer.<BR><BR></LI>
    <LI>Perform the transformation, using a StreamSource object for the XML input and a StreamResult object to hold the
     transformation output.</LI>
  </OL>
  <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>Examples</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">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
  <P><B>Example 1:</B> Using a translet/Templates object for multiple transformations</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>import java.util.Properties;
  import javax.xml.transform.Transformer;
  import java.io.FileOutputStream;
  import javax.xml.transform.TransformerFactory;
  import javax.xml.transform.Templates;
  import javax.xml.transform.stream.StreamSource;
  import javax.xml.transform.stream.StreamResult;
  ...
  // Set the TransformerFactory system property.
  // Note: For more flexibility, load properties from a properties file.
  String key = &quot;javax.xml.transform.TransformerFactory&quot;;
  String value = &quot;org.apache.xalan.xsltc.runtime.TransformerFactoryImpl&quot;;
  Properties props = System.getProperties();
  props.put(key, value);
  System.setProperties(props);
  ...
  String xslInURI;
  // Instantiate the TransformerFactory, and use it along with a SteamSource
  // XSL stylesheet to create a translet as a Templates object.
  TransformerFactory tFactory = TransformerFactory.newInstance();
  Templates translet = tFactory.newTemplates(new StreamSource(xslInURI));
  ...
  String xmlInURI;
  String htmlOutURI;
  ...
  // For each transformation, instantiate a new Transformer, and perform
  // the transformation from a StreamSource to a StreamResult;
  Transformer transformer = translet.newTransformer();
  transformer.transform(new StreamSource(xmlInURI),
                        new StreamResult(new FileOutputStream(htmlOutURI)));
  ...</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>For a working sample that illustrates this usage pattern, see <A href="samples.html#xsltc1">JAXPTransletOneTransformation</A>.</P>
  <P><B>Example 2:</B> Compiling a translet/Templates object for a single transformation</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>import java.util.Properties;
  import javax.xml.transform.TransformerFactory;
  import java.io.FileOutputStream;
  import javax.xml.transform.Transformer;
  import javax.xml.transform.stream.StreamSource;
  import javax.xml.transform.stream.StreamResult;
  ...
  // Set the TransformerFactory system property.
  // Note: For more flexibility, load properties from a properties file.
  String key = &quot;javax.xml.transform.TransformerFactory&quot;;
  String value = &quot;org.apache.xalan.xsltc.runtime.TransformerFactoryImpl&quot;;
  Properties props = System.getProperties();
  props.put(key, value);
  System.setProperties(props);
  ...
  String xslInURI;
  String xmlInURI;
  String htmlOutURI;
  // Instantiate the TransformerFactory, and use it along with a SteamSource
  // XSL stylesheet to create a Transformer.
  TransformerFactory tFactory = TransformerFactory.newInstance();
  Transformer transformer = tFactory.newTransformer(new StreamSource(xslInURI));
  // Perform the transformation from a StreamSource to a StreamResult;
  transformer.transform(new StreamSource(xmlInURI),
                        new StreamResult(new FileOutputStream(htmlOutURI)));</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>For a working sample that illustrates this usage pattern, see <A href="samples.html#xsltc2">JAXPTransletMultipleTransformations</A>.</P>
  </FONT></TD></TR></TABLE><BR>
  </FONT></TD></TR></TABLE><BR><A name="constraints"><!--anchor--></A>
  <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>XSLTC usage constraints</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">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
  <P>See <A href="readme.html#xsltcconf">Conformance issues</A> and <A href="readme.html#xsltcknownproblems">Known problems</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 &copy; 2000 The Apache Software Foundation.
                All Rights Reserved.
              </I></FONT></TD></TR></TABLE></BODY></HTML>
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: general-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: general-cvs-help@xml.apache.org


Mime
View raw message