<?xml version="1.0" standalone="no"?> 
<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd">
<!--
 * Copyright 1999-2004 The Apache Software Foundation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
-->
<!-- $Id: xsltc_history.xml 338256 2005-08-06 21:03:29Z mcnamara $ -->
<s1 title="XSLTC software changes">
<p>The following sections list <link idref="xsltc_usage">XSLTC</link> changes back to the incorporation of XSLTC into &xslt4j;.</p>
<s2 title="Changes for &xslt4j; 2.7.0">
<p>XSLTC source code updates:</p>
<ul>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/27<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java NodeSortRecordFactory.java SortSettings.java<br/>
<ref>Committer's log entry: </ref>
Restored old constructor of NodeSortRecordFactory and _collator field of
NodeSortRecord for binary compatibility.  These changes allow translets
compiled with an earlier version of XSLTC to continue to run with the new
version.  They should not be used in newly compiled translets or in new code
in XSLTC itself.<br/>

Also introduced a SortSettings class that is used to bundle sort settings from
NodeSortRecordFactory into instances of NodeSortRecord.  That reduces some of
the space overhead in constructing a NodeSortRecord.<br/>

Reviewed by Igor Hersht (igorh@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/27<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom ForwardPositionIterator.java 
xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/>
<ref>Committer's log entry: </ref>
Revived ForwardPositionIterator class and BasisLibrary.positionF purely to
support backwards compatibility with translets compiled with earlier versions
of XSLTC.  New code should not reference either.<br/>

Reviewed by Christine Li (jycli@ca.ibm.com).<br/><br/></li>

<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/03/09<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeCounter.java<br/>
<ref>Committer's log entry: </ref>
xsl:number, minor code cleaning and optimization.<br/><br/></li>

<li><ref>Committed by </ref>bhakti@apache.org<ref> on </ref>2004/03/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/>
<ref>Committer's log entry: </ref>
Check if the systemId for the stylesheet is null to avoid getting an NPE.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/03/16<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/>
<ref>Committer's log entry: </ref>
Reverting latest patch by Arun. There are some problems with the new code to invoke functions dynamically (e.g. docbook 
reports a compile-time type check error). The approach taken to determine when to invoke methods dynamically needs to be revisted.
<br/><br/></li>

<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2004/03/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Patch for bug 27417.  If an output stream is created by the XSLTC transformer, close
it after the transformation.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/04/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ApplyImports.java<br/>
<ref>Committer's log entry: </ref>
Applying patch for bugs 27932 and 15333.<br/>

Code was incorrectly calculating the set of templates to which an
xsl:apply-imports instruction applies.  It should consider all templates that
the current template rule could override, which means that if the template
appeared in a stylesheet that was included in another stylesheet, any templates
imported into the including stylesheet have to be considered as well.  The
method Stylesheet.getMinimumDescendantPrecedence is responsible for this
calculation.<br/>

In addition, when code is generated for an xsl:apply-imports, if any template
has local parameters, an empty stack frame has to be pushed before attempting
to apply-imports.  Otherwise, parameters from the template that contains the
apply-imports instruction will be passed into the matching template.<br/>

Reviewed by Joanne Tong (joannet@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/04/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/>
<ref>Committer's log entry: </ref>
Applying patch for bug 27932.<br/>

Code was incorrectly calculating the set of templates to which an
xsl:apply-imports instruction applies.  It should consider all templates that
the current template rule could override, which means that if the template
appeared in a stylesheet that was included in another stylesheet, any templates
imported into the including stylesheet have to be considered as well.  The
method Stylesheet.getMinimumDescendantPrecedence is responsible for this
calculation.<br/>

Reviewed by Joanne Tong (joannet@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>bhakti@apache.org<ref> on </ref>2004/05/13<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java<br/>
<ref>Committer's log entry: </ref>
In xsltc currently with the extension redirect the output file is created only if the parent dir exists. 
Making the behaviour similar to that of xalan wherein the parent directory is also created.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/05/20<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java BasisLibrary.java<br/>
<ref>Committer's log entry: </ref>
Fix for Bugzilla 29120. The translet now stores a reference to the DocumentBuilderFactory which is used by 
nodeList2Iterator() in the basis library. Note that to reuse that reference you need to use the same transformer 
(not just the same template).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/05/21<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler AttributeValueTemplate.java<br/>
<ref>Committer's log entry: </ref>
Implemented a new parser for ATVs. The old was buggy: did not handle escaped curly braces in all cases and did 
not handled quotes at all. The old parser assumed that braces came in pairs, but it is possible to have an odd 
number as in "{{{$foo}}}". The new parser seems to handle all cases correctly.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/05/21<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LiteralAttribute.java LiteralElement.java Parser.java 
SyntaxTreeNode.java<br/>
<ref>Committer's log entry: </ref>
Modified code to ensure line number information is propagated from parent to children to ensure we get informative 
error messages. This was particularly bad for errors in ATVs.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/05/25<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java BasisLibrary.java<br/>
<ref>Committer's log entry: </ref>
Improved patch for Bugzilla 29120 based on Matthias' suggestion. A DOMImplementation is now cached for even better performance.
<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/05/26<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Mode.java Stylesheet.java<br/>
<ref>Committer's log entry: </ref>
If the local is set to Turkish, but the codepage is MS-DOS (US) 437. The BCEL
InstructionFinder.search(String) method can not find any instructions contain
letter I. In Turkish, there are 2 lower case i.  Since the search() method is case
insensitive, change the pattern string to use lower case.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/06/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LiteralElement.java<br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla 29411. New algorithm shoudl optimize the way NS decls are reported for nested literal 
elements. Note that the algorithm will not work accross non-literal elements. E.g., if there is an 
xsl:element between two literal elements, the inner literal element may report unnecessary NS delcs. 
This is just a simple way to ensure that any NS decls defined by the xsl:element instruction are re-defined 
in the inner literal (see namespace39 in the conf tests).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/06/11<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Mode.java<br/>
<ref>Committer's log entry: </ref>
Fixed a problem with peephole optimization patterns. I don't know if something changed in BCEL since the 
code was written, but the pattern syntax was not correct. I've also added a new common peephole pattern 
which should reduce then inner loop's length in some Translets.<br/><br/></li>

<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/06/21<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom KeyIndex.java xml-xalan/java/src/org/apache/xalan/xsltc/util 
IntegerArray.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla Bug 28622.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/06/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CastExpr.java 
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ObjectType.java StringType.java Type.java<br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla 27539 and related problems. The main problem was that hashCode() was not implemented 
correctly in ObjectType. To eleminate further problems I also removed Type.ObjectString as this type is the 
same as Type.String and the latter can be used in place of the former.<br/><br/></li>

<li><ref>Committed by </ref>aruny@apache.org<ref> on </ref>2004/07/15<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerHandlerImpl.java TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
Description: getNode should return the result DOM tree once TransformerHandler completes the transformation.<br/><br/></li>

<li><ref>Committed by </ref>aruny@apache.org<ref> on </ref>2004/07/15<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Output.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime 
AbstractTranslet.java<br/><ref>Committer's log entry: </ref>
Description: Patch for the support of extension attribute "intent-amount" for xsl:output. Supports the old URI 
{http://xml.apache.org/xslt} and new URI{http://xml.apache.org/xalan}.<br/><br/></li>

<li><ref>Committed by </ref>aruny@apache.org<ref> on </ref>2004/07/15<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/>
<ref>Committer's log entry: </ref>
Description: Patch for concatenating adjacent text nodes.<br/><br/></li>

<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/07/22<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java<br/>
<ref>Committer's log entry: </ref>
Submitted by:	Yash Talwar<br/>
Reviewed by:	Brian Minchau<br/>
Fix for bugzilla 28796.<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/08/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc TransletException.java xml-xalan/java/src/org/apache/xalan/xsltc/cmdline 
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/cmdline/getopt GetOptsException.java IllegalArgumentException.java 
MissingOptArgException.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler CompilerException.java IllegalCharException.java 
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util MultiHashtable.java ObjectFactory.java StringStack.java 
TypeCheckError.java xml-xalan/java/src/org/apache/xalan/xsltc/dom BitArray.java ObjectFactory.java 
xml-xalan/java/src/org/apache/xalan/xsltc/runtime ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/trax 
ObjectFactory.java TemplatesImpl.java<br/>
<ref>Committer's log entry: </ref>
Added serialVersionUID for classes which implement Serializable interface. Patch created by Christine Li (jycli@ca.ibm.com) 
and was reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/09/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Variable.java<br/>
<ref>Committer's log entry: </ref>
Skip translation for any unreferenced variables. Patch reviewed by Christine Li (jycli@ca.ibm.com).<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/11/16<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CallTemplate.java<br/>
<ref>Committer's log entry: </ref>
Patch for bug report XALANJ-1994.<br/>

The CallTemplate.getCalleeTemplate() method was searching through a Vector of
all templates defined by the logical stylesheet, and picked out the first with
the same name referenced by the current xsl:call-template instruction.  However,
that failed to account for import precedence.  The SymbolTable.lookupTemplate
method takes into account import precedence, and should be used instead.<br/>

Patch was reviewed by Christine Li (jycli@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/12/06<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java Operators.java<br/>
<ref>Committer's log entry: </ref>
Patch for XALANJ-2003. Problem was unrelated to recursion, but simply a bug in the basis library. Swapping 
operands requires swapping operators and the latter was not done. A workaround for this bug would be to 
swap the operands (and operator) in the stylesheet (as that would not cause any swapping in the basis library).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/12/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2TO.java<br/>
<ref>Committer's log entry: </ref>
Patch for XALANJ-2015. Namespace declarations are now reported on a first pass to avoid the problem described in the bug report.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/12/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Output.java Parser.java SyntaxTreeNode.java<br/>
<ref>Committer's log entry: </ref>
Patch for XALANJ-1761. Output properties from multiple xsl:output instructions are now correctly merged (previously, 
only cdata-section-elements were handled correctly).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/12/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime Operators.java<br/>
<ref>Committer's log entry: </ref>
Replaced meaningless numbers by predefined constants in swapArray[] vector.<br/><br/></li>

<li><ref>Committed by </ref>joannet@apache.org<ref> on </ref>2004/12/13<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java<br/>
<ref>Committer's log entry: </ref>
Fixed XALANJ-1812. Template inlining setting propagated to imported stylesheets.<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2005/02/04<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Number.java xml-xalan/java/src/org/apache/xalan/xsltc/dom 
AnyNodeCounter.java MultipleNodeCounter.java NodeCounter.java SingleNodeCounter.java<br/>
<ref>Committer's log entry: </ref>
Implement Errata E24 for XSLTC, when the value attribute of xsl:number is NaN, infinite or less than 0.5. 
More details please refer to bug report XALANJ-1979. Patch is reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/02/09<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ApplyImports.java 
Mode.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ClassGenerator.java<br/>
<ref>Committer's log entry: </ref>
Fix for XALANJ-1417.<br/><br/></li>

<li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/02/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Mode.java TestSeq.java 
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util 
MethodGenerator.java<br/>
<ref>Committer's log entry: </ref>
Fix for XALANJ-2058. In the code, the problem is that a pattern gets compiled once, 
and then this compiled pattern gets re-used whenever the pattern is
needed in any method.
The fix is that pattern should get compiled once per method.  So, pattern get reused only within a given method.
for any new method, a pattern is recompiled.
This fix has been reviewed by Henry Zongaro. Henry had also provided suggestions about the fix to resolve this issue.
Thanks Henry for his valuable input.<br/><br/></li>

<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/03/03<br/>
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan readme.xml resources.xml xsltc_usage.xml xml-xalan/java/xdocs/sources/xsltc 
README.xslt README.xsltc<br/>
<ref>Committer's log entry: </ref>
Patch for XALANJ-1937.  Change references in the docs from bugzilla to Apache Jira for reporting new issues and checking the 
status of existing issues.<br/><br/></li>

<li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/03/16<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Text.java<br/>
<ref>Committer's log entry: </ref>
This is a fix for XALANJ-2081.
In class org.apache.xalan.xsltc.compiler.Text, a check was being done to find out if a given text string is all whitespaces.
In case, a given text string is all whitespace, a call to serializer is not made.
The code was using trim() method from java.lang.String.  trim() method trimmed characters as whitespaces 
that are not considered as whitespace in XML.
The code logic is changed to check if a given string is all whitespace accoding to XML specifications.
I would like to thank Michael Glavassevich and Brian Minchau for their input to resolve this issue.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2005/04/08<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax Util.java<br/>
<ref>Committer's log entry: </ref>
Clear XML reader for the case in which them main stylesheet is passed using a DOMSource. This fixes the problem 
of trying to use a DOM2SAX reader for included/imported stylesheets that are resolved by user-defined URI resovers.<br/><br/></li>

<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/19<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
Put in the missing Transformer.reset() implementation when doing the JAXP 1.3 integration.<br/><br/></li>

<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/20<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java 
xml-xalan/java/src/org/apache/xalan/xsltc/trax SAX2DOM.java TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
Support DOMResult.nextSibling in XSLTC. The nextSibling information is passed from TransformerImpl to TransletOutputHandlerFactory,
then to SAX2DOM. If nextSibling is not null, SAX2DOM inserts the result nodes before it.
Otherwise the result nodes are appended as the last children of the parent.<br/><br/></li>

<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/31<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan Version.java xml-xalan/java/src/org/apache/xalan/processor 
TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java 
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java ErrorMsg.java 
xml-xalan/java/src/org/apache/xalan/xsltc/trax SmartTransformerFactoryImpl.java TransformerFactoryImpl.java<br/>
<ref>Committer's log entry: </ref>
Patch for XALANJ-2123. Move hard-coded messages for JAXP 1.3 into resource bundles.<br/><br/></li>

<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/08<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java Parser.java TransletOutput.java XSLTC.java 
xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java ErrorMessages.java 
xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java TemplatesImpl.java TransformerFactoryImpl.java 
TransformerImpl.java TrAXFilter.java Util.java<br/>
<ref>Committer's log entry: </ref>
Patch for XALANJ-2136. Implement the secure processing feature for XSLTC. Extension functions
and extension elements are disabled when this feature is set to true.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/06/08<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom KeyIndex.java<br/>
<ref>Committer's log entry: </ref>
Fix for XALANJ-1938.<br/>

A KeyIndex object contains a Hashtable mappings from key values to the
IntegerArray objects that contain the set of nodes selected by those key values.
For a reference to the key function, the lookupKey method finds the nodes
selected by a particular key value, and the merge method merges all the nodes
selected if more than one key value is specified for the one refernce to the key
function.<br/>

The problem was that the lookupKey and merge methods operated on the "live"
versions of the IntegerArrays stored in the mapping Hashtable, so that one
reference to the key function might affect the result of subsequent references
to the key function.  Changed those methods to make clones of the selected
IntegerArray objects, which can be safely modified without affecting the
original IntegerArrays.<br/>

This patch was reviewed by Joanne Tong (joannet@ca.ibm.com).<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/06/15<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Step.java<br/>
<ref>Committer's log entry: </ref>
Patch for bug XALANJ-2097 from Nick Van den Bleeken.
(Nick.VandenBleeken@pandora.be), reviewed by Henry Zongaro.<br/>

The code generated for a path expression of the form $var/self::node() was
incorrect.  It looked like the following, where "i" refers to the context node.<br/>

  new StepIterator(dtmaxisiterator1.cloneIterator(), new SingletonIterator(i));<br/>

That's incorrect, because the SingletonIterator will only return the node used
upon its instantiation, rather than the node provided from the parent step
expression by the StepIterator.<br/>

The SingletonIterator should only be used if the self::node() is not a step
in a path expression.  In the case of a path expression, dom.getAxisIterator
should be used to create the axis iterator instead.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/06/30<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler AbsoluteLocationPath.java FilteredAbsoluteLocationPath.java 
FilterExpr.java FilterParentPath.java FunctionCall.java KeyCall.java ParentLocationPath.java Sort.java Step.java StepPattern.java<br/>
<ref>Committer's log entry: </ref>
Patch for XALANJ-2146.  Reviewed by Christine Li (jycli@ca.ibm.com).<br/>

Section 4.3.4 of the JVM specification prohibits an uninitialized object from
appearing on the stack or in a local variable when a backwards branch is
executed.  We need to guard against that in the generated code in XSLTC by
storing arguments to constructors in temporary variables if there's any
possibility that the code used to calculate such arguments might contain a
backwards branch.<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2005/07/08<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util 
ErrorMessages.java<br/>
<ref>Committer's log entry: </ref>
Added missing apostrophe for error messages. Fixed bug report XALANJ-2167. Patch is reviewed by Sarah McNamara (mcnamara@ca.ibm.com)
<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/07/11<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java<br/>
<ref>Committer's log entry: </ref>
Fix for bug report XALANJ-2140.<br/>

The AbstractTranslet._keyIndexes field is used to record the sets of keys
for a particular transformation by name.  This table was not cleared at the
end of a transformation, so the keys from one transformation persisted to
subsequent transformations.  Fixed this by adding a try-finally block in
the AbstractTranslet.transform method and setting _keyIndexes to null in the
finally block.<br/>

Reviewed by Brian Minchau (minchau@ca.ibm.com).<br/><br/></li>

<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/07/13<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/>
<ref>Committer's log entry: </ref>
Minor change in the error message,
fix was found by Brian Vargas, patch produced and
reviewed by Brian Minchau.<br/><br/></li>

<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/07/15<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java<br/>
<ref>Committer's log entry: </ref>
Fixing a NPE for when _locator is null in the XSLTC Parser.
Applyin the patch in XALANJ-2154 from Brian Minchau, reiwed and approved by Santiago P.G.<br/><br/></li>

<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLProcessorVersion.java xml-xalan/java/src/org/apache/xalan/xslt 
EnvironmentCheck.java xml-xalan/java/src/org/apache/xpath/domapi XPathEvaluatorImpl.java XPathExpressionImpl.java 
XPathNSResolverImpl.java XPathResultImpl.java xml-xalan/java/src/org/apache/xml/serializer Version.src xml-xalan/java/xdocs/sources 
entities.src xalan-jlocal.xml xalan-jsite.xml xml-xalan/java/xdocs/sources/xalan commandline_xsltc.xml commandline.xml downloads.xml 
extensions.xml extensionslib.xml faq.xml features.xml getstarted.xml index.xml overview.xml public_apis.xml resources.xml samples.xml 
trax.xml usagepatterns.xml whatsnew.xml xpath_apis.xml xsltc_usage.xml xml-xalan/java/xdocs/sources/xsltc README.xslt README.xsltc<br/>
<ref>Committer's log entry: </ref>
Doc changes for Xalan Java 2.7.0 release.
This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>

<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/13<br/>
<ref>Modified: </ref> java/src/org/apache/xalan/xsltc/compiler xpath.lex<br/>
<ref>Committer's log entry: </ref>
Patch for XALANJ-1912.<br/>
Provided by Santiago Pericas-Geertsen<br/>
Reviewed by Yash Talwar.<br/><br/></li>

</ul>
</s2>

<s2 title="Changes for &xslt4j; 2.6.0">
<p>XSLTC source code updates:</p>
<ul>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/31<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><br/>
<ref>Committer's log entry: </ref>
Use translet as whitespace filter if it implements the StripFilter interface (This class should 
probably be deprecated to avoid having to get it in sync with the Process class).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/31<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor StylesheetPIHandler.java 
xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla 24187 by Bhakti Mehta (Bhakti.Mehta@sun.com).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/11/04<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla 24188 by Bhakti Mehta (Bhakti.Mehta@sun.com). The runtime now attempts to resolve a reference when 
the URI resolver returns null.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/11/05<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Committing patch for Bugzilla 24414 by Bhakti Mehta (Bhakti.Mehta@sun.com).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/11/11<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Param.java ParameterRef.java 
xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla 24518 by Mehta Bhakti (Mehta.Bhakti@sun.com).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/11/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java Util.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla 24695 by Bhakti Mehta (Bhakti.Mehta@sun.com).<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/11/21<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java Util.java<br/><br/>
<ref>Committer's log entry: </ref>
Updated patch for Bugzilla 24695 by Bhakti Metha. This patch gets an XMLReader from a SAXParserFactory if unable 
to obtain one from an XMLReaderFactory.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/11/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java Stylesheet.java 
xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch from Morris Kwan (mkwan@ca.ibm.com), reviewed by myself:<br/><br/>

Split namesArray in translet into three arrays:  namesArray, urisArray and
typesArray.<br/><br/>

Previously, entries in the namesArray had to be examined at run-time to
distinguish those that represented elements, from those that represented
attributes (prefixed by an '@'), and those that represented namespace node
names (prefixed by a '?').  In addition, any namespace URI for the element or
attribute was similarly stored in the namesArray entry.  So,
"http://example.org:abc" and "http://example.org:@abc" respectively represented
an element and an attribute named abc in the http://example.org namespace;
"?abc" represented a namespace prefix of abc.<br/><br/>

With this change, the namesArray will have entries for "abc" in all three
cases; the urisArray will contain entries for "http://example.org" for the
element and attribute, and an empty string for the namespace prefix; and the
typesArray will contain the value 1 for the element, 2 for the attribute and 13
for the namespace (which correspond to the DTM constant values for those kinds
of nodes).<br/><br/>

In addition, these values are stored in static arrays in the translet, and
references to those arrays are copied to instance fields in the translet's
constructor, rather than constructing arrays and initializing all their entries
in the constructor each time.<br/><br/>

All this serves to reduce the overhead of initializing a transformation.<br/><br/>


Patch from myself, reviewed by Morris Kwan:<br/><br/>

Introduced a versioning mechanism in AbstractTranslet.  After constructing an
object of a class that extends AbstractTranslet, the postInitialization method
must be called.  That method will detect any versioning differences that can
be resolved automatically, if a translet was compiled with an older version of
the XSLTC than is being used at run-time.  The version number is stored in the
translet's transletVersion field.<br/><br/>

In many cases, incompabilities run up against Java's binary compatibility
rules, and fail catastrophically.  This versioning mechanism is designed to
detect those cases that can't be detected by the JVM.  The first use of this
mechanism is to translate from the old form of the namesArray used by old
translets, to the new form expected by the modified version of the XSLTC
run-time, as described above.<br/><br/>

In addition, if the translet version detected by the XSLTC run-time is more
recent than any supported by the XSLTC run-time, an error will be reported.
<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/11/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java 
xml-xalan/java/src/org/apache/xalan/xsltc/runtime ErrorMessages.java xml-xalan/java/src/org/apache/xalan/xsltc/trax 
TemplatesImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch from myself, reviewed by Morris Kwan (mkwan@ca.ibm.com):<br/><br/>

Introduced a versioning mechanism in AbstractTranslet.  After constructing an
object of a class that extends AbstractTranslet, the postInitialization method
must be called.  That method will detect any versioning differences that can
be resolved automatically, if a translet was compiled with an older version of
the XSLTC than is being used at run-time.  The version number is stored in the
translet's transletVersion field.<br/><br/>

In many cases, incompabilities run up against Java's binary compatibility
rules, and fail catastrophically.  This versioning mechanism is designed to
detect those cases that can't be detected by the JVM.  The first use of this
mechanism is to translate from the old form of the namesArray used by old
translets, to the new form expected by the modified version of the XSLTC
run-time, as described above.<br/><br/>

In addition, if the translet version detected by the XSLTC run-time is more
recent than any supported by the XSLTC run-time, an error will be reported.
<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/04<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOMEnhancedForDTM.java 
xml-xalan/java/src/org/apache/xalan/xsltc/dom DocumentCache.java DOMAdapter.java DOMWSFilter.java 
KeyIndex.java LoadDocument.java SAXImpl.java XSLTCDTMManager.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime 
AbstractTranslet.java BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Changes to permit different DTM implementations to be supplied to XSLTC.<br/><br/>

Part of the change was to replace hard-coded references to SAXImpl with
references to a new interface - DOMEnhancedForDTM.  This part of the change was
supplied by Joseph Kesselman (keshlam@us.ibm.com).<br/><br/>

The other part of the change was to use ObjectFactory to look up a new XSLTC
DTM Manager service provider (org.apache.xalan.xsltc.dom.XSLTCDTMManager).  The
provider is looked up once when a TransformerFactory is created, and used by
any Transformer objects created by that TransformerFactory.
<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/04<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java TransformerImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Changes to permit different DTM implementations to be supplied to XSLTC.<br/><br/>

XSLTC will now use ObjectFactory to look up a new XSLTC DTM Manager service
provider (org.apache.xalan.xsltc.dom.XSLTCDTMManager).  The provider is looked
up once when a TransformerFactory is created, and used by any Transformer
objects created by that TransformerFactory.<br/><br/>

Also, moved code for caching XMLReader objects from XSLTC's
TransformerFactoryImpl to a new org.apache.xml.utils.XMLReaderManager class.<br/><br/>

It is now the responsibility of the DTMManagerDefault class to request one of
these cached XMLReader objects, so the benefit of reusing an XMLReader is now
conferred upon both XSLTC and Xalan-J Interpretive, as well as upon references
to the document() function.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/04<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom ForwardPositionIterator.java<br/><br/>
<ref>Committer's log entry: </ref>
Added comments to describe the situation in which this iterator is used.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/12/04<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Creation of translet's class loader should be wrapped in a doPrivileged block (java.lang.RuntimePermission createClassLoader).<br/><br/></li>

<li><ref>Committed by </ref>rameshm@apache.org<ref> on </ref>2003/12/11<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql SQLQueryParser.java xml-xalan/java/src/org/apache/xalan/processor 
XSLProcessorVersion.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util Util.java 
xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime Constants.java<br/><br/>
<ref>Committer's log entry: </ref>
Adding explicit final keyword to the intended constants which are defined with public static keywords. This will avoid the problem 
of cross site java sandbox violation. In the case of xsltc/compiler/util/Util.java making the "filesep" variable to private to avoid 
the  chance of somebody else   changing the value of this static variable.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/12<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java xml-xalan/java/src/org/apache/xalan/xsltc/dom 
DocumentCache.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerHandlerImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Take advantage of DTM pluggability support for XSLTC.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/12<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
The getDOM method might be entered more than once during a transformation, so
the DTMManager that is created the first time in must be saved so that
subsequent DTM's can be created with respect to it, and then discarded at the
end of the transformation.<br/><br/>

This change restores logic that I had foolishly eliminated with my previous
change to this file.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/12/19<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java BooleanCall.java CastExpr.java 
CopyOf.java DocumentCall.java EqualityExpr.java Expression.java FilterExpr.java ForEach.java FunctionCall.java Key.java KeyCall.java 
NameBase.java NumberCall.java RelationalExpr.java StringCall.java VariableBase.java WithParam.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for XSLTC's parameter optimization introduced in 2.5.2. The problem is that a param's default value can now be compiled multiple 
times, once for every call to the template for which that param is not specified. This essentially turns the AST into a graph, 
which requires the state of a param subtree to be reset after the each compilation. In particular, the variable Expression._startReset 
was not reset and this resulted in calls to setStartNode() to be generated only the first time the param's default value was 
compiled. After some analysis, I realized that _startReset was no longer necessary, so I removed it. I also renamed 
Expression.startResetIterator() to Expression.startIterator() since calls to reset() are no longer generated within this method.
<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/12/19<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Setting the maximum fraction digits on a DecimalFormat object to Integer.MAX_VALUE causes problems in some JDKs. Since 
only doubles need to be formatted, I've changed the code to set the maximum to 340. I've also optimized formatNumber(), 
the new version uses setters on the DecimalFormat object instead of calling toPattern().<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/12/23<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java 
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util BooleanType.java IntType.java RealType.java ReferenceType.java 
StringType.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Type conversions from internal to external Java types revisited: (1) Type.Int and Type.Real are now treated identically 
given that the former is an optimization for the latter (i.e. their use should be transparent to the user) (2) Better support 
Type.Reference, conversions to integral types are now supported. There are still some conversions that are supported by 
Xalan and not by XSLTC. We need to either revisit the conversion table for XSLTC or document the differences.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/12/23<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CallTemplate.java Param.java ParameterRef.java 
Template.java VariableBase.java WithParam.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util NamedMethodGenerator.java<br/><br/>
<ref>Committer's log entry: </ref>
The parameter optimization implemented in 2.5.2 does not work in all cases. The problem (see Bugzilla 25449) is that a param's 
default value needs to be compiled multiples when there are mulitple calls the a template none of which has a correspoding with-param. 
However, ASTs store an internal state which is not restored after compilation; consequently, only the first compilation is 
guaranteed to succeed. Stated differently, the AST cannot be operated as a graph because sub-tree sharing causes problems.<br/><br/>

The optimization has now been changed so that a param default value is compiled only once by the callee instead of multiple 
times by each caller. A caller will now pass 'null' when there is no with-param; a callee will only initialize a param if 
its value is 'null'. This ensures that default values are compiled exactly once while at the same time preserving the XSLT semantics.
<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/01/06<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
SAXImpl.startDocument was calling SAX2DTM.startDocument followed by
SAX2DTM.startPrefixMapping for the xml prefix.  However, the
SAX2DTM.startElement always ensures the xml prefix is declared for the first
element.  The effect of the startPrefixMapping call was to create two namespace
nodes on the first element declaring the xml prefix.  This had no discernible
consequence, except to throw off the numbering of subsequent nodes with the
generate-id() function.<br/><br/>

I've eliminated the redundant call to startPrefixMapping, and adjusted the gold
test output files for the generate-id function.<br/><br/>

Reviewed by Christine Li (jycli@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/01/13<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DupFilterIterator.java<br/><br/>
<ref>Committer's log entry: </ref>
Fix for Bugzilla 25924 by Bhakti Mehta (Bhakti.Mehta@sun.com). Variable _lastNext must be preserved in setMark() and 
restored in gotoMark().<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/01/14<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java ForEach.java ForwardPositionExpr.java 
PositionCall.java xml-xalan/java/src/org/apache/xalan/xsltc/dom ForwardPositionIterator.java 
xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Committing a patch from Bhakti Mehta (Bhakti.Mehta@sun.com). ForwardPositionIterators and ForwardPositionExprs are not 
needed anymore after the intergration with DTM. Despite that, ForwardPositionIterators were still being used even though 
they did not provide any additional functionally (they were basically identity iterators). This patch eliminates the need 
for these iterators (and the corresponding compile-time expressions) and also replaces calls to BasisLibrary.positionF() 
with calls to currentIterator.getPosition(). The resulting code should be smaller and faster.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/01/14<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java<br/>
<ref>Committer's log entry: </ref>
Removing unused constant.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/01/20<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java 
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util NodeSetType.java ResultTreeType.java<br/><br/>
<ref>Committer's log entry: </ref>
XSLT-&gt;Java and Java-&gt;XSLT conversion table revisited. I made sure that two internal types corresponding to the same 
XSLT type had identical conversion rules (e.g. IntType and RealType). The multi-step conversions NodeSetType-&gt;int and 
ResultTreeType-&gt;double have been eliminated in order to simplify the table (they can always by implemented externally). 
The resulting conversion table is still not identical to the interpreter (and perhaps it will never be) so it should be 
documented separately.<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/02<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><br/>
<ref>Committer's log entry: </ref>
Fix for bugzilla bug report 23046.

For included stylesheet, set the _numberFormattingUsed flag to true
for its including stylesheet too.<br/><br/>

Reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/02/05<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FilterExpr.java Predicate.java Step.java StepPattern.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla 19194. I've made the following changes: (i) re-wrote Predicate.typeCheck() (ii) the predicate optimizations are 
turned off for FilterExpr, as they don't apply in all cases (iii) sync up Step, StepPattern and FilterExpr to accomodate the new 
changes. The interaction between these classes is non-trivial, and the code for some optimizations is brittle, to say the least. 
As part of this patch, I rolled back a patch to FilterExpr and fixed Bugzilla 25783 which wasn't really related despite what the 
bug report states. For the 2.0 work, it would be nice to place optimization code in separate classes so that it can be easily 
maintained and also easily deactivated via a command-line flag.<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/functions FuncRound.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler 
RoundCall.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Fix for bugzilla bug report 24111.

The string values for both positive and nagative zero are 0. However,
a number div 0 returns Infinity, a number div -0 returns -Infinity.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/02/11<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/><br/>
<ref>Committer's log entry: </ref>
Fix for Bugzilla 24788. NodeValue optimization was too optimistic. Since the value in 'step = value' is not 
compiled in the predicate's context, it must be limited to expressions that are context independent, but this 
was not the case as the example in 24788 shows.<br/><br/></li>

<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/02/12<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2TO.java<br/><br/>
<ref>Committer's log entry: </ref>
Committing patch by Bhakti for XSLTC. If attributes are created without an explicit prefix, then NamespaceMappings.generateNextPrefix 
will be called to generate a prefix. Also if elements are created using createElementNS(null,localname) then they will be 
serialized properly without being in default namespace.<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/13<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
A slightly faster implementation of round function.<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/16<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Fix a bug introduced during optimizing for the previous code
Should check for NaN cases.<br/><br/></li>

<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/16<br/>
<ref>Modified: </ref> Most files in the Xalan Java cvs repository (too many to list)<br/><br/>
<ref>Committer's log entry: </ref>
New Apache 2.0 license update.<br/><br/></li>

<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/02/19<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom AdaptiveResultTreeImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Fix for Bugzilla Bugs 24793.<br/><br/></li>

<li><ref>Committed by </ref>bhakti@apache.org<ref> on </ref>2004/02/20<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2TO.java<br/><br/>
<ref>Committer's log entry: </ref>
Fix for the bug in DOM2TO where there was a call to _handler.addAttribute
which was moved to the if clause and hence attributes in no namespace were
lost when using an identity transformation with DOMSource.<br/><br/>

Thanks to Henry Z. for pointing it out and Santiago for reviewing.  I have tested it locally. Please let me 
know if you see any issues with this.<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/20<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Fix for bugzilla bug report 26697

XSLTC supports convert a NodeList to an internal DOM iterator.
Use setAttributeNS method to copy attribute node when an attribute
has a prefix, which maps to a namespace URI<br/><br/>

Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>

<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/23<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><br/>
<ref>Committer's log entry: </ref>
Always use setAttributeNS() method and pass null as its namespace for non-namespaced nodes.
Thanks Joe Kesselman for pointing it out.<br/><br/></li>

<li><ref>Committed by </ref>aruny@apache.org<ref> on </ref>2004/02/23<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java FunctionCall.java Param.java 
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ReferenceType.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime 
CallFunction.java ObjectFactory.java SecuritySupport.java SecuritySupport12.java<br/><br/>
<ref>Committer's log entry: </ref>
Description : Adding the basic functionality for resolving external function dynamically. If static resolution fails then 
Dynamic resolution is used as last resort.<br/><br/></li>

<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/02/23<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java xml-xalan/java/src/org/apache/xalan/transformer 
TransformerIdentityImpl.java TransformerImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util 
ErrorMsg.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla Bug 25368 submitted by Joanne Tong.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CallTemplate.java VariableBase.java WithParam.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla bug reports 24988 and 25368 from Joanne Tong
(joannet@ca.ibm.com) reviewed by myself.<br/><br/>

24988:
Changes required to test whether an attribute value that is required to be
a QName, NCName or whitespace-separated list of QNames actually meets that
requirement.<br/><br/>

25368:
Code was basing variable and parameter names on the local part of the name,
rather than including the namespace URI in the name.  This resulted in
collisions in the generated code between distinct variables that had the same
local-name.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Number.java Predicate.java Sort.java Variable.java 
VariableRef.java<br/><br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla bug report 25368 from Joanne Tong (joannet@ca.ibm.com)
reviewed by myself.<br/><br/>

Code was basing variable and parameter names on the local part of the name,
rather than including the namespace URI in the name.  This resulted in
collisions in the generated code between distinct variables that had the same
local-name.<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Step.java<br/><br/>
<ref>Committer's log entry: </ref>
Part of fix for bug report 24985.  The code that resulted for a NodeTest of
the form "@p:*" or "attribute::p:*" was identical to that for "@*" - in other
words, the prefix was not being tested.  Fixed this so that
DOM.getNamespaceAxisIterator is used to create the right kind of iterator.<br/><br/>

Reviewed by Morris Kwan (mkwan@ca.ibm.com).<br/><br/></li>

<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java<br/><br/>
<ref>Committer's log entry: </ref>
Part of fix for bug reports 24985 and 24365.<br/><br/>

Moved the NamespaceChildrenIterator and NamespaceAttributeIterator classes into
this class from SAX2DTM2, where they can use fields specific to SAXImpl to
refer to namespace information.<br/><br/>

Also added a new NamespaceWildcardIterator that handles axes other than the
child and attribute axes (which are handled by the specific iterators already
mentioned).<br/><br/>

Reviewed by Morris Kwan (mkwan@ca.ibm.com).<br/><br/></li>
</ul>
</s2>
<s2 title="Changes for &xslt4j; 2.5.2">
<p>XSLTC source code updates:</p>
<ul>
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/11<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Expression.java<br/>
<ref>Committer's log entry: </ref>
Fix for bugzilla 20685. In startResetIterator(), check see if the
expression wrapped by the CastExpr is a VariableRef. If so, don't
generate a call to setStartNode.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/16<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java<br/>
<ref>Committer's log entry: </ref>Fix a minor bug in MultiDOM.addDOMAdapter().<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOMCache.java xml-xalan/java/src/org/apache/xalan/xsltc/dom 
DocumentCache.java LoadDocument.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
Patch for bugzilla #15828.
Arguments to URIResolver.resolve method for document function, in XSLTC are now
href: argument passed to document function
base: URI of stylesheet<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/>
<ref>Committer's log entry: </ref>
Putting back LoadDocument.java<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/>
<ref>Committer's log entry: </ref>
Patch for bugzilla #15828.
Arguments to URIResolver.resolve method for document function, in XSLTC are now
href: argument passed to document function
base: URI of stylesheet<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
Putting back TransformerImpl<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
Patch for bugzilla #15828.
Arguments to URIResolver.resolve method for document function, in XSLTC are now
href: argument passed to document function
base: URI of stylesheet<br/><br/></li>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/06/19<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/>
<ref>Committer's log entry: </ref>
Added SAXTransformerFactory.FEATURE and SAXTransformerFactory.FEATURE_XMLFILTER
to the list of features that are implemented.  Fix for bug 20795.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/23<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOM.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler SyntaxTreeNode.java 
xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java MultiDOM.java SAXImpl.java SimpleResultTreeImpl.java<br/>
<ref>Committer's log entry: </ref>
Performance improvement for XSLTC
Don't add a simple or adaptive RTF to the DTMManager if the nodeset
extension is not used. The DOMAdapters are also not created in
this case. This is a noticeable improvement for stylesheets that use
many small RTFs but do not use the nodeset extension.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/23<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CallTemplate.java Mode.java Param.java Template.java WithParam.java 
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util NamedMethodGenerator.java<br/>
<ref>Committer's log entry: </ref>
Performance improvement for XSLTC

New codegen solution for parameter passing in named templates,
which provides significant improvement for stylesheets that use
xsl:call-template and xsl:with-param heavily.

The old solution generates code to call Translet.addParameter(),
which seems to be too expensive. In the new solution, parameters
are passed to named templates via method arguments. The method
signature for a named template is not fixed. It depends on the number
of parameters declared in the template.

The caller (xsl:call-template) is responsible for generating the
correct parameter list and passes it to the called template. This is
done in the CallTemplate class, which finds out the corresponding
called template and processes its own xsl:with-param children together
with the xsl:params in the called template to generate an effective
parameter list. In the case where a xsl:param references another xsl:param,
local variables are generated to hold the temporary parameter value.<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/23<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/>
<ref>Committer's log entry: </ref>
Patch for bugzilla #15828.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TrAXFilter.java<br/>
<ref>Committer's log entry: </ref>
Add a "public Transformer getTransformer()" method to XSLTC's TrAXFilter class.
The Xalan TrAXFilter class already has such an interface.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/24<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java XSLTCSource.java<br/>
<ref>Committer's log entry: </ref>
Fix for XSLTCSource (see bugzilla 21048).<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/24<br/>
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xsltc xsltc_trax_api.xml<br/>
<ref>Committer's log entry: </ref>
Update documentation about how to use XSLTCSource.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/25<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java VariableBase.java 
xml-xalan/java/src/org/apache/xalan/xsltc/dom CachedNodeListIterator.java ClonedNodeListIterator.java<br/>
<ref>Committer's log entry: </ref>
Performance improvement for XSLTC

Introduce two new iterators (CachedNodeListIterator and CloneNodeListIterator).
They are used by variable/param references that are evaluated to nodesets.
CachedNodeListIterator traverses the underlying iterator once and caches the
nodes in an IntegerArray. Its clone() method returns an object of
CloneNodeListIterator, which also retrieves nodes from the cache.

This mostly improves the case where a variable is referenced multiple times
in a context. In the old code, the iterator for the variable is traversed
as many times as the variable is referenced. Using the cached iterators,
the iterator is only traversed once. All later references retrieve nodes
from the cache.
<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/25<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java MultiDOM.java 
xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java xml-xalan/java/src/org/apache/xalan/xsltc/trax 
TemplatesImpl.java<br/>
<ref>Committer's log entry: </ref>
Implement a feature to cache the DTM for the stylesheet in
the Templates object. This improves the case where document('')
is used. In this case the DTM for the stylesheet is only built
once per thread. It can be reused by multiple transformers
created by the sample Templates.
<br/><br/></li>
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/26<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom UnionIterator.java<br/>
<ref>Committer's log entry: </ref>
Patch from Christine Li (jycli@ca.ibm.com) for bugzilla 20913, with
modifications. In UnionIterator, after calling the getLast() method, the
heap is not restored properly. Recreate the heap in gotoMark(), as well
as restore _returnedLast and _heapSize.<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/30<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DocumentCache.java<br/>
<ref>Committer's log entry: </ref>
Put back DocumentCache<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/30<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java xml-xalan/java/src/org/apache/xalan/xsltc 
DOMCache.java xml-xalan/java/src/org/apache/xalan/xsltc/dom DocumentCache.java<br/>
<ref>Committer's log entry: </ref>
Update the DocumentCache class to be compatible with the DOMCache 
interface.  Although, with the native interface no longer supported, users
should not be using the DocumentCache.  Instead they should set a 
URIResolver on the Transformer in order to resolve arguments
passed to the document function.<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/30<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/>
<ref>Committer's log entry: </ref>
Fix for 3 trax.localPath failures.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/07/07<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
Fix a memory leak problem with the DTMManager.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/07/08<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CallTemplate.java Stylesheet.java Template.java<br/>
<ref>Committer's log entry: </ref>
Fix a few conformance regressions introduced by the addParameter
optimization work.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/07/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/util IntegerArray.java<br/>
<ref>Committer's log entry: </ref>
Fix for bugzilla 20074. Don't create an IntegerArray of size 0.<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/07/11<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java ErrorMsg.java 
xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerHandlerImpl.java<br/>
<ref>Committer's log entry: </ref>
XSLTC: TransformerHandler.setResult should throw an IllegalArgumentException
when the result argument is null.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/07/16<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util MethodGenerator.java<br/>
<ref>Committer's log entry: </ref>
Fix for bug 20256. Remove an unused reference to an
inexistent class.<br/><br/></li>
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/07/21<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java Include.java<br/>
<ref>Committer's log entry: </ref>
Patch for bugzilla #20537.  
When URIResolver was set for includes/imports, the system id of the included/imported
files was not always set correctly.<br/><br/></li>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/07/22<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/>
<ref>Committer's log entry: </ref>
Applying patch from Igor Hersht (igorh@ca.ibm.com) for Bugzilla bug 18821.
At some point in the recent past, Predicate started trying to optimize filter
expressions with positional predicates, but the receiving code in FilterExpr
was always incorrect.  The fixes to FilterExpr and related code aren't so
straightforward, so the easiest thing to do for now is to disable the
broken optimization for FilterExpr objects.<br/><br/></li>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/07/22<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom UnionIterator.java<br/>
<ref>Committer's log entry: </ref>
Applying patch from Igor Hersht (igorh@ca.ibm.com) for Bugzilla bug 18821.
Nested iterators in UnionIterator weren't correctly handling multiple calls to
setStartNode in generated code.  Fixed by ignoring calls after the first.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/07/25<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LiteralElement.java<br/>
<ref>Committer's log entry: </ref>
Fix for bugzilla 20832. Also fix testcase attribset19.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/07/25<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/>
<ref>Committer's log entry: </ref>
Fix for bugzilla 21805.<br/><br/></li>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/01<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/>
<ref>Committer's log entry: </ref>
Added code to create static char[] fields in the translet containing the
literal text in the source stylesheet.  The code generation for xsl:comment and
for literal text that constructs text nodes takes advantage of this by using
the serializer's comment(char[],int,int) and characters(char[],int,int) methods,
respectively, rather than the comment(String) and characters(String) methods.
The former pair of methods avoid some potential overhead in the serializer from
copying the contents of strings to char[] objects.

Code that creates a static initializer method in a translet was written by
Morris Kwan (mkwan@ca.ibm.com).

Reviewed by Morris Kwan (mkwan@ca.ibm.com)
<br/><br/></li>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/01<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Comment.java Constants.java Text.java XSLTC.java<br/>
<ref>Committer's log entry: </ref>
Added code to create static char[] fields in the translet containing the
literal text in the source stylesheet.  The code generation for xsl:comment and
for literal text that constructs text nodes takes advantage of this by using
the serializer's comment(char[],int,int) and characters(char[],int,int) methods,
respectively, rather than the comment(String) and characters(String) methods.
The former pair of methods avoid some potential overhead in the serializer from
copying the contents of strings to char[] objects.

Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/08/06<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java<br/>
<ref>Committer's log entry: </ref>
Patch from Bruno Dumon (bruno@outerthought.org) for bugzilla 20114.
When using XSLTC's TemplatesHandler to create templates, errors are never
reported; getTemplates() just returns null.
Changed behaviour to be inline with Xalan behaviour: stylesheets are
compiled in the endDocument() event and a SAXException wrapping the real
exception is thrown.<br/><br/></li>
\<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/08/08<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler AttributeSet.java Constants.java 
UseAttributeSets.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util AttributeSetMethodGenerator.java<br/>
<ref>Committer's log entry: </ref>
Patch for Bugzilla Bug 19918<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/08/12<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/>
<ref>Committer's log entry: </ref>
Fix bytecode generation problem for extension method calls via
interfaces for bugzilla 22115.<br/><br/></li>
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/08/12<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LiteralElement.java<br/>
<ref>Committer's log entry: </ref>
PR: bugzilla 19972	
Submitted by:	William Lee (william.lee@cognos.com)
Reviewed by:	Brian Minchau and Gordon Chui

The code loops over elements in a Vector, incrementing the index j.
Some elements should not be processed so they were removed from the Vector.
The removal of element "j" shifted all higher elements down and made the
Vector 1 shorter.  So removal of an element and incrementing "j" actually caused
elements to be skipped.

It is not quite clear why the element is being removed from the Vector rather
than just skipped over. For safety sake an iteration over the loop either removes an
element, or increments "j", but not both in the same iteration.<br/><br/></li>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/27<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/>
<ref>Committer's log entry: </ref>
Applying patch for bug 19973 from Christine Li (jycli@ca.ibm.com).
A call to buildKeys (for xsl:key) should be generated before a call to topLevel
(to handle top-level variable and parameter declarations) because top-level
variables and parameters can contain references to the key() function, but not
the other way around.<br/><br/></li>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/09/05<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler VariableRefBase.java<br/>
<ref>Committer's log entry: </ref>
Applied patch for bug 22769 from Christine Li (jycli@ca.ibm.com).  If a
variable reference occurs inside the definition of another variable, XSLTC adds
a dependency link upon the referenced variable to the defined variable.
However, if the referenced variable was overrode by another variable definition
with higher import precendence, the dependency should be placed on the
overriding variable instead.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/09/09<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/trax Util.java<br/>
<ref>Committer's log entry: </ref>
Moved return statements outside of finally block. The compiler correctly points out that when an exception is not caught by a catch, the 
finally block cannot return normally.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/03<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/>
<ref>Committer's log entry: </ref>
Ensure we set a non-empty name for the translet even when one cannot be obtained from the systemId.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/06<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CallTemplate.java<br/>
<ref>Committer's log entry: </ref>
Fixed problem in XSLT parameter optimization. The search for the template being called should start from the top-level stylesheet. 
The incorrect signature was generated when xsl:template and xsl:call-template were located in different stylesheets.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/06<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/>
<ref>Committer's log entry: </ref>
(Committing this again to get the log message right! - c.f. revision 1.54)
1. Added Javadoc comments to instance variables.
2. getAllValidTemplates() now caches result in top-level stylesheet.
3. setSystemId() maps a file system path to a URI (if needed).<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/06<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java Include.java xml-xalan/java/src/org/apache/xalan/xsltc/dom 
SAXImpl.java<br/>
<ref>Committer's log entry: </ref>
1. New code to map relative paths to URIs in Include.java and Import.java.
2. If SourceLoader returns null, the JAXP API states that the processor
should attempt to resolve the reference. Changed the logic to do this.
(1 and 2 should solve some of the problems we have resolving relative
paths and also using URI resolvers. More testing is needed, though).<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/07<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CastCall.java Parser.java xpath.cup<br/>
<ref>Committer's log entry: </ref>
Adding a new extension function for XSLTC. Using this extension function, it is
possible to recover type information lost by the use of xsl:param (see Bugzilla
19038). Here is an example:

&lt;xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:java="http://xml.apache.org/xalan/java"
    xmlns:xsltc="http://xml.apache.org/xalan/xsltc"&gt;

&lt;xsl:param name="object"/&gt;

&lt;xsl:template match="/"&gt;
    &lt;xsl:value-of select="java:length(xsltc:cast('java.lang.String', $object))"/&gt;
&lt;/xsl:template&gt;

&lt;/xsl:stylesheet&gt;

Without using xsltc:cast(), XSLTC will report an error as the type of param
'object' cannot be determined statically. The type of xsltc:cast() is:

object[T] cast('T', reference | object[R])

where 'T' indicates that the type of the first argument must be a literal
string. A ClassCastException may be thrown at runtime if R is not convertible
to T.

I believe we still need a fully-dynamic solution that does not rely on this
extension function. However, the two solutions can coexists, especially since
using xsltc:cast() will always be more efficient than any alternative based
on Java reflection.<br/><br/></li>
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/10/10<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler xpath.cup XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/dom 
DOMAdapter.java SAXImpl.java<br/><ref>Committer's log entry: </ref>
Patch for Bugzilla Bug 14607<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/10/15<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java<br/>
<ref>Committer's log entry: </ref>
Fix the makeNode and makeNodeList methods in SAXImpl for bugzilla 23115.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/10/15<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Sort.java<br/>
<ref>Committer's log entry: </ref>
Apply the patch for bugzilla 23271 from Bruno Fernandez-Ruiz (brunofr@olympum.com).<br/><br/></li>
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/15<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
PR: bugzilla 15901
Submitted by:	Brian Minchau
Reviewed by:	John Meyer (bug reporter)

XSLTC now uses properties from the serializer's factory rather than
setting its own defaults. This makes XSLTC's default serialializer 
properties (indentation, entity file ... ) the same as Xalan-J.<br/><br/></li>
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler BinOpExpr.java LogicalExpr.java Predicate.java 
RelationalExpr.java UnaryOpExpr.java<br/><ref>Committer's log entry: </ref>
PR: bugzilla 15327	
Submitted by:	Christine Li
Reviewed by:	Brian Minchau
Fix for XSLTC problems with [last()] and [last()-1] predicates.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java 
Include.java Stylesheet.java xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java<br/>
<ref>Committer's log entry: </ref>
Replace ad-hoc code to resolve relative URIs by calls to the xml.utils.SystemIDResolver 
class. This change fixes a few a regressions and also simplifies the code in XSLTC.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/17<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CastCall.java 
CastExpr.java FunctionCall.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util 
ObjectType.java StringType.java Type.java<br/>
<ref>Committer's log entry: </ref>
Allow conversion between types 'string' and 'object[java.lang.String]'.
Conversion is trivial as instances of both types have the same runtime
representation. This was needed in order to write expressions such
as,
    string:new(xsltc:cast('java.lang.String', $object))
where 'object' is a param bound to a value of type 'java.lang.String'.<br/><br/></li>
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/10/20<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer 
TransformerIdentityImpl.java TransformerImpl.java 
xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/>
<ref>Committer's log entry: </ref>
Patch from Christine Li (jycli@ca.ibm.com) for Bugzilla bug report 22167.
When the zero-argument constructor of DOMSource, StreamSource or SAXSource is
invoked, and no setter method is called to specify an actual source, the
source should be treated as if it contained only a root node.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/20<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java<br/>
<ref>Committer's log entry: </ref>
Check for null before setting DTM base URI.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/21<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax Util.java<br/>
<ref>Committer's log entry: </ref>
Fix for regression in Resolve002 TCK.<br/><br/></li>
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/10/22<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java 
UnsupportedElement.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime 
BasisLibrary.java ErrorMessages.java<br/>
<ref>Committer's log entry: </ref>
Apply Joanne Tong (joannet@ca.ibm.com) patch for bugzilla 23706,
with my own modifications. I also fixed bug 23896 in the same
patch.

This patch includes the fixes for the following:
1. an unsupported XSL element will trigger a syntax error in 1.0 mode.
2. In forward-compatibility mode, if an unsupported XSL element is in
a template, has no fallback, it will trigger a runtime error if it is
instantiated.
3. All fallback children are called in sequence. The old code only makes
use of the first fallback child.
4. Only direct fallback children are processed. The old code finds the fallback
from all descendants of an unsupported element, which is wrong behavior
according to the spec.<br/><br/></li>
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/10/22<br/>
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/>
<ref>Committer's log entry: </ref>
Committing path for bugzilla 22438 from Bhakti Mehta (Bhakti.Mehta@sun.com). This patch 
fixes serialization problems of Templates objects in XSLTC. A user-defined URIResolver 
associated to a Templates object is also serialized whenever possible (i.e. if it is also 
serializable).<br/><br/></li>
</ul>
</s2>
<s2 title="Changes for &xslt4j; 2.5.1">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler DocumentCall.java xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/><ref>Committer's log entry: </ref>
Applying patches from Igor Hersht (igorh@ca.ibm.com) for bug 15200 and
bug 18585.

Fixed up code that processes the document function when it has two arguments,
the second of which must be a node-set; the code didn't always resolve the
value of the first argument against the first node in the second argument, as it
should have.

In addition, in order to simplify run-time processing, added a new
LoadDocument.documentF method that is used when the second argument to the XSLT
document function is present; if that argument is an empty node-set, the result
of the document function should be an empty node-set, and that logic is much
easier to code in the run-time than via generated code.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/04/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>

 Set SourceLocator in stylesheet instead of XSLTC object. This ensures
 proper use of user-defined URIResolvers in a TemplatesHandler.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/04/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>

 Output properties were not properly cleared when reusing the same instance
 of a TemplatesHandlerImpl. The top-level stylesheet in the XSLTC object
 referenced by TemplatesHandlerImpl (indirectly via an instance of Parser)
 was not reset after the first use of the instance.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/05/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Fix a multithread safety issue in the use-classpath option. The old code
reuses a Translet object for all newTransformer() calls, which is not the
right thing to do. We should pass in a Class array and let TemplateImpl
create a new Translet instance for each newTransformer() call.
<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.5.0">
<p>XSLTC source code updates:</p>
<ul><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/02/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java Message.java<br/><ref>Committer's log entry: </ref>
 New implementation of xsl:message that does not use RTFs. Using RTFs
 is both slow and problematic since the number of RTFs that can be
 created is limited in XSLTC.

 The new implementation uses a StreamXMLOutput and a StringWriter to
 output the template body as a string (in some cases, NS declarations
 will be included and this behavior differs from the old implementation).
 Additionally, the new implementation optimizes the case where the
 message is empty and where the message is just a literal string.

 The bug was reported by Mark Brunkhart (mark@matchanalysis.com).
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/02/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOM.java xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java DOMImpl.java MultiDOM.java<br/><ref>Committer's log entry: </ref>
 Removed the getTreeString() method from the DOM interface (as well as
 from all the classes that implement this interface). This update will
 require a sync with the XSLTC_DTM branch, but there was no point in
 keeping this method when it's no longer used.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/02/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ReferenceType.java<br/><ref>Committer's log entry: </ref>
 Fix for Bugzilla 17447. Conversion from reference type to string type
 assumed the existence of the "current" local variable, which is
 unavailable at top-level.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/02/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work
Improvement for xsl:copy-of. Instead of using the expensive getFirstAttribute()
and getFirstNamespace() interfaces, increase the element id by 1 to iterate
through all attribute and namespace nodes.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/02/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work
Minor cleanup to SAXImpl.copy() and copyElement(). Introduce a new interface
handleTextEvents() to handle Text nodes more efficiently.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/05<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOM.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler SyntaxTreeNode.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ResultTreeType.java xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java DOMImpl.java MultiDOM.java SAXImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java xml-xalan/java/src/org/apache/xalan/xsltc/trax XSLTCSource.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work

Design a new DOM model (SimpleResultTreeImpl) for simple result tree
fragment (RTF). A simple RTF is an RTF which has only one Text node.
It can be generated by a combination of Text, xsl:value-of and xsl:number
instructions. It can also be generated by xsl:if or xsl:choose, as far
as the content of the control body is pure Text. The code to detect whether
an RTF is simple is in SyntaxTreeNode.isSimpleRTF().

Before this change, an RTF is represented by a SAXImpl object. SAXImpl is
a heavy-weight class in that it allocates a lot of array objects for storage.
In the case where the RTF is only one Text node, creating a SAXImpl is just
too expensive.

A SimpleResultTreeImpl has only two nodes, i.e. the root node and the Text
node. All DOM interfaces are overridden to handle this simplified model.
SimpleResultTreeImpl has a few internal iterators, which is designed to support
the nodeset() extension function.

This change brings a significant improvement to stylesheets that create
a lot of simple RTFs. Some testcases are more than 100% faster after the change.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/05<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SimpleResultTreeImpl.java<br/><ref>Committer's log entry: </ref>
Add a new class SimpleResultTreeImpl as the model for simple RTF.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java NodeSortRecord.java SAXImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamXMLOutput.java xml-xalan/java/src/org/apache/xalan/xsltc/util IntegerArray.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work

A few small improvements. More space efficient version of IntegerArray.clone().
Rearrange the condition checking in StreamXML(HTML)Output.escapeCharacters().
Only create one default Collator instance in NodeSortRecord.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java SAXImpl.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work
Small tweaks in DOMAdapter. Invoking a final method is generally faster than
invoking a method via interface.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamOutput.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work
Improvement in StreamOutput.escapeString(). Do not create the StringBuffer
if there is nothing to escape.

This change needs to be put back to the new serializer if it uses the same
code.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime StringValueHandler.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work
Use a more sophisticated algorithm in StringValueHandler.
Do not create new Strings if there is only String value.
Creating many new Strings is an expensive operation.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>
Fix a bug that causes id function testcases to fail in trax.sax flavor.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work
Set the namespace feature directly on the XMLReader. SAXParserFactory.setFeature()
actually creates a temporary SAXParser to verify that feature. So we end up creating
two SAXParsers per document() call in the old code.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom AdaptiveResultTreeImpl.java<br/><ref>Committer's log entry: </ref>
file AdaptiveResultTreeImpl.java was initially added on branch XSLTC_DTM.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOM.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler SyntaxTreeNode.java xml-xalan/java/src/org/apache/xalan/xsltc/dom AdaptiveResultTreeImpl.java DOMAdapter.java DOMImpl.java MultiDOM.java SAXImpl.java SimpleResultTreeImpl.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work

Design a light-weight DOM model (AdaptiveResultTreeImpl) for RTFs with xsl:call-template.

AdaptiveResultTreeImpl is a adaptive DOM model for result tree fragments (RTF). It is
used in the case where the RTF is likely to be pure text yet it can still be a DOM tree.
It is designed for RTFs which have &lt;xsl:call-template&gt; or &lt;xsl:apply-templates&gt; in
the contents. Example:

    &lt;xsl:variable name = "x"&gt;
      &lt;xsl:call-template name = "test"&gt;
         &lt;xsl:with-param name="a" select="."/&gt;
      &lt;/xsl:call-template&gt;
    &lt;/xsl:variable&gt;

In this example the result produced by &lt;xsl:call-template&gt; is likely to be a single
Text node. But it can also be a DOM tree. This kind of RTF cannot be modelled by
SimpleResultTreeImpl.

AdaptiveResultTreeImpl can be considered as a smart switcher between SimpleResultTreeImpl
and SAXImpl. It treats the RTF as simple Text and uses the SimpleResultTreeImpl model
at the beginning. However, if it receives a call which indicates that this is a DOM tree
(e.g. startElement), it will automatically transform itself into a wrapper around a
SAXImpl. In this way we can have a light-weight model when the result only contains
simple text, while at the same time it still works when the RTF is a DOM tree.

All methods in this class are overridden to delegate the action to the wrapped SAXImpl object
if it is non-null, or delegate the action to the SimpleResultTreeImpl if there is no
wrapped SAXImpl.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work
Save the DTMManager in a field in MultiDOM. Don't compute it
everytime in MultiDOM.getDTMId().
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime StringValueHandler.java<br/><ref>Committer's log entry: </ref>
Fix a bug which causes the docbook testcase to fail.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work
Improvement in MultiDOM. Make the nodeHandle to DOMAdapter mapping a
straight map. The code in getDTMId() is much light-weight than before,
because the complicated stuff is moved to addDOMAdapter() which is only
called once per DTM. In the case where the DTM id runs across several
addressing range (the size of each range is 65536 - an unusal case),
there will be several items in the adapter array for one DTM.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/03/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ProcessingInstructionPattern.java<br/><ref>Committer's log entry: </ref>
Applying patch for bug 15332 from Igor Hersht (igorh@ca.ibm.com).  Ensure that
patterns of the form processing-instruction() and processing-instruction('name')
are given the right priorities.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/03/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ProcessingInstructionPattern.java<br/><ref>Committer's log entry: </ref>
Applying patch for bug 15332 from Igor Hersht (igorh@ca.ibm.com).  Ensure that
patterns of the form processing-instruction() and processing-instruction('name')
are given the right priorities.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/03/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ProcessingInstructionPattern.java<br/><ref>Committer's log entry: </ref>
Applying patch for bug 15332 from Igor Hersht (igorh@ca.ibm.com).  Ensure that
patterns of the form processing-instruction() and processing-instruction('name')
are given the right priorities.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java DOMWSFilter.java KeyIndex.java LoadDocument.java SAXImpl.java XSLTCDTMManager.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java BasisLibrary.java xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2SAX.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>
XSLTC_DTM performance work

New solution for DOM input. Use SAXImpl + DOM2SAX to handle DOM
input. This is the solution used in the old XSLTC. The DOMImpl
class is completely deprecated. This solution is better
than DOMImpl on top of DOM2DTM for the following reasons:

1. DOM2DTM is known to be slow.
2. DOM2DTM is an incremental model while DOMImpl is not.
3. There are too much code duplication between DOMImpl and SAXImpl

Under the new solution, any improvement to SAXImpl and SAX2DTM2 will
also benefit the DOM case. There is no need to have separate optimizations
for the DOM case.

This solution is a little sophisticated than the old XSLTC solution in
that we borrow some code from DOM2DTM (e.g. handling for id function
and unparsed entity). The end result is that conformance in trax.dom
is better than the old XSLTC.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/03/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util VoidType.java<br/><ref>Committer's log entry: </ref>

 Override definition of Type.POP() in VoidType to return NOP instead of POP.
 If type is void, there's nothing to be popped. This problem shows up when
 invoking an external Java function whose return type is void.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/03/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java Include.java Parser.java SyntaxTreeNode.java XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages_no.java ErrorMessages.java ErrorMsg.java TypeCheckError.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java ErrorMessages_no.java ErrorMessages.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Changed XSLTC messages to extend ListResourceBundle, and use String keys to
access messages.  Code used to extend ResourceBundle and used to use integer
indices to access error messages.

Changes from myself and Gordon Chiu (grchiu@uwaterloo.ca).
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/03/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java Include.java Parser.java SyntaxTreeNode.java XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages_no.java ErrorMessages.java ErrorMsg.java TypeCheckError.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java ErrorMessages_no.java ErrorMessages.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Changed XSLTC messages to extend ListResourceBundle, and use String keys to
access messages.  Code used to extend ResourceBundle and used to use integer
indices to access error messages.

Changes from myself and Gordon Chiu (grchiu@uwaterloo.ca).
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/03/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java DecimalFormatting.java Constants.java DecimalFormatting.java<br/><ref>Committer's log entry: </ref>
The generated code for xsl:decimal-format used the no argument constructor of
DecimalFormatSymbols, which is affected by the default locale.  The default
attribute values for xsl:decimal-format should not be affected by the default
locale.  Instead, the en_US Locale should be passed to the constructor, as it
has settings that are consistent with the defaults for xsl:decimal-format.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/03/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java DecimalFormatting.java<br/><ref>Committer's log entry: </ref>
The generated code for xsl:decimal-format used the no argument constructor of
DecimalFormatSymbols, which is affected by the default locale.  The default
attribute values for xsl:decimal-format should not be affected by the default
locale.  Instead, the en_US Locale should be passed to the constructor, as it
has settings that are consistent with the defaults for xsl:decimal-format.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/03/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XslAttribute.java<br/><ref>Committer's log entry: </ref>

 Fix for Bugzilla 18162. Warnings are still reported if an occurrence of
 xsl:attribute *may* result in a runtime error.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/03/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Committing patch by Arun Yadav (Arun.Yadav@sun.com) that fixes the problem
of using "." or "-" as part of the name of a parameter (Bugzilla 15636).
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/03/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler KeyCall.java<br/><ref>Committer's log entry: </ref>
Committing patch from Arun Yadav (arun.yadav@sun.com) for Bugzilla
15830. Correct handling for id()/key() values of type result-tree.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/03/31<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>

 New implementation for TemplatesHandlerImpl that does not extend
 xsltc.compiler.Parser. The new implementation has a simpler init()
 method. Also, instances of the new class can be re-used (previously,
 there were problems with the output method when an instance was
 used more than once).
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/31<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Remove XSLTC's compile time dependency on Xalan.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
 New implementation of TemplatesHandlerImpl. Fixes output method problem
 when reusing TemplatesHandler instances.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Changes in org.apache.xalan.xsltc.cmdline.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOM.java DOMCache.java NodeIterator.java Translet.java TransletOutputHandler.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Changes in org.apache.xalan.xsltc.

1. Remove TransletOutputHandler.java
2. Adapt the XSLTC interfaces to the DTM model.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/util IntegerArray.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Changes in org.apache.xalan.xsltc.util.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler AbsolutePathPattern.java AncestorPattern.java CastExpr.java Constants.java CopyOf.java DocumentCall.java ForEach.java GenerateIdCall.java IdKeyPattern.java Key.java KeyCall.java Message.java Mode.java NameBase.java NodeTest.java Output.java ParentLocationPath.java Predicate.java ProcessingInstructionPattern.java Step.java StepPattern.java Stylesheet.java SyntaxTreeNode.java UnionPathExpr.java UnparsedEntityUriCall.java ValueOf.java xpath.cup XSLTC.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Changes in org.apache.xalan.xsltc.compiler.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util MethodGenerator.java NodeSetType.java ObjectType.java ReferenceType.java ResultTreeType.java TypeCheckError.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Changes in org.apache.xalan.xsltc.compiler.util.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2SAX.java DOM2TO.java SAX2TO.java TemplatesHandlerImpl.java TransformerHandlerImpl.java TransformerImpl.java XSLTCSource.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Changes in org.apache.xalan.xsltc.trax.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBase.java SAXHTMLOutput.java SAXOutput.java SAXTextOutput.java SAXXMLOutput.java StreamHTMLOutput.java StreamOutput.java StreamTextOutput.java StreamUnknownOutput.java StreamXMLOutput.java TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Changes in org.apache.xalan.xsltc.runtime.output
Remove the output classes in XSLTC. XSLTC now uses the
output classes in the common serializer.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java AttributeList.java BasisLibrary.java Constants.java DefaultSAXOutputHandler.java SAXAdapter.java StringValueHandler.java TextOutput.java TransletOutputBase.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Changes in org.apache.xalan.xsltc.runtime.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java AdaptiveResultTreeImpl.java AnyNodeCounter.java Axis.java BitArray.java CollatorFactoryBase.java CurrentNodeListFilter.java CurrentNodeListIterator.java DocumentCache.java DOMAdapter.java DOMBuilder.java DOMImpl.java DOMWSFilter.java DTDMonitor.java DupFilterIterator.java EmptyFilter.java ExtendedSAX.java Filter.java FilteredStepIterator.java FilterIterator.java ForwardPositionIterator.java KeyIndex.java LoadDocument.java MatchingIterator.java MultiDOM.java MultipleNodeCounter.java NodeCounter.java NodeIteratorBase.java NodeSortRecord.java NodeSortRecordFactory.java NthIterator.java SAXImpl.java SimpleResultTreeImpl.java SingleNodeCounter.java SingletonIterator.java SortingIterator.java StepIterator.java StripWhitespaceFilter.java UnionIterator.java XSLTCDTMManager.java<br/><ref>Committer's log entry: </ref>
Merging XSLTC_DTM and common serializer to the head
Adapt all dom classes in org.apache.xalan.xsltc.dom to
the DTM model.

Removed DOMImpl, DTDMonitor.
Added a few new classes for the new DOM model. The core
DOM class is SAXImpl.
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/02<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
If there is an error listener registered to a TransformerFactory, and the
stylesheet cannot be compiled, call fatalError, in addition to throwing 
the TransformerConfigurationException.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime StringValueHandler.java<br/><ref>Committer's log entry: </ref>
According to spec http://www.w3.org/1999/11/REC-xslt-19991116-errata/#E27,
when element nodes are used in the instantiated content of attribute, comment
and processing instructions, we should ignore the elements together with
their content.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom AdaptiveResultTreeImpl.java<br/><ref>Committer's log entry: </ref>
Need to override more startElement and endElement interfaces
in AdaptiveResultTreeImpl, because it now extends EmptySerializer,
which has a few more interfaces than the old TransletOutputHandler.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java SAXImpl.java<br/><ref>Committer's log entry: </ref>
Fix for a few testcase failures in XSLTC trax.localPath.

Detect the backslash ("\") character in the path in addtional to the
forward slash ('/') in LoadDocument.document().

The XSLTC conformance result in trax.localPath changed from
Pass: 1634/Fail: 14/Errr: 35 to Pass: 1657/Fail: 17/Errr: 9
after this change.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>
Fix for bugzilla 17448.
Stylesheet.setIncludingStylesheet() should use _includedFrom
instead of _importedFrom.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>
Fix another problem related to bug 17448.
Only set the import precedence of an included stylesheet when it
is directly included by this stylesheet. If it is indirectly
included via imports, the import precedence will be different.
<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.4.1">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Keep track of parameters for built-in identity transform (needed for
some TCK tests).
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerHandlerImpl.java TrAXFilter.java<br/><ref>Committer's log entry: </ref>
Fixed XSLTCs implementation of XMLFilter
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TrAXFilter.java<br/><ref>Committer's log entry: </ref>
added some check for parents of filter chain
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 12125.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler EqualityExpr.java RelationalExpr.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
bug 12148 fixed, xpath pred and relational expr
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/09/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>
Change committed on behalf of Igor Hersht: added -DIAG option similar to that
supported by org.apache.xalan.xslt.Process class (for bug 12261).

Also (on my own behalf) changed calculation of average transform time and
throughput rate for -n option to use floating-point division, rather than
integer division; latter yielded meaningless results.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBuffer.java StreamHTMLOutput.java StreamOutput.java StreamTextOutput.java StreamXMLOutput.java StringOutputBuffer.java WriterOutputBuffer.java<br/><ref>Committer's log entry: </ref>
New buffering system for stream output.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeCounter.java<br/><ref>Committer's log entry: </ref>
Support for Greek alphabet in xsl:number.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output WriterOutputBuffer.java<br/><ref>Committer's log entry: </ref>
Set a larger buffer size for Solaris.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java SyntaxTreeNode.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ResultTreeType.java xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Set different initial sizes for DOMImpl arrays. The new values result
in better performance for the average case.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler xpath.cup xml-xalan/java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java<br/><ref>Committer's log entry: </ref>
Optimized evaluation of //RelativeLocationPath expressions.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ObjectType.java<br/><ref>Committer's log entry: </ref>
For XSLTC extension integration. Support creating ObjectType from a Class
object. Add an additional field to store the Class.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util BooleanType.java IntType.java NodeSetType.java NodeType.java RealType.java ResultTreeType.java StringType.java<br/><ref>Committer's log entry: </ref>
For XSLTC extension integration. Add more translation rules required by
extensions. Specifically, all types can be translated to a generic Java Object.
Numeric types can be translated to their corresponding Java types (e.g. Real to
java.lang.Double). Node, NodeSet and ResultTree can be translated to a Java String.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java<br/><ref>Committer's log entry: </ref>
Support the append attribute in the redirect/output extension.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
For XSLTC extension integration. Implement the object-type extension
function in the EXSLT commons package. Change the behavior of the
nodeList2Iterator interface so that it will do a deep copy on the argument
NodeList, i.e. if a Node in the NodeList is an Element, it will not only
copy the Node itself, but also copy all children and attributes. This is
required to get any extension function that returns a NodeList to work in
XSLTC.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler TransletOutput.java<br/><ref>Committer's log entry: </ref>
Support the append attribute in the output extension element, so that
it behavior is more like redirect:write.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java<br/><ref>Committer's log entry: </ref>
Add a constant string for the redirect namespace.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CastExpr.java<br/><ref>Committer's log entry: </ref>
For extension integration. Allow numeric types to be casted to
Object type.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>
For extension integration. Add the objectType extension function to the
Symbol Table. Maps the redirect:write element to the TransletOutPut class.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>
For extension integration. The nodeset extension function can be used as
node-set in the http://exslt.org/common namespace.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/><ref>Committer's log entry: </ref>
Changes for Java extension and EXSLT extension support.
For Java extension:
- support 3 different namespace formats (Java, class and package).
- fix a bunch of type translation problems
- fix problems in class/method matching algorithm

For EXSLT extension:
- support the math, set, strings and datetime extension
- support using the nodeset extension in 3 different ways (xsltc, xalan and EXSLT commons)
- support the object-type extension in EXSLT commons as a native XSLTC function
- Maps the redirect:write element to XSLTC's output element
- extension function name translation (e.g. node-set to nodeSet)
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>
Additional optimizations in expansion of '//'.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>
Removed "-DIAG" option as it is similar to "-n 1". XSLTC's command line
options are single letters, so -DIAG does not really fit in the synopsis.
Morris K. is working on an extension for Xalan's Process class to allow
the compilation and execution of translets (once that work is completed
the -DIAG option will be available for XSLTC too).
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Compile.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java<br/><ref>Committer's log entry: </ref>
Change default policy for template inlining.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Replaced attribute "disable-inlining" by attribute "enable-inlining".
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java<br/><ref>Committer's log entry: </ref>
Lazy computation of mappings and reverse mappings.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
(1) Synchronize access to static variable.
(2) Pre-allocate static objects for attribute and element types.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Changed setting to speed up DOM building process.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Return a fresh XMLReader for each call to getXMLReader(). Returning the
same instance is incorrect in multi-threaded apps where a single
transformer factory is shared by all threads.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2TO.java<br/><ref>Committer's log entry: </ref>
For Bugzilla 12924. Add handling code for DocumentType Node.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/><ref>Committer's log entry: </ref>
For Bugzilla 12924. In constructor SAX2DOM(Node), the Node might not always
be a Document. Add additional handling code so that SAX2DOM can work with a
non-Document root.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/09/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Use a thread variable to cache an XMLReader.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionAvailableCall.java FunctionCall.java<br/><ref>Committer's log entry: </ref>
EXtension work. Make function-available work with external Java and EXSLT
extension functions.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionAvailableCall.java<br/><ref>Committer's log entry: </ref>
Handle dots in the local part, e.g.
xmlns:ext="http://xml.apache.org/xalan/java/java.lang
function-available('ext:Thread.currentThread') return true.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionAvailableCall.java<br/><ref>Committer's log entry: </ref>
Minor cleanup in class name handling.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/09/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java TypeCheckError.java xml-xalan/java/src/org/apache/xalan/xsltc/dom DocumentCache.java DOMImpl.java DTDMonitor.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java TransformerImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/cmdline/getopt GetOpt.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler Include.java TransletOutput.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
Committing changes from Gordon Chiu (grchiu@ca.ibm.com), with some tweaks from
me, to move some hard-coded XSLTC messages into the compiler and run-time
ErrorMessages classes, as appropriate.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/09/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime ErrorMessages.java<br/><ref>Committer's log entry: </ref>
Committing changes from Gordon Chiu (grchiu@ca.ibm.com), with some tweaks from
me, to move some hard-coded XSLTC messages into the compiler and run-time
ErrorMessages classes, as appropriate.

Also, added copious comments to assist anyone who might translate these
resources in the future.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/09/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java<br/><ref>Committer's log entry: </ref>
Removed a duplicate error message number I inadvertently entered.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/09/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
bugzilla 12813 fixed
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java ErrorMsg.java<br/><ref>Committer's log entry: </ref>
Add debug messages for -XX option in the Process command line. These messages
tell the user whether they are transforming using XSLTC.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util Util.java<br/><ref>Committer's log entry: </ref>
Fix problems in the baseName() interface so that it can handle system ids like
file:abc.xsl and file:///c:\test\abc.xsl.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>
XSLTC support in the Process command line - phase 2
Add two new output types:
- BYTEARRAY_AND_FILE_OUTPUT: return a byte array and generate the translet class
- BYTEARRAY_AND_JAR_OUTPUT:  return a byte array and generate the jar file

Add a new compile() interface which accepts the output type as the third
parameter. Use different Vectors to store bytecodes and JavaClass objects.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax Util.java<br/><ref>Committer's log entry: </ref>
Add a wrapper for the noExtName() method in compiler.util.Util.
The transformerFactoryImpl class makes use of it.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>
The member name _defaultTransletName in TransformerFactoryImpl
has been changed to _transletName.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
XSLTC support in the Process command line - phase 2
Most of the changes appear in this class. The changes not only allow you
to use the new XSLTC options in the Process command line. It also give
you the ability to customize the XSLTC behavior using the standard TRAX API.
Previously, the XSLTC TRAX API is not aware of translets. You cannot tell it
to use translets for do transformations. Now you can customize the XSLTC bevaior
using the new attributes. For example, the following code will allow you
to use translets for transformations when the translet is newer than the xsl.

TransformerFactory tf;
tf.setAttribute("auto-translet", "true");
Templates templates = tf.newTemplates(xslSource);

The following attributes are added:
Attributes		Corresponding Process command line options
use-translet
translet-name		-XO
destination-directory	-XD
package-name		-XP
jar-name		-XJ
auto-translet		-XT

Four of the new attributes (translet-name, destination-directory, package-name and
jar-name) are transient. They only apply to the next newTemplates() or newTransformer()
call. Their values are reset to the default after the call.

There is also a makefile like feature when you set the "auto-translet" attribute. It will
use the translet to do transformation when the translet is newer than the xsl. If the xsl
is modified, it will use the xsl to transform and regenerate the translet.

Unlike the XSLTC Transform command line, the new code will NOT use the existing
ClassLoader to load the translet or jar file. It directly reads the file content into a
byte array. This makes the Process command line capable of loading the translet from
any directory the xsl file might be in or any user specified destination directory, without
the need on the user to add that directory to the CLASSPATH first.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Multi-thread protection for the new attributes.
The four transient attributes are now stored in ThreadLocal objects to prevent
multi-thread contention problems. This ensures that each thread will have a
different copy of the attributes and no collision issue will occur.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Change the four attributes to be instance variables and remove
the ThreadLocal protection. TransformerFactory is not guaranteed
to be thread-safe. We will leave the synchronization issues up
to the user if they want to use one TransformerFactory in multiple
threads.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Param.java<br/><ref>Committer's log entry: </ref>
The default type of a &lt;xsl:param&gt; should be result tree.
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/><ref>Committer's log entry: </ref>
Fix a problem in class namespace format and also cleanup the indentation.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Param.java<br/><ref>Committer's log entry: </ref>
Set default type of parameters to be reference. The type of a parameter
cannot be determined statically in XSLT 1.0.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOM.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java Constants.java ForEach.java LastCall.java Parser.java PositionCall.java Step.java xml-xalan/java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java CurrentNodeListIterator.java DOMAdapter.java DOMImpl.java DupFilterIterator.java FilteredStepIterator.java FilterIterator.java ForwardPositionIterator.java KeyIndex.java MatchingIterator.java MultiDOM.java NodeIteratorBase.java NthIterator.java ReverseIterator.java StepIterator.java xml-xalan/java/src/org/apache/xalan/xsltc/util IntegerArray.java<br/><ref>Committer's log entry: </ref>
(1) Eliminated the need for a ReverseIterator.
(2) Added a ForwardPositionIterator as a temporary solution for some
cases.
(3) Added several javadoc-type comments.
(4) Fixed a number of cloneIterator() implementations that were broken.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ForwardPositionExpr.java<br/><ref>Committer's log entry: </ref>
Expression wrapper to compute positions properly.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBase.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 13304.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/10/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom UnionIterator.java<br/><ref>Committer's log entry: </ref>
bug fix 12644, Santiago found that the clone iterator was doing a shallow copy
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Key.java KeyCall.java xml-xalan/java/src/org/apache/xalan/xsltc/dom KeyIndex.java xml-xalan/java/src/org/apache/xalan/xsltc/util IntegerArray.java<br/><ref>Committer's log entry: </ref>
(1) Fixed some dynamic typing problems with idkeys. Values are now properly
converted to strings before they are compared.
(2) Eliminated the use of BitArrays in KeyIndex (better space efficiency).
(3) All idkey tests now pass with flavor=stream (the 6 failures that are
reported are due to the use of a different algorithm to generate ids).
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/10/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Output.java Parser.java<br/><ref>Committer's log entry: </ref>
bug fix 13550, for multiple &lt;xsl:output&gt; elements, cdata-section-elements attrs are now merged
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XslElement.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
New implementation of xsl:element that properly handles the case where
the namespace URI computed at runtime is "". Some of the code implementing
the xsl:element instruction has been factored out from the translet into
the basis library.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/10/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
bug fix 12317, serialization of Templates is fixed
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
A RuntimeException cannot be constructed from a Throwable with JDKs
prior to 1.4.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java<br/><ref>Committer's log entry: </ref>
Clear dom index flag before passing node to DOMAdapter. Bug reported by
Prakash Sridharan.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
Switch order of calls to startElement() and namespace() in startXslElement().
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/10/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>
bug fix 12308, typeCheck, nodeset to node optimization is turned off if node has context
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Output.java<br/><ref>Committer's log entry: </ref>
Added support for all EBCDIC flavors in xsl:output.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Output.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamOutput.java<br/><ref>Committer's log entry: </ref>
Moved EBCDIC support from Output to StreamOutput to ensure correct
serialization of XML header.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler PositionCall.java xml-xalan/java/src/org/apache/xalan/xsltc/dom CurrentNodeListIterator.java DOMImpl.java FilterIterator.java NthIterator.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
Committing patch from Henry Zongaro. This patch moves the logic from
XPath's position() function from NodeIterator.getPosition() to
BasisLibrary.positionF(). This change simplifies the integration
between XSLTC and DTM.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/10/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom ForwardPositionIterator.java<br/><ref>Committer's log entry: </ref>
Adding XSLTC_DTM version of file to branch.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/10/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom ForwardPositionIterator.java<br/><ref>Committer's log entry: </ref>
Whoops!  Checked in file on MAIN branch that was meant for XSLTC_DTM branch.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/10/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom ForwardPositionIterator.java<br/><ref>Committer's log entry: </ref>
Adding DTM version of ForwardPositionIterator to XSLTC_DTM branch.
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/10/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom ForwardPositionIterator.java<br/><ref>Committer's log entry: </ref>
Aarrrgggghhhhh\!\!  Checked in file on MAIN branch that was meant for XSLTC_DTM branch, again\!
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom UnionIterator.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 13826. A problem in reset() was the cause of duplicate
nodes in the resulting nodeset.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util NodeSetType.java ReferenceType.java ResultTreeType.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 13850 provided by Morris Kwan.

Morris Kwan wrote:

Changes in NodeSetType.java:
Allow a org.w3c.dom.Node to be converted to a XSLTC internal nodeset

Changes in ReferenceType.java:
Allow conversions from Reference to Java String, double, w3c Node/NodeList

Changes in ResultTreeType.java:
The result tree when converted to a nodeset, should contain only one node
starting from the root. If you replace &lt;xsl:param&gt; with &lt;xsl:variable&gt; in
the attached testcase, you will see a problem in "ext:nodelistTest
($a)/h1/h2" because of this problem.

Changes in BasisLibrary.java:
Added interfaces referenceToNodeList, referenceToNode and node2Iterator.
The changes in copyNodes() fix a problem with the document node. In the
case of an RTF, the NodeList passed to nodeList2Iterator() contains only
one Node, which is a Document Node. The changes try to create a dummy
element for the Document and copy all Nodes under it.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>

  Fix for Bugzilla 13850 provided by Morris Kwan.

  Changes in BasisLibrary.java:
  Added interfaces referenceToNodeList, referenceToNode and node2Iterator.
  The changes in copyNodes() fix a problem with the document node. In the
  case of an RTF, the NodeList passed to nodeList2Iterator() contains only
  one Node, which is a Document Node. The changes try to create a dummy
  element for the Document and copy all Nodes under it.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LocationPathPattern.java Mode.java Step.java StepPattern.java xpath.cup<br/><ref>Committer's log entry: </ref>
Distinguish between child::node() and attribute::node() both in patterns
and expressions. This patch also fixes Bugzilla 11433.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/10/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Fixed problem in DOMImpl$ChildrenIterator.getLast(). It now returns 0
when the nodeset is empty.
<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.4.0">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>
added new method 'setDocumentLocator()' to TemplatesHandlerImpl so that SAX parser can inform handler of doc location- thanks to Scott Boag and Shane Curcuru for the insight into this
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler UnresolvedRef.java<br/><ref>Committer's log entry: </ref>
Assigned type to _type.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java AttributeSet.java CallTemplate.java DecimalFormatting.java EqualityExpr.java FormatNumberCall.java Key.java KeyCall.java Parser.java QName.java SymbolTable.java Template.java UseAttributeSets.java VariableBase.java xpath.cup<br/><ref>Committer's log entry: </ref>
Fixed problem with default namespace in XPath expressions and XSLT's
named objects (e.g. templates, keys, variables, etc.).
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>
Fixed StepPattern production to include named PIs.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Text.java<br/><ref>Committer's log entry: </ref>
Optimized calls to setEscaping().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Simple code optimizations.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java<br/><ref>Committer's log entry: </ref>
Replaced Vector by ArrayList (synchronization is not needed here).
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>
Fixed looping problem reported by Girish.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc TransletOutputHandler.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler Text.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime SAXAdapter.java StringValueHandler.java TextOutput.java TransletOutputBase.java<br/><ref>Committer's log entry: </ref>
Added characters(String) to TextOutputHandler.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>
avoid printing standalone attr if it is set to 'no'
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Step.java xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeIteratorBase.java<br/><ref>Committer's log entry: </ref>
Fix for conf test axes113.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>
fixed a regression in output66 test
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Text.java<br/><ref>Committer's log entry: </ref>
Fix for attribset49.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>
Fix for axes127.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Do not add the standalone attribute to the XML header unless requested.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output DOMOutput.java OutputBase.java SAXHTMLOutput.java SAXOutput.java SAXXMLOutput.java StreamOutput.java<br/><ref>Committer's log entry: </ref>
New output handlers.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Fix bug in Attr iterator.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output HtmlOutput.java StreamOutput.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXHTMLOutput.java SAXOutput.java SAXXMLOutput.java<br/><ref>Committer's log entry: </ref>
updated new code, on-going development
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXHTMLOutput.java SAXOutput.java SAXXMLOutput.java<br/><ref>Committer's log entry: </ref>
added new methods, on-going
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc TransletOutputHandler.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java SAXAdapter.java TransletOutputBase.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output HtmlOutput.java OutputBase.java StreamOutput.java<br/><ref>Committer's log entry: </ref>
New methods added to the translet output handler.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output HtmlOutput.java StreamHTMLOutput.java<br/><ref>Committer's log entry: </ref>
Renamed module.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output DOMOutput.java<br/><ref>Committer's log entry: </ref>
temporarily moved out of the way
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXOutput.java SAXXMLOutput.java<br/><ref>Committer's log entry: </ref>
updated namespace support
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXHTMLOutput.java SAXOutput.java<br/><ref>Committer's log entry: </ref>
fixed uninitialized stack
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>
Experimental output system.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
Experimental output system.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java<br/><ref>Committer's log entry: </ref>
Added "-n" option to Transform.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamOutput.java StreamUnknownOutput.java StreamXMLOutput.java TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamTextOutput.java TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Insert XML header at the beginning.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
added sax case support
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
updated
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/trax SAX2DOM.java TemplatesHandlerImpl.java TemplatesImpl.java TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Added 'experimental-output' attribute to transformer factory.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/05/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXXMLOutput.java<br/><ref>Committer's log entry: </ref>
added processing instruction support
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Bug fixes after testing.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamOutput.java<br/><ref>Committer's log entry: </ref>
Added DOCTYPE.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LiteralElement.java Parser.java<br/><ref>Committer's log entry: </ref>
Fixed problem with 'xmlns' reported as attribute.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/31<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Fixed problem with offset in characters().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBase.java SAXHTMLOutput.java SAXOutput.java SAXXMLOutput.java StreamOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Moved common methods to base classes.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBase.java SAXHTMLOutput.java SAXOutput.java SAXXMLOutput.java StreamOutput.java StreamTextOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
updating work in progress
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXOutput.java SAXXMLOutput.java StreamXMLOutput.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerHandlerImpl.java<br/><ref>Committer's log entry: </ref>
Updated.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerHandlerImpl.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBase.java SAXXMLOutput.java<br/><ref>Committer's log entry: </ref>
Updated.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerHandlerImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Fixed problems with id/key.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBase.java SAXOutput.java SAXXMLOutput.java StreamOutput.java<br/><ref>Committer's log entry: </ref>
Updated.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamOutput.java StreamUnknownOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Updated.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/05<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
reset output flag
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/05<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
updated xsl:vendor string
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/05<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
updated xsl:vendor string
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/05<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
bug fix 9179, leading zero in localized formatting
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Include attributes in xsl:message template body.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamOutput.java<br/><ref>Committer's log entry: </ref>
Set a new buffer size.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java BasisLibrary.java<br/><ref>Committer's log entry: </ref>
Fixed memory leak in AbstractTranslet and moved replace() method
to BasisLibrary.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXOutput.java SAXTextOutput.java TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
New class.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/><ref>Committer's log entry: </ref>
fixed processing instruction call
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
added text case for SAX
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java<br/><ref>Committer's log entry: </ref>
Typo.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXHTMLOutput.java<br/><ref>Committer's log entry: </ref>
Do not insert &lt;META&gt;.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Fixed problem in the implementation of setOutputProperties().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>
Added comment() support.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output TransletOutputHandlerFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/><ref>Committer's log entry: </ref>
added support for comment handling in DOM
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>
Fixed getTemplates() to return null when compilation fails.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime DefaultRun.java<br/><ref>Committer's log entry: </ref>
No longer in use.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java Output.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java TextOutput.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXOutput.java StreamHTMLOutput.java StreamUnknownOutput.java StreamXMLOutput.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java TemplatesImpl.java TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>
New output system installed.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>
bug fix for copy32.xsl unit test; cdata handling
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java<br/><ref>Committer's log entry: </ref>
Fixed file creation for xsltc:output extension.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom BitArray.java<br/><ref>Committer's log entry: </ref>
Added default constructor.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java<br/><ref>Committer's log entry: </ref>
Fixed insertion of META when HEAD is empty.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom CurrentNodeListIterator.java<br/><ref>Committer's log entry: </ref>
Replaced eager by lazy computation of last.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom StepIterator.java<br/><ref>Committer's log entry: </ref>
Very minor optimization.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Simple hand optimizations.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Output.java Parser.java Stylesheet.java XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java TemplatesImpl.java TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Fixed layering of output properties in Trax.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Replaced getProperty() by get() in setOutputProperties().
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Include.java<br/><ref>Committer's log entry: </ref>
catching file not found exception fixed
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>
added ability to detect/flag superfluous attributes
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>
removed commented out code
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
fixed bug that passes warnings to listener
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamUnknownOutput.java<br/><ref>Committer's log entry: </ref>
Added support for XHTML in output system (c.f. embed04).
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
fixed bug with number formatting, richmark test
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java<br/><ref>Committer's log entry: </ref>
fixed escaping of quote in href attribute
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Fixed problem in creation of output handler.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Output.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBase.java SAXOutput.java SAXXMLOutput.java StreamHTMLOutput.java StreamOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Fixed problem with cdata-section-elements in xsl:output and namespaces.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
fixed nit for Tom
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
fixed unescaped quote in attribute, namespace110 unit test
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Ignore default properties in setOutputProperties().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXHTMLOutput.java StreamHTMLOutput.java StreamOutput.java StreamUnknownOutput.java<br/><ref>Committer's log entry: </ref>
Fix to set output properties correctly in the new output system.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Output.java<br/><ref>Committer's log entry: </ref>
Fixed indentation when output method is HTML.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamUnknownOutput.java<br/><ref>Committer's log entry: </ref>
Fixed indentation when output method is HTML.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java<br/><ref>Committer's log entry: </ref>
Rollback to revision 1.39
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>
whitespace13.xsl fix for trax.dom case
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Fixed regression.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler NameBase.java<br/><ref>Committer's log entry: </ref>
_type renamed to _paramType to avoid shadowing of protected vars.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/><ref>Committer's log entry: </ref>
Replaced _type by getType().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java MultiDOM.java<br/><ref>Committer's log entry: </ref>
Fixed evaluation of "parent::*" with multiple DOMs.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 9068.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java<br/><ref>Committer's log entry: </ref>
Better fix for Bugzilla 9068.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 8551.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzillas 3238 and 10137.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 6925.
<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>2002/06/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionAvailableCall.java<br/><ref>Committer's log entry: </ref>
fix check for extension functions
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionAvailableCall.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util Util.java<br/><ref>Committer's log entry: </ref>
Fix for function-available() needed to handle XSLTC's extension functions.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ParentLocationPath.java Step.java<br/><ref>Committer's log entry: </ref>
Fix for axes122.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>
Fixed regression.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/util IntegerArray.java<br/><ref>Committer's log entry: </ref>
Fixed bug in clone().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ElementAvailableCall.java Expression.java FunctionAvailableCall.java If.java LogicalExpr.java When.java<br/><ref>Committer's log entry: </ref>
Added support for function-available()/element-available() in logical
expressions (note that these functions are resolved at compile time
in XSLTC).
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamOutput.java StreamUnknownOutput.java TransletOutputHandlerFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java TemplatesImpl.java TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Added 'indent-number' attribute to the transformer factory. The value
of this attribute is the number of spaces that will be used by the
output system when indentation is turned on.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Step.java xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Fix for node21 and some position tests.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Fix problem in copyElement().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>
Use doubles instead of longs for big ints.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LongExpr.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util LongType.java<br/><ref>Committer's log entry: </ref>
removed unused class, compiler will now use doubles
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CastExpr.java Constants.java Parser.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util Type.java<br/><ref>Committer's log entry: </ref>
removed references to the LongExpr classes that were removed
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Copy namespace nodes of an element in xsl:copy.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler ElementAvailableCall.java FunctionAvailableCall.java<br/><ref>Committer's log entry: </ref>
Better error reporting when argument is not a literal.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/06/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>
Use a BufferedOutputStream to write classes.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/07/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
fixed conf tests copy21, copy22, expression02, idkey04, numbering91 with introduction of setSystemId on InputSource
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Compile.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>
Updated XSLTC's version number from 1.0 to 1.1
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler AttributeSet.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 4603 (thanks to Henri Zongaro)
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>
Print warning message for superfluous attributes that have a null URI only.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/07/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java Sort.java<br/><ref>Committer's log entry: </ref>
bug 5941 fixed, &lt;clinit&gt; access chged to ACC_STATIC from ACC_FINAL
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util TypeCheckError.java<br/><ref>Committer's log entry: </ref>
Enhanced error reporting in calls to external Java functions.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/07/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
bug 10832 fix, relational expressions with RTFs
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 9174.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/><ref>Committer's log entry: </ref>
Fixed error message in defineTransletClasses() method.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java Include.java Stylesheet.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 9171.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/><ref>Committer's log entry: </ref>
Fixed problem in error reporting code.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/><ref>Committer's log entry: </ref>
Ignore default NS when expanding calls to position().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
Accept null as a possible return value from URIResolver.resolve()
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java Include.java<br/><ref>Committer's log entry: </ref>
Report a decent error when the URI cannot be resolved.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/><ref>Committer's log entry: </ref>
Added a few getters to this class.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/><ref>Committer's log entry: </ref>
Use the superclass to determine the main class of a translet.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 10715.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output StreamHTMLOutput.java StreamXMLOutput.java<br/><ref>Committer's log entry: </ref>
Fixed a regression.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java TemplatesImpl.java TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Fixed for Bugzilla 10625. URIResolvers were being dropped in several places.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax Util.java<br/><ref>Committer's log entry: </ref>
Util class for the TrAX package.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>
Synchronize calls to Stylesheet.translate() using class' lock.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/><ref>Committer's log entry: </ref>
Ensure synchronization for Templates objects.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
Added safety net to getDOM().
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/07/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ObjectType.java<br/><ref>Committer's log entry: </ref>
added new type for support of ext java functions
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/07/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc Translet.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler CastExpr.java FunctionCall.java Parser.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java ErrorMsg.java NodeSetType.java NodeType.java ReferenceType.java StringType.java Type.java xml-xalan/java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java BasisLibrary.java xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>
bug fix 10837, support of ext java functions
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Expression.java FlowList.java Mode.java StepPattern.java TestSeq.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 11166.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>
Fixed loop exit condition in prepareTestSequences().
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/07/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionCall.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ReferenceType.java ResultTreeType.java<br/><ref>Committer's log entry: </ref>
Added type promotion from result-tree to object (used in call to nodeset()).
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/07/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CastExpr.java FunctionCall.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util MultiHashtable.java<br/><ref>Committer's log entry: </ref>
improved selection algorithm for overloaded methods and constructors in ext java funct calls
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler FunctionAvailableCall.java<br/><ref>Committer's log entry: </ref>
Fixed regression of test function-available('xalan:nodeset').
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
Use factory class methods to instantiate default decimal formatter.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output SAXHTMLOutput.java<br/><ref>Committer's log entry: </ref>
1. Report attributes with non-empty local names.
2. Ignore attributes reported as content.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/><ref>Committer's log entry: </ref>
Use unmodified URI when retrieving the document via the DOM cache.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc TransletOutputHandler.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime SAXAdapter.java TextOutput.java TransletOutputBase.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output OutputBase.java SAXXMLOutput.java StreamHTMLOutput.java StreamOutput.java StreamXMLOutput.java xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2SAX.java DOM2TO.java SAX2TO.java TemplatesHandlerImpl.java TemplatesImpl.java TransformerFactoryImpl.java TransformerHandlerImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>
New implementation of identity transform. Fix for Bugzilla 11345.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Expression.java ParameterRef.java VariableRef.java<br/><ref>Committer's log entry: </ref>
bug fix for bugzilla 11221, MK053
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/><ref>Committer's log entry: </ref>
bug 11704, fixed ErrorMsg to include name information
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
fixed bug that was calling an inappropriate compare method when the right side of the comparison was a DOM
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax DOM2TO.java<br/><ref>Committer's log entry: </ref>
fixes conf tests lre02, lre03, lre11, namespace125, namespace126
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler RelationalExpr.java<br/><ref>Committer's log entry: </ref>
Fix for bugzilla 11987. Missing case in typeCheck() method.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
Very minor optimization.
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>
conf test string134 fix
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler XslElement.java<br/><ref>Committer's log entry: </ref>
Fix for namespace102 (this test worked with Crimson but failed with
Xerces).
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ResultTreeType.java<br/><ref>Committer's log entry: </ref>
Removed debugging message.
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Compile.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler Closure.java Constants.java Number.java ParameterRef.java Predicate.java Sort.java SyntaxTreeNode.java Template.java Variable.java VariableRef.java VariableRefBase.java XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util NodeSortRecordFactGenerator.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 11828. A new closure conversion algorithm has been
designed and implemented. The old algorithm did not work in some edge
cases (c.f. description of Bugzilla 11828). Closure variables in an
inner class are now accessed locally instead of via the AbstractTranslet
class. Also, we have set the new version to be "XSLTC 1.2".
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Allow the default namespace to be redefined as "".
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
*** empty log message ***
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>
bug fix for output13 conf test
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>
Fix for Bugzilla 12075.
<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.3.2">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/21/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/><ref>Committer's log entry: </ref>bug fix 6417, removed extra root element in DOM,
 contributed by Tim Elcott<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>02/21/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-beta-branch SAX2DOM.java<br/><ref>Committer's log entry: </ref>fix DOMResult SOAP bug 4641035<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/26/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>bug fix 6636, Transformers forgets output properties
 fix contributed by Tim Elcott (bigfoot.com)<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/28/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>bug 6751, null properties are now set properly,
 fix contributed by Derek Sayeau- thanks Derek.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TransletLoader.java<br/><ref>Committer's log entry: </ref>Tomcat 4.x external Java class bug fix, Tomcat 4.x
 could not find external java classes, contrib by Santiago Pericas<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/><ref>Committer's log entry: </ref>Tomcat 4.x external Java class bug fix, Tomcat 4.x
 could not find external java classes, contrib by Santiago Pericas<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime Tag:
 jaxp-ri-1_2_0-beta-branch TransletLoader.java<br/><ref>Committer's log entry: </ref>bugtraq #4644811, Tomcat and ext java classes, Santiago Pericas<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-beta-branch TransformerImpl.java<br/><ref>Committer's log entry: </ref>bugtraq #4644811, Tomcat and ext java classes, Santiago Pericas<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-beta-branch TransformerImpl.java<br/><ref>Committer's log entry: </ref>backed out chg<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-beta-branch TemplatesImpl.java<br/><ref>Committer's log entry: </ref>bugtraq #4644811, Tomcat and ext java classes, Santiago Pericas<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom SortingIterator.java<br/><ref>Committer's log entry: </ref>bug 6693- fix by Santiago Pericas, implement a
 iterator clone method.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax DOM2SAX.java
 SAX2DOM.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>bug 6620 fix: DOMSource no longer requires
 Document nodes, fix contrib by Santiago Pericas-Geersten<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>re-entered bug fix 6751, last putback inadvert.
 removed this fix<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>bug fixes for 6257,6851,6665,6809; Santiago Pericas-Geerston<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>bug fix 6850, Santiago Pericas-Geerston<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/07/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TemplatesHandlerImpl.java
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>bug 6312, TemplatesHandler and XMLReader, fix
 by Santiago Pericas<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>03/11/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler StepPattern.java<br/><ref>Committer's log entry: </ref>just minor change to syntax<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>03/11/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java
 java/src/org/apache/xalan/xsltc/dom UnionIterator.java<br/><ref>Committer's log entry: </ref>fix 5573 for XSLTMark alphabetize test<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>03/11/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom
 CurrentNodeListIterator.java<br/><ref>Committer's log entry: </ref>fix bug 5577 XSLTMark trend test<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>03/11/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>got rid of call to forceNaturalOrder code, Santiago Pericasgeersten<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>03/11/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Expression.java<br/><ref>Committer's log entry: </ref>fix XSLTMark test dbonerow slow performance, Santiago P.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/12/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 FormatNumberCall.java<br/><ref>Committer's log entry: </ref>bug 6692, fix by Santiago Pericas-Geersen<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/12/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 ProcessingInstruction.java<br/><ref>Committer's log entry: </ref>bug 5141, fix by Santiago Pericas-Geersen<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/12/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 StringValueHandler.java<br/><ref>Committer's log entry: </ref>bug 5141, fix by Santiago Pericas-Geersen<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/12/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util Util.java<br/><ref>Committer's log entry: </ref>bug 6413, fix by Santiago Pericas-Geersen<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/13/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>bug 6963, omit header needs to be set before output
 occurs, fix by Santiago Pericas-Geersen<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/14/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 ParentLocationPath.java<br/><ref>Committer's log entry: </ref>bug 5576, had to add a new test case in translate()
 to set includeself for step iterator, thanks to Santiago Pericas-Geersen<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/15/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LiteralElement.java<br/><ref>Committer's log entry: </ref>bug 6819, variables translated before attrs to fix
 problems with dependency, fix by Santiago Pericas-Geertsen<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/18/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>bug 6935, fixed char escaping in non-URL HTML
 attribute case; also added recognition for URL escaping in HTML4 cite attrs.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/19/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>fix for unit test customer/murphy3.xsl<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/27/2002<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/dom ExtendedSAX.java<br/><ref>Committer's log entry: </ref>bug 2951, new class<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMBuilder.java
 DOMImpl.java<br/><ref>Committer's log entry: </ref>bug 2951 fix<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime SAXAdapter.java<br/><ref>Committer's log entry: </ref>bug 2951 fix<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>03/28/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>bug fix for output31, output32 tests, esc chars<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/02/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>bug 7679, xsl:vendor fix<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/03/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch ApplyTemplates.java
 Constants.java Expression.java
 FormatNumberCall.java LiteralElement.java
 ParentLocationPath.java Parser.java
 ProcessingInstruction.java Step.java
 StepPattern.java Stylesheet.java SymbolTable.java
 SyntaxTreeNode.java XslAttribute.java
 XslElement.java
 java/src/org/apache/xalan/xsltc/compiler/util Tag:
 jaxp-ri-1_2_0-fcs-branch Util.java
 java/src/org/apache/xalan/xsltc/dom Tag:
 jaxp-ri-1_2_0-fcs-branch
 CurrentNodeListIterator.java DOMBuilder.java
 DOMImpl.java SortingIterator.java
 UnionIterator.java
 java/src/org/apache/xalan/xsltc/runtime Tag:
 jaxp-ri-1_2_0-fcs-branch AbstractTranslet.java
 BasisLibrary.java Constants.java
 DefaultSAXOutputHandler.java SAXAdapter.java
 StringValueHandler.java TextOutput.java
 TransletLoader.java
 java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-fcs-branch DOM2SAX.java SAX2DOM.java
 TemplatesHandlerImpl.java TemplatesImpl.java
 TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/dom Tag:
 jaxp-ri-1_2_0-fcs-branch ExtendedSAX.java<br/><ref>Committer's log entry: </ref>merged the latest xsltc subtree with the xalan 2.3.1 fcs branch<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>Fixed problem with attribute URI<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/><ref>Committer's log entry: </ref>Fix for bugzilla 7721<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/><ref>Committer's log entry: </ref>Fix related to bugzilla 7721<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-fcs-branch DOM2SAX.java<br/><ref>Committer's log entry: </ref>Fixed attr namespace.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-fcs-branch SAX2DOM.java
 TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fixed problem when a DOMResult is created with a root node.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch FunctionCall.java<br/><ref>Committer's log entry: </ref>Bugzilla 7721.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/08/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/><ref>Committer's log entry: </ref>Add support for user-specified root node.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/08/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>Add support for user-specified root node.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/09/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch FunctionAvailableCall.java
 FunctionCall.java<br/><ref>Committer's log entry: </ref>bug 7375 fixed, handles ext java functions now<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/09/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-fcs-branch SAX2DOM.java<br/><ref>Committer's log entry: </ref>Fixed regression.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/09/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/><ref>Committer's log entry: </ref>Regression fixed.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/15/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax Tag:
 jaxp-ri-1_2_0-fcs-branch TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>bug 8017, translet class name fixed in getTemplates<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/15/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch AttributeValue.java
 AttributeValueTemplate.java Number.java
 XslAttribute.java XslElement.java<br/><ref>Committer's log entry: </ref>New implementation of xsl:element<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/15/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime Tag:
 jaxp-ri-1_2_0-fcs-branch BasisLibrary.java<br/><ref>Committer's log entry: </ref>New implementation of xsl:element<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/15/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom Tag:
 jaxp-ri-1_2_0-fcs-branch DOMAdapter.java
 DOMImpl.java MultiDOM.java<br/><ref>Committer's log entry: </ref>New implementation of xsl:element<br/><br/></li><li><ref>Committed by </ref>Tom.Amiro@Sun.COM<ref> on </ref>04/15/2002<br/><ref>Committer's log entry: </ref>
&gt; bug 8017, translet class name fixed in getTemplates
&gt;
&gt;<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/16/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>bug 8017, translet class name fixed in getTemplates<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/16/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom Tag:
 jaxp-ri-1_2_0-fcs-branch DOMImpl.java<br/><ref>Committer's log entry: </ref>Check for localName == null.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/16/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch Include.java<br/><ref>Committer's log entry: </ref>bug 7835, patch from Stefan Kost to better handle
 empty strings and local paths in xsl:include<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/16/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Include.java<br/><ref>Committer's log entry: </ref>bug 7835, integrated patch by Stefan Kost which
 better handles empty strings and local paths in xsl:include<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/16/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch DocumentCall.java<br/><ref>Committer's log entry: </ref>Santiago: fixed type check error when 2nd arg (base-uri) is node instead
 of node-set.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag: XSLTC_DTM
 Mode.java<br/><ref>Committer's log entry: </ref>get rid of debug line<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch FunctionCall.java
 Parser.java Stylesheet.java SyntaxTreeNode.java
 XSLTC.java xpath.cup<br/><ref>Committer's log entry: </ref>Added support for extension function nodeset().<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom Tag:
 jaxp-ri-1_2_0-fcs-branch DOMAdapter.java
 DOMImpl.java MultiDOM.java<br/><ref>Committer's log entry: </ref>Added support for extension function nodeset().<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime Tag:
 jaxp-ri-1_2_0-fcs-branch BasisLibrary.java<br/><ref>Committer's log entry: </ref>Added support for extension function nodeset().<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/18/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch CastExpr.java
 java/src/org/apache/xalan/xsltc/compiler/util Tag:
 jaxp-ri-1_2_0-fcs-branch ReferenceType.java
 java/src/org/apache/xalan/xsltc/runtime Tag:
 jaxp-ri-1_2_0-fcs-branch BasisLibrary.java<br/><ref>Committer's log entry: </ref>Fixed problem with extension function nodeset() and parameters.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/18/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime Tag: XSLTC_DTM
 SAXAdapter.java<br/><ref>Committer's log entry: </ref>Pass in the local name of the element<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/19/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch FunctionAvailableCall.java<br/><ref>Committer's log entry: </ref>JAVA_EXT_PREFIX renamed to JAVA_EXT_XSLTC<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util Tag:
 jaxp-ri-1_2_0-fcs-branch MethodGenerator.java<br/><ref>Committer's log entry: </ref>Fixed bug in addLocalVariable() when the slot allocator was already 
initialized.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch ElementAvailableCall.java<br/><ref>Committer's log entry: </ref>Added namespace support to the implementation of element-available().<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch LiteralExpr.java<br/><ref>Committer's log entry: </ref>


<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch Parser.java<br/><ref>Committer's log entry: </ref>Namespace support for element-available().<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Tag:
 jaxp-ri-1_2_0-fcs-branch Stylesheet.java<br/><ref>Committer's log entry: </ref>Fixed bug in resolveReferences().<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/23/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime Tag:
 jaxp-ri-1_2_0-fcs-branch TextOutput.java<br/><ref>Committer's log entry: </ref>escaped character handling improved by Santiago<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/23/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime Tag:
 jaxp-ri-1_2_0-fcs-branch TextOutput.java<br/><ref>Committer's log entry: </ref>escaped character handling improved by Santiago, again<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/23/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util Tag:
 jaxp-ri-1_2_0-fcs-branch ErrorMessages.java<br/><ref>Committer's log entry: </ref>Fixed command line synopsis.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/24/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOM.java
 java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java
 AttributeValue.java AttributeValueTemplate.java
 CastExpr.java Constants.java DocumentCall.java
 ElementAvailableCall.java Expression.java
 FormatNumberCall.java FunctionAvailableCall.java
 FunctionCall.java Include.java LiteralElement.java
 LiteralExpr.java Number.java
 ParentLocationPath.java Parser.java
 ProcessingInstruction.java Step.java
 StepPattern.java Stylesheet.java SymbolTable.java
 SyntaxTreeNode.java XSLTC.java XslAttribute.java
 XslElement.java xpath.cup
 java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java MethodGenerator.java
 ReferenceType.java Util.java
 java/src/org/apache/xalan/xsltc/dom
 CurrentNodeListIterator.java DOMAdapter.java
 DOMBuilder.java DOMImpl.java ExtendedSAX.java
 MultiDOM.java SortingIterator.java
 UnionIterator.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java BasisLibrary.java
 Constants.java DefaultSAXOutputHandler.java
 SAXAdapter.java StringValueHandler.java
 TextOutput.java TransletLoader.java
 java/src/org/apache/xalan/xsltc/trax DOM2SAX.java
 SAX2DOM.java TemplatesHandlerImpl.java
 TemplatesImpl.java TransformerFactoryImpl.java
 TransformerImpl.java<br/><ref>Committer's log entry: </ref>Commit after syncing trunk with branch jaxp-ri-1_2_0-fcs-04.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/25/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java<br/><ref>Committer's log entry: </ref>updated compiler usage statement<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/25/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java<br/><ref>Committer's log entry: </ref>added a -v option to compiler,prints out version<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/25/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java<br/><ref>Committer's log entry: </ref>updated cmdline.Transform usage statement<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/25/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.lex<br/><ref>Committer's log entry: </ref>Added support for the full Unicode char set.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/25/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util Util.java<br/><ref>Committer's log entry: </ref>Replacing '/' by '$slash$' and ':' by '$colon$' in escape() (bugzilla 6289)<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/26/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java
 java/src/org/apache/xalan/xsltc/compiler XSLTC.java
 java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Added -n option to disable template inlining. This is useful to avoid
 getting very long methods (the limit set by the JVM is 64K). The same
 option can be passed to a TransformationFactory via Trax using
 the "disable-inlining" attribute.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/26/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler VariableBase.java<br/><ref>Committer's log entry: </ref>Added check to avoid duplicate dependencies.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/26/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Constants.java
 FilterParentPath.java ParentLocationPath.java<br/><ref>Committer's log entry: </ref>Replaced STEP_ITERATOR by NODE_ITERATOR_BASE when calling includeSelf().<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/26/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>Ensured that global vars are initialized in the order in which they
 were defined, whenever possible. This order may be altered due to
 the existence of dependencies between the vars.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler FunctionCall.java
 java/src/org/apache/xalan/xsltc/compiler/util
 ReferenceType.java<br/><ref>Committer's log entry: </ref>Added a type mapping between 'reference' and 'java.lang.Object' and
 vice versa. With this addition, a stylesheet can pass a parameter
 to an external Java function without getting a type check error.
 (see Bugzilla 8595).<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>04/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>fixed null ptr exception with sax sources that did
 not specify an xml reader<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fixed Bugzilla 8489.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>04/30/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util Util.java<br/><ref>Committer's log entry: </ref>Fixed a bug in replace() by writting a new (and more efficient) version.<br/><br/></li><li><ref>Committed by </ref>Tom.Amiro@Sun.COM<ref> on </ref>04/30/2002<br/><ref>Committer's log entry: </ref>
&gt; Fixed a bug in replace() by writting a new (and more efficient) version.
&gt;
&gt;<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/02/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerHandlerImpl.java<br/><ref>Committer's log entry: </ref>Fixed file-not-found problem with flavor=trax.sax by propagating
 the systemId.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/03/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>Fixed for Bugzilla 2886 (node15).<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/03/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyImports.java
 Include.java Stylesheet.java TestSeq.java
 XSLTC.java<br/><ref>Committer's log entry: </ref>Disabling template inlining for included stylesheets.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 AncestorPattern.java Mode.java ParentPattern.java
 StepPattern.java<br/><ref>Committer's log entry: </ref>Fixed a few problems with ancestor patterns (//) and patterns with
 explicit priorities.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Rewrote a couple of if statements as if expressions.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 VariableBase.java<br/><ref>Committer's log entry: </ref>Better error reporting for syntax errors in XPath expressions.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 xpath.cup<br/><ref>Committer's log entry: </ref>Fix for Bugzilla 8041.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java ErrorMessages_no.java
 ErrorMsg.java<br/><ref>Committer's log entry: </ref>Fix for Bugzilla 8041.<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>05/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 AbsolutePathPattern.java AncestorPattern.java
 ParentPattern.java<br/><ref>Committer's log entry: </ref>Fix for Bugzilla 2836 (modes15).<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>05/08/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>fixes a set of trax.dom conf tests<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>05/08/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>fixes a set of trax.dom conf tests<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.3 and 2.3.1">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>01/24/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>bug 1520 fix, escape chars over 0080 instead of 00FF<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>01/24/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>bug 1520, adjusted 0080 to 007F in ASCII cutoff<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 AttributeValueTemplate.java
 AbsoluteLocationPath.java AbsolutePathPattern.java
 AlternativePattern.java AncestorPattern.java
 ApplyImports.java ApplyTemplates.java
 AttributeSet.java BooleanCall.java BinOpExpr.java
 BooleanExpr.java CallTemplate.java CastExpr.java
 CeilingCall.java Choose.java Comment.java
 DecimalFormatting.java ConcatCall.java
 Constants.java ContainsCall.java Copy.java
 CopyOf.java CurrentCall.java DocumentCall.java
 EqualityExpr.java Import.java If.java
 ElementAvailableCall.java Expression.java
 Fallback.java FilterExpr.java FilterParentPath.java
 FloorCall.java FlowList.java ForEach.java
 FormatNumberCall.java FunctionAvailableCall.java
 FunctionCall.java GenerateIdCall.java
 IdKeyPattern.java Include.java IntExpr.java
 Key.java KeyCall.java LangCall.java LastCall.java
 LiteralAttribute.java LiteralElement.java
 LiteralExpr.java LocalNameCall.java
 NamespaceAlias.java LogicalExpr.java Message.java
 Mode.java NameBase.java NameCall.java
 NamespaceUriCall.java NotCall.java Number.java
 NumberCall.java Output.java Param.java
 ParentLocationPath.java ParameterRef.java
 ParentPattern.java PositionCall.java
 RelationalExpr.java Predicate.java Sort.java
 ProcessingInstruction.java RealExpr.java
 VariableRef.java RoundCall.java ValueOf.java
 SimpleAttributeValue.java StartsWithCall.java
 Stylesheet.java StringCall.java
 StringLengthCall.java StepPattern.java
 Template.java TestSeq.java Text.java
 TopLevelElement.java TransletOutput.java
 UnaryOpExpr.java UnionPathExpr.java
 UnparsedEntityUriCall.java UseAttributeSets.java
 LongExpr.java Variable.java Whitespace.java
 XslAttribute.java WithParam.java XSLTC.java
 XslElement.java UnsupportedElement.java
 VariableBase.java VariableRefBase.java
 FilteredAbsoluteLocationPath.java
 SyntaxTreeNode.java Step.java UnresolvedRef.java
 ProcessingInstructionPattern.java<br/><ref>Committer's log entry: </ref>changed de.fub.bytecode to org.apache.bcel<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 NamedMethodGenerator.java NodeCounterGenerator.java
 NodeSetType.java NodeSortRecordGenerator.java
 NodeType.java RealType.java ReferenceType.java
 ResultTreeType.java RtMethodGenerator.java
 SlotAllocator.java StringType.java
 TestGenerator.java Util.java LongType.java<br/><ref>Committer's log entry: </ref>changed de.fub.bytecode to org.apache.bcel<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 AttributeSetMethodGenerator.java BooleanType.java
 ClassGenerator.java CompareGenerator.java
 FilterGenerator.java IntType.java
 MatchGenerator.java MethodGenerator.java
 MethodType.java Type.java VoidType.java<br/><ref>Committer's log entry: </ref>changed de.fub.bytecode to org.apache.bcel<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>bug 1520, spec chars in href attributes<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/07/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>bug 1520, updating href attr spec char handling<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/13/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>bug fix 6189, ArrayIndexOutOfBoundsException, contrib
 by Mirko Seifert<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>02/14/2002<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc
 javax.xml.transform.TransformerFactory<br/><ref>Committer's log entry: </ref>added a service provide source file to be copied into
 xsltc.jar (bundled jar)<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.2">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>A fix to the XPath parser to make sure (again!) that non-prefixed elements
 in XPath expressions/patterns are not assigned the default namespace but
 rather the null namespace.
 PR: bugzilla 4904
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>Modified the order in which top-level elements are parsed. This to make sure
 that xsl:namespace-alias elements are parsed before xsl:import and include,
 so that namespace aliases are global to all included stylesheets.
 PR: bugzilla 4876
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java
 xpath.lex<br/><ref>Committer's log entry: </ref>


<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc NodeIterator.java
 java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java
 CurrentNodeListIterator.java DOMImpl.java
 FilterIterator.java FilteredStepIterator.java
 KeyIndex.java MatchingIterator.java MultiDOM.java
 NodeIteratorBase.java NthIterator.java
 StepIterator.java UnionIterator.java<br/><ref>Committer's log entry: </ref>A fix for the various node iterators cloneIterator() method. This method
 should clear the _isRestartable flag to prevent iterators contained within
 variables and parameters from changing their value. This flag is now wrapped
 inside a setRestartable(boolean flag) method so that the call can be
 propagated down a stack of iterators. This seems to solve many of our
 iterator problems.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apaceh.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler SyntaxTreeNode.java
 XslElement.java<br/><ref>Committer's log entry: </ref>Added a method to the SyntaxTreeNode base class that can be used to check
 the existence of an attribute in the input document: hasAttribute(String 
name).
 This method is used in the XslElement class to verify the existence of a
 'namespace' attribute with an empty value.
 PR: bugzilla 4983
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Updated the realToString() method in the runtime library to always output
 numbers on decimal form (and not on Java's "computerized scientific notation."
 PR: bugzilla 4199
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 RoundCall.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Changed the return-type of the round() function form int to double. The result
 is still rounded (of course), but it is returned as a double to be able to
 return NaN and infinite values.
 PR: bugzilla 2805
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/><ref>Committer's log entry: </ref>I am still fiddling around with predicates containing variable references
 and position filters.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.lex<br/><ref>Committer's log entry: </ref>Reverting previous putback.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Output.java
 java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java ErrorMessages_no.java
 ErrorMsg.java
 java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Added a warning message for unsupported output encodings.
 PR: bugzilla 5139
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.lex<br/><ref>Committer's log entry: </ref>fixed typo<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>A fix for global parameters whose names contain dots or dashes.
 PR: bugzilla 5328
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>A fix for a bug in the XPath parser. The parser would choke on some XPath
 expressions that contained references to element names that were identical
 to axis names.
 PR: bugzilla 3502
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Added another fix to properly convert ver small floating point numbers to
 strings.
 PR: bugzilla 4199
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>Added a fix for global variables declared in included/imported stylesheets.
 PR: bugzilla 5327
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 MethodGenerator.java<br/><ref>Committer's log entry: </ref>Fix for use of XPath expressions in contexts where there is no 'current'
 node (ie. in top-level elements such as variables and attribute sets).
 PR: bugzilla 5194
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added factory creation methods and checks<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>new prototype class, work in progress<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added factory creation methods and checks<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>new prototype class, work in progress<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ResultTreeType.java<br/><ref>Committer's log entry: </ref>A fix for passing result tree fragments and node-sets to external Java
 methods. Node sets and RTFs can both be handled as org.w3c.dom.Node or
 org.w3c.dom.NodeList in the called method.
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added factory creation methods and checks<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>new prototype class, work in progress<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added factory creation methods and checks<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>new prototype class, work in progress<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ResultTreeType.java<br/><ref>Committer's log entry: </ref>A fix for passing result tree fragments and node-sets to external Java
 methods. Node sets and RTFs can both be handled as org.w3c.dom.Node or
 org.w3c.dom.NodeList in the called method.
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added factory creation methods and checks<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>new prototype class, work in progress<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added factory creation methods and checks<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>new prototype class, work in progress<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added factory creation methods and checks<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>new prototype class, work in progress<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>look for xsltc specific attributes<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>store error listener and or uri resolver locally
 set in real factory when needed<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 SmartTransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>fixed scope of internal method<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>Removed some stupid debug timing-loop in the command line Transform tool.
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>Removed the main() method from the XSLTC class. This class represents the
 native API of the compiler.
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>12/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Transform.java
 java/src/org/apache/xalan/xsltc/dom DTDMonitor.java<br/><ref>Committer's log entry: </ref>A small cleanup in our native API.
 Submitted by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>01/07/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>fixed problem with output content handler creation
 (while running xalan conf tests) in method getOutputHandler(Result).<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.2.D14">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslAttribute.java<br/><ref>Committer's log entry: </ref>Fixed bug for xsl:attribute
 PR: 4175
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Fix for properly creating a SAX InputSource from a TrAX InputStream for
 encapsulating a stylesheet before it is compiled.
 PR: bugzilla 4711 (I hope to God)
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Fix for last putback.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>This fix should take care of a regression introduced by the code that was
 added on the 29.10.2001 to take care of forward referenced variables.
 This little patch ensures that variables that do not have any dependencies
 are kept in order.
 PR: bugzilla 4779
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>Fixed a minor regression after the fix for 3592. A literal number zero was
 always interpreted as an integer zero and never as a double -0 opr 0.0.
 PR: bugzill 4810
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fixed the code that prevents escaping of text inside &lt;script&gt; and &lt;style&gt;
 elements in HTML. The code did not handle upper case element names.
 PR: bugzilla 2517
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>11/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>bug fix 4906<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java
 Template.java xpath.cup<br/><ref>Committer's log entry: </ref>Fix for nested parent location paths / filter parent paths with key() or
 id() root. These paths would in some case returnt he root node when they
 should not.
 PR: bugzilla 4781
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Sort.java<br/><ref>Committer's log entry: </ref>Fix for a big in the &lt;xsl:sort&gt; implementation. The element would not always
 work properly in the innermost loop in nested &lt;xsl:for-each&gt; elements.
 PR: bugzilla 4921
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java
 Sort.java<br/><ref>Committer's log entry: </ref>A fix for a regression introduced by a fix for &lt;xsl:sort/&gt; and nested
 &lt;xsl:for-each/&gt; elements.
 PR: bugzilla 4921
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fix to ensure that double quotes are escaped inside attribute values in
 HTML output.
 PR: bugzilla 4845
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java<br/><ref>Committer's log entry: </ref>Fix for a bug caused by &lt;xsl:apply-templates/&gt; not always passing parameters 
to
 the invoked template(s). Parameters would not be put on the stack if the
 'select' attribute contained wildcards.
 PR: bugzilla 4718
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 StringType.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Fixed conversion between strings and numbers. Empty strings should return
 0 and not NaN.
 PR: bugzilla 4783
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Choose.java
 Parser.java SyntaxTreeNode.java Text.java
 java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fix for a whole wack of bugs related to text-nodes and handling of whitespace
 and special characters.
 PR: bugzilla 1403, 1520, 3005, 3418 and 3690
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Prevented the namespace-uri() from returning anything for namespace nodes.
 PR: bugzilla 4896
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslElement.java<br/><ref>Committer's log entry: </ref>Added test in &lt;xsl:element&gt; to verify that the local name of the created
 element is legal (must have contents, but no whitespaces or colon).
 PR: bugzilla 4894
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>A small fix for the substring() function to output an empty string if the
 start index is an infinite value.
 PR: bugzilla 4813
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Constants.java
 Stylesheet.java<br/><ref>Committer's log entry: </ref>Fix for XHTML output.
 PR: bugzilla 4904
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Message.java<br/><ref>Committer's log entry: </ref>A cleanup in the Message class. Making way for a fix for 4874
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/><ref>Committer's log entry: </ref>A fix for position predicates used within parameters and variables.
 PR: bugzilla 4783
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslAttribute.java<br/><ref>Committer's log entry: </ref>A small fix needed after a fix for stripping/preserving text nodes. The fix
 for text-nodes caused us to insert text nodes before &lt;xsl:attribute&gt; elements
 in the AST, which again caused the XslAttribute class to complain.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOM.java
 java/src/org/apache/xalan/xsltc/compiler Message.java
 java/src/org/apache/xalan/xsltc/dom DOMAdapter.java
 DOMImpl.java MultiDOM.java<br/><ref>Committer's log entry: </ref>Added a new method to the DOM interface for retrieving the DOM as a single
 string. This method is different from the existing getStringValue() in the
 way that it generates element brackets and copies PIs and comments.
 PR: bugzilla 4874
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 FilteredStepIterator.java StepIterator.java
 UnionIterator.java<br/><ref>Committer's log entry: </ref>Updated the StepIterator and FilteredStepIterator's cloneIterator() and
 reset() methods so that the _isRestartable flag is set correctly.
 PR: bugzilla 4905
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>Another fix for 3005 (special characters inside CDATA).
 PR: bugzilla 3005
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>A fix for decimal formatting
 PR: bugzilla 4901
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler AttributeSet.java<br/><ref>Committer's log entry: </ref>A fix for a regression introduced by a fix for whitespace handling.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler FilterExpr.java
 Predicate.java VariableRefBase.java
 java/src/org/apache/xalan/xsltc/dom
 CurrentNodeListIterator.java DOMImpl.java
 FilteredStepIterator.java KeyIndex.java
 MatchingIterator.java MultiDOM.java
 NthIterator.java StepIterator.java
 UnionIterator.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>A fix for trees of step iterators stored inside variables.
 Also some fixes for recently introduced regressions.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.iorg<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java<br/><ref>Committer's log entry: </ref>A fix for the TrAX API when used from within an environment that does _not_
 use one of the standard classloaders.
 PR: bigzilla 5130
 Obtained from: n/a
 Submitted by: Jochen.Cordes@t-online.de
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Sort.java
 java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java<br/><ref>Committer's log entry: </ref>A fix for multilevel sort-keys. If a set of translets (representing different
 stylesheets) are running one the same JVM, and two or more of these translets
 use NodeSortRecord objects to represent &lt;xsl:sort/&gt; elements, then the number
 of sort keys would be set in the NodeSortRecord _class_ constructor instead of
 being set locally for each occurance of &lt;xsl:sort/&gt;.
 PR: bugzilla 4755
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler CastExpr.java
 EqualityExpr.java Expression.java LastCall.java
 Predicate.java VariableRefBase.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 StepIterator.java<br/><ref>Committer's log entry: </ref>A fix for resetting the source iterator of a node-value iterator.
 PR: bugzilla 5152
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 DecimalFormatting.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>A fix for a few regressions from yesterday.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>A fix to the XPath parser to make sure (again!) that non-prefixed elements
 in XPath expressions/patterns are not assigned the default namespace but
 rather the null namespace.
 PR: bugzilla 4904
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>Modified the order in which top-level elements are parsed. This to make sure
 that xsl:namespace-alias elements are parsed before xsl:import and include,
 so that namespace aliases are global to all included stylesheets.
 PR: bugzilla 4876
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.2.D12 and 2.2.D13">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>Changed the values for the output properties "OMIT_XML_DECLARATION" and
 "INDENT" from "true" and "false" to "yes" and "no".
 PR: bugzilla 4039
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Updated the getAttribute() method to throw an IllegalArgumentException
 for unknown attributes.
 PR: bugzilla 4046
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler NameBase.java<br/><ref>Committer's log entry: </ref>Fixed a bug in the name() and local-name() functions. The functions would
 use the current node and not the context node when no arguments were given.
 PR: bugzilla 3322
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Updated Mode.java to properly handle patterns matching on node(), comment() 
and
 processing-instruction(). Also had to make a small change to the 
setStartNode()
 method in the FollowingIterator (inner class of DOMImpl.java) to properly
 handle attribute-nodes as start nodes. Also, I had to change 
ParentLocationPath
 to remove duplicates that can be produced by the FollowingIterator when
 started with an attribute node.
 PR: bugzilla 2551
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>A small for for the output property OMIT_XML_DECLARATION
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fix to the transformer implementation to allow for namespace-prefixed
 output properties (output property extensions).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/><ref>Committer's log entry: </ref>included a more portable way to create an URI from a File<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime DefaultRun.java<br/><ref>Committer's log entry: </ref>ncluded a more portable way to create an URI from a File<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>ncluded a more portable way to create an URI from a File<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>ncluded a more portable way to create an URI from a File<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java
 ParentLocationPath.java Parser.java
 RelationalExpr.java SyntaxTreeNode.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java TextOutput.java<br/><ref>Committer's log entry: </ref>A fix for a few regressions.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fix for the "*" pattern. Made it include comment and PI nodes.
 PR: bugzilla 4050
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>Fix for the last fix.
 PR: bugzilla 4050
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fix for the last fix.
 PR: bugzil.la 4050
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added catch for malformed url<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>Modified error handling to extract messages from SAXException. This tool
 will also print the stack trace of the SAXException if the '-x' flag is
 specified (debug turned on).
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Added code to prevent index-out-of-bounds exception in the output handler.
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOM.java
 java/src/org/apache/xalan/xsltc/compiler XSLTC.java
 xpath.cup
 java/src/org/apache/xalan/xsltc/dom DOMAdapter.java
 DOMImpl.java<br/><ref>Committer's log entry: </ref>Added support for the namespace axis.
 PR: bugzilla 1379
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>Missing file from last putback.
 PR: bugzilla 1379
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>A few add'ons to the namespace axis implementation. Added support for
 the namespace-uri() function when applied to namespace nodes.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Code cleanup.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>Fix to prevent attribute nodes to be included by the node() pattern.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fix for the following:: iterator when started with an attribute node.
 PR: bugzilla 2551
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LiteralElement.java
 Mode.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>A fix to a recent regression after a fix for some axis iterators.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup xpath.lex<br/><ref>Committer's log entry: </ref>Added 4 symbols to the lexiographical analyser (xpath.lex) to recognise
 name-tests with whitespace between the NCName and the "()" brackets.
 PR: bugzilla 4208
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslAttribute.java<br/><ref>Committer's log entry: </ref>Fix to prevent xsl:attributes from not compiling itself into the translet 
code.
 PR: bugzilla 4175
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 FilterParentPath.java<br/><ref>Committer's log entry: </ref>Enabled node ordering for certain filtered parent paths.
 PR: bugzilla 4178
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java<br/><ref>Committer's log entry: </ref>Changed the node sort record base class so that it places NaN values first
 in the sorted list/node-set.
 PR: bugzilla 3517
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Changed the DOM's copy() function to always copy the necessary namespace
 declaration to the output handler.
 PR: bugzilla 3409 (not complete fix)
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler CallTemplate.java
 DecimalFormatting.java Param.java SymbolTable.java
 Template.java Variable.java VariableBase.java
 WithParam.java
 java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java<br/><ref>Committer's log entry: </ref>Cleaned up the compiler's symbol table. Added support for detecting multiple
 defined decimal formatting symbols.
 PR: bugzilla 3872
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler CallTemplate.java
 Template.java VariableBase.java WithParam.java
 XSLTC.java
 java/src/org/apache/xalan/xsltc/compiler/util Util.java<br/><ref>Committer's log entry: </ref>Added/checked proper escaping of 
template/variable/parameter/attribute-set/etc.
 names. Occurances of the characters '.' and '-' are replaced by '$dot$' and
 '$dash$' respectively in method/variable names. The characters are both
 replaced by an underbar ('_') in the translet class name.
 PR: 2399
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fix for getting all attributes from the Xerces parser. Xerces and Crimson
 report attributes differently, and we have to take that into account.
 PR: bugzilla 2465
 Obtained from: n/a
 Submitted by: Douglas Sellers &lt;douglasjsellers@hotmail.com&gt;
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 FilterParentPath.java<br/><ref>Committer's log entry: </ref>Added node ordering to FilterParentPath
 PR: bugzilla 4248
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Changed one of the compare() methods in the basis library to properly
 compare node sets.
 PR: bugzilla 4242
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>Fixed the registerAttribute() method so that it always uses the same
 id for an attribute name.
 PR: bugzilla 4243
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/compiler Param.java.orig<br/><ref>Committer's log entry: </ref>Removed file Param.java.orig
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 VariableBase.java<br/><ref>Committer's log entry: </ref>Changed the variable base class to allow variables to be re-defined in
 a different scope.
 PR: bugzilla 3268
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom MultiDOM.java<br/><ref>Committer's log entry: </ref>Added a node-value iterator to the DOM multiplexer to allow for predicates
 in combination with the document() function.
 PR: bugzilla 3402
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom MultiDOM.java<br/><ref>Committer's log entry: </ref>Fix for variables and parameters containing node sets in stylesheets that
 use the document() function. This fix completes the cloneIterator() method
 of the axis iterators returned by the DOM multiplexer.
 PR: bugzilla 3501
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Added the default xml=http://www.w3.org/XML/1998/namespac namespace
 declaration to the root node of our internal DOM.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom LoadDocument.java
 MultiDOM.java<br/><ref>Committer's log entry: </ref>A fix for determining the current working directory when loading XML
 documents using the document() function. The base URI (that gives you
 the CWD) should normally be taken from the context node, but can also
 be determined by the node/node-set defining the document URI.
 PR: bugzilla 3471
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Gave the parent/sibling stacks in the DOM builder dynamic length.
 PR: bugzilla 3066
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java<br/><ref>Committer's log entry: </ref>Added a '-i' option to the command-line compiler to allow stylesheets to be
 passed in through stdin. The '-i' option must be used with the '-o' option
 to specify a translet name.
 PR: bugzilla 4253
 Obtained from: n/a
 Submitted by: johnh@schemasoft.com (John Howard)
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Include.java
 Stylesheet.java XSLTC.java<br/><ref>Committer's log entry: </ref>Cleaned up the include/import precedence code in Import and Include
 PR: bugzilla 2695
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Fixed output formatting of some floating point numbers.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LogicalExpr.java<br/><ref>Committer's log entry: </ref>Fix for logical expressions that have combinations of not() and "and".
 PR: bugzilla 2351
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>10/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added a empty string systemId in cases where it was
 set to null, slight rearrangment of StreamSource handling code as well.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/compiler header.txt<br/><ref>Committer's log entry: </ref>Fix for names templates. Dashes and dots in template names are now
 escaped using '$dash$' and '$dot$'.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>A fix for a recent regression. A no major change. Just a one-line if to
 test for a potential NPE.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyImports.java
 Mode.java Stylesheet.java Template.java<br/><ref>Committer's log entry: </ref>A major fix for &lt;xsl:apply-imports/&gt;. This element was previously treated
 as &lt;xsl:apply-templates/&gt; but is now handled similar to Java's 'super()'
 method. Note that this is not a complete fix. The rest will come tomorrow
 or the day after. I just wanted to make sure that today's efforts were not
 lost and that they are tested overnight.
 PR: bugzilla 1397
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyImports.java
 DocumentCall.java Stylesheet.java
 SyntaxTreeNode.java
 java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/><ref>Committer's log entry: </ref>Fixed the document() function so that it will load documents relative to
 either the currently loaded document, or if that fails, relative to the
 location of the original stylesheet.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerHandlerImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fixed the TransformerHandler so that it's Transformer instance can be used
 separateely from the handler itself.
 PR: bugzilla 3873
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Import.java
 Include.java<br/><ref>Committer's log entry: </ref>A fix for resulving relative URIs when using &lt;xsl:include/&gt; and &lt;xsl:import/&gt;
 through TrAX without using a URIResolver.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fix for a bug that seemed to be triggered by the sequence in which Xerces'
 lexical handler and content handler were set. The lexical handler must be
 set before the content handler, otherwise Xerces will keep generating the
 first startElement() event over and over again.
 PR: bugzilla 2465
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fixed the general handling of the XML namespace mapping.
 PR: bugzilla 4331
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyImports.java
 Mode.java Stylesheet.java<br/><ref>Committer's log entry: </ref>A fix for setting the scope of templates for an &lt;xsl:apply-imports/&gt; element.
 This fix allows for proper "multiple inheritance" in XSLTC.
 PR: bugzilla 1397
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>Fix to ensure that the order of the -o and -p command line options is
 not significant.
 PR: bugzilla 4343
 Obtained from: n/a
 Submitted by: johnh@schemasoft.com (John Howard)
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler FunctionCall.java<br/><ref>Committer's log entry: </ref>Changed our extension for calling external static Java methods to allow
 both the "http://xml.apache.org/xalan/xsltc/java" namespace and the
 "http://xml.apache.org/xslt/java" namespace (Xalan's namespace for Java
 function calls).
 PR: bugzilla 3994
 Obtained from: n/a
 Submitted by: after numerous requests/suggestions on xalan-dev
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler BinOpExpr.java
 Choose.java DocumentCall.java Number.java
 Otherwise.java StepPattern.java Stylesheet.java
 VariableBase.java VariableRef.java
 VariableRefBase.java When.java XSLTC.java xpath.cup
 java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java<br/><ref>Committer's log entry: </ref>Implemented code to resolve forward references and dependencies between
 global variables and parameters.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/30/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler UnresolvedRef.java<br/><ref>Committer's log entry: </ref>Missing file from last putback.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java
 AttributeSet.java AttributeValueTemplate.java
 BinOpExpr.java CallTemplate.java ConcatCall.java
 ContainsCall.java CopyOf.java
 DecimalFormatting.java DocumentCall.java
 ElementAvailableCall.java Expression.java
 ForEach.java FormatNumberCall.java
 FunctionAvailableCall.java FunctionCall.java
 If.java Import.java Include.java Instruction.java
 Key.java Output.java Param.java Parser.java
 ProcessingInstruction.java RelationalExpr.java
 StartsWithCall.java StringCall.java Stylesheet.java
 Template.java TopLevelElement.java
 TransletOutput.java UnsupportedElement.java
 UseAttributeSets.java ValueOf.java Variable.java
 VariableBase.java When.java Whitespace.java
 WithParam.java XslAttribute.java XslElement.java
 xpath.cup
 java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java<br/><ref>Committer's log entry: </ref>Moved all error messages from the various source files into the ErrorMsg
 class in the compiler/util directory.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java
 Transform.java
 java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java
 SlotAllocator.java
 java/src/org/apache/xalan/xsltc/dom LoadDocument.java
 NodeSortRecordFactory.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java BasisLibrary.java
 SAXAdapter.java TextOutput.java
 java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java
 TransformerFactoryImpl.java
 TransformerHandlerImpl.java TransformerImpl.java
 XSLTCSource.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java ErrorMessages_en.java
 ErrorMessages_no.java<br/><ref>Committer's log entry: </ref>A first stab at i18n'ing XSLTC. Error and warning messages from the compiler
 and TrAX are handled by the compiler/util/ErrorMsg class, while messages
 from the DOM and runtime/translet are handled by the Basis Library class.
 Only the ErrorMsg class has so far been updated to dynamically read its
 messages from a ResourceBundle. Bundles for British English and Norwegian
 are implemented.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 BooleanType.java ErrorMessages.java
 ErrorMessages_no.java ErrorMsg.java IntType.java
 NodeSetType.java NodeType.java RealType.java
 ReferenceType.java ResultTreeType.java
 StringType.java Type.java VoidType.java<br/><ref>Committer's log entry: </ref>Code cleanup.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java
 CurrentNodeListIterator.java DOMImpl.java
 FilterIterator.java FilteredStepIterator.java
 MatchingIterator.java MultiDOM.java
 NodeIteratorBase.java StepIterator.java
 UnionIterator.java<br/><ref>Committer's log entry: </ref>Final code cleanup after i18n work.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java<br/><ref>Committer's log entry: </ref>Removed a typo in console output.
 Submitted by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Added "Compiler Warning" text to output.
 Submitted by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Import.java
 Include.java StepPattern.java
 java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages_no.java
 java/src/org/apache/xalan/xsltc/dom LoadDocument.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java
 java/src/org/apache/xalan/xsltc/trax
 TemplatesHandlerImpl.java
 TransformerFactoryImpl.java<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages_en.java<br/><ref>Committer's log entry: </ref>Localised the runtime/dom packages into Norwegian. This proves that the
 internationalisation work is completed. I also fixed a regression that
 was caused by the error handling being changed.
 PR: n/a (i18n and l10n work)
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>Integrated a fix from John Howard for forcing forward slashes in file paths
 in JAR files and in manifests in JAR files.
 PR: bugzilla 4464
 Obtained from: n/a
 Submitted by: John Howard (johnh@schemasoft.com)
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 Stylesheet.java<br/><ref>Committer's log entry: </ref>Fix for simplified stylesheets. A namespace declaration on the root element
 in the stylesheet (xmlns="http://www.w3.org/TR/xhtml1/strict") caused XSLTC
 to try to match elements in this namespace instead of elements in the null
 namespace.
 PR: bugzilla 3664
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>Removed a regression from yesterday ('version' attribute missing).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>Removed default behaviour of text() and "*" in &lt;xsl:apply-imports/&gt;.
 (this element should not invoke built-ins).
 PR: bugzilla 1397
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 java/src/org/apache/xalan/xsltc/runtime SAXAdapter.java<br/><ref>Committer's log entry: </ref>Updated the SAXAdapter used to build result tree fragments to handle comments.
 PR: bugzilla 4172
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Fix for the XPath substring() function.
 PR: bugzilla 4201
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Number.java<br/><ref>Committer's log entry: </ref>Removed the last putback - should never have been done. Big mistake!!!
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DTDMonitor.java<br/><ref>Committer's log entry: </ref>Fix for generating IDs for implied attributes.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Enabled character escaping by default for HTML output. We are now able to
 generate the XSLT and XPath specs without any errors at all.
 PR: bugzilla 3065
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/runtime ErrorMessages.java
 ErrorMessages_no.java<br/><ref>Committer's log entry: </ref>Missing resource bundles for error messages for XSLTC's dom and runtime lib.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>Fixed pattern matching on namespace qualified wildcards, such
 as match="@blob:*".
 PR: bugzilla 2582
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/><ref>Committer's log entry: </ref>Added a fix for predicates that test on node values, where the value to
 test agains is stored in a variable or predicate.
 PR: bugzilla 3501
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>Fix for re-definitions of variables inside templates (in different scopes).
 PR: bugzilla 3406
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>Potential fix for bug 3416. Will not integrate for performance reasons.
 Code change is commented.
 PR: bugzilla 3416
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>Removed a desperately bad piece of code that caused XSLTC to misinterpret
 some combinations of parent location paths and predicates.
 PR: bugzilla 4249
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom NodeCounter.java<br/><ref>Committer's log entry: </ref>Fix for the formatter used with the xsl:count element.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Sort.java<br/><ref>Committer's log entry: </ref>Fix for sort-elements used with apply-templates elements with no select
 attribute.
 PR: bugzilla 3519
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler PositionCall.java
 java/src/org/apache/xalan/xsltc/dom NodeCounter.java
 SingleNodeCounter.java<br/><ref>Committer's log entry: </ref>A fix for the &lt;xsl:number&gt; element.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org / todd.miller@sun.com
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Sort.java
 java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java
 NodeSortRecordFactory.java<br/><ref>Committer's log entry: </ref>Changed the 'order' and 'data-type' attributes of the &lt;xsl:sort&gt; element
 from plain attributes to attribute value templates. This required a change
 not inly in the way we interpret these attributes but also in the time at
 which these attributes are intrepreted. Since these are not treated as AVTs
 we need to wait until runtime before reading the values of the attributes.
 PR: bugzilla 3835
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOM.java
 java/src/org/apache/xalan/xsltc/compiler PositionCall.java
 StepPattern.java
 java/src/org/apache/xalan/xsltc/dom DOMAdapter.java
 DOMImpl.java MultiDOM.java NodeSortRecord.java<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java.old<br/><ref>Committer's log entry: </ref>Fix for patterns on the format "/foo/*/bar" and "/foo/*[n]/bar".
 PR: bugzilla 4604
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java
 java/src/org/apache/xalan/xsltc/dom
 CurrentNodeListIterator.java DOMImpl.java<br/><ref>Committer's log entry: </ref>Fixed the last() function for the typed and untyped ancestor iterators.
 I also updated our node list iterator (used to implement some predicates)
 to handle the last() function properly for reverse-order axes.
 PR: bugzilla 4602
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslAttribute.java<br/><ref>Committer's log entry: </ref>A fix for a regression after a previous fix for bug 3320.
 PR: bugzilla 4656
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler BinOpExpr.java
 CastExpr.java EqualityExpr.java Expression.java
 LastCall.java LogicalExpr.java PositionCall.java
 Predicate.java RelationalExpr.java Step.java
 StepPattern.java UnaryOpExpr.java<br/><ref>Committer's log entry: </ref>Fix for compound predicates used in patterns.
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 AttributeValueTemplate.java Constants.java
 FilterParentPath.java LiteralAttribute.java
 LiteralElement.java LiteralExpr.java Mode.java
 ParentLocationPath.java Parser.java
 SimpleAttributeValue.java SyntaxTreeNode.java
 Text.java UnionPathExpr.java<br/><ref>Committer's log entry: </ref>A bit of a code cleanup. I also added a small fix for ensuring document order
 of node sets returned by union expressions.
 PR: bugzilla 4677
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Sort.java
 java/src/org/apache/xalan/xsltc/compiler/util
 ErrorMessages.java ErrorMessages_no.java
 ErrorMsg.java<br/><ref>Committer's log entry: </ref>Added a test to verify that &lt;xsl:sort/&gt; elements are only used within
 &lt;xsl:apply-templates/&gt; or &lt;xsl:for-each/&gt; elements.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom Axis.java<br/><ref>Committer's log entry: </ref>Added an array to the Axis class to give an easy indication to the direction
 of an axis.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOMCache.java
 java/src/org/apache/xalan/xsltc/cmdline Transform.java
 java/src/org/apache/xalan/xsltc/compiler FunctionCall.java
 java/src/org/apache/xalan/xsltc/dom
 NodeSortRecordFactory.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/runtime TransletLoader.java<br/><ref>Committer's log entry: </ref>Added a new TransletLoader class to the runtime package. This class will
 be used only when the default Class.forName() call fails. The forName()
 call will fail if XSLTC is packed in a JAR and installed under
 $JAVA_HOME/jre/lib/ext. This is because the extensions class
 loader is used instead of the bootstrap class loader, and that the
 extensions class loader does not load classes for the default class path.
 But, if the extensions class loader is being used, then we know two things:

 (1) XSLTC is running on Java 1.2 or later (when extensions were introduced)
 (2) XSLTC has access to the ClassLoader.getSystemClassLoader() method

 This class takes advantage of this and uses a privileged call to this
 method to get a reference to the bootstrap class loader. It then uses this
 class loader to load the desired class.
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Added a "debug" attribute to the TransformerFactory implementation.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Removed a debug statement that was left behind after last putback.
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java
 StepPattern.java XSLTC.java xpath.cup xpath.lex<br/><ref>Committer's log entry: </ref>Added support for processing-instruction() with a literal parameter for
 use in node tests in expressions and patterns.
 PR: bugzilla 2583
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>11/09/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler
 ProcessingInstructionPattern.java<br/><ref>Committer's log entry: </ref>Forgot this in last putback.
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>11/09/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler LongExpr.java<br/><ref>Committer's log entry: </ref>bug fix 3592, new class to handle Long expresssion<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>11/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 xpath.cup xpath.lex Constants.java CastExpr.java<br/><ref>Committer's log entry: </ref>bug fix 3592, handles long now<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>11/09/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler/util LongType.java<br/><ref>Committer's log entry: </ref>bug fix 3592, added new class for Long types<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>11/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util Type.java<br/><ref>Committer's log entry: </ref>bug fix 3592, handles Long types<br/><br/></li></ul>
</s2>
<s2 title="Changes for &xslt4j; 2.2.D11">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>bug fix # 3424, memory retension fixed, John Howard contributed fix.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>bug fix 2807, seth ford's fix<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Include.java
 Import.java<br/><ref>Committer's log entry: </ref>bug fix 3426, gunnlaugur briem's fix<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslAttribute.java<br/><ref>Committer's log entry: </ref>bug fix 3320, gunnlaugur briem's fix<br/><br/></li><li><ref>Committed by </ref>"Gunnlaugur Thor Briem" &lt;gthb@dimon.is&lt;<ref> on </ref>09/06/2001<br/><ref>Committer's log entry: </ref>
&gt; bug fix 3320, gunnlaugur briem's fix
&gt;
&gt;<br/><br/></li><li><ref>Committed by </ref>"G. Todd Miller - XML Tech Ctr - Development" &lt;Glenn.Miller@Sun.COM&gt;<ref> on </ref>09/06/2001<br/><ref>Committer's log entry: </ref>
 &gt;&gt;&gt; bug fix 3320, gunnlaugur briem's fix
 &gt;&gt;&gt;
 &gt;&gt;&gt;<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>updated comments from bug fix 2553<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>bug fix 3360, predicate handling added<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java TextOutput.java<br/><ref>Committer's log entry: </ref>I have updated out output handler to treat this in the same manner as XT does.
 We allow AVT's to create namespace mappings between some prefix and the null
 URI. But, whenever an attribute or element uses a prefix that maps to the null
 URI we replace the prefix with the default prefix. So insead of outputting an
 illegal namespace declaration xmlns:ns1="" and ns1:Attr1="Whatsup" we simply
 output Attr1="Whatsup"
 PR: bugzilla 1518
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>Modified some of the error messages that are reported by this command-line
 tool to include full and correct error messages.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/dom DOMBuilder.java<br/><ref>Committer's log entry: </ref>Added support for comment nodes in the DOM. This support disappeared when
 we upgraded the DOMBuilder's interface from SAX to SAX2. Added a new
 interface for the DOMBuilder that includes SAX's ContentHandler _and_
 LexicalHandler.
 PR: bugzilla namespace30
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Updated the output handler to URL encode href attributes in HTML output.
 I used the URLEncoder class in java.net
 PR: bugzilla 1512
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>Fixed the default output SAX handler so that it does not indent empty HTML
 tags such as &lt;col&gt; and &lt;br&gt;
 PR: bugzilla 1525
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java TextOutput.java<br/><ref>Committer's log entry: </ref>Fix to prevent character escaping inside &lt;script&gt; and &lt;style&gt; elements in
 HTML output.
 PR: bugzilla 2517
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Transform.java
 java/src/org/apache/xalan/xsltc/compiler BooleanCall.java
 StepPattern.java Variable.java
 java/src/org/apache/xalan/xsltc/compiler/util
 ResultTreeType.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fix to always return 'true' when result tree fragments are converted to
 boolean values (because a result tree always has at least one node - root).
 PR: bugzilla 2595
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Added some code to the DOM builder to make sure that text nodes are not
 broken up into smaller fragments.
 PR: bugzilla 3506
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom NodeIteratorBase.java
 UnionIterator.java<br/><ref>Committer's log entry: </ref>Fix for the count() function and union iterators. Union iterators would not
 reset all the iterators it contained, and it needed a reset() method.
 PR: bugzilla 3504
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>bug fix 3312, //xx/descendant works now<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom NodeIteratorBase.java<br/><ref>Committer's log entry: </ref>Removed a debug statement that was left in here by mistake. Bad, bad, bad!
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 ParentLocationPath.java<br/><ref>Committer's log entry: </ref>added test for ParentLocationPath instance<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>bug fix 3312 completed<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LiteralElement.java
 Param.java ParameterRef.java
 ParentLocationPath.java Variable.java
 VariableBase.java VariableRef.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 MatchingIterator.java ReverseIterator.java
 StepIterator.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java
 TextOutput.java
 java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>Several bugfixes and fixes for regressions recently introduced by other
 bugfixes.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/><ref>Committer's log entry: </ref>Fix for parameter references used within predicates.
 PR: bugzilla 3405
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java<br/><ref>Committer's log entry: </ref>Added '-s' option to command-line compilaton tool to precent calls to
 System.exit(); This is needed when the command-line tool is invoked by
 our Java-based test harness.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>Added test in the method that handles stylesheet PIs in embedded stylesheets.
 This method did not properly test for the existence of stylesheets referenced
 in these PIs (ref. Sun's test embed09).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java
 StepPattern.java TestSeq.java<br/><ref>Committer's log entry: </ref>Fix for predicates used in complex match patterns. The compiler failed to
 produce code that would match on patterns like "blob/*[@attr='str']". It
 would also fail to identify some position predicates such as "blob[$param]".
 Nested parameters were not handled properly either. A pattern such as
 "foo[bar[starts-with(@attr, 'baz')]]" would be broken up and actually
 compiled twice - the outer predicate would be compiled first and the inner
 one after that. This fix makes sure that the predicates are handled together
 as one test, and not as two separate tests.
 PR: bugzilla 1376 (was an id/key problem, now predicates)
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java TextOutput.java<br/><ref>Committer's log entry: </ref>Modified the output handler and SAX handler to produce proper HTML output.
 Special characters in &lt;script&gt; and &lt;style&gt; elements are no longer escaped,
 and end-tags are properly produced (sometimes we would forget the last '&gt;').
 PR: bugzilla 2517
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 MatchingIterator.java StepIterator.java<br/><ref>Committer's log entry: </ref>Verious fixes for iterators.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom BitArray.java
 DupFilterIterator.java KeyIndex.java<br/><ref>Committer's log entry: </ref>A fix in the duplicate filter iterator to ensure that the iterator can be
 reset properly. The iterator was using its own variable for tracking the
 current node (not the base class' _position variable) but did not
 implement the reset() method).
 PR: bugzilla 1430
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler VariableRef.java<br/><ref>Committer's log entry: </ref>Forgot to add this file with my fix for bug 1430.
 PR: bugzilla 1430
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LastCall.java
 ParameterRef.java PositionCall.java Predicate.java
 RoundCall.java VariableRefBase.java<br/><ref>Committer's log entry: </ref>Fix for combination of wildcards and position predicates in match patterns.
 PR: bugzilla 1532
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>09/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler RelationalExpr.java<br/><ref>Committer's log entry: </ref>bug fix 2838, (namedtemplate test)<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fix to prevent escaping of the '"' character. This character should only
 be escaped inside attribute values, and not in text nodes.
 PR: bug 2952
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fix for ChildrenIterator to speed up last() and position() calls.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java<br/><ref>Committer's log entry: </ref>This fix may affect a series of bugs. The AbsoluteIterator (/foo/bar/... etc.)
 did not update its _position variable, causing position() to return wrong
 values if called more than once.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 MethodGenerator.java<br/><ref>Committer's log entry: </ref>Added shortcut to call the reset() method on any iterator.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Fix to ensure that node iterators stored inside parameters are clones for
 each time the parameter is referenced. If this is not done then the node
 iterator will be in an unstable state after it has been referenced once.
 PR: bugzilla 3238
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>A fix for layers of parent location paths and steps representing an
 XPath pattern/expression like /foo/*/bar
 PR: bugzilla 3311
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ParameterRef.java
 ParentLocationPath.java Predicate.java<br/><ref>Committer's log entry: </ref>Removed a change from yesterday that caused a pretty bad regression in
 the position() and last() functions. Also changed a line un Param.java
 to add more information in debug outout.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fix to prevent complaints about illegal namespace declarations in output.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler VariableBase.java
 WithParam.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Added escaping of special characters in parameter names when passed to a
 template using &lt;xsl:with param/&gt;.
 PR: bugzilla 3324
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java<br/><ref>Committer's log entry: </ref>minor edit to usuage for -s option<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Transform.java<br/><ref>Committer's log entry: </ref>Added functionality behind the '-s' flag in the Transform command-line tool.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java
 Transform.java<br/><ref>Committer's log entry: </ref>Fixed two compile errors (bad, bad, bad).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOM.java
 java/src/org/apache/xalan/xsltc/compiler LastCall.java
 PositionCall.java
 java/src/org/apache/xalan/xsltc/dom DOMAdapter.java
 DOMImpl.java MultiDOM.java<br/><ref>Committer's log entry: </ref>Fixed the getTypedPosition() and getTypedLast() methods of the DOM. These
 were used to implement XPath patterns such as /foo/bar[8]/baz.
 PR: bugzilla 2803
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Added a little method to the output post-processor to replace whitespaces
 in URLs by "%20" sequences. This is all the escaping I think we should
 bother our heads doing.
 PR: bugzilla 1512
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOM.java
 java/src/org/apache/xalan/xsltc/compiler Constants.java
 Step.java
 java/src/org/apache/xalan/xsltc/dom DOMAdapter.java
 DOMImpl.java MultiDOM.java NthIterator.java<br/><ref>Committer's log entry: </ref>Two fixes in this one. One to make sure that the context-node is set correctly
 when applying templates using an iterator that has a predicate that tests on
 '.' (the current node), such as select="foo/bar[. = 'blob']". The other fix
 is for the nth position iterator, that failed to count to n backwards in
 cases when the underlying iterator was reverse.
 PR: bugzilla 2954 (two bugs in one, really)
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>A fix for CDATA elements. The tags of CDATA sections were passed through the
 output post-processor's character escaping function but should be passed
 directly to the SAX handler.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 NthIterator.java<br/><ref>Committer's log entry: </ref>The fix for 2954 introduced a regression, so I am pulling out the fix.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom NthIterator.java<br/><ref>Committer's log entry: </ref>A revised fix for bug 2954, that does not cause the regressions previously
 sown by some tests.
 PR: bugzilla 2954 (revised fix)
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>A fix for the last() function for children iterators.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fixed the descendant iterator so that it does not return text-nodes
 for descendant::*
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Import.java
 Param.java Stylesheet.java<br/><ref>Committer's log entry: </ref>Fix for resolving mutiple defined global parameters and variables. The
 Import class has been fixed to set import precedences properly, and the
 Param class has been changed to use the import precedence to resolve
 between multiple definitions of the same variable/parameter.
 PR: bugzilla 3404
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 ClassGenerator.java<br/><ref>Committer's log entry: </ref>Forgot this file in my last update.
 Submitted by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 NthIterator.java<br/><ref>Committer's log entry: </ref>Another fix for the preceding-sibling iterator. It appeared that this
 iterator returned its nodes in the wrong order, and this was the reason
 why the position iterator (used to implement preceding-siblling::*[n])
 did not return the correct node. It is quite amazing that this iterator
 has been returning nodes in the wrong order for so long without any of
 us notising, and hopefully this fix will help eliminate a few of our
 open bugs.
 PR: bugzilla 2954
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Param.java
 Stylesheet.java Variable.java VariableBase.java<br/><ref>Committer's log entry: </ref>Fix to resolving multiple defined global variables or parameters.
 PR: bugzilla 3404
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Optimisation for string-2-int and real-2-int conversions.
 PR: bugzilla 3448
 Obtained from: n/a
 Submitted by: John Howard (johnh@schemasoft.com)
 Reviewed by: morten@xml.apache.org<br/><br/></li>
  <li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Param.java
 Step.java Variable.java VariableBase.java xpath.cup
 java/src/org/apache/xalan/xsltc/dom DOMAdapter.java
 DOMImpl.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Fix for nth-position typed descendant iterators (previously not fully
 implemented).
 PR: bugzilla 3468
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fix for our handling of the &lt;xsl:comment? element.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Param.java
 Variable.java<br/><ref>Committer's log entry: </ref>Removed previous attempt to fix forward references in globar vars.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>Fix for allowing LRE as top-level elements in the stylesheet (they will be
 ignored).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java<br/><ref>Committer's log entry: </ref>Fix to make sure all num-numeric values are grouped last in numeric sorts.
 PR: bugzilla 3517
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 NodeIteratorBase.java<br/><ref>Committer's log entry: </ref>A fix to ensure that the current position of any iterator is always kept
 updated. The returnNode() method of the NodeIteratorBase base class updates
 the _position variable for each returned node. This method should be called
 by the next() method of any iterator, except for next() methods that call
 super.next() (because this method calls returnNode() and so _position
 would be incremented twice or more for one returned node).
 PR: bugzilla 3816
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Updated the information returned by the system-property() function.
 xsl:verision returns "1.0"
 xsl:vendor returns "Apache Xalan XSLTC" - must be different from Xalan!!!"
 xsl:vendor-url returns "http://xml.apache.org/xalan-j"
 PR: bugzilla 3470
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>Fix to allow indentation to be turned off XML/HTML output.
 PR: bugzilla 3469
 Obtained from: n/a
 Submitted by: Douglas J. Sellers (douglasjsellers@hotmail.com)
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Output.java
 Parser.java Stylesheet.java<br/><ref>Committer's log entry: </ref>Fix to make sure the one, and only one, xsl:output element is compiled
 per translet (import precedence taken into account).
 PR: bugzilla 3099
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Changed BasisLibrary.formatNumer() (this is the implementation of
 format-number()) so that it correctly formats NaNs into "NaN".
 PR: bugzilla 2890
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Another little update to format-number() to make sure it returns
 "Infinity" and "-Infinity" for infinite numbers.
 PR: bugzilla 2889
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Stylesheet.java<br/><ref>Committer's log entry: </ref>Changed the order in which a stylesheet parses its top-level elements.
 PR: bugzilla 3812
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java
 java/src/org/apache/xalan/xsltc/dom NthIterator.java<br/><ref>Committer's log entry: </ref>Removed a bug in the NthIterator iterator that prevented the iterator from
 properly being reset. This bug manifested itself if the Nth iterator was
 wrapped inside a step iterator.
 PR: bugzilla 3419
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>Added node-ordering for preceding iterators when used in apply-templates
 or value-of elements.
 PR: bugzilla 3463
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>Removed debug statement in Step.java
 Submitted by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DupFilterIterator.java<br/><ref>Committer's log entry: </ref>Modified the DupFilterIterator so that it also orders nodes.
 PR: bugzilla 3466
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Step.java<br/><ref>Committer's log entry: </ref>Fix after a regression for preceding-sibling::* iterator.
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li>
 <li><ref>Committed by </ref>morten@apache.org<ref> on </ref>09/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc Translet.java
 java/src/org/apache/xalan/xsltc/cmdline Transform.java
 java/src/org/apache/xalan/xsltc/dom
 NodeSortRecordFactory.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java
 java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java
 TransformerImpl.java<br/><ref>Committer's log entry: </ref>A fix for the problem with loading auxiliary classes for sorting when
 called from TrAX API.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li></ul>
</s2>
<s2 title="XSLTC source code updates for &xslt4j; 2.2.D10">
<p>XSLTC source code updates:</p>
<ul><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>I added a flag to the compiler/Parser class that is set if the outermost 
element
 in the stylesheet contains a definition of the XSL namespace. The parser 
already
 has a global variable '_target' that is set if the stylesheet contains a
 &lt;?xml-stylesheet?&gt; PI or not. The compiler will now flag an error if neither
 flags are set after the whole XSL/XML input document has been parsed.
 PR: bugzilla 1780
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler UnionPathExpr.java<br/><ref>Committer's log entry: </ref>Added a small fix that orders the expressions inside a union in such a way 
that
 expressions with an attribute axis or attribute node type will be put first.
 PR: bugzilla 2921
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>A small fix that will allow top-level elements of an unknown URI.
 XSLTC now ignored the element(s), while it previously reported an error
 of an unsupported XSLT extension.
 PR: bugzilla 2840
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java DefaultSAXOutputHandler.java
 TextOutput.java<br/><ref>Committer's log entry: </ref>A start on a fix for output DOCTYPE declarations based on the attributes
 of the &lt;xsl:output&gt; element. I also added a fix for bug 2863, to prevent
 us from outputting namespace delcaration that point a prefix to the null
 URI (such as 'xmlns:blob=""').
 PR: bugzilla 2863
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>bug 2553, fixes AbbreviatedAbsoluteLocationPath,
 some relative location paths still give duplicates, will need to filter.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Transform.java
 java/src/org/apache/xalan/xsltc/compiler Output.java
 java/src/org/apache/xalan/xsltc/runtime DefaultRun.java
 DefaultSAXOutputHandler.java TextOutput.java
 java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>Implemented support for the doctype-system and doctype-public attributes
 of the &lt;xsl:output/&gt; element. The translet post-processor (TextOutput) can
 now be instanciated with a ContentHandler and an optional LexicalHandler.
 The LexicalHandler will receive notofications of the DOCTYPE declaration.
 The default SAX output handler now implements both ContentHandler and
 LexicalHandler. The LexicalHandler only handles the startDTD() method,
 by outputting the DOCTYPE declaration, and all other methods are empty.
 The trax.Transformer implementation has also been updated to use the
 LexicalHandler, but I still have not found any way in which a SAX client
 can set the LexicalHandler.
 PR: bugzilla 1504
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslElement.java<br/><ref>Committer's log entry: </ref>A minor change to the class handling the &lt;xsl:element&gt; element to be more
 in-sync with the XSLT 1.0 spec (and M.Kay's book). This in order to make
 it more readable and maintainable. I was trying to debug the code for
 something I thought was a bug, and it was just impossible to navigate.
 This change was necessary, even though the code functioned as it should.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LiteralElement.java
 Parser.java<br/><ref>Committer's log entry: </ref>Fix for outputting all necessary namespace declarations with LREs.
 PR: bugzilla 2863
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom ReverseIterator.java<br/><ref>Committer's log entry: </ref>A fix to allow reverse iterators to be reset (inside nested for-each loops).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/15/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/dom DupFilterIterator.java<br/><ref>Committer's log entry: </ref>bug fix 2553, new iterator to get rid of dups<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/15/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler
 FilteredAbsoluteLocationPath.java<br/><ref>Committer's log entry: </ref>bug fix 2553, new abs location path<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup
 Constants.java<br/><ref>Committer's log entry: </ref>bug fix 2553, updated Constants for dup processing
 and updated CUP rule for AbbreviatedAbsoluteLocationPaths<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java
 DOMImpl.java DupFilterIterator.java
 StepIterator.java UnionIterator.java<br/><ref>Committer's log entry: </ref>Implementation of id() and key() pattern - finally!
 Added a small fix to the DOMImpl$DescendantIterator to prevent NPEs.
 PR: bugzilla 1376
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler IdKeyPattern.java
 KeyCall.java Mode.java Output.java Parser.java
 TestSeq.java xpath.cup<br/><ref>Committer's log entry: </ref>Forgot an 'import' in DupFilterIterator
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc TransletOutputHandler.java
 java/src/org/apache/xalan/xsltc/dom DupFilterIterator.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java DefaultSAXOutputHandler.java
 SAXAdapter.java TextOutput.java
 TransletOutputBase.java<br/><ref>Committer's log entry: </ref>missing file<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>Added another fix for the missing DOCTYPE declaration. XSLTC will now output
 DOCTYPE declarations for HTML output if either doctype-system or doctype-
 public is declared in the &lt;xsl:output&gt; element. XSL output will get a
 DOCTYPE declaration only if doctype-system is declared.
 PR: 1504
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom AbsoluteIterator.java<br/><ref>Committer's log entry: </ref>


<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>turning on filtering, bug 2553<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DupFilterIterator.java<br/><ref>Committer's log entry: </ref>Removed a bad optimisation in the duplicate filter iterator.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler xpath.cup<br/><ref>Committer's log entry: </ref>re-activated the no dups filtering, dont know how
 this got reverted back to no filtering, but it is fixed again.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler IdKeyPattern.java
 Key.java KeyCall.java Parser.java Sort.java
 xpath.cup
 java/src/org/apache/xalan/xsltc/compiler/util
 CompareGenerator.java NodeSortRecordGenerator.java
 java/src/org/apache/xalan/xsltc/dom DTDMonitor.java
 DupFilterIterator.java KeyIndex.java
 NodeSortRecord.java NodeSortRecordFactory.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java BasisLibrary.java<br/><ref>Committer's log entry: </ref>Major update for id() and key(). Patterns containing id() and key() are
 now 100% supported (about time), and id() and key() expressions should
 now work in all (at least most) combinations.
 PR: bugzilla 1376 (!!!) and 2624
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>A small fix for a cleanup I did in the basis library (it broke the
 substring() function)&gt;
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Added small fix to prevent NPE in output handler.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc TransletOutputHandler.java
 java/src/org/apache/xalan/xsltc/compiler Variable.java
 VariableRef.java VariableRefBase.java
 java/src/org/apache/xalan/xsltc/compiler/util
 MultiHashtable.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java
 TextOutput.java TransletOutputBase.java<br/><ref>Committer's log entry: </ref>Added element/attribute prefix information in the internal DOM.
 This should fix some problems we have had with the copy and copy-of
 elements. Added a few lines of code in an attempt to speed up the DOM builder.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DTDMonitor.java<br/><ref>Committer's log entry: </ref>An attempt to optimise the building of the ID index. The previous version of
 this code would traverse the DOM once for each type of element that had a
 defined ID attribute. The new version traverses the DOM once, and looks up
 each element's type in a hashtable to determine its ID attribute type (if 
any).
 The new version of the code does not use string comparisons, like the old one.
 This update was done to compensate for the possible performance degradation of
 having implemented an element/attribute prefix array in the internal DOM.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TemplatesHandlerImpl.java TemplatesImpl.java
 TransformerHandlerImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>Protected some methods in our TrAX code that are not defined in the TrAX API.
 These methods were never intended for public use and should have been defined
 as "protected" to begin with.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslElement.java<br/><ref>Committer's log entry: </ref>Fix for a problem with some combinations of &lt;xsl:element&gt; and namespace
 aliasing. The output lacked the necessary namespace definitions when an
 element created with &lt;xsl:element&gt; was given a qname with a prefix that
 was mapped to some other prefix.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ParameterRef.java<br/><ref>Committer's log entry: </ref>removed typeCheck(), uses the base classes method now<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 VariableRefBase.java<br/><ref>Committer's log entry: </ref>added default typeCheck() to this base class<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler RelationalExpr.java<br/><ref>Committer's log entry: </ref>bug fix 2838, cast to type real if both operands are
 ResultTreeType<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOM.java
 java/src/org/apache/xalan/xsltc/compiler
 AbsoluteLocationPath.java AbsolutePathPattern.java
 AncestorPattern.java ApplyTemplates.java
 BooleanExpr.java CallTemplate.java CastExpr.java
 Constants.java Copy.java CopyOf.java
 DocumentCall.java FilterExpr.java
 FilteredAbsoluteLocationPath.java ForEach.java
 FunctionCall.java Key.java KeyCall.java
 LastCall.java LocalNameCall.java Mode.java
 NameCall.java NamespaceUriCall.java Number.java
 Param.java ParameterRef.java
 ParentLocationPath.java ParentPattern.java
 PositionCall.java Predicate.java
 RelationalExpr.java Sort.java Step.java
 StepPattern.java Stylesheet.java
 SyntaxTreeNode.java Template.java TestSeq.java
 Text.java TransletOutput.java ValueOf.java
 Variable.java VariableRef.java Whitespace.java
 XSLTC.java
 java/src/org/apache/xalan/xsltc/compiler/util
 ClassGenerator.java ErrorMsg.java
 MethodGenerator.java NodeSetType.java NodeType.java
 ResultTreeType.java
 java/src/org/apache/xalan/xsltc/dom Axis.java
 DOMAdapter.java DOMImpl.java LoadDocument.java
 MultiDOM.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java BasisLibrary.java<br/><ref>Committer's log entry: </ref>Changes all calls from the compiled translet code to the DOM to be calls
 to the DOM interface (and not to a specific DOM class). I did this to make
 it possible to plugi in any DOM implementation.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc TransletOutputHandler.java
 java/src/org/apache/xalan/xsltc/compiler Constants.java
 TransletOutput.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java DefaultSAXOutputHandler.java
 TextOutput.java TransletOutputBase.java<br/><ref>Committer's log entry: </ref>Added an &lt;xsltc:output&gt; extension to allow for multiple output files. I know
 that this is not a prioritised task, but I need this for a little project I
 am working on.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Param.java
 ParameterRef.java Variable.java VariableBase.java
 VariableRef.java
 java/src/org/apache/xalan/xsltc/compiler/util
 NodeSetType.java NodeType.java ReferenceType.java
 ResultTreeType.java StringType.java Type.java<br/><ref>Committer's log entry: </ref>A few fixes for the regression caused by my last (huge) putback.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DupFilterIterator.java<br/><ref>Committer's log entry: </ref>A fix for the position() function when using duplicate filter iterators.
 PR: n/
 Obtained from: N/A
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li>
 <li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>08/30/2001<br/><ref>Modified: 
 </ref>java/src/org/apache/xalan/xsltc/runtime SAXAdapter.java<br/><ref>Committer's log entry: </ref>
 Submitted by: Tom Amiro  
 I just added an empty close method to resolve the build problem.<br/><br/></li> 
 </ul>
</s2>
<s2 title="XSLTC source code updates for &xslt4j; 2.2.D9">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Integrated fix for problem with count() function for certain iterators.
 PR: Bugzilla 1407
 Obtained from: n/a
 Submitted by: John Howard &lt;johnh@schemasoft.com&gt;
 Reviewed by: Morten Jorgensen &lt;morten@xml.apache.org&gt;<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc DOM.java
 java/src/org/apache/xalan/xsltc/compiler EqualityExpr.java
 FilterParentPath.java Parser.java Predicate.java
 Step.java SyntaxTreeNode.java Variable.java
 XSLTC.java
 java/src/org/apache/xalan/xsltc/dom DOMAdapter.java
 DOMImpl.java MultiDOM.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java DefaultSAXOutputHandler.java
 TextOutput.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Added code that will speed up predicates such as //foo[@attr=$var],
 //foo[bar = $var] and //foo/[@attr = 'str'].
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Expression.java
 Param.java ParameterRef.java Predicate.java
 Stylesheet.java SyntaxTreeNode.java Variable.java
 VariableRef.java WithParam.java<br/><ref>Committer's log entry: </ref>Fix for parameter and variable handling. This fix makes sure variable slots
 are released once a variable goes out of scope. I have also extracted common
 functionality from Variable and Param into VariableBase, and similarly
 extracted some functionality from VariableRef and ParameterRef into a new
 class VariableRefBase. This can potentially make some code more efficient as
 one can test for 'if (blob instanceof VariableBase)' instead of testing on
 both Variable and Param.
 PR: Bugzilla 2661 and 2699
 Obtained from: n/a
 Submitted by: John Howard &lt;JohnH@schemasoft.com&gt;
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/31/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler VariableBase.java
 VariableRefBase.java<br/><ref>Committer's log entry: </ref>Forgot to add these two in my last putback.
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java
 Step.java Stylesheet.java XSLTC.java<br/><ref>Committer's log entry: </ref>Removed type-cast error in Stylesheet.java
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler VariableBase.java
 java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>Removed some of the linefeeds we output in the default SAX output handler
 to produce output more similar to Saxon (for testing purposes).
 Added a test for null-pointers in the new VariableBase class.
 PR: bugzilla 2922 &amp; 2598
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org`<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom NodeCounter.java<br/><ref>Committer's log entry: </ref>Added a small fix to prevent unwanted output when using the xsl:number
 element.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Constants.java
 If.java Key.java Predicate.java Step.java When.java
 java/src/org/apache/xalan/xsltc/compiler/util
 CompareGenerator.java
 java/src/org/apache/xalan/xsltc/dom NodeCounter.java
 java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>A few changes to make our output look more like Saxon's (to simplyfy
 test diffs).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java
 DOM2SAX.java<br/><ref>Committer's log entry: </ref>add support for DOMResult handling<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/01/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/><ref>Committer's log entry: </ref>work in progress, converted needed for DOMResult<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>added setting of systemId in DOMSource handling<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax SAX2DOM.java
 TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerHandlerImpl.java<br/><ref>Committer's log entry: </ref>Added an implementation of the TransformerHandler interface of TrAX/JAXP.
 Implemented the 4 methods in TransformerFactory to instanciate this
 TransformerHandler implementation.
 Added an attribute of the TransformerFactory which contains the default
 name for generated translet classes (the default name is GregorSamsa from
 Kafka's Metemorphosis), but should be set by the user in cases where the
 Templates implementation cannot get the systemId from the Source object.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java
 TransformerHandlerImpl.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax
 TemplatesHandlerImpl.java<br/><ref>Committer's log entry: </ref>Added missing TemplatesHandlerImpl file (implementation of the TrAX
 TemplatesHandler interface).
 Added initial implementation of getAssociatedStylesheet() in
 the TransformerFactoryImpl class.
 Changed behaviour of TransformerHandlerImpl class with regard to
 the setResult() method. This method now has to be called before
 startDocument() is called, which gives XSLTC the same behaviour
 as Xalan.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 XSLTC.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Added support for the TransformerFactory's getAssociatedStylesheet()
 method. Added similar methods to the native XSLTC API, as they can come
 in handy.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Constants.java
 DocumentCall.java
 java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/><ref>Committer's log entry: </ref>Fix for the document() function. The code compiled by DocumentCall now
 passes the context URI to the LoadDocument.document() method, and the
 document() method resolves the base/new URIs and constructs an absolute
 path/URI to the document to load.
 PR: bugzilla 2832
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>new recursive parse(InputSource) implemented<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>upated<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>updated again<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 java/src/org/apache/xalan/xsltc/trax SAX2DOM.java<br/><ref>Committer's log entry: </ref>Fix to get around problem with Crimson. Crimson does not like attribute-
 nodes to be created with 'null' or "" namespace URI. Added an if-test to
 invoke setAttribute(name, value) instead of setAttributeNS(uri, name, value).
 Had to add a little test to DOMImpl$DOMBuilder.makeAttributeNode() to get
 around an internal NPE problem.
 PR: n/a
 Obtained from: n.a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler CopyOf.java
 Step.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 UnionIterator.java<br/><ref>Committer's log entry: </ref>Fix for union-iterators wrapping one or more attribute-iterators.
 Attributes should be wrapped in TypedAttributeIterator objects and not
 SingletonIterator objects when they occur insude unions.
 Fix for copying attribute nodes using &lt;xsl:copy&gt; and &lt;xsl:copy-of&gt;
 PR: bugzilla 2603
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom LoadDocument.java<br/><ref>Committer's log entry: </ref>Added code behind the document() function to force the parser to be
 namespace aware (Crimson is pr. default, Xerces is not).
 PR: bugzilla 2862
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fix to prevent escaping of attribute values in HTML output.
 PR: bugzilla 3003
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fix for grouping a sequence of text nodes inside one CDATA section.
 PR: bugzilla 3005
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ForEach.java
 xpath.cup
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>Fix for passing node-sets as parameters into a template with a for-each loop.
 The ForEach class resets its node iterator by default. This behaviour is not
 desierd for iterators that are passed in through a parameter, so I added an
 it-test that checks if the iterator is of type 'Reference'.
 PR: bugzilla 2468
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 AbsolutePathPattern.java<br/><ref>Committer's log entry: </ref>Fix for a certain combination of absolute path patterns and ancestor patterns,
 such as &lt;xsl:template match="/foo//*"/&gt;.
 PR: bugzilla 2836
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler DocumentCall.java<br/><ref>Committer's log entry: </ref>Fix for document() function. Prevents run-time error.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslElement.java<br/><ref>Committer's log entry: </ref>Added a test to the &lt;xsl:element&gt; element to verify that the element name
 given in the 'name' attribute contains something other than an empty string.
 PR: bugzilla 2794
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LiteralElement.java<br/><ref>Committer's log entry: </ref>Applied a fix to our class for handling literal result elements. The only
 attributes in the XSLT namespace we handle in LREs are exclude-result-prefixes
 and extension-element-prefixes. We have a test to check if an attribute is
 in the XSLT namespace, and if it is we ignore the attribute. This test was
 placed before the test for the two XSLT attributes we do want to handle,
 causing us to ignore all xsl:exclude-result-prefixes attributes in LREs.
 PR: bugzilla 1506
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Attribute.java
 AttributeSet.java Copy.java UseAttributeSets.java
 XslAttribute.java
 java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Fix and performance improvement for attribute sets.
 PR: bugzilla 2536
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Copy.java<br/><ref>Committer's log entry: </ref>Fix for use of attribute sets with the xsl:copy element. We were a bit too
 restrictive in our tests to see if it was safe to send the attributes to
 the output handler. We only compiled in a test to see if the copied node
 was an elment, but should also have tested if the xsl:copy element's
 parent node was a LRE or a xsl:element element.
 PR: bugzilla 2538
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li></ul>
</s2>
<s2 title="XSLTC source code updates for &xslt4j; 2.2.D8">
<p>XSLTC source code updates:</p><ul><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>Added support for SAXSource and SAXResult in TransformerFactoryImpl
 and TransformerFactory. I had to add a new consturctor the the
 default SAX output handler (in the xsltc runtime library) to acommodate
 the SAXResult TrAX output handler.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Added default error-reporting behaviour for our trax code (error messages
 are dumped to System.err).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>in progress, adding DOMSource support<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>07/20/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>new class, DOM2SAX, supports DOMSources, in progress<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Import.java
 Include.java Stylesheet.java XSLTC.java
 java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler SourceLoader.java<br/><ref>Committer's log entry: </ref>Added a SourceLoader interface to the compiler package. This interface can
 be used to plug in an external document loader for imported and/or
 included stylesheets. The trax.TransformerImpl class is updated to
 implement this interface and act as an adapter between the internal XSLTC
 SourceLoader interface and TrAX's URIResolver interface.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@apache.org
 Reviewed by: morten@apache.org<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime Constants.java<br/><ref>Committer's log entry: </ref>Added the NAMESPACE_FEATURE constant. Checked to see if it was in
 org.xml.sax first, but it wasn't. Since this constant is used both
 at compile and runtime, it should be in the runtime Constants class
 as well as the compile Constants class. Runtime code needs to be
 kept separate from the compile time code.<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime DefaultRun.java
 java/src/org/apache/xalan/xsltc/cmdline Transform.java
 java/src/org/apache/xalan/xsltc/dom DocumentCache.java<br/><ref>Committer's log entry: </ref>Added import for org.apache.xalan.xsltc.runtime.Constants;
 to the runtime classes that need to use the NAMESPACE_FEATURE constant
 and had them reference it rather than define it themselves.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>minor changes for DOMSource impl support<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Added DOMSource support for stylesheet<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax DOM2SAX.java<br/><ref>Committer's log entry: </ref>updated convertor which supports DOMSource impl<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>Added a small fix to the compiler (XSLTC.java) to make sure that the SAX
 parser reference was not reset prior to compiling the translet.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>Added support for DOMSource as input to our Transformer implementation<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Import.java
 Sort.java
 java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java
 NodeSortRecordFactory.java<br/><ref>Committer's log entry: </ref>For some reason I decided to optimise the &lt;xsl:sort&gt; functionaility. The
 sort records we used has some global values stored behind methods, but are
 now static fields. Somewhat faster.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Import.java
 Include.java<br/><ref>Committer's log entry: </ref>Fix for problem with import &amp; include introduced with the latest updated
 for TrAX URIResolvers.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Integrated fix for problem with count() function for certain iterators.
 PR: Bugzilla 1407
 Obtained from: n/a
 Submitted by: John Howard &lt;johnh@schemasoft.com&gt;
 Reviewed by: Morten Jorgensen &lt;morten@xml.apache.org&gt;<br/><br/></li></ul>
</s2>
<s2 title="XSLTC source code updates for &xslt4j; 2.2.D7">
<ul><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Constants.java
 Param.java StepPattern.java Stylesheet.java
 SyntaxTreeNode.java Variable.java WithParam.java
 java/src/org/apache/xalan/xsltc/dom KeyIndex.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java BasisLibrary.java
 DefaultRun.java Parameter.java TextOutput.java<br/><ref>Committer's log entry: </ref>Loads of small fixes and a good few comments added to the source code.
 The major fixes are one fix for variable/parameter handlingi and one for
 key/id index handling. XSLTC now correctly updates the value of parameters
 with changing default values, such as with
 &lt;xsl:param name="foo" select="current()"/&gt;.
 Also updated bit-arrays to correctly return single node ids, so that the
 key() and id() functions return the correct number of nodes (they would
 sometimes skip the first node in the defined node set for the key/id).
 Added some structure and loads of comments to the Translet base class.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 AncestorPattern.java AttributeSet.java
 CallTemplate.java CastExpr.java EqualityExpr.java
 Expression.java FunctionCall.java If.java
 Import.java Include.java Mode.java NameBase.java
 Param.java ParameterRef.java Parser.java
 StepPattern.java SyntaxTreeNode.java Template.java
 TestSeq.java Variable.java VariableRef.java
 XSLTC.java XslAttribute.java
 java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java
 ReferenceType.java
 java/src/org/apache/xalan/xsltc/dom MultiDOM.java
 StepIterator.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>A wide range of fixes provided by Erwin Bolwidt.
 o) fix for long IF and GOTO instructions inside translets.
 'wide' GOTOs are now used (GOTO_W) instead of plain GOTO
 to allow longer jump offsets
 o) fix for illegal field/method names in the translet.
 Methods and fields no longer contain the '.' or '-' characters
 o) source filenames (and if possible also line numbers) are now
 provided with error and warning messages
 o) external functions that are not supported by XSLTC do not cause
 compile errors. They will still cause a warning message at
 compile-time if they are not wrapped in proper &lt;xsl:if&gt; or
 &lt;xsl:when&gt; elements that test on the availability of the function,
 and will cause a runtime error if the function is attempted called.
 o) added type cast from reference-type to node-type
 o) some other smaller fixes to prevent null-pointer exceptions
 Other changes:
 o) code cleanup and some added comments
 PR: n/a
 Obtained from: n/a
 Submitted by: Erwin Bolwidt &lt;ejb@klomp.org&gt;
 Reviewed by: Morten Jorgensen &lt;morten@xml.apache.org&gt;<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 SyntaxTreeNode.java XSLTC.java<br/><ref>Committer's log entry: </ref>Cleaned up the XSLTC compiler class in an attempt to make it more flexible.
 This class was originally written as a command-line interface, but it has
 now grown huge and messy. I separated the command-line stuff from the
 methods that make up the actual functionality and made some methods public.
 This is part of the preparation for our new implementation of the JAXP
 Templates object.
 PR: n/a
 Obtained from: n.a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime DefaultRun.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java
 Transform.java<br/><ref>Committer's log entry: </ref>Extracted the command-line stuff from the core XSLTC packages. The command-
 line handling is now in xalan.xsltc.cmdline.Compile and
 xalan.xsltc.cmdline.Transform. The command-line stuff is still left in
 xalan.xsltc.compiler.XSLTC and xalan.xsltc.runtime.DefaultRun for backwards
 compatability. This should be removed shortly.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/cmdline Compile.java
 java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/cmdline/getopt GetOpt.java
 GetOptsException.java IllegalArgumentException.java
 MissingOptArgException.java
 java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java
 TransformerImpl.java<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/util/getopt GetOpt.java
 GetOptsException.java IllegalArgumentException.java
 MissingOptArgException.java<br/><ref>Committer's log entry: </ref>Moved the org.apache.xalan.xsltc.util.getopt package to
 org.apache.xalan.xsltc.cmdline.getopt. Also added some skeleton
 code in a new org.apache.xalan.xsltc.trax directory.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransletTemplates.java<br/><ref>Committer's log entry: </ref>minor adjustment
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>removed obselete try/catch<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java
 java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java
 TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/trax TransletTemplates.java<br/><ref>Committer's log entry: </ref>A first stab at our new TrAX design.`
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java
 java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java
 TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>A few minor adjustments to yesterdays JAXP/TrAX implementation. These is one
 change in the way the compiler (XSLTC) generates bytecode arrays, and the
 rest is basically a cleanup of error reporting and a few added comments.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DocumentCache.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax OutputSettings.java<br/><ref>Committer's log entry: </ref>Reduced the refresh rate of the DocumentCache to 1 second.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>07/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DocumentCache.java<br/><ref>Committer's log entry: </ref>Submitted by: Tom Amiro
 Fixes bug 1591. Changed the lastModified() method to return
 the correct timestamp for local files beginnig with the "file:"
 protocol. Incorporated Brian Ewin's suggestion to use URLdecode.
 Todd Miller and Morten Jorgensen<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java
 java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java
 TransformerFactoryImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>Added some javadoc comments to our trax stuff. Added preliminary support
 for getting/setting output properties, and for getting/setting URL resolvers.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc TransletOutputHandler.java
 java/src/org/apache/xalan/xsltc/cmdline Transform.java
 java/src/org/apache/xalan/xsltc/compiler Output.java
 Stylesheet.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java DefaultRun.java
 DefaultSAXOutputHandler.java SAXAdapter.java
 StringValueHandler.java TextOutput.java
 TransletOutputBase.java<br/><ref>Committer's log entry: </ref>A series of changes to the XSLTC output handling to accomodate the
 set/getOutputSettings() methods in the TrAX API.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Fixed the handling of the 'cdata-section-elements' attribute of the
 &lt;xsl:output&gt; element. Previously we output the whole element, including
 all contents, child elements and the start- and end-tags in one big
 CDATA section. We now correctly output only immediate text child-nodes
 as CDATA sections.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc Translet.java
 java/src/org/apache/xalan/xsltc/dom LoadDocument.java
 java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java
 java/src/org/apache/xalan/xsltc/trax TransformerImpl.java<br/><ref>Committer's log entry: </ref>Added implementation of get/setOutputProperties() of the Transformer
 implementation.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>07/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DocumentCache.java<br/><ref>Committer's log entry: </ref>Added (a rather brutal) handling of all Exceptions thrown in the
 DocumentCache.getLastModified() method. This class is provided only
 as an example/skeleton, but should still - for various reasons -
 be provided in the base 'xsltc.dom' package.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li></ul>
</s2>
<s2 title="XSLTC source code updates for the &xslt4j; 2.2.D releases up to and including 2.2.D6">
<ul><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>05/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Text.java<br/><ref>Committer's log entry: </ref>bug fix 1403, output escaping fixed<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>05/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>bug fix 1403, output escaping fixed<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java<br/><ref>Committer's log entry: </ref>stylesheet compilation error listening added for
 TrAX support<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>stylesheet compilation error listening added for
 TrAX support<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>stylesheet compilation error listening added for
 TrAX support<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Transformer factory's setErrorListener() now throws
 IllegalArgumentException is listener is null<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>translet transformation errors now forwarded to
 TrAX error listener when applicable<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>translet transformation errors now forwarded to
 TrAX error listener when applicable<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime AttributeList.java<br/><ref>Committer's log entry: </ref>Added a constructor for copying an org.xml.sax.Attributes to our
 org.apache.xalan.xsltc.runtime.AttributeList.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ApplyImports.java
 ApplyTemplates.java Attribute.java
 AttributeSet.java AttributeValueTemplate.java
 BinOpExpr.java CallTemplate.java Comment.java
 ConcatCall.java Constants.java Copy.java
 CopyOf.java DecimalFormatting.java
 DocumentCall.java Expression.java Fallback.java
 ForEach.java FormatNumberCall.java
 FunctionAvailableCall.java FunctionCall.java
 If.java Import.java Include.java Key.java
 LiteralAttribute.java LiteralElement.java
 LiteralExpr.java LogicalExpr.java Message.java
 NamespaceAlias.java Number.java Output.java
 Param.java Parser.java ProcessingInstruction.java
 QName.java RelationalExpr.java Sort.java
 Stylesheet.java SymbolTable.java
 SyntaxTreeNode.java Template.java Text.java
 TransletOutput.java UnaryOpExpr.java ValueOf.java
 Variable.java When.java Whitespace.java
 WithParam.java XSLTC.java XslAttribute.java
 XslElement.java xpath.cup
 java/src/org/apache/xalan/xsltc/compiler/util
 MethodType.java<br/><ref>Committer's log entry: </ref>Removed the intermediate DOM used to contain the input document (the
 stylesheet) for the compiler. The compiler now uses SAX2 to import
 the stylesheet, and all references to DOM interfaces have been removed.
 This means that most classes representing XSL elements have been
 changed, but most classes representing XPath functions, expressions
 and patterns are unchanged.
 PR: After suggestion from Scott Boag
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/06/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler
 UnsupportedElement.java<br/><ref>Committer's log entry: </ref>Adding a class for handling unsupported stylesheet elements
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Minor fix to make sure that attributes are processed in the correct order.
 PR: n/a
 Obtained from: n.a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>Minor change in output indentation/line feeds.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xmp.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 LocationPathPattern.java Parser.java Template.java<br/><ref>Committer's log entry: </ref>Fixed the code that resolves conflicts between templates with identical
 patterns. The order of the templates is not taken into account - after
 import precedence and priority has been checked.
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 DefaultSAXOutputHandler.java<br/><ref>Committer's log entry: </ref>Reverted changes to SAX output handler.
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 Template.java xpath.cup<br/><ref>Committer's log entry: </ref>unified Parser error reporting to use Mortens
 reportError routine<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler BinOpExpr.java
 FunctionCall.java Otherwise.java Param.java
 RelationalExpr.java Stylesheet.java
 SyntaxTreeNode.java Variable.java When.java
 XSLTC.java XslElement.java<br/><ref>Committer's log entry: </ref>Updated a few classes that were still calling Parser.addError(),
 Parser.addWarning() and Parser.addFatalError() to use the new common
 error handler Prarser.reportError(int category, ErrorMsg message).
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Parser.java
 java/src/org/apache/xalan/xsltc/runtime DefaultRun.java<br/><ref>Committer's log entry: </ref>Added two lines of code to explicitly set the feature
 "http://xml.org/sax/features/namespaces" of the SAXParser to "true".
 The default is "true" but xerces seems to set it to "false", and this
 caused some problems for our Stylesheet and XML doc parsers (which are
 both using SAX2).
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Constants.java
 Parser.java
 java/src/org/apache/xalan/xsltc/runtime DefaultRun.java<br/><ref>Committer's log entry: </ref>A few more changes to make sure the parsers used are namespace aware.
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LiteralElement.java
 SyntaxTreeNode.java XslAttribute.java
 XslElement.java<br/><ref>Committer's log entry: </ref>The change from using DOM to using SAX in the stylesheet input caused some
 of the elements in the Abstract Syntax Tree (AST) to be out of order. I
 added a few lines of code to the xsl:element/attribute handling code to
 fix this.
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler AttributeSet.java
 Choose.java Constants.java If.java
 LiteralElement.java Stylesheet.java
 UseAttributeSets.java When.java XSLTC.java
 XslAttribute.java<br/><ref>Committer's log entry: </ref>This putback contains three fixes:
 o) fix for complex &lt;xsl:attribute-set&gt; inheritance structures
 o) fix for xsl:element-available() function used in &lt;xsl:when&gt; or
 &lt;xsl:if&gt; to test support for various extension elements
 o) fix for preserving namespace prefixes for &lt;xsl:attribute&gt; output.
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Constants.java
 UseAttributeSets.java ValueOf.java
 XslAttribute.java
 java/src/org/apache/xalan/xsltc/compiler/util
 AttributeSetMethodGenerator.java<br/><ref>Committer's log entry: </ref>Fix to allow iterator access within attribute sets. This is necessary for
 attribute sets that contain attributes whose values are generated by XSL
 functions such as position() and last().
 Obtained from: test mk013
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime TextOutput.java<br/><ref>Committer's log entry: </ref>Added output character escaping for non-breaking space characters.
 I cannot believe we've waited this long before doing this. Madness!
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java
 Parser.java<br/><ref>Committer's log entry: </ref>support for java.io.InputStream StreamSources<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 TransletTemplates.java<br/><ref>Committer's log entry: </ref>support for java.io.InputStream StreamSources<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LogicalExpr.java<br/><ref>Committer's log entry: </ref>Fix for bug 1511. Predicates on the format ((a or b) and c) are not
 handled correctly. I added a small piece of code to direct the true-list
 of the OR expression to the beginning of the AND test.
 PR: Bugzilla 1511
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java
 TextOutput.java<br/><ref>Committer's log entry: </ref>Fix attribute node-set comparisons. There was a bug in one of the compare()
 methods of the BasisLibrary class which prevented attribute values from
 being compared. The method compared node IDs instead of node values.
 Pretty stupid bug, but now it is solved anyway.
 PR: Bugzilla 1409
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Mode.java<br/><ref>Committer's log entry: </ref>Fix to make sure that the implicit "text()" pattern is run when templates
 containing "text()" in their pattern fail. XSLTC would not previously
 invoke the built-in pattern for "text()" if a stylesheet contained a
 template such as &lt;xsl:template pattern="foo/bar/text()" .../&gt;
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XslElement.java<br/><ref>Committer's log entry: </ref>Modified test for legal element names in &lt;xsl:element&gt;. The element name is
 treated as an attribute value. Whitespaces are not allowed in plain text
 element names, but should be allowed inside "{...}" attribute values.
 PR: Bugzilla 1489
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>A fix for the preceding:: iterator
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom DOMImpl.java<br/><ref>Committer's log entry: </ref>Minor re-adjustment to last fix for preceding:: iterator
 PR: 1407
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ForEach.java
 XSLTC.java<br/><ref>Committer's log entry: </ref>Fix to prevent compiler warnings to be output more than once.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler AttributeSet.java<br/><ref>Committer's log entry: </ref>Final fix (for now) for attribute sets. In cases where multiple
 &lt;xsl:attribute-set.../&gt; elements make up one attribute set (ie. they share
 the same name) attributes that occured last in the stylesheet will take
 precedence.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added support for java.io.InputStream StreamSources<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LogicalExpr.java<br/><ref>Committer's log entry: </ref>Fix for code handling logical expressions and combinations of logical
 expressions. Mindblowing stuff, but it now seems to work as it should.
 Added another few lines of code to properly direct the program flow in
 compiled predicates with various combinations of "and" and "or" expressions.
 PR: Bugzilla 1511
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/dom SingletonIterator.java<br/><ref>Committer's log entry: </ref>Fix for singleton iterators encapsulating variable references.
 PR: Bugzilla 1412
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LiteralElement.java<br/><ref>Committer's log entry: </ref>Added one-line fix to prevent null-pointer error. Simple code cleanup.
 PR: n/a
 Obtained from: suggestion by Guoliang Cao &lt;cao@ispsoft.com&gt;
 Submitted by: cao@ispsoft.com
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler LogicalExpr.java<br/><ref>Committer's log entry: </ref>Fix to prevent compile-time null-pointer exceptions for certain logical
 expressions. Some nexted AND-expressions would cause this error because
 their true-list would not be backpatched. This would result in an
 instruction list with one or more branch instructions with no target,
 such as a GOTO(null) or an IFEQ(null) instruction.
 PR: none, bug found in test run and fixed immediately
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>06/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler
 AbsoluteLocationPath.java ApplyImports.java
 ApplyTemplates.java CastExpr.java CopyOf.java
 DocumentCall.java EqualityExpr.java Expression.java
 FilterExpr.java FilterParentPath.java ForEach.java
 FunctionCall.java IdKeyPattern.java Key.java
 KeyCall.java NameBase.java ParentLocationPath.java
 Parser.java Predicate.java RelationalExpr.java
 Step.java UnionPathExpr.java
 java/src/org/apache/xalan/xsltc/compiler/util
 NodeSetType.java NodeType.java ReferenceType.java
 ResultTreeType.java Type.java
 java/src/org/apache/xalan/xsltc/dom UnionIterator.java
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>OK, I'm going to make a wild guess and assume that sboag's recent commit
 of /NodeSet/NodeSetDTM/ got a little out of control and shouldn't have
 gone down into org.apache.xalan.xsltc - undone to fix compile error<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/18/2001<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 NodeSetType.java<br/><ref>Committer's log entry: </ref>Removing NodeSetType (renamed to NodeSetDTMType).
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util Type.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 NodeSetDTMType.java<br/><ref>Committer's log entry: </ref>
<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler/util Type.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 NodeSetType.java<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/compiler/util
 NodeSetDTMType.java<br/><ref>Committer's log entry: </ref>


<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ContainsCall.java
 FunctionCall.java If.java LogicalExpr.java
 Param.java QName.java StartsWithCall.java
 SymbolTable.java SyntaxTreeNode.java Template.java
 Variable.java xpath.cup
 java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java<br/><ref>Committer's log entry: </ref>Fix for function calls used as clauses in logical expressions.
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>Tom.Amiro@Sun.COM<ref> on </ref>06/19/2001<br/><ref>Committer's log entry: </ref>
&gt; Fix for function calls used as clauses in logical expressions.
&gt; Submitted by: morten@xml.apache.org
&gt; Reviewed by: morten@xml.apache.org
&gt;
&gt;<br/><br/></li><li><ref>Committed by </ref>Morten.Jorgensen@sun.com<ref> on </ref>06/19/2001<br/><ref>Committer's log entry: </ref>
&gt; &gt; Fix for function calls used as clauses in logical expressions.
&gt; &gt; Submitted by: morten@xml.apache.org
&gt; &gt; Reviewed by: morten@xml.apache.org
&gt; &gt;
&gt; &gt;<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added check to see if stylesheet is already an URL<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 TransletTemplates.java<br/><ref>Committer's log entry: </ref>added check to see if stylesheet is already an URL<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/25/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/runtime TrAXFilter.java<br/><ref>Committer's log entry: </ref>proto<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>removed debug statements<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/26/2001<br/><ref>Removed: </ref>java/src/org/apache/xalan/xsltc/runtime TrAXFilter.java
 TransformerFactoryImpl.java TransletTemplates.java<br/><ref>Committer's log entry: </ref>in process of moving these to new subdir<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/26/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/trax TrAXFilter.java
 TransformerFactoryImpl.java TransletTemplates.java<br/><ref>Committer's log entry: </ref>moved from runtime subdir to its own trax subdir<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>fixed bug with deriving translet name from
 stylesheet name that included paths, e.g. /tmp/foo.xsl<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java<br/><ref>Committer's log entry: </ref>This update allows variables that contain references to result-tree fragments
 to be used inside position filters.
 PR: n/a
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/runtime
 AbstractTranslet.java<br/><ref>Committer's log entry: </ref>added url handling in doTransform<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>added a new sys property called 'transletPool'
 to allow user to set the destination directory for generated translets<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/trax TransletTemplates.java<br/><ref>Committer's log entry: </ref>added a new sys property called 'transletPool'
 to allow user to set the destination directory for generated translets<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>06/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler XSLTC.java<br/><ref>Committer's log entry: </ref>made private method setDestDirectory() public to
 support the new transletPool system property.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Predicate.java
 Step.java Stylesheet.java VariableRef.java
 java/src/org/apache/xalan/xsltc/compiler/util
 MethodGenerator.java NodeSortRecordGenerator.java
 ResultTreeType.java TestGenerator.java<br/><ref>Committer's log entry: </ref>Various bugfixes in the way auxiliary classes access variables/fields in
 the main translet class. Fixes a few VAR tests and customer tests.
 Pmorten@xml.apache.org:<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler Choose.java
 ElementAvailableCall.java
 FunctionAvailableCall.java Parser.java When.java<br/><ref>Committer's log entry: </ref>Fix for element-available() and function-available() calls. Ties these
 calls to tables in the XSL parser and the symbol-table (the actual
 implementation) instead of using redundant and not-up-to-date tables
 in the classes that implement the X-avaiable() calls.
 I also cleaned up the Choose call so that it now properly handles
 all types of function calls in the xsl:when elements' test clause.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>06/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc/compiler ForEach.java
 Param.java Variable.java
 java/src/org/apache/xalan/xsltc/compiler/util
 MethodGenerator.java<br/><ref>Committer's log entry: </ref>Added a fix for local variables inside nested xsl:for-each elements.
 Local variables are usually not initialized to any default value (such as
 with general Java classes), because code compiled for &lt;xsl:variable&gt;
 elements always assign values to variable slots before they are accessed.
 But the code structure generated by nested &lt;xsl:for-each&gt; elements is too
 much for the JVMs verifier to get around, so we have to initialize all
 local variables inside such loops to zero, false, null, whatever.
 This takes care some of our runtime-errors caused by apparent corrupt code.
 (The JVMs verifier thinks that it is corrupt, but it isn't really.)
 PR: none
 Obtained from: n/a
 Submitted by: morten@xml.apache.org
 Reviewed by: morten@xml.apache.org<br/><br/></li></ul>
 </s2>
 <s2 title="XSLTC Changes for &xslt4j; 2.1.0">
<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 <link idref="xsltc_usage">XSLTC</link> 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.
<ref>See <jump href="xsltc/index.html">XSLTC Design Documents</jump>.</ref></p>
<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>com.sun.xslt</code> to <code>org.apache.xalan.xsltc</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>
</s2> 
</s1>
