~vcs-imports/xena/trunk

« back to all changes in this revision

Viewing changes to ext/src/xalan-j_2_7_1/xdocs/sources/xalan/history.xml

  • Committer: matthewoliver
  • Date: 2009-12-10 03:18:07 UTC
  • Revision ID: vcs-imports@canonical.com-20091210031807-l086qguzdlljtkl9
Merged Xena Testing into Xena Stable for the Xena 5 release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version="1.0" standalone="no"?> 
 
2
<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd">
 
3
<!--
 
4
 * Copyright 1999-2004 The Apache Software Foundation.
 
5
 *
 
6
 * Licensed under the Apache License, Version 2.0 (the "License");
 
7
 * you may not use this file except in compliance with the License.
 
8
 * You may obtain a copy of the License at
 
9
 *
 
10
 *     http://www.apache.org/licenses/LICENSE-2.0
 
11
 *
 
12
 * Unless required by applicable law or agreed to in writing, software
 
13
 * distributed under the License is distributed on an "AS IS" BASIS,
 
14
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
15
 * See the License for the specific language governing permissions and
 
16
 * limitations under the License.
 
17
-->
 
18
<!-- $Id: history.xml,v 1.2 2009/12/10 03:18:29 matthewoliver Exp $ -->
 
19
<s1 title="History of software changes">
 
20
<p>The following sections list the core software changes in each release since &xslt4j; version 2.0.D01.</p>
 
21
&history2xsltc;
 
22
<s2 title="Changes for &xslt4j; 2.7.0">
 
23
<p> Core (Non-XSLTC) source code updates:</p>
 
24
<ul>
 
25
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/03/04<br/>
 
26
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorImport.java ProcessorInclude.java ProcessorLRE.java 
 
27
ProcessorStylesheetElement.java StylesheetHandler.java XSLTElementDef.java xml-xalan/java/src/org/apache/xalan/templates 
 
28
ElemExsltFunction.java<br/>
 
29
<ref>Committer's log entry: </ref>
 
30
Submitted by: Brian Minchau<br/>
 
31
Modified code for potential extension of classes with callbacks to the extensions.<br/><br/></li>
 
32
 
 
33
<li><ref>Committed by </ref>bhakti@apache.org<ref> on </ref>2004/03/08<br/>
 
34
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Encodings.properties<br/>
 
35
<ref>Committer's log entry: </ref>
 
36
Added a newline at the end of Encodings.properties to fix bug 27516.<br/><br/></li>
 
37
 
 
38
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/03/11<br/>
 
39
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ObjectFactory.java xml-xalan/java/src/org/apache/xalan/lib 
 
40
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/lib/sql ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xslt 
 
41
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/cmdline ObjectFactory.java 
 
42
xml-xalan/java/src/org/apache/xalan/xsltc/compiler ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util 
 
43
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/dom ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime 
 
44
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/trax ObjectFactory.java xml-xalan/java/src/org/apache/xml/dtm 
 
45
ObjectFactory.java xml-xalan/java/src/org/apache/xml/dtm/ref ObjectFactory.java xml-xalan/java/src/org/apache/xml/serializer 
 
46
ObjectFactory.java xml-xalan/java/src/org/apache/xml/utils ObjectFactory.java xml-xalan/java/src/org/apache/xpath/compiler 
 
47
ObjectFactory.java xml-xalan/java/src/org/apache/xpath/functions ObjectFactory.java<br/>
 
48
<ref>Committer's log entry: </ref>
 
49
Fix a bug in the findProviderClass method of ObjectFactory
 
50
classes. The argument of SecurityManager.checkPackageAccess should be a string
 
51
value of a package name, instead of a class name.<br/><br/></li>
 
52
 
 
53
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/03/23<br/>
 
54
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler Compiler.java FunctionTable.java<br/>
 
55
<ref>Committer's log entry: </ref>
 
56
Patch to hide static function table in FunctionTable class. We do not want to expose this table to others.<br/><br/></li>
 
57
 
 
58
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2004/03/23<br/>
 
59
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils DOMBuilder.java<br/>
 
60
<ref>Committer's log entry: </ref>
 
61
The xmlns URI should also be used to add NS decls as attributes to a DOM. However, this was only done for attributes that started 
 
62
with 'xmlns:' and not for 'xmlns' (i.e. not for decls of the default NS).<br/><br/></li>
 
63
 
 
64
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/04/26<br/>
 
65
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java xml-xalan/java/src/org/apache/xpath/objects 
 
66
DTMXRTreeFrag.java XRTreeFrag.java<br/>
 
67
<ref>Committer's log entry: </ref>
 
68
The problem is that about 1800 * Thread_num  XRTreeFrag  objects were created. 
 
69
It took too long for finalizer to be executed to release the references.<br/>
 
70
A lot of the objects have the same DTMs (and one XPathContext per thread).
 
71
In my fix I am suggesting 
 
72
a. to have new class DTMXRTreeFrag. The object of the class would 
 
73
be created only for different DTMs (just 5 objects). 
 
74
b. release the references to  DTM and XPathContext from XPathContext.reset()
 
75
(and remove finalize() ).<br/><br/></li>
 
76
 
 
77
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/04/27<br/>
 
78
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java xml-xalan/java/src/org/apache/xml/utils Trie.java<br/>
 
79
<ref>Committer's log entry: </ref>
 
80
PR: bugzilla 28435<br/>
 
81
Submitted by:   Brian Minchau<br/>
 
82
Reviewed by:    Henry Zongaro<br/><br/></li>
 
83
 
 
84
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/04/28<br/>
 
85
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates AVT.java<br/>
 
86
<ref>Committer's log entry: </ref>
 
87
Scaling Problem in org/apache/xalan/templates/AVT.evaluate. The problem is that synchronized calls 
 
88
StringBufferPool.get() and StringBufferPool.free(buf) are redundant if (null != m_simpleString).
 
89
The bug results in severe performance degradation in multi-thread test.
 
90
The fix is simple just not to the calls when (null != m_simpleString).<br/><br/></li>
 
91
 
 
92
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2004/05/03<br/>
 
93
<ref>Modified: </ref> xml-xalan/java/xdocs/style/stylesheets designdoc2html.xsl<br/>
 
94
<ref>Committer's log entry: </ref>
 
95
Provide alternative text for images to address accessibility issues.
 
96
All images should contain a short alternative text description that represents
 
97
the function of the graphic.<br/><br/></li>
 
98
 
 
99
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2004/05/03<br/>
 
100
<ref>Modified: </ref> xml-xalan/java/xdocs xml-site-style.tar.gz<br/>
 
101
<ref>Committer's log entry: </ref>
 
102
Update document2html.xsl within this tarball to provide alternative text for images to address accessibility issues.
 
103
All images should contain a short alternative text description that represents the function of the graphic.<br/><br/></li>
 
104
 
 
105
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/05/03<br/>
 
106
<ref>Modified: </ref> xml-xalan/java/samples/SAX2SAX SAX2SAX.java xml-xalan/java/samples/Pipe Pipe.java 
 
107
xml-xalan/java/samples/DOM2DOM DOM2DOM.java
 
108
xml-xalan/java/samples/UseStylesheetPI foo.xsl xml-xalan/java/samples/UseStylesheetParam foo.xsl
 
109
xml-xalan/java/samples/UseXMLFilters UseXMLFilters.java
 
110
xml-xalan/java/samples/Trace foo.xsl<br/>
 
111
<ref>Committer's log entry: </ref>
 
112
Clean up related to bugzilla 24304.
 
113
There is no longer a space after the XML header. To keep the output
 
114
of this sample the same as before properties were set on the
 
115
serializer (indent="yes" and standalone="no" ).
 
116
Submitted by:   Brian Minchau<br/>
 
117
Reviewed by:    Sarah McNamara<br/><br/></li>
 
118
 
 
119
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/05/06<br/>
 
120
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates AVT.java<br/>
 
121
<ref>Committer's log entry: </ref>
 
122
The problem is that we use an object pool (shared between different threads)
 
123
to allocate  FastStringBuffer objects. The problem results in a serious performance
 
124
degradation  on Z/OS and seems to be invisible on AIX.<br/>
 
125
1 Differences in optimization of object pools  for different JVMs and for different 
 
126
platforms are known(I know it now too). It is not surprising that  Z/OS and AIX 
 
127
have different results.<br/>
 
128
2. a. Object pools should be used only for very heavy object which live for a long time
 
129
and could be reused in a lot of places. <br/>
 
130
b. Small local objects which size cannot be changed could be allocated on the
 
131
stack =&gt; creating them with new in the local scope could be a good idea.<br/>
 
132
c. Caching middle size objects which can grow in size seems as a good idea,
 
133
because such objects usually cannot be allocated on the stack.
 
134
This is actually the case for FastStringBuffer objects. <br/>
 
135
Solution: Create FastStringBuffer objects in a local scope and use caching whenever possible.<br/><br/></li>
 
136
 
 
137
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/05/13<br/>
 
138
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/client XSLTProcessorApplet.java<br/>
 
139
<ref>Committer's log entry: </ref>
 
140
Submitted by:   Brian Minchau<br/>
 
141
Reviewed by:    Christine Li<br/>
 
142
Fixing binary compatibility (serialization/de-serialization) of XSLTProcessorApplet.<br/><br/></li>
 
143
 
 
144
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/06/01<br/>
 
145
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/>
 
146
<ref>Committer's log entry: </ref>
 
147
PR: bugzilla 29234<br/>
 
148
Submitted by:   Brian Minchau<br/>
 
149
Reviewed by:    Morris Kwan<br/>
 
150
This problem only showed up under XSLTC.  When setting the
 
151
encoding a related field was not set.  Fixed this by over-riding the 
 
152
set method for the stream serializers.<br/><br/></li>
 
153
 
 
154
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/06/07<br/>
 
155
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer WriterToUTF8Buffered.java<br/>
 
156
<ref>Committer's log entry: </ref>
 
157
PR: bugzilla 29372<br/>
 
158
Submitted by:   J Desrochers (john@ASCnet.COM)<br/>
 
159
Reviewed by:    Brian Minchau<br/>
 
160
 
 
161
A safe fix for chunking up an array for output. The length  was multiplied by the
 
162
chunk number (0,1,2... chunks) then divided by "chunks". John's fix uses a 
 
163
"long" to do the arithemetic because multiplying by the chunk number first 
 
164
could cause an overflow.<br/><br/></li>
 
165
 
 
166
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/06/17<br/>
 
167
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes ChildIterator.java<br/>
 
168
<ref>Committer's log entry: </ref>
 
169
Fix for Bugzilla bug 28879.  Classes derived from NodeTest need to ensure
 
170
that initNodeTest is called to set the filter for the kinds of nodes accepted.
 
171
Without this change, ChildIterator will reject all nodes.
 
172
 
 
173
Patch reviewed by Christine Li (jycli@ca.ibm.com).<br/><br/></li>
 
174
 
 
175
<li><ref>Committed by </ref>aruny@apache.org<ref> on </ref>2004/07/15<br/>
 
176
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/>
 
177
<ref>Committer's log entry: </ref>
 
178
Description: Improper Serialization of document type declaration in xml document.<br/><br/></li>
 
179
 
 
180
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2004/07/21<br/>
 
181
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan Version.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/>
 
182
<ref>Committer's log entry: </ref>
 
183
Patch for bug 30056.  Recover the performance degradation for xsl:copy and xsl:copy-of.
 
184
Reviewed by Henry Zongaro (zongaro@ca.ibm.com).<br/><br/></li>
 
185
 
 
186
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/07/21<br/>
 
187
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerBase.java ToTextStream.java<br/>
 
188
<ref>Committer's log entry: </ref>
 
189
PR: bugzilla 29706<br/>
 
190
Submitted by:   Brian Minchau<br/>
 
191
Reviewed by:    Christine Li<br/>
 
192
 
 
193
A fix to add a temporary vs. permanent output state to the serializer
 
194
(AKA result-tree-handler).  In theory the XSLT processor should set the
 
195
temporary or permanent output state, but we observer that when the
 
196
encoding of a ToTextStream serializer is null, then such a serializer is
 
197
in temporary output state.<br/>
 
198
 
 
199
In temorary output state we don't do any escaping or encoding or other 
 
200
sorts of normalization on output. This will be done by another serializer 
 
201
later on, and that one will be in permanent output state.<br/><br/></li>
 
202
 
 
203
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/07/21<br/>
 
204
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/>
 
205
<ref>Committer's log entry: </ref>
 
206
PR: bugzilla 30142<br/>
 
207
Submitted by:   Bruno Dumon (bruno@outerthought.org)<br/>
 
208
Reviewed by:    Brian Minchau<br/>
 
209
 
 
210
Thanks to Bruno for this simple one-line, fix where we forgot to put
 
211
a space between the PUBLIC and SYSTEM ID's in a DOCTYPE declaration
 
212
in serialized HTML output.<br/><br/></li>
 
213
 
 
214
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/07/22<br/>
 
215
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/objects XString.java<br/>
 
216
<ref>Committer's log entry: </ref>
 
217
Submitted by:   Yash Talwar<br/>
 
218
Reviewed by:    Brian Minchau<br/>
 
219
Fix for bugzilla 29655.<br/><br/></li>
 
220
 
 
221
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/08/13<br/>
 
222
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib Redirect.java<br/>
 
223
<ref>Committer's log entry: </ref>
 
224
PR: 30658<br/>
 
225
Submitted by:   Brian Minchau<br/>
 
226
Reviewed by:    Morris Kwan<br/><br/></li>
 
227
 
 
228
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/08/13<br/>
 
229
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/trace TraceManager.java<br/>
 
230
<ref>Committer's log entry: </ref>
 
231
PR: 30301<br/>
 
232
Submitted by:   Brian Minchau<br/>
 
233
Reviewed by:    Morris Kwan<br/><br/></li>
 
234
 
 
235
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/08/13<br/>
 
236
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/objects XRTreeFragSelectWrapper.java xml-xalan/java/src/org/apache/xpath/res 
 
237
XPATHErrorResources.java<br/>
 
238
<ref>Committer's log entry: </ref>
 
239
PR: 30262<br/>
 
240
Submitted by:   Yash Talwar<br/>
 
241
Reviewed by:    Henry Zongaro<br/><br/></li>
 
242
 
 
243
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2004/08/17<br/>
 
244
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm DTMException.java xml-xalan/java/src/org/apache/xpath XPathException.java<br/>
 
245
<ref>Committer's log entry: </ref>
 
246
Fix for printStackTrace when using JDK 1.4.<br/><br/></li>
 
247
 
 
248
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2004/08/17<br/>
 
249
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ObjectFactory.java xml-xalan/java/src/org/apache/xalan/lib 
 
250
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/lib/sql ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xslt 
 
251
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/cmdline ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler 
 
252
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/dom 
 
253
ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime ObjectFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/trax 
 
254
ObjectFactory.java xml-xalan/java/src/org/apache/xml/dtm ObjectFactory.java xml-xalan/java/src/org/apache/xml/dtm/ref ObjectFactory.java 
 
255
xml-xalan/java/src/org/apache/xml/serializer ObjectFactory.java xml-xalan/java/src/org/apache/xml/utils ObjectFactory.java 
 
256
xml-xalan/java/src/org/apache/xpath/compiler ObjectFactory.java xml-xalan/java/src/org/apache/xpath/functions ObjectFactory.java<br/>
 
257
<ref>Committer's log entry: </ref>
 
258
Fixing a potential memory leak.  The reader used to read the service provider is never closed if an IOException is thrown while 
 
259
reading from it.  Adding a finally block so that the reader will always be closed.  Patch reviewed by Christine Li.<br/><br/></li>
 
260
 
 
261
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/08/17<br/>
 
262
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ObjectFactory.java<br/>
 
263
<ref>Committer's log entry: </ref>
 
264
Added serialVersionUID for classes which implement Serializable interface.<br/><br/></li>
 
265
 
 
266
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/08/17<br/>
 
267
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ObjectFactory.java xml-xalan/java/src/org/apache/xalan/lib/sql ObjectFactory.java<br/>
 
268
<ref>Committer's log entry: </ref>
 
269
Added serialVersionUID for classes which implement Serializable interface. Was reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
270
 
 
271
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/08/17<br/>
 
272
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorAttributeSet.java ProcessorCharacters.java ProcessorDecimalFormat.java 
 
273
ProcessorExsltFuncResult.java ProcessorExsltFunction.java ProcessorGlobalParamDecl.java ProcessorGlobalVariableDecl.java 
 
274
ProcessorImport.java ProcessorInclude.java ProcessorKey.java ProcessorLRE.java ProcessorNamespaceAlias.java ProcessorOutputElem.java 
 
275
ProcessorPreserveSpace.java ProcessorStripSpace.java ProcessorStylesheetDoc.java ProcessorStylesheetElement.java ProcessorTemplate.java 
 
276
ProcessorTemplateElem.java ProcessorText.java ProcessorUnknown.java WhitespaceInfoPaths.java XSLTElementProcessor.java<br/>
 
277
<ref>Committer's log entry: </ref>
 
278
Added serialVersionUID for classes which implement Serializable interface. Patch created by Christine Li (jycli@ca.ibm.com) 
 
279
and was reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
280
 
 
281
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/08/17<br/>
 
282
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates AVT.java AVTPart.java AVTPartSimple.java AVTPartXPath.java 
 
283
DecimalFormatProperties.java ElemApplyImport.java ElemApplyTemplates.java ElemAttribute.java ElemAttributeSet.java 
 
284
ElemCallTemplate.java ElemChoose.java ElemComment.java ElemCopy.java ElemCopyOf.java ElemElement.java ElemEmpty.java 
 
285
ElemExsltFuncResult.java ElemExsltFunction.java ElemExtensionCall.java ElemExtensionDecl.java ElemExtensionScript.java 
 
286
ElemFallback.java ElemForEach.java ElemIf.java ElemLiteralResult.java ElemMessage.java ElemNumber.java ElemOtherwise.java 
 
287
ElemParam.java ElemPI.java ElemSort.java ElemTemplate.java ElemTemplateElement.java ElemText.java ElemTextLiteral.java 
 
288
ElemUnknown.java ElemUse.java ElemValueOf.java ElemVariable.java ElemVariablePsuedo.java ElemWhen.java ElemWithParam.java 
 
289
FuncDocument.java FuncFormatNumb.java FuncKey.java KeyDeclaration.java NamespaceAlias.java OutputProperties.java Stylesheet.java 
 
290
StylesheetComposed.java StylesheetRoot.java TemplateList.java TemplateSubPatternAssociation.java WhiteSpaceInfo.java 
 
291
XMLNSDecl.java XUnresolvedVariable.java XUnresolvedVariableSimple.java xml-xalan/java/src/org/apache/xalan/transformer 
 
292
CountersTable.java KeyIterator.java KeyRefIterator.java xml-xalan/java/src/org/apache/xalan/xslt ObjectFactory.java<br/>
 
293
<ref>Committer's log entry: </ref>
 
294
Added serialVersionUID for classes which implement Serializable interface. Patch created by Christine Li (jycli@ca.ibm.com) 
 
295
and was reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
296
 
 
297
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/08/17<br/>
 
298
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm DTMConfigurationException.java DTMDOMException.java ObjectFactory.java 
 
299
xml-xalan/java/src/org/apache/xml/dtm/ref DTMNamedNodeMap.java IncrementalSAXSource_Filter.java ObjectFactory.java 
 
300
xml-xalan/java/src/org/apache/xml/serializer ObjectFactory.java xml-xalan/java/src/org/apache/xml/utils MutableAttrListImpl.java 
 
301
NameSpace.java NodeVector.java ObjectFactory.java ObjectPool.java QName.java SAXSourceLocator.java SerializableLocatorImpl.java 
 
302
StopParseException.java StringVector.java URI.java WrappedRuntimeException.java WrongParserException.java<br/>
 
303
<ref>Committer's log entry: </ref>
 
304
Added serialVersionUID for classes which implement Serializable interface. Patch created by Christine Li (jycli@ca.ibm.com) 
 
305
and was reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
306
 
 
307
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/08/17<br/>
 
308
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath Expression.java FoundIndex.java NodeSetDTM.java XPath.java 
 
309
XPathProcessorException.java xml-xalan/java/src/org/apache/xpath/axes AttributeIterator.java AxesWalker.java 
 
310
BasicTestIterator.java ChildIterator.java ChildTestIterator.java DescendantIterator.java FilterExprIterator.java 
 
311
FilterExprIteratorSimple.java FilterExprWalker.java IteratorPool.java LocPathIterator.java MatchPatternIterator.java 
 
312
NodeSequence.java OneStepIterator.java OneStepIteratorForward.java PredicatedNodeTest.java ReverseAxesWalker.java 
 
313
RTFIterator.java SelfIteratorNoPredicate.java UnionChildIterator.java UnionPathIterator.java WalkingIterator.java 
 
314
WalkingIteratorSorted.java xml-xalan/java/src/org/apache/xpath/compiler ObjectFactory.java 
 
315
xml-xalan/java/src/org/apache/xpath/functions FuncBoolean.java FuncCeiling.java FuncConcat.java FuncContains.java 
 
316
FuncCount.java FuncCurrent.java FuncDoclocation.java FuncExtElementAvailable.java FuncExtFunction.java 
 
317
FuncExtFunctionAvailable.java FuncFalse.java FuncFloor.java FuncGenerateId.java FuncId.java FuncLang.java 
 
318
FuncLast.java FuncLocalPart.java FuncNamespace.java FuncNormalizeSpace.java FuncNot.java FuncNumber.java 
 
319
FuncPosition.java FuncQname.java FuncRound.java FuncStartsWith.java FuncString.java FuncStringLength.java 
 
320
FuncSubstring.java FuncSubstringAfter.java FuncSubstringBefore.java FuncSum.java FuncSystemProperty.java 
 
321
Function.java Function2Args.java Function3Args.java FunctionDef1Arg.java FunctionMultiArgs.java FunctionOneArg.java 
 
322
FuncTranslate.java FuncTrue.java FuncUnparsedEntityURI.java ObjectFactory.java WrongNumberArgsException.java 
 
323
xml-xalan/java/src/org/apache/xpath/objects XBoolean.java XBooleanStatic.java XNodeSet.java XNodeSetForDOM.java 
 
324
XNull.java XNumber.java XObject.java XRTreeFrag.java XRTreeFragSelectWrapper.java XString.java XStringForChars.java 
 
325
XStringForFSB.java xml-xalan/java/src/org/apache/xpath/operations And.java Bool.java Div.java Equals.java Gt.java 
 
326
Gte.java Lt.java Lte.java Minus.java Mod.java Mult.java Neg.java NotEquals.java Number.java Operation.java Or.java 
 
327
Plus.java Quo.java String.java UnaryOperation.java Variable.java VariableSafeAbsRef.java 
 
328
xml-xalan/java/src/org/apache/xpath/patterns ContextMatchStepPattern.java FunctionPattern.java NodeTest.java 
 
329
StepPattern.java UnionPattern.java<br/>
 
330
<ref>Committer's log entry: </ref>
 
331
Added serialVersionUID for classes which implement Serializable interface. Patch created by Christine Li (jycli@ca.ibm.com) 
 
332
and was reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
333
 
 
334
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/08/26<br/>
 
335
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils Trie.java<br/>
 
336
<ref>Committer's log entry: </ref>
 
337
Submitted by:   Brian Minchau<br/>
 
338
No external changes to Trie, but some additional APIs to make for a lower case
 
339
only search in a Trie (possibly for future XHTML support where the element
 
340
names are lower-case only).<br/><br/></li>
 
341
 
 
342
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/08/27<br/>
 
343
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java ToHTMLStream.java ToStream.java<br/>
 
344
<ref>Committer's log entry: </ref>
 
345
Minor changes to CharInfo to map charaters to decorated entities (e.g. "&amp;lt;" ) 
 
346
rather than just entity names (e.g. "lt"), which is a minor performance improvement.<br/><br/></li>
 
347
 
 
348
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2004/08/30<br/>
 
349
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils XMLReaderManager.java<br/>
 
350
<ref>Committer's log entry: </ref>
 
351
Fix a memory leak problem described in bugzilla 28082.<br/><br/></li>
 
352
 
 
353
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/09/01<br/>
 
354
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerTraceWriter.java ToStream.java 
 
355
WriterChain.java WriterToASCI.java WriterToUTF8Buffered.java<br/>
 
356
<ref>Committer's log entry: </ref>
 
357
Submitted by:   Brian Minchau<br/>
 
358
Code clean up, to have an explicit interface, WriterChain, for writers that wrap other Writers or OutputStreams,
 
359
e.g. WriterToUTF8Buffered.<br/><br/></li>
 
360
 
 
361
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/09/01<br/>
 
362
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToXMLStream.java<br/>
 
363
<ref>Committer's log entry: </ref>
 
364
Submitted by:   Brian Minchau<br/>
 
365
Javadoc changes, and added a call in ToXMLStream.processingInstruction() 
 
366
method to effectively consider that a startDocument() call was made,
 
367
if none was yet seen.<br/><br/></li>
 
368
 
 
369
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/09/07<br/>
 
370
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToSAXHandler.java<br/>
 
371
<ref>Committer's log entry: </ref>
 
372
PR: bugzilla 27522<br/>
 
373
Submitted by:   Brian Minchau<br/>
 
374
committing patch from bugzilla 27522.<br/><br/></li>
 
375
 
 
376
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2004/09/16<br/>
 
377
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql SQLDocument.java<br/>
 
378
<ref>Committer's log entry: </ref>
 
379
Fixed bug where JDBC execute was being called instead ofg executeQuery.
 
380
executeQuery will always retrurn a result set even if the query does not return any  rows
 
381
where execute won't. This was causing a compatibility issue.
 
382
Added in Record skip code to help with pagination.<br/>
 
383
PR: http://nagoya.apache.org/jira/browse/XALANJ-1908<br/>
 
384
Submitted by:   John Gentilin<br/><br/></li>
 
385
 
 
386
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2004/09/16<br/>
 
387
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql XConnection.java<br/>
 
388
<ref>Committer's log entry: </ref>
 
389
Fixed bug where the close document method could not locxate the SQL Document.
 
390
see http://nagoya.apache.org/jira/browse/XALANJ-1925.<br/>
 
391
Obtained from:  Moraine Didier mailto://didier.moraine@winterthur.be<br/>
 
392
Submitted by:   John Gentilin<br/><br/></li>
 
393
 
 
394
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2004/09/17<br/>
 
395
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
396
<ref>Committer's log entry: </ref>
 
397
Added new targets to support building the distribution packages (*-bin.tar.gz/.zip and *-src.tar.gz/.zip)
 
398
without building the user guide and api docs.
 
399
Reorganized some sections to make the targets more readable.
 
400
Renamed the "*-nojardepends" rules to either "*-compile" or "*-build" to make them more intuitive.
 
401
Reviewed by Christine Li.<br/><br/></li>
 
402
 
 
403
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/10/01<br/>
 
404
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler XPathParser.java xml-xalan/java/src/org/apache/xpath/patterns NodeTest.java<br/>
 
405
<ref>Committer's log entry: </ref>
 
406
Patch from Yash Talwar (ytalwar@ca.ibm.com) for XALANJ-1186.
 
407
The existing code in the interpretive processor was handling namespace::pre by
 
408
resolving the namespace prefix "pre" in the stylesheet, and then looking for
 
409
namespace nodes with that same URI in the input document.  In fact, it should
 
410
look for namespaces nodes in the input document that declare the prefix "pre",
 
411
without regard to the associated URI. The patch was reviewed by myself (zongaro@ca.ibm.com).<br/><br/></li>
 
412
 
 
413
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/06<br/>
 
414
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLSAXHandler.java<br/>
 
415
<ref>Committer's log entry: </ref>
 
416
XSL Transformation drops content inside xsl:comment tags.<br/>
 
417
PR: XALANJ-1966<br/>
 
418
Submitted by:   Yash Talwar<br/>
 
419
Reviewed by:     Brian Minchau<br/><br/></li>
 
420
 
 
421
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/06<br/>
 
422
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/operations Variable.java<br/>
 
423
<ref>Committer's log entry: </ref>
 
424
Null Pointer Exception on sorting using a variable.<br/>
 
425
PR: XALANJ-1942<br/>
 
426
Submitted by:   Yash Talwar<br/>
 
427
Reviewed by:    Brian Minchau<br/><br/></li>
 
428
 
 
429
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/06<br/>
 
430
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorNamespaceAlias.java xml-xalan/java/src/org/apache/xalan/res 
 
431
XSLTErrorResources.java<br/>
 
432
<ref>Committer's log entry: </ref>
 
433
Null Pointer Exception when namespace-alias element says to use "#default" namespace but there is no default namespace.
 
434
PR: XALANJ-1967<br/>
 
435
Submitted by:   Yash Talwar<br/>
 
436
Reviewed by:    Brian Minchau<br/><br/></li>
 
437
 
 
438
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/10/13<br/>
 
439
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
440
<ref>Committer's log entry: </ref>
 
441
At the suggestion of Joseph Kesselman, dropped contents of the org.apache.xml.utils.synthetic package, as they have never been used.
 
442
Patch reviewed by Christine Li (jycli@ca.ibm.com).<br/><br/></li>
 
443
 
 
444
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/10/13<br/>
 
445
<ref>Modified: </ref> xml-xalan/java build.xml xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerGeneral.java 
 
446
xml-xalan/java/xdocs/sources/xalan extensions.xml resources.xml<br/>
 
447
<ref>Committer's log entry: </ref>
 
448
Fixed of Bug report XalanJ-1822. Added alternative BSF implementation support for extension functions in languages other than Java
 
449
Patch reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
450
 
 
451
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/14<br/>
 
452
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer/utils AttList.java BoolStack.java DOM2Helper.java Messages.java 
 
453
SerializerMessages_en.java SerializerMessages.java StringToIntTable.java SystemIDResolver.java URI.java Utils.java 
 
454
WrappedRuntimeException.java<br/>
 
455
<ref>Committer's log entry: </ref>
 
456
PR: XALANJ-1891<br/>
 
457
Submitted by:   Brian Minchau<br/>
 
458
Reviewed by:    Yash Talwar<br/><br/></li>
 
459
 
 
460
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/14<br/>
 
461
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer/utils Messages.java SerializerMessages.java Utils.java<br/>
 
462
<ref>Committer's log entry: </ref>
 
463
Submitted by:   Brian Minchau<br/>
 
464
Made some fields final or private to make the objects immutable, especially the messages.<br/><br/></li>
 
465
 
 
466
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/14<br/>
 
467
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer AttributesImplSerializer.java CharInfo.java DOMSerializer.java ElemDesc.java 
 
468
EmptySerializer.java EncodingInfo.java Encodings.java ExtendedContentHandler.java ExtendedLexicalHandler.java Method.java 
 
469
NamespaceMappings.java ObjectFactory.java OutputPropertiesFactory.java OutputPropertyUtils.java SerializationHandler.java 
 
470
Serializer.java SerializerBase.java SerializerConstants.java SerializerFactory.java SerializerTrace.java SerializerTraceWriter.java 
 
471
ToHTMLSAXHandler.java ToHTMLStream.java ToSAXHandler.java ToStream.java ToTextSAXHandler.java ToTextStream.java ToUnknownStream.java 
 
472
ToXMLSAXHandler.java ToXMLStream.java TreeWalker.java Utils.java Version.java WriterToASCI.java ElemContext.java TransformStateSetter.java<br/>
 
473
<ref>Committer's log entry: </ref>
 
474
Submitted by:   Brian Minchau<br/>
 
475
Reviewed by:    Yash Talwar<br/>
 
476
Source code changes to the serializer to make it independent of Xalan.
 
477
Mostly message and utility usage changes.
 
478
However multiple classes had their visibility reduced to less than "public".<br/><br/></li>
 
479
 
 
480
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/14<br/>
 
481
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils CharKey.java Trie.java<br/>
 
482
<ref>Committer's log entry: </ref>
 
483
PR: XALANJ-1891<br/>
 
484
Submitted by:   Brian Minchau<br/>
 
485
Reviewed by:    Yash Talwar<br/>
 
486
Deleting Charkey and Trie which were only used by the serializer.
 
487
These classes are migrated to the serializer package, in the case of
 
488
CharKey, it is now an inner private class.<br/><br/></li>
 
489
 
 
490
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/15<br/>
 
491
<ref>Modified: </ref> xml-xalan/java/src MANIFEST.SERIALIZER<br/>
 
492
<ref>Committer's log entry: </ref>
 
493
PR: XALANJ-1891<br/>
 
494
Submitted by:   Brian Minchau<br/>
 
495
Reviewed by:    Sarah McNamara<br/>
 
496
Creating MANIFEST.SERIALIZER, a template like MANIFEST.MF but
 
497
for an independent serializer.jar that is not part of xalan.jar<br/><br/></li>
 
498
 
 
499
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/15<br/>
 
500
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
501
<ref>Committer's log entry: </ref>
 
502
PR: XALANJ-1891<br/>
 
503
Submitted by:   Brian Minchau<br/>
 
504
Reviewed by:    Sarah McNamara<br/>
 
505
Changes to java/build.xml so that the serializer.jar is built and used by Xalan.
 
506
The two new build targets are serializer.jar and serializer-dist.<br/><br/></li>
 
507
 
 
508
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/10/15<br/>
 
509
<ref>Modified: </ref> xml-xalan/java/bin serializer.jar<br/>
 
510
<ref>Committer's log entry: </ref>
 
511
PR: XALANJ-1891<br/>
 
512
Submitted by:   Brian Minchau<br/>
 
513
Reviewed by:    Sarah McNamara, Yash Talwar<br/>
 
514
Checking in an initial serializer.jar into java/bin, hopefully this won't change too often.<br/><br/></li>
 
515
 
 
516
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2004/10/19<br/>
 
517
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql DefaultConnectionPool.java XConnection.java SQLDocument.java<br/>
 
518
<ref>Committer's log entry: </ref>
 
519
This patch makes the close() function behave better but still has a 
 
520
problem when certain iterators are used.  This code is at least safe 
 
521
in all instaces.  It also fixes a minor bug in the default connection pool.<br/>
 
522
Obtained from: John Gentilin<br/>
 
523
Submitted by:   John Gentilin<br/><br/></li>
 
524
 
 
525
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/10/21<br/>
 
526
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/objects XStringForFSB.java<br/>
 
527
<ref>Committer's log entry: </ref>
 
528
A patch to fix Bug XALANJ-1708. Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
 
529
 
 
530
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/10/21<br/>
 
531
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes NodeSequence.java UnionPathIterator.java<br/>
 
532
<ref>Committer's log entry: </ref>
 
533
A fix for bug XALANJ-1810. Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
 
534
 
 
535
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2004/10/21<br/>
 
536
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
537
<ref>Committer's log entry: </ref>
 
538
Fix the samples build. The samples.class.path needs to include the serializer.jar.<br/><br/></li>
 
539
 
 
540
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2004/10/28<br/>
 
541
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
542
<ref>Committer's log entry: </ref>
 
543
One more fix to enable builds with JDK 1.4.x.  Need to add the serializer classes to the
 
544
xslt.boot.class.path.<br/><br/></li>
 
545
 
 
546
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/11/02<br/>
 
547
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes DescendantIterator.java<br/>
 
548
<ref>Committer's log entry: </ref>
 
549
String comparison should use String.equals(), instead of ==.
 
550
Even == works fine for most of the cases, for a serializable object, two variable originally reference to the same string
 
551
after deserialization, they no longer reference the same string, although the values are the same. Fix for bug XalanJ-1550.
 
552
<br/><br/></li>
 
553
 
 
554
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/11/02<br/>
 
555
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerGeneral.java<br/>
 
556
<ref>Committer's log entry: </ref>
 
557
The latest Rhino1_5R5 checks for the script language line/column no.&gt;=0. Fixed for bug XALANJ-1887.<br/><br/></li>
 
558
 
 
559
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/11/03<br/>
 
560
<ref>Modified: </ref> xml-xalan/java/src/META-INF/services org.apache.xalan.extensions.bsf.BSFManager<br/>
 
561
<ref>Committer's log entry: </ref>
 
562
Added a service provider configuration file to set the Apache BSF as the default implementation for scripting language support.
 
563
<br/><br/></li>
 
564
 
 
565
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/11/03<br/>
 
566
<ref>Modified: </ref> xml-xalan/java/bin bsf.jar bsf.LICENSE.txt bsf.README.txt<br/>
 
567
<ref>Committer's log entry: </ref>
 
568
remove IBM bsf implementation from the distribution. Xalan is not going to ship any bsf implementation. If users need 
 
569
IBM bsf, they can download it from Attic.<br/><br/></li>
 
570
 
 
571
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/11/12<br/>
 
572
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler Lexer.java XPathParser.java xml-xalan/java/src/org/apache/xpath/domapi 
 
573
XPathEvaluatorImpl.java XPathExpressionImpl.java XPathNamespaceImpl.java XPathNSResolverImpl.java XPathResultImpl.java 
 
574
XPathStylesheetDOM3Exception.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java<br/>
 
575
<ref>Committer's log entry: </ref>
 
576
PR: bug XALANJ-1985<br/>
 
577
Submitted by:   Yash Talwar<br/>
 
578
Reviewed by:    Brian Minchau<br/>
 
579
Support for DOM 3 API, for use by an XML Parser.<br/><br/></li>
 
580
 
 
581
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/11/19<br/>
 
582
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/objects XStringForFSB.java<br/>
 
583
<ref>Committer's log entry: </ref>
 
584
Patch for XALANJ-1955.  The equals(Object) method contains a list of
 
585
instanceof checks, and then casts the Object argument to the tested type in
 
586
order to dispatch to a more specific equals method.  In the case where the
 
587
Object argument was an XMLString, the code was actually casting "this" to
 
588
XMLString - thus testing this.equals(this), which will always be true.<br/>
 
589
 
 
590
Reviewd by Joanne Tong (joannet@ca.ibm.com).<br/><br/></li>
 
591
 
 
592
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/11/19<br/>
 
593
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer KeyTable.java<br/>
 
594
<ref>Committer's log entry: </ref>
 
595
Patch for XALANJ-1368.<br/>
 
596
The method getKeyDeclaration was looping through all the xsl:key elements
 
597
defined, and returning the first with the required name.  However, more than
 
598
one xsl:key element can specify the same name, and should be treated
 
599
cumulatively.  Modified the method so that it returns all elements with the
 
600
required name, and the caller so that it tries to match against the patterns
 
601
associated with all such elements.<br/>
 
602
 
 
603
Reviewed by Joanne Tong (joannet@ca.ibm.com).<br/><br/></li>
 
604
 
 
605
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2004/11/22<br/>
 
606
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/>
 
607
<ref>Committer's log entry: </ref>
 
608
Fix a memory leak problem in DTMManager (XALANJ-1999).<br/><br/></li>
 
609
 
 
610
<li><ref>Committed by </ref>joannet@apache.org<ref> on </ref>2004/12/13<br/>
 
611
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemApplyImport.java xml-xalan/java/src/org/apache/xalan/transformer 
 
612
TransformerImpl.java<br/>
 
613
<ref>Committer's log entry: </ref>
 
614
Fixed XALANJ-1824. Changed current template rule when named template executes an xsl:apply-imports.<br/><br/></li>
 
615
 
 
616
<li><ref>Committed by </ref>joannet@apache.org<ref> on </ref>2004/12/13<br/>
 
617
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib PipeDocument.java<br/>
 
618
<ref>Committer's log entry: </ref>
 
619
Fixed XALANJ-1662. Allow pipeDocument to throw exceptions.<br/><br/></li>
 
620
 
 
621
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/12/15<br/>
 
622
<ref>Modified: </ref> Many files....<br/>
 
623
<ref>Committer's log entry: </ref>
 
624
Patch for bug report XALANJ-2008<br/>
 
625
Based on Sun's Security Code Guidelines, modified the code to improve the security. Major changes includes:<br/>
 
626
1. Added final modifier to static variables;<br/>
 
627
2. Reduced scope and added public get methods whenever it is appropriate;<br/>
 
628
3. Changed some static variable to instance variables;<br/>
 
629
4. Changed some interfaces to final classes, if those interfaces are used only to define constants<br/>
 
630
5. Removed the usage of System.exit;<br/>
 
631
6. For various org.apache.xml.utils.res.XResourceBundle, the getObject() methods return immutable array wrappers instead of arrays<br/>
 
632
7. Changed static methods of org.apache.xpath.compiler.FunctionTable to instance methods and the reference of a function table is passed 
 
633
around the processing to create an XPath object;<br/>
 
634
8. Changed the flags of FEATURE_INCREMENTAL, FEATURE_OPTIMIZE and FEATURE_SOURCE_LOCATION to instance variables in TransformerFactorImpl. 
 
635
So they will not be changed during a processing once a new Templates is created;<br/><br/></li>
 
636
 
 
637
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2004/12/15<br/>
 
638
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan Version.java xml-xalan/java/src/org/apache/xpath/functions FuncExtFunction.java<br/>
 
639
<ref>Committer's log entry: </ref>
 
640
Patch for bug XALANJ-1592. Submitted by Catya Alone (catyaa@hotmail.com).
 
641
Set the parent node for the arguments in extension functions.<br/><br/></li>
 
642
 
 
643
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/12/16<br/>
 
644
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer/utils Messages.java<br/>
 
645
<ref>Committer's log entry: </ref>
 
646
Partial fix for bug XALANJ-2021.<br/><br/></li>
 
647
 
 
648
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/12/16<br/>
 
649
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer/utils SerializerMessages.java<br/>
 
650
<ref>Committer's log entry: </ref>
 
651
Partial fix for bug XALANJ-2021 to make key/keyvalue consistent.<br/><br/></li>
 
652
 
 
653
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/12/16<br/>
 
654
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer/utils SerializerMessages_ca.java SerializerMessages_cs.java 
 
655
SerializerMessages_de.java SerializerMessages_es.java SerializerMessages_fr.java SerializerMessages_hu.java 
 
656
SerializerMessages_it.java SerializerMessages_ja.java SerializerMessages_ko.java SerializerMessages_pl.java 
 
657
SerializerMessages_pt_BR.java SerializerMessages_ru.java SerializerMessages_sv.java SerializerMessages_tr.java 
 
658
SerializerMessages_zh_CN.java SerializerMessages_zh_TW.java<br/>
 
659
<ref>Committer's log entry: </ref>
 
660
Other languages, for XALANJ-2021.<br/><br/></li>
 
661
 
 
662
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/12/16<br/>
 
663
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer/utils MsgKey.java<br/>
 
664
<ref>Committer's log entry: </ref>
 
665
A class containing only message keys, to be shared by all language
 
666
translations (including English).  This is to prevent replication of these
 
667
keys during translation. Related to XALANJ-2021.<br/><br/></li>
 
668
 
 
669
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/12/16<br/>
 
670
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer/utils SerializerMessages_ca.java SerializerMessages_cs.java 
 
671
SerializerMessages_de.java 
 
672
SerializerMessages_es.java SerializerMessages_fr.java SerializerMessages_hu.java SerializerMessages_it.java SerializerMessages_ja.java 
 
673
SerializerMessages_ko.java SerializerMessages_pl.java SerializerMessages_pt_BR.java SerializerMessages_ru.java SerializerMessages_sv.java 
 
674
SerializerMessages_tr.java SerializerMessages_zh_CN.java SerializerMessages_zh_TW.java<br/>
 
675
<ref>Committer's log entry: </ref>
 
676
Changes for moving the message keys, to be shared by all language
 
677
translations (including English).  This is to prevent replication of these
 
678
keys during translation. Related to XALANJ-2021.<br/><br/></li>
 
679
 
 
680
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/12/16<br/>
 
681
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer/utils Messages.java SerializerMessages.java URI.java 
 
682
xml-xalan/java/src/org/apache/xml/serializer CharInfo.java OutputPropertiesFactory.java SerializerBase.java 
 
683
SerializerFactory.java ToHTMLStream.java ToStream.java ToTextStream.java ToXMLStream.java<br/><ref>Committer's log entry: </ref>
 
684
Changes for moving the message keys, to be shared by all language
 
685
translations (including English).  This is to prevent replication of these
 
686
keys during translation. Related to XALANJ-2021.<br/><br/></li>
 
687
 
 
688
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/12/16<br/>
 
689
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/res XMLErrorResources.java<br/>
 
690
<ref>Committer's log entry: </ref>
 
691
Serializer messages were copied into a message file in the
 
692
org.apache.xml.serializer.utils package.
 
693
The serializer messages in this file are now "dead", so they are being deleted.
 
694
This is part of the cleanup with XALANJ-2021.<br/><br/></li>
 
695
 
 
696
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/12/22<br/>
 
697
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMNamedNodeMap.java DTMNodeProxy.java<br/>
 
698
<ref>Committer's log entry: </ref>
 
699
Applying patch for Jira bug report XALANJ-1427 on behalf of Yash Talwar (ytalwar@ca.ibm.com).
 
700
 
 
701
Completing support for DOM Level 2 Core methods that were previously
 
702
unimplemented, and fixed some bugs in the implementation.  The implementation
 
703
continues to be, of necessity, a read-only implementation.<br/>
 
704
 
 
705
In particular, implemented the following:<br/>
 
706
 
 
707
  DTMNamedNodeMap.getNamedItem(String)<br/>
 
708
  DTMNodeProxy.getElementsByTagName(String)<br/>
 
709
  DTMNodeProxy.getElementsByTagNameNS(String,String)<br/>
 
710
  DTMNodeProxy.getElementById(String,String)<br/>
 
711
  DTMNodeProxy.getAttributeNodeNS(String,String)<br/><br/></li>
 
712
  
 
713
  <li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2005/01/05<br/>
 
714
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml<br/>
 
715
<ref>Committer's log entry: </ref>
 
716
Added a FAQ about how to use XSLTC in applet when using JRE1.4. It is a fix for bug report XALANJ-1705. Patch reviewed and 
 
717
modified by Sarah McNamara<br/><br/></li>
 
718
 
 
719
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2005/01/10<br/>
 
720
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltDatetime.java<br/>
 
721
<ref>Committer's log entry: </ref>
 
722
Fix for XALANJ-2013.  Duplicate time zone string returned from EXSLT time() function.<br/><br/></li>
 
723
 
 
724
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/01/10<br/>
 
725
<ref>Modified: </ref> xml-xalan/java/src manifest.xalan-interpretive<br/>
 
726
<ref>Committer's log entry: </ref>
 
727
New manifest file to resolve Jira bug report XALANJ-1853.<br/><br/></li>
 
728
 
 
729
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/01/10<br/>
 
730
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
731
<ref>Committer's log entry: </ref>
 
732
Fix for Jira bug report XALANJ-1853 .  Use the new xalan interpretive manifest file
 
733
when building the standalone xalan.jar that only contains the interpretive processor.<br/><br/></li>
 
734
 
 
735
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/01/10<br/>
 
736
<ref>Modified: </ref> xml-xalan/java/src MANIFEST.MF MANIFEST.SERIALIZER manifest.xsltc<br/>
 
737
<ref>Committer's log entry: </ref>
 
738
Fix for Jira bug report XALANJ-1852.<br/><br/></li>
 
739
 
 
740
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/01/20<br/>
 
741
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize SerializerUtils.java<br/>
 
742
<ref>Committer's log entry: </ref>
 
743
Applying patch for Jira bug report XALANJ-1640.<br/>
 
744
 
 
745
As it's currently written, SerializerUtils.outputResultTreeFragment loops
 
746
through the nodes in a result tree fragment, and for each one, it checks
 
747
whether the node is in some namespace.  If it is not, the code undeclares the
 
748
default namespace by calling handler.startPrefixMapping("", "").  The problem
 
749
is that if the RTF that's being copied just consists of a text node (or PIs or
 
750
comments), that undeclaration of the default namespace hangs around until some
 
751
subsequent child element picks it up as one of its attributes, even if that
 
752
element is in some namespace - even what should be the default!<br/>
 
753
 
 
754
The fix is to check whether the node that is being output is an element node
 
755
prior to issuing the handler.startPrefixMapping call - that ensures the prefix
 
756
mapping is not issued unless it's actually going to be used by the node that is
 
757
about to be serialized.<br/>
 
758
 
 
759
This patch was reviewed by Brian Minchau (minchau@ca.ibm.com).<br/><br/></li>
 
760
 
 
761
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/01/24<br/>
 
762
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath CachedXPathAPI.java<br/>
 
763
<ref>Committer's log entry: </ref>
 
764
Fix for Jira bug report XALANJ-1811.<br/>
 
765
 
 
766
Updated Javadocs for constructors to make it clear that a single instance of
 
767
CachecXPathAPI must not be used by multiple threads without synchronization.<br/>
 
768
 
 
769
Reviewed by Christine Li (jycli@ca.ibm.com)<br/><br/></li>
 
770
 
 
771
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/01/27<br/>
 
772
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/>
 
773
<ref>Committer's log entry: </ref>
 
774
Fix for Jira bug report XALANJ-1888.<br/>
 
775
 
 
776
It is possible for the characters SAX event to specify a length of zero.  Text
 
777
nodes should not be created in such situations.  Changed the charactersFlush
 
778
method to guard against this case.<br/>
 
779
 
 
780
Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
 
781
 
 
782
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/01/27<br/>
 
783
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/>
 
784
<ref>Committer's log entry: </ref>
 
785
Two part fix for Jira bug report XALANJ-1888.<br/>
 
786
 
 
787
1) It is possible for the characters SAX event to specify a length of zero.
 
788
Text nodes should not be created in such situations.  Changed the
 
789
charactersFlush method to guard against this case.<br/>
 
790
 
 
791
2) Made a defensive change to references to m_dataOrQName.  If the value in
 
792
this vector is to be interpreted as an index into m_data, it is stored as a
 
793
negative value (via calls to addNode).  However, most references to elements of
 
794
m_dataOrQName were checking whether the value was non-positive, treating a
 
795
value of zero as an index into m_data as well.  The zeroth entry into m_data is
 
796
an invalid entry.<br/>
 
797
The fix to charactersFlush described above should ensure that zero is never
 
798
stored in m_dataOrQName, but I thought it was just as well to duplicate the
 
799
interpretation used in storing values in m_dataOrQName.<br/>
 
800
 
 
801
Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
 
802
 
 
803
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2005/02/04<br/>
 
804
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemNumber.java<br/>
 
805
<ref>Committer's log entry: </ref>
 
806
Implement Errata E24, when the value attribute of xsl:number is NaN, infinite or less than 0.5. 
 
807
More details please refer to bug report XALANJ-1979. Patch is reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
 
808
 
 
809
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/02/09<br/>
 
810
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler XPathParser.java xml-xalan/java/src/org/apache/xpath/res 
 
811
XPATHErrorResources.java<br/>
 
812
<ref>Committer's log entry: </ref>
 
813
Fix for Jira bug report XALANJ-1478.<br/>
 
814
 
 
815
In the recursive descent parsing of an ill-formed XPath expression like "2+",
 
816
when the parser reaches the end of the expression while still looking for an
 
817
operand it ultimately ends up trying to see whether what remains can be parsed
 
818
as a location path.  However, the LocationPath method was silently parsing the
 
819
end of an expression as a location path!  Added an error for that situation.<br/>
 
820
 
 
821
Reviewed by Brian Minchau (minchau@ca.ibm.com)<br/><br/></li>
 
822
 
 
823
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/02/09<br/>
 
824
<ref>Modified: </ref> xml-xalan/java/samples/trax ExampleContentHandler.java<br/>
 
825
<ref>Committer's log entry: </ref>
 
826
Fix for Jira bug report XALANJ-2054.<br/>
 
827
 
 
828
The sample ContentHandler code was printing the namespaceURI argument of
 
829
startElement and of endElement twice, but never printed the localName argument.
 
830
Fixed that typo.<br/>
 
831
 
 
832
Reviewed by Brian Minchau (minchau@ca.ibm.com)<br/><br/></li>
 
833
 
 
834
 
 
835
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/02/11<br/>
 
836
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer AttributesImplSerializer.java EmptySerializer.java 
 
837
ExtendedContentHandler.java NamespaceMappings.java SerializerBase.java ToStream.java ToTextSAXHandler.java 
 
838
ToTextStream.java ToUnknownStream.java ToXMLSAXHandler.java ToXMLStream.java xml-xalan/java/src/org/apache/xalan/serialize 
 
839
SerializerUtils.java xml-xalan/java/src/org/apache/xalan/templates ElemAttribute.java ElemLiteralResult.java<br/>
 
840
<ref>Committer's log entry: </ref>
 
841
Fix for XALANJ-1886. Multiple problems fixed related to collecting xsl:attributes 
 
842
with over-ridden values and prefix/URI maps.  With this fix, internally the
 
843
serializer correctly identifies attributes by their expanded QName, which 
 
844
includes the URI rather than the prefix.<br/><br/></li>
 
845
 
 
846
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/02/11<br/>
 
847
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java xml-xalan/java/src/org/apache/xml/serializer 
 
848
TreeWalker.java<br/>
 
849
<ref>Committer's log entry: </ref>
 
850
Fix for XALANJ-1985, reviewed by Henry Zongaro. The problem was that a serialized DOM failed to declare a prefix/URI mapping.<br/><br/></li>
 
851
 
 
852
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/02/11<br/>
 
853
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorLRE.java<br/>
 
854
<ref>Committer's log entry: </ref>
 
855
Fix for XALANJ-2037.  The trace information doesn't have the right location information in this case.<br/><br/></li>
 
856
 
 
857
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/02/18<br/>
 
858
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer EmptySerializer.java ExtendedContentHandler.java SerializerBase.java<br/>
 
859
<ref>Committer's log entry: </ref>
 
860
Committing serializer.patch5.txt in JIRA issue XALANJ-1886,
 
861
that puts back an old attAttribute() method that takes 5 String arguments.
 
862
There is a new one that takes these 5 String arguments and a boolean to indicate if it is from an xsl:attribute
 
863
or not.  I'm just restoring the old method. Patch reviewed by Henry Zongaro.<br/><br/></li>
 
864
 
 
865
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/02/21<br/>
 
866
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer EmptySerializer.java SerializationHandler.java SerializerBase.java 
 
867
ToStream.java<br/>
 
868
<ref>Committer's log entry: </ref>
 
869
Fix for XALANJ-2033 and XALANJ-2051 so that the serializer will serialize DTD
 
870
tags if desired.  The patch was reviewed by Ilene Seeleman.
 
871
<br/><br/></li><li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/02/22<br/>
 
872
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils URI.java<br/>
 
873
<ref>Committer's log entry: </ref>
 
874
The fix is for XALANJ-2059.<br/>
 
875
 
 
876
The problem is that when href attribute has aboslute uri with jar scheme and
 
877
base uri is not null, then base uri is pre-appended to uri specified in href attribute.
 
878
The newer patch is according to RFC 2396.
 
879
The newer patch ignores base uri and directly make use of uri specifed href attribute, provided following conditions are met.<br/>
 
880
a)If uri specified in href attribute starts with / after the scheme and :
 
881
  For example, href="file:/myDIR/myXSLFile.xsl.<br/>
 
882
b)If scheme specified for uri href attribute is not same as scheme for base uri.<br/>
 
883
c)If base uri is not hierarchical<br/>
 
884
 
 
885
Henry Zongaro has helped creating this patch.<br/><br/></li>
 
886
 
 
887
<li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/03/02<br/>
 
888
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerConstants.java ToStream.java ToXMLStream.java 
 
889
xml-xalan/java/src/org/apache/xml/serializer/utils MsgKey.java SerializerMessages.java<br/>
 
890
<ref>Committer's log entry: </ref>
 
891
This patch fix XALANJ-2070.  This patch add XML 1.1 support in term of following:<br/>
 
892
- Output Document can be of Version XML 1.1<br/>
 
893
- Control Characters in Range C0 and C1 are output as NCR.<br/>
 
894
- Namespaces in XML 1.1 can be IRIs.<br/>
 
895
- NCNames and QNames can conform to XML 1.1 specifications.<br/>
 
896
- NEL and LSEP characters are treated as new end of line character as per XML 1.1 specifications.<br/>
 
897
 
 
898
Thanks to Brian Minchau for reviewing the patch.  Brian Minchau and Henry Zongaro has also helped how XML 1.1 support should be done.
 
899
<br/><br/></li>
 
900
 
 
901
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2005/03/03<br/>
 
902
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java xml-xalan/java/src/org/apache/xalan/templates 
 
903
ElemExtensionCall.java ElemLiteralResult.java<br/>
 
904
<ref>Committer's log entry: </ref>
 
905
Added implementation for getAttribute, getAttributeNS and getAttributes for LRE. A fix for bug report XALANJ-1526.<br/><br/></li>
 
906
 
 
907
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/03/03<br/>
 
908
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/design design2_0_0.xml<br/>
 
909
<ref>Committer's log entry: </ref>
 
910
Patch for XALANJ-1990.  Fixes broken link to apidocs for Serializer.html.<br/><br/></li>
 
911
 
 
912
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/03/03<br/>
 
913
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan usagepatterns.xml<br/>
 
914
<ref>Committer's log entry: </ref>
 
915
Patch for XALANJ-2026.  Fixes typo in Debugger interface code example.
 
916
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/03/07<br/>
 
917
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerFactory.java xml-xalan/java/src/org/apache/xml/serializer/utils 
 
918
MsgKey.java SerializerMessages.java<br/>
 
919
<ref>Committer's log entry: </ref>
 
920
Fix for XALANJ-2074, committing patch2 in that issue, which removes two
 
921
untranslated messages in SerializerFactory, and uses a new common message
 
922
in SerializerMessages.<br/><br/></li>
 
923
 
 
924
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2005/03/10<br/>
 
925
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java<br/>
 
926
<ref>Committer's log entry: </ref>
 
927
Marked the code to be privileged, which allows users to load
 
928
customized entity files in sandbox. Fixed bug report XALANJ-2068.
 
929
Patch was reviewed by Brian Minchau (minchau@ca.ibm.com)<br/><br/></li>
 
930
 
 
931
<li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/03/10<br/>
 
932
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/>
 
933
<ref>Committer's log entry: </ref>
 
934
This patch fixes XALANJ-1431. The patch has been reviewed by Brian.
 
935
The problem is that that when an empty attribute value is encountered, a text node is being created 
 
936
with empty string. 
 
937
Henry Zongaro has helped finding the XSLT 1.0 specs. that suggest a text node with empty string should not be created. 
 
938
URL http://www.w3.org/TR/xslt#value-of has the following information: 
 
939
"The xsl:value-of element is instantiated to create a text node in the result tree. The required select attribute is an 
 
940
expression; this expression is evaluated and the resulting object is converted to a string as if by a call to the string 
 
941
function. The string specifies the string-value of the created text node. If the string is empty, no text node will be 
 
942
created. The created text node will be merged with any adjacent text nodes."<br/><br/></li>
 
943
 
 
944
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/03/14<br/>
 
945
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan builds.xml<br/>
 
946
<ref>Committer's log entry: </ref>
 
947
Patch for Jira bug report XALANJ-2079.  Updated links to nightly Gump build. Reviewed by Brian Minchau.<br/><br/></li>
 
948
 
 
949
<li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/03/23<br/>
 
950
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTAttributeDef.java xml-xalan/java/src/org/apache/xalan/templates 
 
951
ElemAttribute.java ElemElement.java ElemPI.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java 
 
952
AttributeSet.java CallTemplate.java DecimalFormatting.java Key.java Output.java ProcessingInstruction.java Template.java 
 
953
VariableBase.java WithParam.java xpath.lex XslAttribute.java XslElement.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util 
 
954
Util.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java xml-xalan/java/src/org/apache/xml/serializer 
 
955
WriterToUTF8Buffered.java xml-xalan/java/src/org/apache/xml/utils QName.java XML11Char.java<br/>
 
956
<ref>Committer's log entry: </ref>
 
957
This is resolve UTF-8 Charcater support and QName character support for XML 1.1 support in XALANJ-2070.
 
958
Henry Zongaro and Brian Minchau helped in fixing this part of the JIRA issue.
 
959
A new class org.apache.xml.utils.XML11Char has been included to support XML 1.1 characters.
 
960
Also a reference to org.apache.xml.utils.XMLChar has been replaced with a reference to
 
961
org.apache.xml.utils.XML11Char in almost all the places in Xalan.
 
962
org.apache.xml.serializer.WriterToUTF8Buffered has been update to support UTF-8 characters that can be represented in four bytes.
 
963
<br/><br/></li>
 
964
 
 
965
<li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/03/30<br/>
 
966
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/domapi package.html<br/>
 
967
<ref>Committer's log entry: </ref>
 
968
This resolves XALANJ-2085. Sarah McNamara has reviewed this change.<br/><br/></li>
 
969
 
 
970
<li><ref>Committed by </ref>ytalwar@apache.org<ref> on </ref>2005/04/01<br/>
 
971
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemNumber.java<br/>
 
972
<ref>Committer's log entry: </ref>
 
973
This is a fix for XALANJ-2089.
 
974
Christine Li has created this patch.
 
975
Brian Minchau helped in creating this patch.
 
976
Brian Minchau also reviewed this patch.
 
977
org.apache.xalan.templates.ElemNumber.java has raised some performance issue as 
 
978
a static array to hold resources was removed earlier.  However, the removal of static array is necessary
 
979
to fix a potential bug multithread environment, where a given thread can request different locale than another thread.
 
980
 
 
981
This patch resolves the performance glicth that was found in internal testing.<br/><br/></li>
 
982
 
 
983
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/04/07<br/>
 
984
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java<br/>
 
985
<ref>Committer's log entry: </ref>
 
986
Commiting patch for XALANJ-2095, that tabs in text nodes in XML documents
 
987
are serialized to &amp;#9; but should stay as a tab character.<br/><br/></li>
 
988
 
 
989
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/04/07<br/>
 
990
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan usagepatterns.xml<br/>
 
991
<ref>Committer's log entry: </ref>
 
992
Patch from XALANJ-1924 applied. The one deprecated API used is replace
 
993
by the current one, but multiple typos in other examples are corrected.<br/><br/></li>
 
994
 
 
995
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/04/07<br/>
 
996
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Encodings.java<br/>
 
997
<ref>Committer's log entry: </ref>
 
998
Committing patch for XALANJ-2077.  This performance modification is
 
999
estimated to shave 3% of the serialization stage of small documents.
 
1000
Every little bit counts.<br/><br/></li>
 
1001
 
 
1002
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/04/07<br/>
 
1003
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Encodings.java<br/>
 
1004
<ref>Committer's log entry: </ref>
 
1005
Appling fix for XALANJ-2086, which pointed out that findCharToByteConverterMethod() 
 
1006
always returned null.  This bug was introduced some time ago during some security
 
1007
fixes.<br/><br/></li>
 
1008
 
 
1009
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/04/25<br/>
 
1010
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/>
 
1011
<ref>Committer's log entry: </ref>
 
1012
Fix for XALANJ-2109 applied (we won't \n to \r\n in an HTML attribute value on
 
1013
Windows OS anymore, it will be left as is during serialization).<br/><br/></li>
 
1014
 
 
1015
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/04/26<br/>
 
1016
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils XMLReaderManager.java<br/>
 
1017
<ref>Committer's log entry: </ref>
 
1018
Applying patch in XALANJ-2105.<br/><br/></li>
 
1019
 
 
1020
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/17<br/>
 
1021
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan Version.java xml-xalan/java/src/org/apache/xalan/processor 
 
1022
TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xalan/templates ElemLiteralResult.java 
 
1023
xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/trax 
 
1024
SmartTransformerFactoryImpl.java TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xml/dtm/ref DTMNodeProxy.java 
 
1025
xml-xalan/java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTMdefaultNamespaceDeclarationNode.java xml-xalan/java/src/org/apache/xml/utils 
 
1026
UnImplNode.java xml-xalan/java/src/org/apache/xpath/domapi XPathNamespaceImpl.java xml-xalan/java/src/org/apache/xpath/operations 
 
1027
Variable.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java<br/>
 
1028
<ref>Committer's log entry: </ref>
 
1029
JAXP 1.3 integration. Integrate the Sun donated JAXP 1.3 implementation into the head branch.<br/><br/></li>
 
1030
 
 
1031
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/17<br/>
 
1032
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/jaxp JAXPExtensionsProvider.java JAXPPrefixResolver.java JAXPVariableStack.java 
 
1033
XPathExpressionImpl.java XPathFactoryImpl.java XPathImpl.java<br/>
 
1034
<ref>Committer's log entry: </ref>
 
1035
JAXP 1.3 integration. Commit the XPath API implementation under org.apache.xpath.jaxp.<br/><br/></li>
 
1036
 
 
1037
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/17<br/>
 
1038
<ref>Modified: </ref> xml-xalan/java/bin xml-apis.jar<br/>
 
1039
<ref>Committer's log entry: </ref>
 
1040
New xml-apis.jar containing JAXP 1.3 APIs.<br/><br/></li>
 
1041
 
 
1042
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2005/05/17<br/>
 
1043
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler Compiler.java FuncLoader.java FunctionTable.java Keywords.java 
 
1044
ObjectFactory.java SecuritySupport.java SecuritySupport12.java XPathParser.java xml-xalan/java/src/org/apache/xpath/functions 
 
1045
FuncExtFunctionAvailable.java xml-xalan/java/src/org/apache/xalan/processor StylesheetHandler.java<br/>
 
1046
<ref>Committer's log entry: </ref>
 
1047
Modified FunctionTable. Although it is not recommanded, but it is doable for users to add a customized function or overwrite 
 
1048
the default implementation of a build-in function. Fixed bug report XALANJ-2116. Patch is reviewed by Henry Zongaro.<br/><br/></li>
 
1049
 
 
1050
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/20<br/>
 
1051
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java TransformerImpl.java 
 
1052
xml-xalan/java/src/org/apache/xml/utils DOMBuilder.java<br/>
 
1053
<ref>Committer's log entry: </ref>
 
1054
Support DOMResult.nextSibling in XalanJ Interpretive. If nextSibling is not null, then result nodes are inserted
 
1055
before it.<br/><br/></li>
 
1056
 
 
1057
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/20<br/>
 
1058
<ref>Modified: </ref> xml-xalan/java/samples/XPathAPI ApplyXPathJAXP.java foo.xml XPathResolver.java<br/>
 
1059
<ref>Committer's log entry: </ref>
 
1060
Add two samples to demonstrate how to use the XPath API in JAXP 1.3.<br/>
 
1061
1. ApplyXPathJAXP. Basic sample like ApplyXPath, but use JAXP 1.3 XPath API instead.<br/>
 
1062
2. XPathResolver. Demonstrate how to use NamespaceContext, XPathFunctionResolver and XPathVariableResolver.<br/><br/></li>
 
1063
 
 
1064
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/30<br/>
 
1065
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerJavaClass.java ExtensionHandlerJavaPackage.java 
 
1066
ExtensionNamespaceContext.java XPathFunctionImpl.java XPathFunctionResolverImpl.java<br/>
 
1067
<ref>Committer's log entry: </ref>
 
1068
Patch for XALANJ-2126. This is a sample implementation of XPathFunctionResolver, with support for
 
1069
Java and EXSLT extension functions.<br/><br/></li>
 
1070
 
 
1071
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/30<br/>
 
1072
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java<br/>
 
1073
<ref>Committer's log entry: </ref>
 
1074
New messages for XALANJ-2126. Messages for the sample XPathFunctionResolver implementation.<br/><br/></li>
 
1075
 
 
1076
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/05/30<br/>
 
1077
<ref>Modified: </ref> xml-xalan/java/samples/XPathAPI ExtensionFunctionResolver.java<br/>
 
1078
<ref>Committer's log entry: </ref>
 
1079
For XALANJ-2126. New sample to demonstrate how to use the sample
 
1080
XPathFunctionResolver to evaluate XPath expression containing
 
1081
Java and EXSLT extension functions.<br/><br/></li>
 
1082
 
 
1083
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/05/31<br/>
 
1084
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/>
 
1085
<ref>Committer's log entry: </ref>
 
1086
Committing patch for issue XALANJ-2121, which is that some empty attributes
 
1087
of some HTML elements are note serialized as empty.<br/><br/></li>
 
1088
 
 
1089
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/05/31<br/>
 
1090
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/>
 
1091
<ref>Committer's log entry: </ref>
 
1092
Putting static iniitialization of HTML element/attribute information in a static method,
 
1093
which is invoked from a static { ...} block.
 
1094
No real difference, but slowly inching this code towards adding a
 
1095
ToXHTMLStream class that extends ToXMLStream, but uses methods in
 
1096
ToHTMLStream.<br/><br/></li>
 
1097
 
 
1098
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/05/31<br/>
 
1099
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/>
 
1100
<ref>Committer's log entry: </ref>
 
1101
Added "nowrap" as an empty attribute for elements &lt;div&gt; &lt;src&gt; and &lt;tr&gt;
 
1102
as these are either Netscape or Internet-Explorer extensions.
 
1103
This is patch3 from XALANJ-2121.<br/><br/></li>
 
1104
 
 
1105
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/06/01<br/>
 
1106
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer OutputPropertiesFactory.java ToStream.java<br/>
 
1107
<ref>Committer's log entry: </ref>
 
1108
Applying patcth for JIRA XALANJ-2093. Adding a xalan:line-separator extension output attribute.<br/><br/></li>
 
1109
 
 
1110
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/03<br/>
 
1111
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan Version.java xml-xalan/java/src/org/apache/xalan/processor 
 
1112
TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java 
 
1113
TransformerImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler Parser.java 
 
1114
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMsg.java xml-xalan/java/src/org/apache/xalan/xsltc/trax 
 
1115
TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xml/utils DefaultErrorHandler.java<br/>
 
1116
<ref>Committer's log entry: </ref>
 
1117
Patch for XALANJ-2134. Change the error handling behavior to be conformant with the requirement
 
1118
from JAXP 1.3 that the default ErrorListener will report all warnings and errors
 
1119
to System.err and does not throw any Exceptions.<br/><br/></li>
 
1120
 
 
1121
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/07<br/>
 
1122
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan Version.java xml-xalan/java/src/org/apache/xalan/processor 
 
1123
ProcessorInclude.java ProcessorLRE.java ProcessorStylesheetElement.java TransformerFactoryImpl.java 
 
1124
xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java xml-xalan/java/src/org/apache/xalan/templates 
 
1125
ElemExtensionCall.java StylesheetRoot.java xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java 
 
1126
TransformerImpl.java TrAXFilter.java xml-xalan/java/src/org/apache/xalan/xslt Process.java xml-xalan/java/src/org/apache/xml/utils 
 
1127
DOMHelper.java xml-xalan/java/src/org/apache/xpath XPathContext.java xml-xalan/java/src/org/apache/xpath/functions 
 
1128
FuncExtFunction.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java<br/>
 
1129
<ref>Committer's log entry: </ref>
 
1130
Patch for XALANJ-2136. Support the secure processing feature in Xalan interpretive. When this feature
 
1131
is set to true, the following XML processing limits are applied:<br/>
 
1132
1. extension functions and extension elements are disabled.<br/>
 
1133
2. parsers created by the XSLT processor also have the secure processing feature set
 
1134
to true.<br/>
 
1135
 
 
1136
A new option -secure is added to the Process command line to enable the secure
 
1137
processing feature.<br/><br/></li>
 
1138
 
 
1139
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/15<br/>
 
1140
<ref>Modified: </ref> xml-xalan/java/xdocs/sources entities.ent xalan-jlocal.xml xalan-jsite.xml xml-xalan/java/xdocs/sources/xalan 
 
1141
features.xml samples.xml xpath_apis.xml<br/><ref>Committer's log entry: </ref>
 
1142
Patch for XALANJ-2124. Update the online documentation to include descriptions on the new JAXP 1.3 features:<br/>
 
1143
1. Add a new "XPath API" page to provide a complete guide on how to use the
 
1144
XPath API in JAXP 1.3. Details on basic usage patterns, factory plugin mechanism,
 
1145
how to use NamespaceContext, XPathVariableResolver and XPathFunctionResolver.<br/>
 
1146
2. Document the secure processing feature in the features page.<br/>
 
1147
3. Describe three new XPath API related samples in the samples page.<br/><br/></li>
 
1148
 
 
1149
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/21<br/>
 
1150
<ref>Modified: </ref> xml-xalan/java/src/META-INF/services javax.xml.xpath.XPathFactory<br/>
 
1151
<ref>Committer's log entry: </ref>
 
1152
Service provider file for javax.xml.xpath.XPathFactory.<br/><br/></li>
 
1153
 
 
1154
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/21<br/>
 
1155
<ref>Modified: </ref> xml-xalan/java/samples/XPathAPI ExtensionTest.java numlist.xml<br/>
 
1156
<ref>Committer's log entry: </ref>
 
1157
xml and extension java source for the ExtensionFunctionResolver sample.<br/><br/></li>
 
1158
 
 
1159
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/21<br/>
 
1160
<ref>Modified: </ref> xml-xalan/java/src MANIFEST.MF manifest.xalan-interpretive manifest.xsltc<br/>
 
1161
<ref>Committer's log entry: </ref>
 
1162
Update manifest files for jaxp version and remove entry for org.w3c.dom.xpath.<br/><br/></li>
 
1163
 
 
1164
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/22<br/>
 
1165
<ref>Modified: </ref> xml-xalan/java build.xml xml-xalan/java/bin xml-apis.jar xml-xalan/java/src 
 
1166
xml-commons-external-1.2.01-src.tar.gz xml-commons-external-1.3.01-src.tar.gz<br/><ref>Committer's log entry: </ref>
 
1167
Update the source and binary of xml-apis.jar.<br/><br/></li>
 
1168
 
 
1169
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/22<br/>
 
1170
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMNodeProxy.java<br/>
 
1171
<ref>Committer's log entry: </ref>
 
1172
Java docs cleanup. Remove the word "Experimental" for DOM Level 3 spec and update the URI link.
 
1173
Also remove the obsolete methods that are replaced by new ones.<br/><br/></li>
 
1174
 
 
1175
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/22<br/>
 
1176
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan Version.java xml-xalan/java/src/org/apache/xalan/processor 
 
1177
StylesheetHandler.java xml-xalan/java/src/org/apache/xml/utils UnImplNode.java<br/>
 
1178
<ref>Committer's log entry: </ref>
 
1179
Cleanup javadocs on DOM Level 3 spec. Update the uri and remove
 
1180
obsolete methods. The getVersion() method in org.w3c.dom.Node is replaced by
 
1181
getXmlVersion().<br/><br/></li>
 
1182
 
 
1183
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/24<br/>
 
1184
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
1185
<ref>Committer's log entry: </ref>
 
1186
Add xml-apis.jar to boot classpath to fix a build problem with JDK 1.4.<br/><br/></li>
 
1187
 
 
1188
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/28<br/>
 
1189
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltDatetime.java<br/>
 
1190
<ref>Committer's log entry: </ref>
 
1191
Patch for XALANJ-2076. Fix a bug in date:month-in-year.<br/><br/></li>
 
1192
 
 
1193
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2005/06/29<br/>
 
1194
<ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/>
 
1195
<ref>Committer's log entry: </ref>
 
1196
New xercesImpl.jar from the official Xerces-J 2.7.0 release.<br/><br/></li>
 
1197
 
 
1198
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2005/06/29<br/>
 
1199
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java
 
1200
xml-xalan/java/src/org/apache/xml/res XMLErrorResources.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java<br/>
 
1201
<ref>Committer's log entry: </ref>
 
1202
Cleanup resource files. Remove unused constants and commented out message keys. Fix for bug XALANJ-2161
 
1203
Patch is reviewed by Sarah McNamara (mcnamara@ca.ibm.com)<br/><br/></li>
 
1204
 
 
1205
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/07/05<br/>
 
1206
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java<br/>
 
1207
<ref>Committer's log entry: </ref>
 
1208
Patch for Jira issue XALANJ-1978.  Reviewed by Christine Li (jycli@ca.ibm.com).<br/>
 
1209
 
 
1210
Behaviour of StreamResult.getSystemId has changed if the Result object was
 
1211
created using a File.  The URI returned begins with "file:/" where it used to
 
1212
begin with "file:///".  TransformerIdentityImpl had a dependency on the old
 
1213
behaviour.<br/><br/></li>
 
1214
 
 
1215
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/07/15<br/>
 
1216
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLSAXHandler.java<br/>
 
1217
<ref>Committer's log entry: </ref>
 
1218
Applying patch2 from XALANJ-2023.<br/>
 
1219
Submitted by Ken Weiner, reviewed, approved, applied by Brian Minchau.<br/><br/></li>
 
1220
 
 
1221
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/07/15<br/>
 
1222
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/>
 
1223
<ref>Committer's log entry: </ref>
 
1224
Changing "&lt;!DOCTYPE HTML" to "&lt;!DOCTYPE html" to be more xhtml friendly.
 
1225
Applying the patch in XALANJ-2103 that was created by Brian Minchau
 
1226
and reviewed/approved by Joanne Tong.<br/><br/></li>
 
1227
 
 
1228
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/15<br/>
 
1229
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltDatetime.java<br/>
 
1230
<ref>Committer's log entry: </ref>
 
1231
Patch for XALANJ-2099 provided by Morris Kwan and reviewed by me.
 
1232
 
 
1233
According to the EXSLT doc the extension date:day-abbreviation() should
 
1234
output a three-letter English day abbreviation: one of 'Sun', 'Mon', 'Tue',
 
1235
'Wed', 'Thu' or 'Fri'.  (See http://exslt.org/date/functions/day-abbreviation/index.html)<br/><br/></li>
 
1236
 
 
1237
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/15<br/>
 
1238
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/>
 
1239
<ref>Committer's log entry: </ref>
 
1240
Patch for XALANJ-2143.   Javadoc improvement for TransformerImpl.setOutputProperty(name,value).<br/><br/></li>
 
1241
 
 
1242
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/15<br/>
 
1243
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan usagepatterns.xml<br/><ref>Committer's log entry: </ref>
 
1244
Patch for XALANJ-2142 - correction for the xalan namespace URI.  Patch provided by Brian Minchau and
 
1245
reviewed by Sarah McNamara.<br/>
 
1246
 
 
1247
Patch for XALANJ-2144 - incorrect use of the word "concurrently" when referring to the XPath module.<br/><br/></li>
 
1248
 
 
1249
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
 
1250
<ref>Modified: </ref> xml-xalan/java/licenses BCEL.LICENSE.txt LICENSE.DOM-documentation.html LICENSE.DOM-software.html 
 
1251
LICENSE-SAX.html regexp.LICENSE.txt runtime.LICENSE.txt serializer.LICENSE.txt serializer.NOTICE.txt xalan.LICENSE.txt 
 
1252
xalan.NOTICE.txt xercesImpl.LICENSE.txt xercesImpl.NOTICE.txt xml-apis.LICENSE.txt xml-apis.NOTICE.txt<br/>
 
1253
<ref>Committer's log entry: </ref>
 
1254
Creation of the xml-xalan/java/licenses directory which contains
 
1255
all licenses required for the Xalan Java (interpretive and compiled) runtime
 
1256
jars and its dependencies.   Most of these files have been moved here
 
1257
from xml-xalan/java/bin.  The serializer files are new for the Xalan Java 2.7
 
1258
release (fixes XALANJ-1977).  The xercesImpl.LICENSE.txt and xml-apis.LICENSE.txt
 
1259
now reflect ASL v2.0. This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>
 
1260
 
 
1261
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
 
1262
<ref>Modified: </ref> xml-xalan/java/lib xercesImpl.jar xercesImpl.README.txt xml-apis.jar xml-apis.README.txt BCEL.jar BCEL.README.txt 
 
1263
regexp.jar regexp.README.txt runtime.jar runtime.README.txt<br/>
 
1264
<ref>Committer's log entry: </ref>
 
1265
Creation of the xml-xalan/java/lib directory which contains all runtime
 
1266
library dependencies (jars) required by Xalan Java (interpretive and compiled) runtime
 
1267
These files have been moved here from xml-xalan/java/bin.<br/>
 
1268
 
 
1269
This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>
 
1270
 
 
1271
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
 
1272
<ref>Modified: </ref> xml-xalan/java/tools ant.jar ant.LICENSE.txt ant.README.txt antRun antRun.bat java_cup.jar java_cup.LICENSE.txt 
 
1273
java_cup.README.txt JLex.jar JLex.LICENSE.txt JLex.README.txt stylebook-1.0-b3_xalan-2.jar stylebook-1.0-b3_xalan-2.LICENSE.txt 
 
1274
stylebook-1.0-b3_xalan-2.README.txt xalan2jdoc.jar xalan2jtaglet.jar<br/>
 
1275
<ref>Committer's log entry: </ref>
 
1276
Creation of the xml-xalan/java/tools directory which contains all build time
 
1277
tools required by Xalan Java (interpretive and compiled) builds, including
 
1278
documentation builds.  These tools are not required at runtime.<br/>
 
1279
 
 
1280
These files have been moved here from xml-xalan/java/bin.<br/>
 
1281
 
 
1282
This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>
 
1283
 
 
1284
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
 
1285
<ref>Modified: </ref> xml-xalan/java serializer.README.txt xalan.README.txt<br/>
 
1286
<ref>Committer's log entry: </ref>
 
1287
New readme files for the xalan.jar and serializer.jar.
 
1288
This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>
 
1289
 
 
1290
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
 
1291
<ref>Modified: </ref> xml-xalan/java build.bat build.sh build.xml<br/>
 
1292
<ref>Committer's log entry: </ref>
 
1293
Updates to the build scripts and Ant build.xml file to accomodate the
 
1294
restructuring of the tools and runtime libraries in xml-xalan/java/tools and
 
1295
xml-xalan/java/lib.    Also changes to build.xml to reflect upcoming
 
1296
Xalan Java 2.7.0 (version number) changes.<br/>
 
1297
 
 
1298
This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>
 
1299
 
 
1300
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
 
1301
<ref>Modified: </ref> xml-xalan/java/samples/AppletXMLtoHTML client.html README.html xml-xalan/java/samples/ApplyXPathDOM ApplyXPathDOM.java<br/>
 
1302
<ref>Committer's log entry: </ref>
 
1303
Doc changes for Xalan Java 2.7.0 release.
 
1304
This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>
 
1305
 
 
1306
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
 
1307
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLProcessorVersion.java xml-xalan/java/src/org/apache/xalan/xslt 
 
1308
EnvironmentCheck.java xml-xalan/java/src/org/apache/xpath/domapi XPathEvaluatorImpl.java XPathExpressionImpl.java 
 
1309
XPathNSResolverImpl.java XPathResultImpl.java xml-xalan/java/src/org/apache/xml/serializer Version.src xml-xalan/java/xdocs/sources 
 
1310
entities.src xalan-jlocal.xml xalan-jsite.xml xml-xalan/java/xdocs/sources/xalan commandline_xsltc.xml commandline.xml downloads.xml 
 
1311
extensions.xml extensionslib.xml faq.xml features.xml getstarted.xml index.xml overview.xml public_apis.xml resources.xml samples.xml 
 
1312
trax.xml usagepatterns.xml whatsnew.xml xpath_apis.xml xsltc_usage.xml xml-xalan/java/xdocs/sources/xsltc README.xslt README.xsltc<br/>
 
1313
<ref>Committer's log entry: </ref>
 
1314
Doc changes for Xalan Java 2.7.0 release.
 
1315
This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>
 
1316
 
 
1317
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/19<br/>
 
1318
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLProcessorVersion.src xml-xalan/java build.xml<br/>
 
1319
<ref>Committer's log entry: </ref>
 
1320
Doc changes for Xalan Java 2.7.0 release.
 
1321
This change was reviewed and approved in XALANJ-2170 by Christine Li.<br/><br/></li>
 
1322
 
 
1323
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2005/07/21<br/>
 
1324
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils XMLString.java XMLStringDefault.java xml-xalan/java/src/org/apache/xpath/objects 
 
1325
XString.java<br/>
 
1326
<ref>Committer's log entry: </ref>
 
1327
Patch for XALANJ-2176 reviewed by Christine Li (jycli@ca.ibm.com).<br/>
 
1328
 
 
1329
Replaced characters in Javadoc comments that were encoded in ISO-8859-1 with
 
1330
HTML character entity references.  This avoids any problems with editors, IDEs
 
1331
or versions of javac that make faulty assumptions about source encodings.<br/><br/></li>
 
1332
 
 
1333
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2005/07/24<br/>
 
1334
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor TransformerFactoryImpl.java<br/>
 
1335
<ref>Committer's log entry: </ref>
 
1336
PR: XALANJ-2113<br/>
 
1337
Submitted by:            John Gentilin<br/>
 
1338
Reviewed by:             Henry Zongaro<br/><br/></li>
 
1339
 
 
1340
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2005/07/25<br/>
 
1341
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/objects XString.java
 
1342
xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java<br/>
 
1343
<ref>Committer's log entry: </ref>
 
1344
PR: XALANJ-2114<br/>
 
1345
Submitted by:            John Gentilin<br/>
 
1346
Reviewed by:             Henry Zongaro<br/><br/></li>
 
1347
 
 
1348
<li><ref>Committed by </ref>mcnamara@ca.ibm.com<ref> on </ref>2005/07/25<br/>
 
1349
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/functions FuncSystemProperty.java<br/>
 
1350
<ref>Committer's log entry: </ref>
 
1351
Patch for XALANJ-936. Reviewed by Yash Talwar.<br/><br/></li>
 
1352
 
 
1353
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/27<br/>
 
1354
<ref>Modified: </ref> xml-xalan/java/bin xml-apis.jar<br/>
 
1355
<ref>Committer's log entry: </ref>
 
1356
Update xml-apis.jar to xml-commons-external-1.3.02 version.<br/><br/></li>
 
1357
 
 
1358
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2005/07/27<br/>
 
1359
<ref>Modified: </ref> java/src/org/apache/xalan/lib/sql JNDIConnectionPool.java<br/>
 
1360
java/samples/extensions/sql/basic-connection dbinfo.xml dbtest.xsl DumpSQL.xsl dbtest-cinfo.xsl<br/>
 
1361
java/samples/extensions/sql/ext-connection dbtest.xsl ExternalConnection.java<br/>
 
1362
java/samples/extensions/sql/pquery dbinfo.xml<br/>
 
1363
java/samples/extensions/sql/streamable cachedNodes.xsl streamNodes.xsl pivot.xsl<br/>
 
1364
java/samples/extensions/sql GETTING_STARTED.txt runDerby.bat runXalan.sh createdb.sql runDerby.sh runXalan.bat<br/>
 
1365
<ref>Committer's log entry: </ref>
 
1366
PR: XALANJ-2172<br/>
 
1367
Obtained from: Eric Everman<br/>
 
1368
Submitted by: Eric Everman / John Gentilin<br/>
 
1369
Reviewed by: Yash Talwar<br/><br/></li>
 
1370
 
 
1371
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/07/29<br/>
 
1372
<ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/>
 
1373
<ref>Committer's log entry: </ref>
 
1374
New xercesImpl.jar from the official Xerces-J 2.7.1 release.<br/><br/></li>
 
1375
 
 
1376
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/08/03<br/>
 
1377
<ref>Modified: </ref> java/src/org/apache/xml/serializer ToTextStream.java Encodings.properties ToHTMLStream.java
 
1378
ToStream.java EncodingInfo.java ToXMLStream.java Encodings.java<br/>
 
1379
<ref>Committer's log entry: </ref>
 
1380
Committing patch for XALANJ-2087. This is a fix for correctly deciding if a character is in an encoding or not,
 
1381
so we write it as is, or as an entity.<br/>
 
1382
The old code had a concept of a maximum character in the encoding, and assumed that all characters less
 
1383
than that unicode value were in the encoding.  New code uses the underlying Java libarary, but caches results 
 
1384
for performance.<br/>
 
1385
Patch was reviewed/approved by Yash Talwar (see XALANJ-2087).<br/><br/></li>
 
1386
 
 
1387
<li><ref>Committed by </ref>mcnamara@apache.org<ref> on </ref>2005/08/04<br/>
 
1388
<ref>Modified: </ref> java/samples/extensions/sql/show-error invalidQuery.xsl invalidPQuery.xsl invalidConn.xsl<br/>
 
1389
<ref>Committer's log entry: </ref>
 
1390
Updates for the SQL samples (part of the fix for XALANJ-2172). Patch provided by John Gentilin and reviewed by Sarah McNamara.<br/><br/></li>
 
1391
 
 
1392
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2005/08/04<br/>
 
1393
<ref>Modified: </ref> java/src/org/apache/xml/serializer ToStream.java EncodingInfo.java<br/>
 
1394
java/src/org/apache/xml/serializer/utils SerializerMessages.java MsgKey.java<br/>
 
1395
<ref>Committer's log entry: </ref>
 
1396
Committing XALANJ-2181. When the requested encoding is not supported by the JDK no
 
1397
warning is given,... this fix adds an error message.<br/><br/></li>
 
1398
 
 
1399
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2005/08/05<br/>
 
1400
<ref>Modified: </ref> java/samples/extensions/sql/ext-connection ExternalConnection.java<br/>
 
1401
java/xdocs/sources/xalan samples.xml<br/>
 
1402
java/samples/extensions/sql runDerby.bat runXalan.sh runDerby.sh runXalan.bat runExtConnection.bat runExtConnection.sh<br/>
 
1403
java/src/org/apache/xalan/lib/sql DefaultConnectionPool.java<br/>
 
1404
<ref>Committer's log entry: </ref>
 
1405
PR: XALANJ-2183.<br/><br/></li>
 
1406
 
 
1407
</ul>
 
1408
</s2>
 
1409
 
 
1410
<s2 title="Changes for &xslt4j; 2.6.0">
 
1411
<p> Core (Non-XSLTC) source code updates:</p>
 
1412
<ul>
 
1413
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/11/24<br/>
 
1414
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc DOM.java Translet.java 
 
1415
xml-xalan/java/src/org/apache/xalan/xsltc/compiler SyntaxTreeNode.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util 
 
1416
ResultTreeType.java xml-xalan/java/src/org/apache/xalan/xsltc/dom AdaptiveResultTreeImpl.java 
 
1417
DOMAdapter.java DOMWSFilter.java MultiDOM.java SAXImpl.java SimpleResultTreeImpl.java 
 
1418
xml-xalan/java/src/org/apache/xml/dtm/ref ExpandedNameTable.java<br/><br/>
 
1419
<ref>Committer's log entry: </ref>
 
1420
Patch from Morris Kwan (mkwan@ca.ibm.com), reviewed by myself, with a tweak
 
1421
or two from myself, reviewed by Morris.<br/><br/>
 
1422
 
 
1423
Split namesArray in translet into three arrays:  namesArray, urisArray and
 
1424
typesArray.<br/><br/>
 
1425
 
 
1426
Previously, entries in the namesArray had to be examined at run-time to
 
1427
distinguish those that represented elements, from those that represented
 
1428
attributes (prefixed by an '@'), and those that represented namespace node
 
1429
names (prefixed by a '?').  In addition, any namespace URI for the element or
 
1430
attribute was similarly stored in the namesArray entry.  So,
 
1431
"http://example.org:abc" and "http://example.org:@abc" respectively represented
 
1432
an element and an attribute named abc in the http://example.org namespace;
 
1433
"?abc" represented a namespace prefix of abc.<br/><br/>
 
1434
 
 
1435
With this change, the namesArray will have entries for "abc" in all three
 
1436
cases; the urisArray will contain entries for "http://example.org" for the
 
1437
element and attribute, and an empty string for the namespace prefix; and the
 
1438
typesArray will contain the value 1 for the element, 2 for the attribute and 13
 
1439
for the namespace (which correspond to the DTM constant values for those kinds
 
1440
of nodes).<br/><br/>
 
1441
 
 
1442
In addition, these values are stored in static arrays in the translet, and
 
1443
references to those arrays are copied to instance fields in the translet's
 
1444
constructor, rather than constructing arrays and initializing all their entries
 
1445
in the constructor each time.<br/><br/>
 
1446
 
 
1447
All this serves to reduce the overhead of initializing a transformation.<br/><br/></li>
 
1448
 
 
1449
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/11/24<br/>
 
1450
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer NamespaceMappings.java<br/><br/>
 
1451
<ref>Committer's log entry: </ref>
 
1452
Submitted by:   Brian Minchau<br/><br/>
 
1453
Just indentation and whitespace changes in the code
 
1454
(trying to get Apache head and the xslt2.0-compiled branches closer).<br/><br/></li>
 
1455
 
 
1456
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/11/25<br/>
 
1457
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToTextStream.java<br/><br/>
 
1458
<ref>Committer's log entry: </ref>
 
1459
PR: bugzilla 24278<br/><br/>
 
1460
Submitted by:   Brian Minchau<br/><br/></li>
 
1461
 
 
1462
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/11/25<br/>
 
1463
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemLiteralResult.java<br/><br/>
 
1464
<ref>Committer's log entry: </ref>
 
1465
PR: bugzilla 24423<br/><br/>
 
1466
Submitted by:   Brian Minchau<br/><br/></li>
 
1467
 
 
1468
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/11/25<br/>
 
1469
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerBase.java ToXMLSAXHandler.java<br/><br/>
 
1470
<ref>Committer's log entry: </ref>
 
1471
Submitted by:   Brian Minchau<br/><br/>
 
1472
Just indentation and whitespace changes in the code
 
1473
(trying to get Apache head and the xslt2.0-compiled branches closer).<br/><br/></li>
 
1474
 
 
1475
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/11/25<br/>
 
1476
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/><br/>
 
1477
<ref>Committer's log entry: </ref>
 
1478
PR: bugzilla 24958<br/><br/>
 
1479
Submitted by:   Brian Minchau<br/><br/></li>
 
1480
 
 
1481
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/12/04<br/>
 
1482
<ref>Modified: </ref> xml-xalan/java/samples/TransformThread TransformThread.java foo0.xml foo0.xsl foo1.xml 
 
1483
foo1.xsl xml-xalan/java/xdocs/sources/xalan samples.xml<br/><br/>
 
1484
<ref>Committer's log entry: </ref>
 
1485
Transform Thread sample. Submitted by  Richard Cao.<br/><br/></li>
 
1486
 
 
1487
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/04<br/>
 
1488
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java 
 
1489
xml-xalan/java/src/org/apache/xalan/xsltc/trax TrAXFilter.java xml-xalan/java/src/org/apache/xml/dtm/ref 
 
1490
DTMManagerDefault.java xml-xalan/java/src/org/apache/xml/utils XMLReaderManager.java<br/><br/>
 
1491
<ref>Committer's log entry: </ref>
 
1492
Moved code for caching XMLReader objects from XSLTC's TransformerFactoryImpl to
 
1493
a new org.apache.xml.utils.XMLReaderManager class.<br/><br/>
 
1494
 
 
1495
It is now the responsibility of the DTMManagerDefault class to request one of
 
1496
these cached XMLReader objects, so the benefit of reusing an XMLReader is now
 
1497
conferred upon both XSLTC and Xalan-J Interpretive, as well as upon references
 
1498
to the document() function.<br/><br/></li>
 
1499
 
 
1500
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/04<br/>
 
1501
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils ObjectFactory.java<br/><br/>
 
1502
<ref>Committer's log entry: </ref>
 
1503
Factored out part of ObjectFactory's createObject method into separately
 
1504
callable lookUpFactoryClass and lookUpFactoryClassName methods.  This allows
 
1505
the caller to cache the Class object that provides a service at an appropriate
 
1506
level, and create new instances of that class at will, rather than going
 
1507
through the expensive service provider look-up procedure for each and every
 
1508
object created.<br/><br/></li>
 
1509
 
 
1510
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/12/04<br/>
 
1511
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Encodings.java<br/><br/>
 
1512
<ref>Committer's log entry: </ref>
 
1513
Reflection code to load sun.io.CharToByteConverter is now wrapped in a privileged action. 
 
1514
This is needed when user code is run without the required permssions.<br/><br/></li>
 
1515
 
 
1516
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/04<br/>
 
1517
<ref>Modified: </ref> xml-xalan/java build.xml xml-xalan/java/bin xml-apis.jar xml-xalan/java/src 
 
1518
xml-commons-src.tar.gz xml-commons-external-1.2.01-src.tar.gz<br/><br/>
 
1519
<ref>Committer's log entry: </ref>
 
1520
Upgrading to xml-commons-external-1.2.01 release, and moving to new naming
 
1521
convention for xml-commons source file.<br/><br/></li>
 
1522
 
 
1523
<li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2003/12/04<br/>
 
1524
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Encodings.java<br/><br/>
 
1525
<ref>Committer's log entry: </ref>
 
1526
Avoid RuntimeException(Throwable) as it is only available in JDK 1.4.<br/><br/></li>
 
1527
 
 
1528
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/08<br/>
 
1529
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java 
 
1530
xml-xalan/java/src/org/apache/xalan/templates ElemVariable.java ElemWithParam.java<br/><br/>
 
1531
<ref>Committer's log entry: </ref>
 
1532
Applying patch from Richard Cao (richcao@ca.ibm.com) for Bugzilla bug report
 
1533
797.<br/><br/>
 
1534
 
 
1535
Added code that checks whether an xsl:param, xsl:variable or xsl:with-param
 
1536
has both a select attribute and content.  Also, new test case to test for
 
1537
message in case of xsl:with-param, and updated messages in existing tests for
 
1538
xsl:param and xsl:variable.<br/><br/></li>
 
1539
 
 
1540
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/08<br/>
 
1541
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer NodeSorter.java<br/><br/>
 
1542
<ref>Committer's log entry: </ref>
 
1543
Applying patch from Richard Cao (richcao@ca.ibm.com) for Bugzilla bug report
 
1544
5761.  Removed code that caused keys to be ignored when they select an empty set of
 
1545
values.<br/><br/></li>
 
1546
 
 
1547
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/09<br/>
 
1548
<ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/><br/>
 
1549
<ref>Committer's log entry: </ref>
 
1550
Upgrading to version 2.6.0 of Xerces-Java.<br/><br/></li>
 
1551
 
 
1552
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/12<br/>
 
1553
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><br/>
 
1554
<ref>Committer's log entry: </ref>
 
1555
Added a finally block for SAXSource/StreamSource case in order to ensure that
 
1556
any XMLReader is released to the XMLReader cache.<br/><br/>
 
1557
 
 
1558
Thanks to Joanne Tong (joannet@ca.ibm.com) for catching this bug when she
 
1559
reviewed my changes to where caching of XMLReaders was handled, and the DTM
 
1560
plugability changes for XSLTC.<br/><br/></li>
 
1561
 
 
1562
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/12<br/>
 
1563
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils ObjectFactory.java<br/><br/>
 
1564
<ref>Committer's log entry: </ref>
 
1565
Created a named constant for "META-INF/services" string.<br/><br/></li>
 
1566
 
 
1567
<li><ref>Committed by </ref>rameshm@apache.org<ref> on </ref>2003/12/22<br/>
 
1568
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor StopParseException.java StylesheetPIHandler.java 
 
1569
TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java 
 
1570
xml-xalan/java/src/org/apache/xml/utils StopParseException.java StylesheetPIHandler.java<br/><br/>
 
1571
<ref>Committer's log entry: </ref>
 
1572
Moving classes that are used between Xalan interpretive and XSLTC ( StylesheetPIHandler and StopParseException )  
 
1573
to xml/utils package . Making the required modifications to accomadate this change.<br/><br/>
 
1574
 
 
1575
Submitted by:   Bhakti Mehta ( bhakti.mehta@sun.com )<br/><br/>
 
1576
Reviewed by: Ramesh Mandava<br/><br/></li>
 
1577
 
 
1578
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/12/24<br/>
 
1579
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils ObjectFactory.java<br/><br/>
 
1580
<ref>Committer's log entry: </ref>
 
1581
Fixed a bug I injected recently - missing slash between 'META-INF/services' and service name.<br/><br/></li>
 
1582
 
 
1583
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/01/04<br/>
 
1584
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates RedundentExprEliminator.java XSLTVisitor.java<br/><br/>
 
1585
<ref>Committer's log entry: </ref>
 
1586
Made methods in this class public, as is the case in the XPathVisitor class that
 
1587
it extends.  Having the class be public, but none of the methods public isn't
 
1588
helpful.<br/><br/>
 
1589
 
 
1590
Contributed by Warwick Burrows (wburrows@us.ibm.com).<br/><br/></li>
 
1591
 
 
1592
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/01/06<br/>
 
1593
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates RedundentExprEliminator.java XSLTVisitor.java<br/><br/>
 
1594
<ref>Committer's log entry: </ref>
 
1595
Updating the copyright dates to reflect recent modifications.<br/><br/></li>
 
1596
 
 
1597
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/01/08<br/>
 
1598
<ref>Modified: </ref> xml-xalan/java build.xml<br/><br/>
 
1599
<ref>Committer's log entry: </ref>
 
1600
Updating build copyright year.<br/><br/></li>
 
1601
 
 
1602
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/01/15<br/>
 
1603
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemLiteralResult.java ElemTextLiteral.java<br/><br/>
 
1604
<ref>Committer's log entry: </ref>
 
1605
PR: 26169<br/>
 
1606
Submitted by:   Brian Minchau<br/>
 
1607
Flushed serialier before emitting trace event in ElemeTextLiteral and
 
1608
ElemLiteralResult.<br/><br/></li>
 
1609
 
 
1610
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/01/21<br/>
 
1611
<ref>Modified: </ref> xml-xalan/java build.xml<br/><br/>
 
1612
<ref>Committer's log entry: </ref>
 
1613
Add TransformThread sample to xalansamples.jar.<br/><br/></li>
 
1614
 
 
1615
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/02<br/>
 
1616
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2RTFDTM.java<br/><br/>
 
1617
<ref>Committer's log entry: </ref>
 
1618
Fix for bugzilla bug report 25442.
 
1619
 
 
1620
Record the initial empty sizes of the various vectors in the DTM, and use those
 
1621
sizes as the defaults in popRewindMark.  The code originally assumed that these
 
1622
vectors had default sizes of zero, but that's not true in the case of m_data,
 
1623
which reserves entry zero.<br/><br/>
 
1624
 
 
1625
Reviewed by Christine Li (jycli@ca.ibm.com)
 
1626
<br/><br/></li>
 
1627
 
 
1628
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/02<br/>
 
1629
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemApplyTemplates.java<br/><br/>
 
1630
<ref>Committer's log entry: </ref>
 
1631
Fix for bugzilla bug report 19464.
 
1632
A reworked patch, move the push statements to the beginning of try block
 
1633
and added a flag to make sure that there is always something to pop
 
1634
Reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
1635
 
 
1636
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/05<br/>
 
1637
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes UnionPathIterator.java<br/><br/>
 
1638
<ref>Committer's log entry: </ref>
 
1639
Fix for bugzilla bug report 26019. detach location path iterators happens only when allowDetach flag is true.
 
1640
Reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
1641
 
 
1642
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/05<br/>
 
1643
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorExsltFunction.java<br/><br/>
 
1644
<ref>Committer's log entry: </ref>
 
1645
Fix for bugzilla bug report 18351.
 
1646
xsl:message instruction is allowed inside func:function.
 
1647
It doesn't construct nodes as part of the result.
 
1648
Reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
1649
 
 
1650
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/05<br/>
 
1651
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/functions FuncExtFunction.java<br/><br/>
 
1652
<ref>Committer's log entry: </ref>
 
1653
Fix bugzilla bug report 18351.
 
1654
Set allowDetachToRelease flag to false, which allow caching of the arguments
 
1655
Reviewed by Henry Zongaro (zongaro@ca.ibm.com)<br/><br/></li>
 
1656
 
 
1657
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/02/05<br/>
 
1658
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemAttribute.java<br/><br/>
 
1659
<ref>Committer's log entry: </ref>
 
1660
Fix for Bugzilla Bug 26075.<br/><br/></li>
 
1661
 
 
1662
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/02/06<br/>
 
1663
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils TreeWalker.java<br/><br/>
 
1664
<ref>Committer's log entry: </ref>
 
1665
Fix for Bugzilla Bug 25416.<br/><br/></li>
 
1666
 
 
1667
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/09<br/>
 
1668
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemTemplateElement.java<br/><br/>
 
1669
<ref>Committer's log entry: </ref>
 
1670
Applying Joanne Tone's (joannet@ca.ibm.com) patch for
 
1671
bugzilla bug report 26030.<br/><br/>
 
1672
 
 
1673
Do not suppress Xalan specified extension element namespace, unless they
 
1674
are declared as extension element namespaces by users.<br/><br/></li>
 
1675
 
 
1676
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/11<br/>
 
1677
<ref>Modified: </ref> xml-xalan/java build.xml<br/><br/>
 
1678
<ref>Committer's log entry: </ref>
 
1679
Fix for bugzilla bug report 26829.
 
1680
 
 
1681
Modified build.xml to add xalanj2taglet.jar to Xalan source distribution
 
1682
Contributed by Sarah McNamara (mcnamara@ca.ibm.com)<br/><br/></li>
 
1683
 
 
1684
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/11<br/>
 
1685
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerExsltFunction.java
 
1686
xml-xalan/java/src/org/apache/xalan/templates ElemExsltFunction.java ElemExsltFuncResult.java 
 
1687
xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/><br/>
 
1688
<ref>Committer's log entry: </ref>
 
1689
Fix for bugzilla bug report 24302.
 
1690
 
 
1691
Fields in the object representing an EXSLT function element (ElemExsltFunction)
 
1692
were being used to store execution state information for references to that
 
1693
function.  That caused problems with multi-threaded code that used Transformer
 
1694
objects created from the same Templates object - each Transformer shares the
 
1695
same instances of ElemExsltFunction.<br/><br/>
 
1696
 
 
1697
The fix was to replace the fields ElemExsltFunction.m_result and
 
1698
ElemExsltFunction.m_isResultSet with a new ObjectStack field in TransformerImpl
 
1699
named m_currentFuncResult.<br/><br/>
 
1700
 
 
1701
Also, changed how VariableStack was being updated in the execute method for a
 
1702
function reference - this change was modelled on equivalent code in
 
1703
ElemCallTemplate.<br/><br/>
 
1704
 
 
1705
Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
 
1706
 
 
1707
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/11<br/>
 
1708
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemParam.java<br/><br/>
 
1709
<ref>Committer's log entry: </ref>
 
1710
Fix for bugzilla bug report 24302.
 
1711
 
 
1712
Changed condition under which the parent element's m_inArgsSize field is
 
1713
incremented - that field keeps track of the number of xsl:param children an
 
1714
element has.  This was only happening for ElemTemplate, but it needs to happen
 
1715
for ElemExsltFunction, which is a subclass of ElemTemplate, as well.<br/><br/>
 
1716
 
 
1717
Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
 
1718
 
 
1719
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/02/12<br/>
 
1720
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Sort.java 
 
1721
xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java NodeSortRecordFactory.java 
 
1722
xml-xalan/java/src/org/apache/xml/utils LocaleUtility.java<br/><br/>
 
1723
<ref>Committer's log entry: </ref>
 
1724
Fix for Bugzilla Bug 26842.<br/><br/></li>
 
1725
 
 
1726
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/02/13<br/>
 
1727
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java 
 
1728
xml-xalan/java/src/org/apache/xml/utils StringComparable.java<br/><br/>
 
1729
<ref>Committer's log entry: </ref>
 
1730
Fix for Bugzilla Bug 1396.<br/><br/></li>
 
1731
 
 
1732
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/17<br/>
 
1733
<ref>Modified: </ref> Most files in the Xalan Java cvs repository (too many to list) <br/><br/>
 
1734
<ref>Committer's log entry: </ref>
 
1735
New Apache 2.0 license update.<br/><br/></li>
 
1736
 
 
1737
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/17<br/>
 
1738
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemForEach.java
 
1739
xml-xalan/java/src/org/apache/xalan/processor StylesheetHandler.java<br/><br/>
 
1740
<ref>Committer's log entry: </ref>
 
1741
PR: bugzilla 26217<br/>
 
1742
Submitted by:   Brian Minchau<br/>
 
1743
Reviewed by:    Henry Zongaro<br/>
 
1744
This is a javadoc update only.
 
1745
Programming instructions don't have a namespace, so make
 
1746
the PI with no namespace be "xalan-doc-cache-off" rather than
 
1747
"xalan:doc-cache-off"<br/><br/></li>
 
1748
 
 
1749
 
 
1750
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/17<br/>
 
1751
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml<br/><br/>
 
1752
<ref>Committer's log entry: </ref>
 
1753
PR: bugzilla 26217<br/>
 
1754
Submitted by:   Brian Minchau<br/>
 
1755
Reviewed by:    Henry Zongaro<br/>
 
1756
Changed a ":" to a "-" in "xalan:doc-cache-off" in the FAQ.
 
1757
Programming instructions don't have a namespace, so make
 
1758
the PI with no namespace be "xalan-doc-cache-off" rather than
 
1759
"xalan:doc-cache-off". <br/><br/></li>
 
1760
 
 
1761
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/18<br/>
 
1762
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils DOMBuilder.java<br/><br/>
 
1763
<ref>Committer's log entry: </ref>
 
1764
PR: bugzilla 15140<br/>
 
1765
Submitted by:   patch submitted by Bruno Dumon (bruno@outerthought.org)<br/>
 
1766
Reviewed by:    Brian Minchau (minchau@ca.ibm.com)<br/><br/></li>
 
1767
 
 
1768
 
 
1769
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/18<br/>
 
1770
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToXMLStream.java<br/><br/>
 
1771
<ref>Committer's log entry: </ref>
 
1772
PR: bugzilla 24304<br/>
 
1773
Submitted by:   Brian Minchau<br/>
 
1774
Reviewed by:    Henry Zongaro<br/>
 
1775
Serialized XML no longer put a new line after the xml header unless indent="yes".<br/><br/></li>
 
1776
 
 
1777
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/18<br/>
 
1778
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemForEach.java<br/><br/>
 
1779
<ref>Committer's log entry: </ref>
 
1780
PR: bugzilla 16889<br/>
 
1781
Submitted by:   Elson Jiang<br/>
 
1782
Reviewed by:    Brian Minchau<br/>
 
1783
Fixes ElemForEach TraceListener bug.<br/><br/></li>
 
1784
 
 
1785
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/18<br/>
 
1786
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java TransformerImpl.java<br/><br/>
 
1787
<ref>Committer's log entry: </ref>
 
1788
PR: bugzilla 23591<br/>
 
1789
Submitted by:   Brian Minchau<br/>
 
1790
Reviewed by:    Henry Zongaro<br/>
 
1791
 
 
1792
JAXP transformer.setOutputProperties(null); now not only doesn't
 
1793
get an exception, it also resets the internal state to flush out any
 
1794
previously accumulated properties as if the transformer had
 
1795
just been created.<br/><br/></li>
 
1796
 
 
1797
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/18<br/>
 
1798
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer OutputPropertiesFactory.java 
 
1799
ToHTMLStream.java ToStream.java ToXMLStream.java<br/><br/>
 
1800
<ref>Committer's log entry: </ref>
 
1801
PR: bugzilla 25816<br/>
 
1802
Submitted by:   Brian Minchau<br/>
 
1803
Reviewed by:    Henry Zongaro<br/>
 
1804
Make default properties returned by serializer factory immutable.<br/><br/></li>
 
1805
 
 
1806
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2004/02/18<br/>
 
1807
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib Redirect.java<br/><br/>
 
1808
<ref>Committer's log entry: </ref>
 
1809
Javadoc update only.<br/>
 
1810
PR: bugzilla 26742<br/>
 
1811
Submitted by:   Brian Minchau<br/><br/>
 
1812
 
 
1813
Changed old invalid URI for xmlns:xsl to the correct one
 
1814
for XSLT 1.0.  The old value was before the XSLT 1.0 recommendation
 
1815
and appeared only in a javadoc example.  But it did confuse me when
 
1816
I tried to run the example in the javadoc.<br/><br/></li>
 
1817
 
 
1818
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/20<br/>
 
1819
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils PrefixResolverDefault.java<br/><br/>
 
1820
<ref>Committer's log entry: </ref>
 
1821
Fix for bugzilla bug report 24979.
 
1822
 
 
1823
Fix for DOM XPath API, any element has an implicit declaration of its own
 
1824
prefix, which is enforced during namespace serialization.<br/><br/>
 
1825
 
 
1826
Reviewed by Morris Kwan (mkwan@ca.ibm.com)<br/><br/></li>
 
1827
 
 
1828
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2004/02/21<br/>
 
1829
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java 
 
1830
xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><br/>
 
1831
<ref>Committer's log entry: </ref>
 
1832
Code cleaning and optimization for copy and copy-of.  Discussed with Henry Zongaro.<br/><br/></li>
 
1833
 
 
1834
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/22<br/>
 
1835
<ref>Modified: </ref> xml-xalan/java build.xml xml-xalan/java/src MANIFEST.MF manifest.xsltc<br/><br/>
 
1836
<ref>Committer's log entry: </ref>
 
1837
Applying patch for Bugzilla bug report 24728 from Sarah McNamara (mcnamara@ca.ibm.com).<br/><br/>
 
1838
 
 
1839
Use Ant's filtering capabilities to place appropriate "created-by" information
 
1840
into the MANIFEST.MF file of the jar that's being built.<br/><br/></li>
 
1841
 
 
1842
<li><ref>Committed by </ref>jycli@apache.org<ref> on </ref>2004/02/23<br/>
 
1843
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TrAXFilter.java<br/><br/>
 
1844
<ref>Committer's log entry: </ref>
 
1845
Fix for bugzilla bug report 22376.
 
1846
 
 
1847
When a TrAXFilter has a parent, should set itself as the EntityResolver,
 
1848
DTDHandler and ErrorHandler for it's parent to keep the filter chain,
 
1849
instead of always use the default EntityResolver, DTDHandler and ErrorHandler<br/><br/>
 
1850
 
 
1851
The patch is submitted by Werner Donne (werner.donne@re.be)<br/><br/></li>
 
1852
 
 
1853
<li><ref>Committed by </ref>aruny@apache.org<ref> on </ref>2004/02/23<br/>
 
1854
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils DOMBuilder.java<br/><br/>
 
1855
<ref>Committer's log entry: </ref>
 
1856
Description : Copying the patch from jaxp-1_3_0-branch  to main trunk.
 
1857
When there is no mark up inside element content, text should be contained in single TEXT node.
 
1858
<br/><br/></li>
 
1859
 
 
1860
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/24<br/>
 
1861
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemAttribute.java ElemElement.java 
 
1862
ElemPI.java ElemTemplateElement.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler ApplyTemplates.java 
 
1863
AttributeSet.java Copy.java DecimalFormatting.java Key.java LiteralElement.java Output.java ProcessingInstruction.java 
 
1864
Template.java XslAttribute.java XslElement.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util 
 
1865
ErrorMessages.java ErrorMsg.java Util.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime BasisLibrary.java 
 
1866
ErrorMessages.java xml-xalan/java/src/org/apache/xml/utils XMLChar.java<br/><br/>
 
1867
<ref>Committer's log entry: </ref>
 
1868
Patch for Bugzilla bug report 24988 from Joanne Tong (joannet@ca.ibm.com)
 
1869
reviewed by myself.<br/><br/>
 
1870
 
 
1871
Changes required to test whether an attribute value that is required to be
 
1872
a QName, NCName or whitespace-separated list of QNames actually meets that
 
1873
requirement.<br/><br/></li>
 
1874
 
 
1875
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/24<br/>
 
1876
<ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/><br/>
 
1877
<ref>Committer's log entry: </ref>
 
1878
Upgrading to version 2.6.2 of Xerces-Java.<br/><br/></li>
 
1879
 
 
1880
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2004/02/24<br/>
 
1881
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><br/>
 
1882
<ref>Committer's log entry: </ref>
 
1883
Part of patch for bug report 24985.  Ensure that m_size is set to zero in
 
1884
setStartNode methods of AncestorIterator and TypedAncestorIterator.  The way
 
1885
getLast() is implemented resulted in setStartNode being called twice in
 
1886
some circumstances, with the nodes from the second call being included as
 
1887
additional (though duplicate) ancestors.  Clearing m_size avoids that.<br/><br/>
 
1888
 
 
1889
Reviewed by Morris Kwan (mkwan@ca.ibm.com).<br/><br/></li>
 
1890
</ul>
 
1891
</s2>
 
1892
<s2 title="Changes for &xslt4j; 2.5.2">
 
1893
<p> Core (Non-XSLTC) source code updates:</p>
 
1894
<ul>
 
1895
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/06<br/>
 
1896
<ref>Modified: </ref> xml-xalan/java build.xml xml-xalan/java/src/org/apache/xalan Version.java Version.src<br/>
 
1897
<ref>Committer's log entry: </ref>
 
1898
Generate values for Version information from constants in the build script.
 
1899
(Adapted from xml-commons build script for the resolver.)
 
1900
New file Version.src (in org.apache.xalan) is copied into Version.java
 
1901
with version constants from build script plugged in.
 
1902
Deprecated XSLProcessorVersion class can be removed.
 
1903
<br/><br/></li>
 
1904
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/06<br/>
 
1905
<ref>Modified: </ref> xml-xalan/java build.xml<br/><ref>Committer's log entry: </ref>
 
1906
Generate values for Version information from constants in the build script.
 
1907
(Adapted from xml-commons build script for the resolver.)
 
1908
New file Version.src (in org.apache.xalan) is copied into Version.java
 
1909
with version constants from build script plugged in.
 
1910
Deprecated XSLProcessorVersion class can be removed.
 
1911
Also, updated build clean target to delete Version.java, so it will
 
1912
be regenerated in the next build.
 
1913
<br/><br/></li>
 
1914
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/07<br/>
 
1915
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml overview.xml whatsnew.xml xsltc_usage.xml<br/>
 
1916
<ref>Committer's log entry: </ref>
 
1917
Documentation patch to correct typos, contributed by Glen Mazza 
 
1918
(glenmazza@yahoo.com).
 
1919
<br/><br/></li>
 
1920
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/06/07<br/>
 
1921
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml getstarted.xml history.xml index.xml samples.xml trax.xml usagepatterns.xml<br/>
 
1922
<ref>Committer's log entry: </ref>
 
1923
Documentation update: Replaced all occurrences of TRaX with the properly
 
1924
capitalized TrAX.
 
1925
<br/><br/></li>
 
1926
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/09<br/>
 
1927
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java<br/>
 
1928
<ref>Committer's log entry: </ref>
 
1929
Speed up CharInfo.isSpecial() by replacing its internal use of 
 
1930
java.util.BitSet with a more tuned bitset.
 
1931
Also sped up the common case of this method for ASCII values (0-126) by
 
1932
saving booleans in a cached array rather than looking them up via their
 
1933
bits in the bitset.
 
1934
Submitted by:   Brian Minchau
 
1935
<br/><br/></li>
 
1936
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/09<br/>
 
1937
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/>
 
1938
<ref>Committer's log entry: </ref>
 
1939
Speed up ToStream.characters(char[] , int, int) method by
 
1940
caching commonly calculated boolean expression for characters in the range (0-126)
 
1941
in an array in CharInfo.
 
1942
Also move a whitespace check out of the loop that processes characters and into
 
1943
a separate loop.  Most of the time this whitspace checking loop will end early and
 
1944
speed up the other loop which no longer checks for whitespace with every character.
 
1945
Submitted by:   Brian Minchau
 
1946
<br/><br/></li>
 
1947
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/09<br/>
 
1948
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer WriterToUTF8Buffered.java<br/>
 
1949
<ref>Committer's log entry: </ref>
 
1950
Performance improvement of WriterToUTF8Buffered.characters(char[],int,int);
 
1951
1. Reduced the number of checks for buffer overflow from 2 to 1
 
1952
   most of the time by nesting the checks.
 
1953
2. Used local variables for the array reference and count of characters stored in
 
1954
   the buffer to make the loop faster.
 
1955
3. Added an additional tight loop for better optimization.
 
1956
Submitted by:   Brian Minchau
 
1957
<br/><br/></li>
 
1958
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/09<br/>
 
1959
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java ToTextStream.java<br/>
 
1960
<ref>Committer's log entry: </ref>
 
1961
Changing firePseudoAttributes() to firePseudoElement() which
 
1962
is for debugger tooling.  Now both the whole start of the element-tag
 
1963
e.g.   &lt;abc attr1="val1" attr2="val2"
 
1964
will appear as output that might be written out, rather than
 
1965
just the attributes.
 
1966
Submitted by:   Gordon Chiu
 
1967
Reviewed by:    Brian Minchau
 
1968
<br/><br/></li>
 
1969
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/09<br/>
 
1970
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToTextStream.java<br/>
 
1971
<ref>Committer's log entry: </ref>
 
1972
Change to use a local variable to hold the reference to m_writer (minor change for performance).
 
1973
Submitted by:   Brian Minchau
 
1974
<br/><br/></li>
 
1975
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/09<br/>
 
1976
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java ToXMLStream.java<br/>
 
1977
<ref>Committer's log entry: </ref>
 
1978
Changed references to m_writer to a local writer variable in
 
1979
a number of places (a minor performance improvement).
 
1980
Submitted by:   Brian Minchau
 
1981
<br/><br/></li>
 
1982
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/12<br/>
 
1983
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/>
 
1984
<ref>Committer's log entry: </ref>
 
1985
Made ToStream.characters(char[], int, int) not bail out early if
 
1986
the length was 0 characters, but do all processing.  This forces
 
1987
the close of any open start tag.
 
1988
Submitted by:   Brian Minchau
 
1989
<br/><br/></li>
 
1990
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/06/16<br/>
 
1991
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/>
 
1992
<ref>Committer's log entry: </ref>
 
1993
Patch from Igor Hersht for Bug 19770.  getFirstAttributeIdentity should check
 
1994
that argument is not equal to DTM.NULL prior to calling _type2 method - that
 
1995
method assumes that the argument is not NULL.  Added comments to that effect to
 
1996
_type2, _parent2, _firstch2, _nextsib2 and _exptype2.
 
1997
<br/><br/></li>
 
1998
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/16<br/>
 
1999
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMAxisIteratorBase.java<br/>
 
2000
<ref>Committer's log entry: </ref>
 
2001
Fix for the general case of bugzilla 20685:
 
2002
DTMAxisIteratorBase#cloneIterator() was not setting clones to be
 
2003
non-restartable.
 
2004
<br/><br/></li>
 
2005
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/17<br/>
 
2006
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java<br/>
 
2007
<ref>Committer's log entry: </ref>
 
2008
Patch contributed by Glen Mazza (glenmazza@yahoo.com):
 
2009
Fixing a typo in the command line help.
 
2010
<br/><br/></li>
 
2011
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/17<br/>
 
2012
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan commandline.xml samples.xml trax.xml usagepatterns.xml<br/>
 
2013
<ref>Committer's log entry: </ref>
 
2014
Patch contributed by Glen Mazza (glenmazza@yahoo.com) for bugzilla 20625:
 
2015
Fixing some documentation typos.
 
2016
<br/><br/></li>
 
2017
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/18<br/>
 
2018
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java ToTextStream.java ToUnknownStream.java<br/>
 
2019
<ref>Committer's log entry: </ref>
 
2020
Patch from myself and Brian Minchau (minchau@ca.ibm.com):
 
2021
Added serializer trace mechanisms to flush trace pseudo characters for
 
2022
start tag before attributes are added. Fixed serializer trace to generate
 
2023
correct pseudo characters for html attributes.
 
2024
<br/><br/></li>
 
2025
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2003/06/19<br/>
 
2026
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql XConnection.java<br/>
 
2027
<ref>Committer's log entry: </ref>
 
2028
A little code clean up, introduce the SQLQueryParser to handle variables
 
2029
better.
 
2030
 
 
2031
Added code by Art Welsh to hande the Set/get Feature routine
 
2032
<br/><br/></li>
 
2033
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2003/06/19<br/>
 
2034
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql SQLQueryParser.java<br/>
 
2035
<ref>Committer's log entry: </ref>
 
2036
Added code by Art Welsh to hande the inline variable parser.
 
2037
SQL Statements can describe an XSL variable name along with
 
2038
its type inside the statement instead of using the addParameter methods.
 
2039
<br/><br/></li>
 
2040
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2003/06/19<br/>
 
2041
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql SQLErrorDocument.java<br/>
 
2042
<ref>Committer's log entry: </ref>
 
2043
Added code by Art Welsh to hande full errors, where multiple warning
 
2044
stattments wll be output into the error document
 
2045
<br/><br/></li>
 
2046
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2003/06/19<br/>
 
2047
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql SQLDocument.java<br/>
 
2048
<ref>Committer's log entry: </ref>
 
2049
Added code by Art Welsh to hande multiple result sets and Callable statements.
 
2050
<br/><br/></li>
 
2051
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2003/06/19<br/>
 
2052
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql QueryParameter.java<br/>
 
2053
<ref>Committer's log entry: </ref>
 
2054
Added code by Art Welsh to handle more of the SQL Types, and other attributes
 
2055
about the parameter. such as IsOutput and the Name for XSL Variable reference
 
2056
<br/><br/></li>
 
2057
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/23<br/>
 
2058
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToSAXHandler.java ToTextStream.java 
 
2059
ElemContext.java SerializerBase.java ToHTMLSAXHandler.java ToStream.java ToXMLSAXHandler.java ToXMLStream.java<br/>
 
2060
<ref>Committer's log entry: </ref>
 
2061
Moved a number of serializer instance variables into ElemContext,
 
2062
which is a stack to push/pop such values in unison. This makes
 
2063
the code clearer and less error prone and probably marginally
 
2064
(0.001%) faster.
 
2065
Submitted by:   Brian Minchau
 
2066
<br/><br/></li>
 
2067
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/23<br/>
 
2068
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
2069
<ref>Committer's log entry: </ref>
 
2070
Fixing a build issue for JDKs that include XSLTC (specifically, the
 
2071
JavaCupRedirect class) but not java_cup.jar. Need to put java_cup.jar
 
2072
and runtime.jar on the bootclasspath.
 
2073
<br/><br/></li>
 
2074
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/23<br/>
 
2075
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java SimpleResultTreeImpl.java XSLTCDTMManager.java 
 
2076
xml-xalan/java/src/org/apache/xalan/xsltc/trax XSLTCSource.java xml-xalan/java/src/org/apache/xml/dtm DTM.java 
 
2077
xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java DTMDefaultBaseIterators.java DTMDefaultBaseTraversers.java 
 
2078
DTMDocumentImpl.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java SAX2DTM2.java<br/>
 
2079
<ref>Committer's log entry: </ref>
 
2080
Implement a "DTM migration" feature, which allows a DTM that is built with
 
2081
an old DTMManager to be migrated to a new DTMManager. This is to support
 
2082
DTM sharing between multiple transformations.
 
2083
<br/><br/></li>
 
2084
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/23<br/>
 
2085
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java EmptySerializer.java ExtendedContentHandler.java 
 
2086
ToHTMLStream.java ToSAXHandler.java ToTextStream.java ToUnknownStream.java ToXMLStream.java<br/>
 
2087
<ref>Committer's log entry: </ref>
 
2088
Added addUniqueAttribute() method for optimization purposes.
 
2089
The serializer may write out this attribute straight away with little processing becuase the caller guarantees
 
2090
that the value has these qualities:
 
2091
1) Value is unique, i.e. will not be changed by other addAttribute() calls.
 
2092
2) Value is ASCII
 
2093
3) Value does not contain quot (34) amp (38)  lt (60) gt (62)
 
2094
 
 
2095
Submitted by:   Brian Minchau
 
2096
Reviewed by:    Morris Kwan
 
2097
<br/><br/></li>
 
2098
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/25<br/>
 
2099
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LiteralAttribute.java LiteralElement.java Output.java 
 
2100
Stylesheet.java Text.java XslAttribute.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util MethodGenerator.java 
 
2101
xml-xalan/java/src/org/apache/xml/serializer ElemDesc.java<br/>
 
2102
<ref>Committer's log entry: </ref>
 
2103
Performance improvement for XSLTC
 
2104
 
 
2105
Implement a compiler-assisted serialization feature.
 
2106
Generate code to make use of the new
 
2107
addUniqAttribute(String name, String value, int flags)
 
2108
interface in SerializationHandler. The compiler does
 
2109
more static analysis on attributes of literal elements
 
2110
and passes the additional information to the serializer
 
2111
via a bit-encoded flag.
 
2112
 
 
2113
The additional information includes whether this attribute
 
2114
is unique, whether its value has bad characters (something
 
2115
needs to be escaped), whether it is a HTML URI or empty
 
2116
attribute. If the attribute is unique, the serializer can
 
2117
write out the attribute right away, without having to
 
2118
accumulate it in an internal table. If it also does not
 
2119
contain bad characters, then escaping is not needed.
 
2120
All these information speeds up the serializer on writing
 
2121
the attributes out.
 
2122
<br/><br/></li>
 
2123
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/25<br/>
 
2124
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLSAXHandler.java ToHTMLStream.java ToSAXHandler.java 
 
2125
ToTextStream.java ToUnknownStream.java ToXMLSAXHandler.java ToXMLStream.java SerializerBase.java ToStream.java 
 
2126
ToTextSAXHandler.java<br/>
 
2127
<ref>Committer's log entry: </ref>
 
2128
Changed code like this:
 
2129
 
 
2130
String s; ...
 
2131
char[] array = s.toCharArray();
 
2132
 
 
2133
To this:
 
2134
final int length = s.length();
 
2135
if (length &gt; m_charsBuff.length)
 
2136
{
 
2137
    m_charsBuff = new char[length * 2 + 1];
 
2138
}
 
2139
char[] array = m_charsBuff;
 
2140
// re-use "array" but use "length" for the
 
2141
// number of characters in the array.
 
2142
 
 
2143
This shows a 2% performance improvement for some
 
2144
XSLTC/HTML testcases. Of course some transformations
 
2145
may do betterthan this, and some worse, but all should be
 
2146
faster.
 
2147
 
 
2148
The performance should also get marginally better for transformations that spend their
 
2149
time writing out attributes.  It runs marginally faster because
 
2150
the helper character buffer, m_charsBuffer is re-used rather
 
2151
than a new one being created each time. 
 
2152
 
 
2153
Submitted by:   Brian Minchau
 
2154
<br/><br/></li>
 
2155
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/25<br/>
 
2156
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref ExpandedNameTable.java<br/>
 
2157
<ref>Committer's log entry: </ref>
 
2158
Fix for problem in ExpandedNameTable (bugzilla 21087).
 
2159
<br/><br/></li>
 
2160
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/06/25<br/>
 
2161
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltStrings.java<br/>
 
2162
<ref>Committer's log entry: </ref>
 
2163
Fix problem in EXSLT align function (bugzilla 19890).
 
2164
<br/><br/></li>
 
2165
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/06/25<br/>
 
2166
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils Trie.java<br/>
 
2167
<ref>Committer's log entry: </ref>
 
2168
Sped up the Trie.get(String) method by about a factor of 2.
 
2169
This was done by:
 
2170
1) Not using string.charAt(i) when looping through the characters,
 
2171
   but rather using string.getChars(0, len, array, 0) and looping over the array.
 
2172
2) Special casing the lookup in get(String key) for 0,1,2 or more characters
 
2173
3) Putting the objects into the Trie considering the key as case insensitive at the
 
2174
   time of putting the objects in, rather than at the time of taking them out.
 
2175
4) Not using a try/catch in the search loop to test if an
 
2176
   index is out of bounds, but testing if the character value is less than 128.
 
2177
Thanks to Gordon Chiu for optimization 1) and Henry Zongaro for 3) and 4).
 
2178
Submitted by:   Brian Minchau
 
2179
<br/><br/></li>
 
2180
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/25<br/>
 
2181
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath NodeSet.java<br/>
 
2182
<ref>Committer's log entry: </ref>
 
2183
Patch from John Lambe (john.lambe@openjawtech.com) for bugzilla 20819
 
2184
with some modifications. removeElement() and removeElementAt() were
 
2185
not removing nodes correctly.
 
2186
<br/><br/></li>
 
2187
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/06/26<br/>
 
2188
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemIf.java<br/>
 
2189
<ref>Committer's log entry: </ref>
 
2190
Minor change to firing of trace events from xsl:if.
 
2191
 
 
2192
xsl:for-each now fires one trace event plus one for every iteration.
 
2193
xsl:if should fire one regardless of whether or not the expression
 
2194
evaluates true or false. Related to discussion on bug 11414.
 
2195
<br/><br/></li>
 
2196
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/06/28<br/>
 
2197
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java xml-xalan/java/src/org/apache/xpath/functions FuncCurrent.java<br/>
 
2198
<ref>Committer's log entry: </ref>
 
2199
Applied Igor Hersht's (igorh@ca.ibm.com) patch for Bugzilla bug 10900.  Fixed
 
2200
up algorithm for determining the result of the current() function to avoid
 
2201
NullPointerException.
 
2202
<br/><br/></li>
 
2203
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/07/02<br/>
 
2204
<ref>Modified: </ref> xml-xalan/java/src MANIFEST.MF manifest.xsltc xml-xalan/java/xdocs/sources/xalan downloads.xml xml-xalan/java/bin 
 
2205
java_cup.jar runtime.jar<br/>
 
2206
<ref>Committer's log entry: </ref>
 
2207
Patch from Sarah McNamara (mcnamara@ca.ibm.com)
 
2208
Moving java_cup.jar and runtime.jar from v0.10j to the latest version: v0.10k.
 
2209
<br/><br/></li>
 
2210
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/07/02<br/>
 
2211
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes UnionChildIterator.java<br/>
 
2212
<ref>Committer's log entry: </ref>
 
2213
Patch for bugzilla 20909.
 
2214
Need to fix-up variables for PredicatedNodeTest sub-iterators in
 
2215
UnionChildIterator. Variables in the m_nodeTests expressions were not
 
2216
'fixed up'.
 
2217
<br/><br/></li>
 
2218
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/07/02<br/>
 
2219
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemApplyTemplates.java<br/>
 
2220
<ref>Committer's log entry: </ref>
 
2221
Adding missing trace events for xsl:with-param. Trace events for
 
2222
xsl:with-param are fired as the parameter expressions are executed.
 
2223
<br/><br/></li>
 
2224
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/07/03<br/>
 
2225
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemCallTemplate.java<br/>
 
2226
<ref>Committer's log entry: </ref>
 
2227
Adding missing trace events for ElemWithParam as used in xsl:call-template.
 
2228
Trace events for xsl:with-param are fired as the expression is executed.
 
2229
<br/><br/></li>
 
2230
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/07/07<br/>
 
2231
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer NamespaceMappings.java ToHTMLStream.java ToStream.java 
 
2232
ToTextStream.java ToXMLSAXHandler.java<br/>
 
2233
<ref>Committer's log entry: </ref>
 
2234
Patches for bugzilla 20841 and 21039.
 
2235
PR: 20841, 21039
 
2236
Submitted by:   Brian Minchau
 
2237
<br/><br/></li>
 
2238
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/07/07<br/>
 
2239
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemElement.java<br/>
 
2240
<ref>Committer's log entry: </ref>
 
2241
Applying patch from David Bertoni (bertoni@us.ibm.com) for bug 20920.  The code
 
2242
for xsl:element was copying all accessible namespace declarations to the
 
2243
result, but that's something that should only happen for literal result
 
2244
elements.
 
2245
<br/><br/></li>
 
2246
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/07/08<br/>
 
2247
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/>
 
2248
<ref>Committer's log entry: </ref>
 
2249
Fix for bugzilla 21423
 
2250
PR: 21423
 
2251
Bug caused by an optimization where the element name was not
 
2252
remembered if the HTML tag was empty and the endElement() call
 
2253
was coming right away.  But XSLTC injected startNamespaceAfterElement() 
 
2254
in the middle, and it needed the element name, So startElement() records the 
 
2255
element name in the ElemContext even though the context is soon going away.
 
2256
Submitted by:   Brian Minchau
 
2257
<br/><br/></li>
 
2258
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/07/09<br/>
 
2259
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java<br/>
 
2260
<ref>Committer's log entry: </ref>
 
2261
Reduce the indentation level of end-element tags by 1 level.
 
2262
PR: bugzilla 21449
 
2263
Submitted by:   Brian Minchau
 
2264
<br/><br/></li>
 
2265
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/07/09<br/>
 
2266
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java WriterToUTF8.java WriterToUTF8Buffered.java<br/>
 
2267
<ref>Committer's log entry: </ref>
 
2268
WriterToUTF8Buffered is now faster because it uses a character
 
2269
array rather than a series of string.charAt(i) calls.  Other changes 
 
2270
were also made to this class.  
 
2271
 
 
2272
Performance gains are when writing to an output stream that has UTF-8 encoding.
 
2273
WriterToUTF8   (not buffered) is deleted.  On analysis, its slow feature was that it
 
2274
didn't buffer and so it suffered many calls to the underlying OutputStream.  The more work that was done to
 
2275
this class to speed it up, the more it looked like WriterToUTF8Buffered.
 
2276
PR: bugzilla 21452
 
2277
 
 
2278
Submitted by:   Brian Minchau
 
2279
<br/><br/></li>
 
2280
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/07/10<br/>
 
2281
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler Compiler.java<br/>
 
2282
<ref>Committer's log entry: </ref>
 
2283
Fix for bugzilla 17630 (method keys for extension functions are not unique).
 
2284
<br/><br/></li>
 
2285
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/07/11<br/>
 
2286
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer WriterToUTF8Buffered.java<br/>
 
2287
<ref>Committer's log entry: </ref>
 
2288
Fix to WriterToUTF8Buffered to ALWAYS buffer regardless of the
 
2289
size of the input char array or String.  This is achieved by logically cutting
 
2290
the input into chunks, each of which will not blow the internal byte buffer,
 
2291
and calling itself recursively.
 
2292
PR: bugzilla 21491
 
2293
Submitted by:   Brian Minchau
 
2294
<br/><br/></li>
 
2295
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2003/07/15<br/>
 
2296
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql SQLQueryParser.java<br/>
 
2297
<ref>Committer's log entry: </ref>
 
2298
Fixed NPE bug with inline variables
 
2299
<br/><br/></li>
 
2300
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/07/17<br/>
 
2301
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/>
 
2302
<ref>Committer's log entry: </ref>
 
2303
Fix for bugzilla 21697:
 
2304
processAttributes always called writeAttrString with m_writer, regardless
 
2305
of which writer was passed to it. Now always using the passed writer.
 
2306
<br/><br/></li>
 
2307
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/07/21<br/>
 
2308
<ref>Modified: </ref> xml-xalan/java KEYS<br/>
 
2309
<ref>Committer's log entry: </ref>
 
2310
Adding my public key.
 
2311
<br/><br/></li>
 
2312
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/07/22<br/>
 
2313
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates FuncFormatNumb.java<br/>
 
2314
<ref>Committer's log entry: </ref>
 
2315
Applying patch from Igor Hersht (igorh@ca.ibm.com) for Bugzilla bug 6155.
 
2316
Prior to looking up an unnamed decimal format, the FuncFormatNumb.execute
 
2317
method was calling the stylesheet's getDecimalFormatCount method to save the
 
2318
cost of the look-up, in the event the result was zero.  The problem is that
 
2319
that method only returns the number of decimal-formats prior to composition of
 
2320
multiple stylesheets into a single stylesheet, so it was incorrectly returning
 
2321
zero always.  Now, the FuncFormatNumb.execute always performs the look-up.
 
2322
<br/><br/></li>
 
2323
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/07/23<br/>
 
2324
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes DescendantIterator.java<br/>
 
2325
<ref>Committer's log entry: </ref>
 
2326
Fix for bugzilla 21713: need to check m_allowDetach before detach()ing an
 
2327
iterator of type DescendantIterator. (Thanks to Morris Kwan for reviewing
 
2328
this patch.)
 
2329
<br/><br/></li>
 
2330
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/07/29<br/>
 
2331
<ref>Modified: </ref> xml-xalan/java/src xml-commons-src.tar.gz xml-xalan/java/bin xml-apis.jar<br/>
 
2332
<ref>Committer's log entry: </ref>
 
2333
Updating with latest code from the tck-jaxp_1_2_0 branch of xml-commons
 
2334
 
 
2335
which contains the SAX 2.0.1 code.
 
2336
<br/><br/></li>
 
2337
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/01<br/>
 
2338
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/>
 
2339
<ref>Committer's log entry: </ref>
 
2340
Made a couple of improvements to startElement and endElement to cache
 
2341
m_elemContext in a local variable.  Also, replaced calls to ElemDesc.is with a
 
2342
single call to ElemDesc.getFlags, and used inline code to check flag settings.
 
2343
 
 
2344
Reviewed by Brian Minchau (minchau@ca.ibm.com).
 
2345
<br/><br/></li>
 
2346
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/01<br/>
 
2347
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ElemDesc.java<br/>
 
2348
<ref>Committer's log entry: </ref>
 
2349
Added a getFlags() method to allow all flags on an ElemDesc object to be
 
2350
retrieved at once, rather than forcing multiple calls to ElemDesc.is(int).
 
2351
Also, marked class final.
 
2352
 
 
2353
Reviewed by Brian Minchau (minchau@ca.ibm.com).
 
2354
<br/><br/></li>
 
2355
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/08/05<br/>
 
2356
<ref>Modified: </ref> xml-xalan/java/bin xml-apis.jar xml-xalan/java/src xml-commons-src.tar.gz<br/>
 
2357
<ref>Committer's log entry: </ref>
 
2358
Backing out SAX 2.0.1 xml-apis to the level used in XalanJ 2.5.1.
 
2359
<br/><br/></li>
 
2360
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/08/08<br/>
 
2361
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils SystemIDResolver.java<br/>
 
2362
<ref>Committer's log entry: </ref>
 
2363
Patch for Bugzilla Bug 21893
 
2364
<br/><br/></li>
 
2365
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/08/12<br/>
 
2366
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/>
 
2367
<ref>Committer's log entry: </ref>
 
2368
PR: bugzilla 19591
 
2369
Submitted by:   Gordon Chiu
 
2370
Reviewed by:    Brian Minchau
 
2371
 
 
2372
Fixes a few methods in the ToStream serializer so that it outputs the DOCTYPE
 
2373
sooner and in the correct location.  Thanks to Bruno Dumon for the nice test case
 
2374
and thanks to Gordon Chiu for the fix.
 
2375
- Brian Minchau
 
2376
<br/><br/></li>
 
2377
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/08/12<br/>
 
2378
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Utils.java<br/>
 
2379
<ref>Committer's log entry: </ref>
 
2380
PR: bugzilla 21309
 
2381
Submitted by:   Brian Minchau
 
2382
 
 
2383
Utils.classForName(String classname) still throws a ClassNotFoundException rather than
 
2384
return null, but it doesn't cache the classname/null combination anymore if the classname 
 
2385
is not loaded.
 
2386
<br/><br/></li>
 
2387
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/08/13<br/>
 
2388
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java ToTextStream.java<br/>
 
2389
<ref>Committer's log entry: </ref>
 
2390
 
 
2391
PR: bugzilla 18907
 
2392
Submitted by:   Brian Minchau 
 
2393
Patch has just been applied to main branch of CVS.
 
2394
 
 
2395
Now ToStream.writeUTF16Surrogate(char c, char ch[], int i, int end) 
 
2396
return nothing rather than the "i+1" that it had always returned, 
 
2397
which was a bit confusing. 
 
2398
This routine always processed 2 input characters and always returned "i+1" so why bother?  
 
2399
 
 
2400
There was no error in returning "i+1" because the situation in which this routine was called were always in a loop:
 
2401
for (int i=start; i &lt; end; i++) { ... }
 
2402
so "i" was always incremented before going on to the next iteration. Any i++; after calling writeUTF16Surrogate() now 
 
2403
means that 2 input characters have been processed, so there is no bug here (never was).  The code is just clearer now.
 
2404
A bug has been fixed in ToStream.accumDefaultEscape() which used to mis-count how many input characters that it processed.
 
2405
<br/><br/></li>
 
2406
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/08/13<br/>
 
2407
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Encodings.properties<br/>
 
2408
<ref>Committer's log entry: </ref>
 
2409
 
 
2410
 
 
2411
PR: bugzilla 21300      
 
2412
 
 
2413
Submitted by:   Brian Minchau
 
2414
 
 
2415
Reviewed by:    Henry Zongaro
 
2416
 
 
2417
The review was done via a discussion.  Not too many requests are made to
 
2418
 
 
2419
add encoding information to this property file.  Doing one now and then is OK.
 
2420
 
 
2421
A comment was added to the property file showing where to go to get information
 
2422
 
 
2423
on ISO encodings.   
 
2424
 
 
2425
 
 
2426
 
 
2427
At this point a decision was made to NOT update the information en-mass, but wait for
 
2428
 
 
2429
individual requests.
 
2430
<br/><br/></li>
 
2431
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/08/14<br/>
 
2432
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/cmdline Transform.java xml-xalan/java/src/org/apache/xml/serializer 
 
2433
CharInfo.java Encodings.java OutputPropertiesFactory.java SerializerFactory.java xml-xalan/java/src/org/apache/xpath/functions 
 
2434
FuncSystemProperty.java xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandler.java ExtensionHandlerGeneral.java 
 
2435
xml-xalan/java/src/org/apache/xalan/processor TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler 
 
2436
FunctionAvailableCall.java FunctionCall.java Parser.java xml-xalan/java/src/org/apache/xalan/xsltc/dom NodeSortRecord.java 
 
2437
NodeSortRecordFactory.java xml-xalan/java/src/org/apache/xalan/xsltc/trax SmartTransformerFactoryImpl.java TemplatesImpl.java 
 
2438
TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xalan/lib Extensions.java xml-xalan/java/src/org/apache/xalan/lib/sql 
 
2439
DefaultConnectionPool.java xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java xml-xalan/java/src/org/apache/xalan/xslt 
 
2440
EnvironmentCheck.java Process.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ObjectType.java 
 
2441
xml-xalan/java/src/org/apache/xalan/xsltc/runtime TransletLoader.java xml-xalan/java/src/org/apache/xml/dtm DTMManager.java 
 
2442
FactoryFinder.java SecuritySupport.java SecuritySupport12.java xml-xalan/java/src/org/apache/xml/dtm/ref CoroutineParser.java 
 
2443
IncrementalSAXSource_Xerces.java xml-xalan/java/src/org/apache/xml/utils ObjectPool.java ObjectFactory.java SecuritySupport.java 
 
2444
SecuritySupport12.java xml-xalan/java/src/org/apache/xpath/compiler FuncLoader.java xml-xalan/java/src/org/apache/xml/utils
 
2445
 ObjectPool.java ObjectFactory.java SecuritySupport.java SecuritySupport12.java<br/>
 
2446
 <ref>Committer's log entry: </ref>
 
2447
Applying Igor Malinin's (igor@widespace.ee) patch for more convenient   (centralized)
 
2448
 
 
2449
classloading.  See bugzilla #16675.
 
2450
<br/><br/></li>
 
2451
<li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/08/14<br/>
 
2452
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan overview.xml trax.xml<br/>
 
2453
<ref>Committer's log entry: </ref>
 
2454
A few minor doc updates.
 
2455
<br/><br/></li>
 
2456
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/08/18<br/>
 
2457
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerGeneral.java<br/>
 
2458
<ref>Committer's log entry: </ref>
 
2459
Fix a typepo in ExtensionHandlerGeneral.java. It should check for null
 
2460
instead of nonnull.
 
2461
<br/><br/></li>
 
2462
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/08/25<br/>
 
2463
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTElementProcessor.java xml-xalan/java/src/org/apache/xalan/templates 
 
2464
Stylesheet.java<br/>
 
2465
<ref>Committer's log entry: </ref>
 
2466
Patch for bugzilla 12441. In forward-compatible mode, an unknown attribute
 
2467
should be ignored. Currently Xalan throws an exception.
 
2468
 
 
2469
Reviewed by Morris Kwan (mkwan@ca.ibm.com).
 
2470
<br/><br/></li>
 
2471
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/26<br/>
 
2472
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor TransformerFactoryImpl.java<br/>
 
2473
<ref>Committer's log entry: </ref>
 
2474
Removed static method which was reading XSLTInfo.properties file and setting
 
2475
a system property for each property in the file.  That code was not appropriate
 
2476
in a secure environment, and wasn't actually needed.  Three of the properties
 
2477
were being set in support of the XSLT system-property function, but the
 
2478
implementation of that function didn't actually access the values from the
 
2479
system properties; the fourth was org.xml.sax.driver, which should be provided
 
2480
by the user's application or by the parser in a
 
2481
META-INF/services/org.xml.sax.driver file.
 
2482
 
 
2483
Reviewed with Christine Li (jycli@ca.ibm.com).
 
2484
<br/><br/></li>
 
2485
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/26<br/>
 
2486
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTInfo.properties<br/>
 
2487
<ref>Committer's log entry: </ref>
 
2488
Removed property for org.xml.sax.driver.  This is something that should be
 
2489
set by either the user's application code or by a
 
2490
META-INF/service/org.xml.sax.driver supplied with an XML parser.  Xalan
 
2491
shouldn't be responsible for setting it.
 
2492
 
 
2493
Reviewed with Christine Li (jycli@ca.ibm.com).
 
2494
<br/><br/></li>
 
2495
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/26<br/>
 
2496
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/functions FuncSystemProperty.java SecuritySupport.java SecuritySupport12.java<br/>
 
2497
<ref>Committer's log entry: </ref>
 
2498
Changed the way XSLTInfo.properties file was being read to use SecuritySupport
 
2499
class instead.  Added copies of SecuritySupport classes to this package as well.
 
2500
 
 
2501
Reviewed with Christine Li (jycli@ca.ibm.com).
 
2502
<br/><br/></li>
 
2503
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/26<br/>
 
2504
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils SecuritySupport.java SecuritySupport12.java<br/>
 
2505
<ref>Committer's log entry: </ref>
 
2506
Changed comments that referred to JAXP.  Updated imports to avoid using
 
2507
wildcards, which is a practice Xalan-J has largely eschewed.
 
2508
<br/><br/></li>
 
2509
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/08/27<br/>
 
2510
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates FuncDocument.java<br/>
 
2511
<ref>Committer's log entry: </ref>
 
2512
Applying patch for bug 19297 from Christine Li (jycli@ca.ibm.com).  The
 
2513
document() function must treat the second argument as a node-set; it should
 
2514
not permit an argument of any other type.
 
2515
<br/><br/></li>
 
2516
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/08/27<br/>
 
2517
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerJavaClass.java ExtensionHandlerJavaPackage.java 
 
2518
xml-xalan/java/src/org/apache/xalan/templates ElemExtensionCall.java xml-xalan/java/src/org/apache/xalan/trace ExtensionEvent.java 
 
2519
TraceListenerEx3.java TraceManager.java<br/><ref>Committer's log entry: </ref>
 
2520
Implemented extensions trace mechanism for Java extension calls.
 
2521
(http://marc.theaimsgroup.com/?l=xalan-dev&amp;m=105715909512185&amp;w=2)
 
2522
 
 
2523
Added new interfaces to allow a trace listener to receive information about
 
2524
extension functions and elements that are called or executed.
 
2525
 
 
2526
Placed hooks in subclasses of ExtensionHandler prior to and after invoking
 
2527
the resolved extension method.
 
2528
 
 
2529
Adding missing trace event for ElemExtensionCall.
 
2530
<br/><br/></li>
 
2531
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/08/28<br/>
 
2532
<ref>Modified: </ref> xml-xalan/java build.xml<br/><ref>Committer's log entry: </ref>
 
2533
Patch from Sarah McNamara (mcnamara@ca.ibm.com).
 
2534
 
 
2535
Removing JavaCupRedirect from the jar files. This class is only
 
2536
needed at build time, and causes build problems when placed on the
 
2537
bootclasspath (when bootclasspathing xalan.jar under JDK 1.4).
 
2538
 
 
2539
See also (http://marc.theaimsgroup.com/?l=xalan-cvs&amp;m=105637851030164&amp;w=2)
 
2540
<br/><br/></li>
 
2541
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/09/03<br/>
 
2542
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerExsltFunction.java xml-xalan/java/src/org/apache/xalan/res 
 
2543
XSLTErrorResources.java<br/>
 
2544
<ref>Committer's log entry: </ref>
 
2545
Applied patch for bug 15090 from Joanne Tong (joannet@ca.ibm.com).  Added code
 
2546
to handle the case in which a referenced function is not found by reporting an
 
2547
error.  Previously, a NullPointerException was the result.
 
2548
<br/><br/></li>
 
2549
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/09/03<br/>
 
2550
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils SystemIDResolver.java<br/>
 
2551
<ref>Committer's log entry: </ref>
 
2552
Patch for Bugzilla Bug 22777
 
2553
<br/><br/></li>
 
2554
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/09/03<br/>
 
2555
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java<br/>
 
2556
<ref>Committer's log entry: </ref>
 
2557
PR: bugzilla 21478      
 
2558
Submitted by:   Christine Li
 
2559
Reviewed by:    Brian Minchau
 
2560
 
 
2561
Added message key ER_FUNCTION_NOT_SUPPORTED that
 
2562
maps to message (in English) "Function not supported!"
 
2563
so that an error message comes out rather than a crash.
 
2564
<br/><br/></li>
 
2565
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/09/06<br/>
 
2566
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/>
 
2567
<ref>Committer's log entry: </ref>
 
2568
Patch for Bugzilla Bug 22808
 
2569
<br/><br/></li>
 
2570
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/09/09<br/>
 
2571
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java ErrorMsg.java xml-xalan/java/xdocs/sources/xalan 
 
2572
commandline_xsltc.xml faq.xml xsltc_usage.xml<br/>
 
2573
<ref>Committer's log entry: </ref>
 
2574
Updated documentation to describe behaviour of XSLTC when the translet name
 
2575
specified by the user contains characters that are not permitted as part of a
 
2576
Java class name.
 
2577
 
 
2578
Reviewed by Sarah McNamara (mcnamara@ca.ibm.com).
 
2579
<br/><br/></li>
 
2580
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/09/11<br/>
 
2581
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer SerializerSwitcher.java 
 
2582
xml-xalan/java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/>
 
2583
<ref>Committer's log entry: </ref>
 
2584
Apply the patch from Richard Cao (richcao@ca.ibm.com) for bug 13082.
 
2585
<br/><br/></li>
 
2586
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/09/11<br/>
 
2587
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/trace PrintTraceListener.java<br/>
 
2588
<ref>Committer's log entry: </ref>
 
2589
Updating PrintTraceListener to print information about the recently
 
2590
added ExtensionEvents.
 
2591
<br/><br/></li>
 
2592
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/09/11<br/>
 
2593
<ref>Modified: </ref> xml-xalan/java/samples/Trace Trace.java<br/>
 
2594
<ref>Committer's log entry: </ref>
 
2595
Update Trace sample to allow tracing of extension calls, as well as
 
2596
optionally read the name of the stylesheet from the command line arguments.
 
2597
<br/><br/></li>
 
2598
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/09/11<br/>
 
2599
<ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan samples.xml usagepatterns.xml<br/>
 
2600
<ref>Committer's log entry: </ref>
 
2601
Documenting the addition of the ExtensionEvent trace event, as well as
 
2602
the Trace sample changes.
 
2603
<br/><br/></li>
 
2604
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/09/18<br/>
 
2605
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorUnknown.java 
 
2606
xml-xalan/java/src/org/apache/xalan/templates ElemExtensionCall.java ElemFallback.java ElemUnknown.java<br/>
 
2607
<ref>Committer's log entry: </ref>
 
2608
PR: Bugzilla 23089
 
2609
Submitted by:   Joanne Tong
 
2610
Reviewed by:    Brian Minchau
 
2611
 
 
2612
A slight rework of Joanne's patch made by Brian and now commited to CVS.
 
2613
Also just previosly commited was a testcase, extend06 created by Joanne (thank!).
 
2614
<br/><br/></li>
 
2615
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/09/19<br/>
 
2616
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/>
 
2617
<ref>Committer's log entry: </ref>
 
2618
Applying patch from Joanne Tong (joannet@ca.ibm.com) for Bugzilla bug report
 
2619
16311.  After completing the relevant operations in applyTemplateToNode, the
 
2620
method was popping various pieces of the context off of stacks.  However, in
 
2621
the case of the default template rule for text nodes, it was trying to pop
 
2622
variables off the stack, even though no variables had been pushed onto the
 
2623
stack.
 
2624
<br/><br/></li>
 
2625
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/09/19<br/>
 
2626
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler XPathParser.java<br/>
 
2627
<ref>Committer's log entry: </ref>
 
2628
Applying patch from Joanne Tong (joannet@ca.ibm.com) for Bugzilla bug report
 
2629
23200.  The XPath syntax for a number is "Digits ('.' Digits?)? | '.' Digits".
 
2630
The XPath parser accepted anything accepted by the Java double literal syntax,
 
2631
including values using "E" exponential notation.  The fix was to guard against
 
2632
any value using exponential notation.
 
2633
<br/><br/></li>
 
2634
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/09/25<br/>
 
2635
<ref>Modified: </ref> xml-xalan/java/xdocs/sources entities.ent xml-xalan/java/xdocs/sources/xalan downloads.xml faq.xml 
 
2636
history.xml index.xml resources.xml<br/>
 
2637
<ref>Committer's log entry: </ref>
 
2638
PR: bugzilla 23418
 
2639
Submitted by:   Sarah McNamara
 
2640
Reviewed by:    Brian Minchau
 
2641
Updates to java/xdocs so that new webpages point to Apache Mirrors for distribution.
 
2642
<br/><br/></li>
 
2643
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/05<br/>
 
2644
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java ToHTMLStream.java ToStream.java<br/>
 
2645
<ref>Committer's log entry: </ref>
 
2646
PR: bugzilla 22623
 
2647
Submitted by:   Brian Minchau
 
2648
Reviewed by:    Henry Zongaro
 
2649
Tabs in HTML attribute values are now output as charater references.
 
2650
<br/><br/></li>
 
2651
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/06<br/>
 
2652
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemExtensionCall.java ElemLiteralResult.java 
 
2653
xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java xml-xalan/java/src/org/apache/xml/serializer 
 
2654
EmptySerializer.java SerializationHandler.java ToHTMLSAXHandler.java ToSAXHandler.java ToStream.java ToTextStream.java 
 
2655
ToUnknownStream.java<br/>
 
2656
<ref>Committer's log entry: </ref>
 
2657
PR: bugzilla 21471
 
2658
Submitted by:   Joanne Tong
 
2659
Reviewed by:    Brian Minchau
 
2660
Stop some SAXExceptions from being quietly caught by the serializer.
 
2661
<br/><br/></li>
 
2662
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/10/09<br/>
 
2663
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Encodings.java SecuritySupport.java SecuritySupport12.java<br/>
 
2664
<ref>Committer's log entry: </ref>
 
2665
Propagated SecuritySupport and SecuritySupport12 classes to serializer package.
 
2666
Code in Encoding that uses Class.getResource should instead use
 
2667
SecuritySupport.getResourceAsStream.
 
2668
 
 
2669
Reviewed by Christine Li (jycli@ca.ibm.com)
 
2670
<br/><br/></li>
 
2671
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/15<br/>
 
2672
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/>
 
2673
<ref>Committer's log entry: </ref>
 
2674
PR: bugzilla 22422
 
2675
Submitted by: Brian Minchau     
 
2676
Reviewed by:    Naeim Semsarilar (person reporting the problem)
 
2677
 
 
2678
Get a system and public ID from the properties used to create a serializer
 
2679
and used them to call appropriate methods on the ToXMLSAXHandler.
 
2680
<br/><br/></li>
 
2681
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/10/15<br/>
 
2682
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTAttributeDef.java xml-xalan/java/src/org/apache/xalan/templates 
 
2683
OutputProperties.java Stylesheet.java xml-xalan/java/src/org/apache/xalan/xslt EnvironmentCheck.java 
 
2684
xml-xalan/java/src/org/apache/xalan/xsltc/compiler AttributeValueTemplate.java xml-xalan/java/src/org/apache/xml/serializer 
 
2685
CharInfo.java xml-xalan/java/src/org/apache/xml/utils Hashtree2Node.java<br/>
 
2686
<ref>Committer's log entry: </ref>
 
2687
Fix for bugzilla 22342.
 
2688
Rename variables with name "enum". In JDK 1.5, enum is a keyword.
 
2689
<br/><br/></li>
 
2690
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/10/16<br/>
 
2691
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExpressionVisitor.java<br/>
 
2692
<ref>Committer's log entry: </ref>
 
2693
Apply the patch for bugzilla 14149 from Joanne Tong (joannet@ca.ibm.com).
 
2694
<br/><br/></li>
 
2695
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/16<br/>
 
2696
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/>
 
2697
<ref>Committer's log entry: </ref>
 
2698
PR: bugzilla 23113
 
2699
Submitted by:   Brian Minchau
 
2700
Reviewed by:    Brian Minchau
 
2701
The reset() in ToStream did not reset a few fields to the original values
 
2702
that were obtained via " new ToStream() ".  The applied patch fixes that.
 
2703
<br/><br/></li>
 
2704
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/16<br/>
 
2705
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates OutputProperties.java<br/>
 
2706
<ref>Committer's log entry: </ref>
 
2707
PR: bugzilla 890
 
2708
Submitted by:    Richard Cao
 
2709
Reviewed by:    Brian Minchau
 
2710
Make sure a non standard property has a key with only one '{' and only one '}'
 
2711
and that the '{' is first thing in the key.
 
2712
<br/><br/></li>
 
2713
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/10/16<br/>
 
2714
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java<br/>
 
2715
<ref>Committer's log entry: </ref>
 
2716
Patch from Christine Li (jycli@ca.ibm.com) for Bugzilla bug report 22880.
 
2717
 
 
2718
When input comes from DOMSource, a TreeWalker object walks the DOM input and
 
2719
fires events to the ContentHandler for the result object, unless the DOM
 
2720
consists of only an Attribute node.  In the case of an Attribute, the TreeWalker
 
2721
is not utilized, and just the character data is copied to the result.
 
2722
 
 
2723
As part of the traversal of the DOM, the TreeWalker always fires startDocument
 
2724
and endDocument events.  The code in the transform(Source,Result) method was
 
2725
redundantly firing those same events if the Node specified by the DOMSource
 
2726
was not a Document node.  Instead, that should be left to the TreeWalker.  The
 
2727
startDocument and endDocument events should only be fired in the transform
 
2728
method itself to complete the entirely local processing of Attribute nodes.
 
2729
<br/><br/></li>
 
2730
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/10/16<br/>
 
2731
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java<br/>
 
2732
<ref>Committer's log entry: </ref>
 
2733
Patch for Bugzilla Bug 7408. Submitrd by  Richard Cao.
 
2734
<br/><br/></li>
 
2735
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/10/16<br/>
 
2736
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorDecimalFormat.java xml-xalan/java/src/org/apache/xalan/templates DecimalFormatProperties.java KeyDeclaration.java<br/>
 
2737
<ref>Committer's log entry: </ref>
 
2738
Patch for Bugzilla Bug 5972. Submitrd by  Richard Cao.
 
2739
<br/><br/></li>
 
2740
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/10/16<br/>
 
2741
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTAttributeDef.java XSLTSchema.java<br/>
 
2742
<ref>Committer's log entry: </ref>
 
2743
Patch for Bugzilla Bug 788. Submitted by  Richard Cao.
 
2744
<br/><br/></li>
 
2745
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/16<br/>
 
2746
<ref>Modified: </ref> xml-xalan/java KEYS<br/><ref>Committer's log entry: </ref>
 
2747
Added the public key of "Brian James Minchau" to the xml-xalan/java/KEYS file.
 
2748
<br/><br/></li>
 
2749
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/16<br/>
 
2750
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xslt Process.java<br/>
 
2751
<ref>Committer's log entry: </ref>
 
2752
PR: bugzilla 16512
 
2753
Submitted by:   Richard Cao
 
2754
Reviewed by:    Brian Minchau
 
2755
This bug has existed since the earth cooled (Mid 2000).
 
2756
Clearly 3 of 4 lines were commented out
 
2757
// if (x)
 
2758
//   diagnositcsWriter.print(...)/
 
2759
// else
 
2760
   diagnosticsWriter.print(...);
 
2761
And it was printing a message that we were done, not in the spirit of quiet
 
2762
success.  Richard Cao's patch is applied, the fourth line is now commented out as well.
 
2763
<br/><br/></li>
 
2764
<li><ref>Committed by </ref>igorh@apache.org<ref> on </ref>2003/10/16<br/>
 
2765
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates TemplateList.java<br/>
 
2766
<ref>Committer's log entry: </ref>
 
2767
Patch for Bugzilla Bug 789. Submitted by  Richard Cao.
 
2768
<br/><br/></li>
 
2769
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/10/17<br/>
 
2770
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor StylesheetHandler.java<br/>
 
2771
<ref>Committer's log entry: </ref>
 
2772
Patch from Richard Cao (richcao@ca.ibm.com) for Bugzilla bug 15700.
 
2773
Added additional check to prevent unrecognised elements from the XSLT namespace
 
2774
(or even recognized elements, other than xsl:stylesheet and xsl:transform)
 
2775
from appearing as the outermost element in a stylesheet.
 
2776
<br/><br/></li>
 
2777
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/17<br/>
 
2778
<ref>Modified: </ref> xml-xalan/java/bin xalan2jdoc.jar xalan2jtaglet.jar 
 
2779
xml-xalan/java build.xml xml-xalan/java/src/org/apache/xalan/templates AVT.java 
 
2780
AVTPart.java Constants.java ElemApplyImport.java ElemApplyTemplates.java ElemAttribute.java 
 
2781
ElemAttributeSet.java ElemCallTemplate.java ElemComment.java ElemCopy.java ElemCopyOf.java 
 
2782
ElemElement.java ElemExtensionCall.java ElemExtensionScript.java ElemFallback.java 
 
2783
ElemForEach.java ElemIf.java ElemLiteralResult.java ElemParam.java ElemSort.java 
 
2784
ElemTemplateElement.java ElemText.java ElemWhen.java ElemWithParam.java FuncDocument.java 
 
2785
KeyDeclaration.java StylesheetRoot.java AVTPartSimple.java AVTPartXPath.java 
 
2786
DecimalFormatProperties.java ElemChoose.java ElemEmpty.java ElemExsltFunction.java 
 
2787
ElemExtensionDecl.java ElemMessage.java ElemNumber.java ElemOtherwise.java ElemPI.java 
 
2788
ElemTemplate.java ElemTextLiteral.java ElemUnknown.java ElemUse.java ElemValueOf.java 
 
2789
ElemVariable.java FuncFormatNumb.java FuncKey.java TemplateList.java 
 
2790
xml-xalan/java/src/org/apache/xml/dtm/ref CoroutineManager.java DTMDefaultBase.java 
 
2791
DTMDocumentImpl.java DTMNamedNodeMap.java DTMNodeProxy.java DTMTreeWalker.java 
 
2792
xml-xalan/java/src/org/apache/xpath/axes AttributeIterator.java ChildIterator.java 
 
2793
ChildTestIterator.java LocPathIterator.java OneStepIteratorForward.java WalkingIterator.java 
 
2794
ContextNodeList.java DescendantIterator.java IteratorPool.java OneStepIterator.java 
 
2795
RTFIterator.java SelfIteratorNoPredicate.java SubContextList.java UnionPathIterator.java 
 
2796
WalkerFactory.java WalkingIteratorSorted.java xml-xalan/java/src/org/apache/xalan/res 
 
2797
XSLMessages.java XSLTErrorResources_en.java xml-xalan/java/src/org/apache/xalan/transformer 
 
2798
ClonerToResultTree.java Counter.java CountersTable.java DecimalToRoman.java KeyIterator.java 
 
2799
KeyRefIterator.java KeyTable.java MsgMgr.java NodeSorter.java NodeSortKey.java 
 
2800
NumeratorFormatter.java ResultNameSpace.java TransformerImpl.java TreeWalker2Result.java 
 
2801
XSLInfiniteLoopException.java xml-xalan/java/src/org/apache/xpath/axes AttributeIterator.java 
 
2802
ChildIterator.java ChildTestIterator.java LocPathIterator.java OneStepIteratorForward.java 
 
2803
WalkingIterator.java ContextNodeList.java DescendantIterator.java IteratorPool.java 
 
2804
OneStepIterator.java RTFIterator.java SelfIteratorNoPredicate.java SubContextList.java 
 
2805
UnionPathIterator.java WalkerFactory.java WalkingIteratorSorted.java 
 
2806
xml-xalan/java/src/org/apache/xalan/lib ExsltCommon.java ExsltDatetime.java ExsltDynamic.java 
 
2807
ExsltMath.java ExsltSets.java ExsltStrings.java Extensions.java 
 
2808
xml-xalan/java/src/org/apache/xpath Arg.java Expression.java FoundIndex.java NodeSet.java 
 
2809
NodeSetDTM.java SourceTree.java VariableStack.java XPath.java XPathContext.java 
 
2810
XPathException.java XPathFactory.java XPathProcessorException.java 
 
2811
xml-xalan/java/src/org/apache/xalan/trace EndSelectionEvent.java GenerateEvent.java 
 
2812
PrintTraceListener.java SelectionEvent.java TraceListener.java TraceListenerEx.java 
 
2813
TraceListenerEx2.java TraceListenerEx3.java TracerEvent.java 
 
2814
xml-xalan/java/src/org/apache/xpath/functions FuncBoolean.java FuncCeiling.java 
 
2815
FuncConcat.java FuncContains.java FuncCount.java FuncCurrent.java FuncDoclocation.java 
 
2816
FuncExtElementAvailable.java FuncExtFunction.java FuncExtFunctionAvailable.java 
 
2817
FuncFalse.java FuncFloor.java FuncGenerateId.java FuncId.java FuncLang.java FuncLast.java 
 
2818
FuncLocalPart.java FuncNamespace.java FuncNormalizeSpace.java FuncNot.java FuncNumber.java 
 
2819
FuncPosition.java FuncQname.java FuncRound.java FuncStartsWith.java FuncString.java 
 
2820
FuncStringLength.java FuncSubstring.java FuncSubstringAfter.java FuncSubstringBefore.java 
 
2821
FuncSum.java FuncSystemProperty.java Function.java Function2Args.java Function3Args.java 
 
2822
FunctionDef1Arg.java FunctionMultiArgs.java FunctionOneArg.java FuncTranslate.java 
 
2823
FuncTrue.java FuncUnparsedEntityURI.java WrongNumberArgsException.java 
 
2824
xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources_ca.java 
 
2825
XPATHErrorResources_cs.java XPATHErrorResources_de.java XPATHErrorResources_en.java 
 
2826
XPATHErrorResources_fr.java XPATHErrorResources_hu.java XPATHErrorResources_it.java 
 
2827
XPATHErrorResources_ja.java XPATHErrorResources_ko.java XPATHErrorResources_pl.java 
 
2828
XPATHErrorResources_pt_BR.java XPATHErrorResources_sk.java XPATHErrorResources_sv.java 
 
2829
XPATHErrorResources_zh_TW.java XPATHMessages.java XPATHErrorResources_es.java 
 
2830
XPATHErrorResources_ru.java XPATHErrorResources_tr.java XPATHErrorResources_zh_CN.java 
 
2831
XPATHErrorResources.java xml-xalan/java/src/org/apache/xml/utils AttList.java 
 
2832
BoolStack.java CharKey.java Constants.java DefaultErrorHandler.java DOM2Helper.java 
 
2833
DOMBuilder.java DOMHelper.java ElemDesc.java Hashtree2Node.java IntStack.java IntVector.java 
 
2834
ListingErrorHandler.java MutableAttrListImpl.java NameSpace.java NodeVector.java NSInfo.java 
 
2835
ObjectPool.java ObjectStack.java ObjectVector.java PrefixResolver.java 
 
2836
PrefixResolverDefault.java QName.java RawCharacterHandler.java StringBufferPool.java 
 
2837
StringToIntTable.java StringToStringTable.java StringToStringTableVector.java 
 
2838
StringVector.java SuballocatedByteVector.java SuballocatedIntVector.java SystemIDResolver.java 
 
2839
TreeWalker.java Trie.java UnImplNode.java WrongParserException.java 
 
2840
XMLCharacterRecognizer.java xml-xalan/java/src/org/apache/xpath/res 
 
2841
XPATHErrorResources_ca.java XPATHErrorResources_cs.java XPATHErrorResources_de.java 
 
2842
XPATHErrorResources_en.java XPATHErrorResources_fr.java XPATHErrorResources_hu.java 
 
2843
XPATHErrorResources_it.java XPATHErrorResources_ja.java XPATHErrorResources_ko.java 
 
2844
XPATHErrorResources_pl.java XPATHErrorResources_pt_BR.java XPATHErrorResources_sk.java 
 
2845
XPATHErrorResources_sv.java XPATHErrorResources_zh_TW.java XPATHMessages.java 
 
2846
XPATHErrorResources_es.java XPATHErrorResources_ru.java XPATHErrorResources_tr.java 
 
2847
XPATHErrorResources_zh_CN.java XPATHErrorResources.java 
 
2848
xml-xalan/java/src/org/apache/xpath/patterns FunctionPattern.java NodeTest.java 
 
2849
StepPattern.java UnionPattern.java xml-xalan/java/src/org/apache/xml/res 
 
2850
XMLErrorResources_en.java XMLMessages.java xml-xalan/java/src/org/apache/xml/utils/res 
 
2851
XResourceBundle.java XResourceBundleBase.java XResources_cy.java XResources_de.java 
 
2852
XResources_el.java XResources_en.java XResources_es.java XResources_fr.java XResources_he.java 
 
2853
XResources_hy.java XResources_it.java XResources_ja_JP_A.java XResources_ja_JP_HA.java 
 
2854
XResources_ja_JP_HI.java XResources_ja_JP_I.java XResources_ka.java XResources_ko.java 
 
2855
XResources_sv.java XResources_zh_CN.java XResources_zh_TW.java 
 
2856
xml-xalan/java/src/org/apache/xpath/domapi XPathEvaluatorImpl.java XPathExpressionImpl.java 
 
2857
XPathNamespaceImpl.java XPathNSResolverImpl.java XPathResultImpl.java 
 
2858
xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandler.java 
 
2859
ExtensionHandlerGeneral.java ExtensionHandlerJava.java ExtensionHandlerJavaClass.java 
 
2860
ExtensionHandlerJavaPackage.java ExtensionsTable.java XSLProcessorContext.java 
 
2861
xml-xalan/java/src/org/apache/xalan/serialize SerializerUtils.java 
 
2862
xml-xalan/java/src/org/apache/xml/utils/synthetic/reflection Constructor.java 
 
2863
EntryPoint.java Field.java Member.java Method.java xml-xalan/java/src/org/apache/xpath/objects 
 
2864
XBoolean.java XBooleanStatic.java XMLStringFactoryImpl.java XNodeSet.java XNull.java 
 
2865
XNumber.java XObject.java XRTreeFrag.java XString.java 
 
2866
xml-xalan/java/src/org/apache/xalan/processor ProcessorDecimalFormat.java 
 
2867
ProcessorExsltFuncResult.java ProcessorExsltFunction.java ProcessorLRE.java 
 
2868
ProcessorStylesheetDoc.java ProcessorUnknown.java StopParseException.java 
 
2869
StylesheetHandler.java XSLProcessorVersion.java xml-xalan/java/src/org/apache/xpath/compiler 
 
2870
Compiler.java FuncLoader.java Keywords.java OpCodes.java OpMapVector.java XPathParser.java 
 
2871
xml-xalan/java/src/org/apache/xpath/operations Variable.java 
 
2872
xml-xalan/java/src/org/apache/xalan Version.java xml-xalan/java/src/org/apache/xalan/client 
 
2873
XSLTProcessorApplet.java xml-xalan/java/src/org/apache/xalan/xslt Process.java 
 
2874
xml-xalan/java/src/org/apache/xml/dtm DTM.java DTMDOMException.java 
 
2875
xml-xalan/java/src/org/apache/xml/utils/synthetic Class.java JavaUtils.java 
 
2876
SynthesisException.java TestDriver.java<br/>
 
2877
<ref>Committer's log entry: </ref>
 
2878
PR: bugzilla 20572 (javadoc generation failing under JDK 1.4)
 
2879
Submitted by:   Richard Cao
 
2880
Reviewed by:    Brian Minchau
 
2881
Did a further review and tested javadoc generation under JDK 1.4.1 and under 1.2.2
 
2882
<br/><br/></li>
 
2883
<li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/10/20<br/>
 
2884
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/client XSLTProcessorApplet.java<br/>
 
2885
<ref>Committer's log entry: </ref>
 
2886
Patch from Christine Li (jycli@ca.ibm.com) for Bugzilla bug report 19823.
 
2887
Added code to use a Hashtable to keep track of parameters set for an applet.
 
2888
The old implementation allowed just one parameter to be specified for the
 
2889
transformation.
 
2890
<br/><br/></li>
 
2891
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/21<br/>
 
2892
<ref>Modified: </ref> xml-xalan/java build.xml<br/>
 
2893
<ref>Committer's log entry: </ref>
 
2894
PR: bugzilla 20572
 
2895
Submitted by:   Richard Cao
 
2896
Reviewed by:    Brian Minchau
 
2897
Richard added extra -breakiterator option when building javadoc for SDK 1.4 or higher
 
2898
to get rid of warning messaes when doing the build.
 
2899
This is a compatibility option.
 
2900
<br/><br/></li>
 
2901
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/21<br/>
 
2902
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToSAXHandler.java 
 
2903
ToXMLSAXHandler.java<br/>
 
2904
<ref>Committer's log entry: </ref>
 
2905
PR: bugzilla 23812
 
2906
Submitted by:   Brian Minchau
 
2907
Reviewed by:    Henry Zongaro
 
2908
Fixes incorrect handling of CDATA by a ToXMLSAXHandler. 
 
2909
The CDATA was defined by calls to the LexicalHandler methods:
 
2910
startCDATA()
 
2911
endCDATA()
 
2912
Henry would rather have a new flushPending() method which does not
 
2913
flush a generated endCDATA() call, but I copied the contents of flushPending()
 
2914
to the top of ToXMLSAXHandler.character(char[] chars, int off, int len)
 
2915
anyways.  I didn't want to put a new flushPending() method on a SerializationHandler
 
2916
interface.   I'm not completely happy with either choice so I left it as-was  - bjm
 
2917
<br/><br/></li>
 
2918
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/21<br/>
 
2919
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToSAXHandler.java 
 
2920
ToXMLSAXHandler.java
 
2921
xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/>
 
2922
<ref>Committer's log entry: </ref>
 
2923
PR: bugzilla 7205
 
2924
Submitted by:   Richard Cao
 
2925
Reviewed by:    Brian Minchau/Henry Zongaro
 
2926
Do NOT  have ToXMLSAXHandler always mirror namespaces given via
 
2927
startPrefixMapping("prefix1", "uri1")
 
2928
 as attribute values of the form xmlns:prefix1="uri1"
 
2929
<br/><br/></li>
 
2930
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/22<br/>
 
2931
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExpressionVisitor.java
 
2932
xml-xalan/java/src/org/apache/xalan/lib PipeDocument.java ExsltCommon.java 
 
2933
ExsltDatetime.java xml-xalan/java/src/org/apache/xalan/lib/sql ConnectionPool.java 
 
2934
ConnectionPoolManager.java DefaultConnectionPool.java DTMDocument.java ObjectArray.java 
 
2935
PooledConnection.java QueryParameter.java XConnection.java 
 
2936
xml-xalan/java/src/org/apache/xalan/processor StylesheetHandler.java 
 
2937
xml-xalan/java/src/org/apache/xalan/templates ElemExsltFuncResult.java 
 
2938
ElemTemplateElement.java FuncDocument.java OutputProperties.java
 
2939
xml-xalan/java/src/org/apache/xml/serializer AttributesImplSerializer.java 
 
2940
EmptySerializer.java NamespaceMappings.java ToHTMLSAXHandler.java ToHTMLStream.java 
 
2941
ToStream.java ToTextSAXHandler.java ToUnknownStream.java ToXMLSAXHandler.java 
 
2942
ToXMLStream.java<br/><ref>Committer's log entry: </ref>
 
2943
PR: bugzilla 23983
 
2944
Submitted by:   Brian Minchau
 
2945
javadoc cleanup
 
2946
<br/><br/></li>
 
2947
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/22<br/>
 
2948
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes AttributeIterator.java 
 
2949
ChildIterator.java 
 
2950
ChildTestIterator.java DescendantIterator.java LocPathIterator.java NodeSequence.java 
 
2951
OneStepIterator.java OneStepIteratorForward.java SelfIteratorNoPredicate.java 
 
2952
UnionPathIterator.java WalkingIterator.java
 
2953
xml-xalan/java/src/org/apache/xalan/transformer package.html TransformerIdentityImpl.java 
 
2954
TransformerImpl.java XalanProperties.java XalanTransformState.java
 
2955
xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java
 
2956
xml-xalan/java/src/org/apache/xml/dtm/ref DTMManagerDefault.java DTMNodeIterator.java 
 
2957
DTMNodeProxy.java<br/><ref>Committer's log entry: </ref>
 
2958
PR: bugzilla 23983
 
2959
Submitted by:   Brian Minchau
 
2960
javadoc cleanup
 
2961
<br/><br/></li>
 
2962
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/22<br/>
 
2963
<ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerFactory.java<br/>
 
2964
<ref>Committer's log entry: </ref>
 
2965
Fix to make SerializerFactory return a serializer even if the only
 
2966
property specified is method="xml"
 
2967
PR: bugzilla 22025
 
2968
Submitted by:   Brian Minchau
 
2969
Reviewed by:    John Meyer (bug originator)
 
2970
<br/><br/></li>
 
2971
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/23<br/>
 
2972
<ref>Modified: </ref> java/src/org/apache/xml/serializer Encodings.properties ToTextStream.java
 
2973
java/src/org/apache/xml/res XMLErrorResources.java<br/>
 
2974
<ref>Committer's log entry: </ref>
 
2975
patch to emit emit error message for method="text" when output character not valid in the 
 
2976
output encoding.   
 
2977
PR: bug 795
 
2978
Submitted by:            Richard Cao
 
2979
Reviewed by:             Brian Minchau
 
2980
<br/><br/></li>
 
2981
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/23<br/>
 
2982
<ref>Modified: </ref> java/src/org/apache/xalan/templates ElemLiteralResult.java
 
2983
ElemUse.java<br/>
 
2984
<ref>Committer's log entry: </ref>
 
2985
Error message for testcase attribseterr07
 
2986
PR: bug 782
 
2987
Submitted by:            Richard Cao
 
2988
Reviewed by:             Brian Minchau
 
2989
<br/><br/></li>
 
2990
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/23<br/>
 
2991
<ref>Modified: </ref> java/src/org/apache/xml/serializer CharInfo.java
 
2992
ToHTMLStream.java ToXMLStream.java ToStream.java<br/>
 
2993
<ref>Committer's log entry: </ref>
 
2994
PR: bug 24025
 
2995
Submitted by:            Brian Minchau
 
2996
Reviewed by:             Henry Zongaro
 
2997
<br/><br/></li>
 
2998
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/23<br/>
 
2999
<ref>Modified: </ref> java/src/org/apache/xml/utils QName.java
 
3000
java/src/org/apache/xml/res XMLErrorResources.java<br/>
 
3001
<ref>Committer's log entry: </ref>
 
3002
Shouldn't be able to call a template with no prefix:
 
3003
PR: bug 3415
 
3004
Submitted by:            Richard Cao
 
3005
Reviewed by:             Brian Minchau
 
3006
<br/><br/></li>
 
3007
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/10/23<br/>
 
3008
<ref>Modified: </ref> ava/src/org/apache/xalan/lib PipeDocument.java<br/>
 
3009
<ref>Committer's log entry: </ref>
 
3010
PipeDocument was not calling out.close() when done with the 
 
3011
FileOutputStream "out".
 
3012
PR: bug 24013
 
3013
Submitted by:            Pierre Chardin (bug reporter)
 
3014
Reviewed by:             Brian Minchau
 
3015
<br/><br/></li>
 
3016
</ul>
 
3017
</s2>
 
3018
<s2 title="Changes for &xslt4j; 2.5.1">
 
3019
<p> Core (Non-XSLTC) source code updates:</p>
 
3020
<ul><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xslt EnvironmentCheck.java xml-xalan/java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>
 
3021
Applying Sarah McNamara's (mcnamara@ca.ibm.com) patches to update
 
3022
version numbers in XalanJ.
 
3023
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/10<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan commandline_xsltc.xml commandline.xml history.xml index.xml readme.xml resources.xml samples.xml whatsnew.xml xsltc_history.xml xsltc_usage.xml xml-xalan/java/xdocs/sources entities.ent xalan-jlocal.xml xalan-jsite.xml xml-xalan/java commits.xml build.xml xml-xalan/java/xdocs/style/stylesheets done.xsl xml-xalan/java/xdocs xml-site-style.tar.gz<br/><ref>Committer's log entry: </ref>
 
3024
Sarah McNamara's (mcnamara@ca.ibm.co) documentation patch.
 
3025
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java<br/><ref>Committer's log entry: </ref>
 
3026
Added comments before a couple of messages to assist translators, and fixed a typo in the class name mentioned in a message.
 
3027
<br/><br/></li>
 
3028
<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/dom SAXImpl.java xml-xalan/java/src/org/apache/xml/dtm/ref DTMAxisIteratorBase.java EmptyIterator.java<br/><ref>Committer's log entry: </ref>
 
3029
Applying patches from Igor Hersht (igorh@ca.ibm.com) for bug 15200 and
 
3030
bug 18585.
 
3031
 
 
3032
Pulled EmptyIterator class out of SAXImpl to allow for more widespread use.
 
3033
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/23<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml<br/><ref>Committer's log entry: </ref>
 
3034
New FAQ from Christine Li (jycli@ca.ibm.com) for using Xalan in Tomcat
 
3035
with JDK 1.4.
 
3036
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2003/04/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java<br/><ref>Committer's log entry: </ref>
 
3037
Fix for array out of bounds exception in findNamespaceContext, where the index was allowed to go to -1.  This is a blind fix, and someone who knows the code better should take a look to see what they think.
 
3038
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2003/04/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemCallTemplate.java<br/><ref>Committer's log entry: </ref>
 
3039
Made it a static error in compose(...) if a reference is made to a non-existent template.  Note this might cause some existing stylesheets to not work, since the error would never have been flagged if the code was not run.  Note the old code was marked for %REVIEW%, so I don't think this was ever resolved.  I think it's clear that this should be a static error.
 
3040
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/04/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
 
3041
Change in comments only. Deleted old commented out (and incorrect)
 
3042
double-checked locking code.
 
3043
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemElement.java<br/><ref>Committer's log entry: </ref>
 
3044
Duplicate trace was event being issued.  One from ElemElement and then 
 
3045
from its parent class: ElemUse.
 
3046
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3047
Dropping properties files that contain English messages.
 
3048
xml-xalan/java/src/org/apache/xalan/res/XSLTErrorResources.properties has been
 
3049
replaced by xml-xalan/java/src/org/apache/xalan/res/XSLTErrorResources.java.
 
3050
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3051
Dropping properties files that contain English messages.
 
3052
xml-xalan/java/src/org/apache/xpath/res/XPATHErrorResources.properties has been
 
3053
replaced by xml-xalan/java/src/org/apache/xpath/res/XPATHErrorResources.java.
 
3054
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/04/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltStrings.java Extensions.java xml-xalan/java/src/org/apache/xml/serializer CharInfo.java<br/><ref>Committer's log entry: </ref>
 
3055
Changed incorrect double-check locking code with an inner class
 
3056
with a static field.  Synchronization is covered by the class loader.
 
3057
Loading happens when first referenced. A cool, efficient, safe 
 
3058
way to lazy load a static field.
 
3059
 
 
3060
PR: bugzilla 19029
 
3061
Obtained from: Henry Zongaro
 
3062
Submitted by: Brian Minchau
 
3063
Reviewed by: Henry Zongaro
 
3064
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java ToXMLSAXHandler.java<br/><ref>Committer's log entry: </ref>
 
3065
Cleared two helper fields, m_elementURI and m_elementLocalName in endElement()
 
3066
Both of these fields are out of scope after the element is ended
 
3067
so it is correct to null them out at endElement()
 
3068
 
 
3069
PR: bugzilla 19388
 
3070
Obtained from: bruno@outerthought.org (Bruno Dumon) and Brian Minchau
 
3071
Submitted by: bruno@outerthought.org (Bruno Dumon)
 
3072
Reviewed by: Brian Minchau
 
3073
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/><ref>Committer's log entry: </ref>
 
3074
endDTD() for ToHTMLStream now does nothing. It used to incorrectly
 
3075
write out some closing characters, but that was already hanled in startDocumentIntermal()
 
3076
 
 
3077
PR: 19587
 
3078
Submitted by: bruno@outerthought.org (Bruno Dumon)
 
3079
Reviewed by: Brian Minchau
 
3080
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToStream.java<br/><ref>Committer's log entry: </ref>
 
3081
Performance fix for double buffering.  Don't use WriterToUTF8Buffered if the 
 
3082
writer class is "BufferedServletOutputStream".
 
3083
 
 
3084
PR: bugzilla 19474
 
3085
Submitted by: Brian Minchau
 
3086
Reviewed by: Ilene Seelemann
 
3087
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerBase.java<br/><ref>Committer's log entry: </ref>
 
3088
Fix for flushing occuring in trace code even when tracing is not being done.
 
3089
 
 
3090
PR: bugzilla 19471
 
3091
Submitted by: Brian Minchau
 
3092
Reviewed by: Ilene Seelemann
 
3093
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/05/07<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan usagepatterns.xml<br/><ref>Committer's log entry: </ref>
 
3094
Serializer properties files have moved to the new org.apache.xml.serializer
 
3095
package.  Corrected part of documentation that didn't yet reflect that.
 
3096
<br/><br/></li>
 
3097
<li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerBase.java ToHTMLSAXHandler.java ToHTMLStream.java ToSAXHandler.java ToStream.java ToTextSAXHandler.java ToTextStream.java ToXMLSAXHandler.java ToXMLStream.java<br/><ref>Committer's log entry: </ref>
 
3098
Guarded the fireXXX(); calls to trace events with if (m_tracer != null),
 
3099
strictly for performance reasons. This should run faster than making the call and then checking.
 
3100
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/05/09<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml<br/><ref>Committer's log entry: </ref>
 
3101
Title of FAQ for Xerces version read, "Which version of Xerces-J 2.4.0 should I
 
3102
use?" answering it's own question.  Fixed that to make for a more suspenseful
 
3103
read.
 
3104
<br/><br/></li><li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/05/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorTemplateElem.java xml-xalan/java/src/org/apache/xalan/templates ElemAttributeSet.java ElemElement.java ElemLiteralResult.java ElemTemplateElement.java ElemUse.java<br/><ref>Committer's log entry: </ref>
 
3105
Some Trace-related fixes: Two trace events were being fired for ElemCopy,
 
3106
and for templates elements derived from ElemUse the trace end event was
 
3107
being fired before child templates were executed. Also saved locator
 
3108
information for the end tag of stylesheet elements.
 
3109
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer SerializerBase.java ToHTMLStream.java ToStream.java ToXMLSAXHandler.java<br/><ref>Committer's log entry: </ref>
 
3110
See bugzilla # 19900 for a laundry list of small performance 
 
3111
enhancements.
 
3112
 
 
3113
PR: bugzilla 19900
 
3114
Submitted by: Brian Minchau
 
3115
Reviewed by: Henry Zongaro
 
3116
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer Encodings.java OutputPropertiesFactory.java SerializerFactory.java Utils.java<br/><ref>Committer's log entry: </ref>
 
3117
Performance enhancement. Cache the loading of classes via Class.forName(classname)
 
3118
 in the serializer.  The same class is otherwise loaded over and over with each request
 
3119
to a server, e.g. in a servlet. 
 
3120
PR: bugzilla # 19960
 
3121
Submitted by: Brian Minchau
 
3122
Reviewed by: Morris Kwan
 
3123
<br/><br/></li><li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/05/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemExsltFuncResult.java<br/><ref>Committer's log entry: </ref>
 
3124
Adding missing trace events for the func:result element.
 
3125
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java<br/><ref>Committer's log entry: </ref>
 
3126
The HTML serializer should do nothing with the methods on the 
 
3127
DeclHandler interface, so they are now defined with empty
 
3128
bodies.  Also the comment() method does nothing when in a
 
3129
DTD.
 
3130
PR: bugzilla 19640
 
3131
Submitted by: Bruno Dumon (bruno@outerthought.org)
 
3132
Reviewed by: Brian Minchau
 
3133
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/05/22<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml<br/><ref>Committer's log entry: </ref>
 
3134
Added a new FAQ to describe a situation some users have encountered of late
 
3135
using XSLTC with JDK 1.4.
 
3136
Contributed by Christine Li (jycli@ca.ibm.com) with some editorial input from
 
3137
myself.
 
3138
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/05/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionNamespacesManager.java<br/><ref>Committer's log entry: </ref>
 
3139
Fix a compatibility problem when using the old "http://xml.apache.org/xslt"
 
3140
namespace with extension functions in org.apache.xalan.xslt.Extensions.
 
3141
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/05/26<br/><ref>Modified: </ref> xml-xalan/java build.xml xml-xalan/java/xdocs/sources/xalan builds.xml downloads.xml resources.xml xml-xalan/java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>
 
3142
Patch from Sarah McNamara (mcnamara@ca.ibm.com) which improves documentation
 
3143
about packaging and adds support for building and testing an alternate 
 
3144
binary distribution which provides xalan-interpretive and xsltc in separate jars.
 
3145
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>
 
3146
One line fix to get a lexical handler, was casting the wrong reference.
 
3147
PR: bugzilla 20237
 
3148
Submitted by: Bernard D'Have (bdhaveos@wanadoo.be)
 
3149
Reviewed by: Brian Minchau
 
3150
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/05/27<br/><ref>Modified: </ref> xml-xalan/java/samples/extensions/sql/basic-connection dbinfo.xml dbtest.xsl<br/><ref>Committer's log entry: </ref>
 
3151
Update to the SQL extension sample from Christine Li (jycli@ca.ibm.com).
 
3152
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/05/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>
 
3153
Applying Christine Li's (jycli@ca.ibm.com) fix for bug 19522.  When a
 
3154
SerializationHandler object is created for Xalan-J Interpretive, it needs to
 
3155
be informed which Transformer object is associated with the serialization.
 
3156
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer AttributesImplSerializer.java<br/><ref>Committer's log entry: </ref>
 
3157
AttributesImplSerializer now uses the older (faster) org.xml.sax.helpers.AttributesImpl
 
3158
up until about 12 attributes and switches over to using a Hashtable for faster lookup
 
3159
of attributes, avoiding an order N*N performance problem for large
 
3160
number of attributes, but faster for lower number of attributes.
 
3161
PR: bugzilla 20273
 
3162
Submitted by: Brian Minchau
 
3163
Reviewed by: Henry Zongaro
 
3164
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/05/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemExsltFunction.java xml-xalan/java/src/org/apache/xpath VariableStack.java<br/><ref>Committer's log entry: </ref>
 
3165
Patch from Christine Li (jycli@ca.ibm.com) for bugzilla #18926.
 
3166
 
 
3167
Variables weren't being cleared from stack between calls to func:function.
 
3168
<br/><br/></li>
 
3169
<li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources_ca.java XSLTErrorResources_cs.java XSLTErrorResources_de.java XSLTErrorResources_es.java XSLTErrorResources_fr.java XSLTErrorResources_hu.java XSLTErrorResources_it.java XSLTErrorResources_ja.java XSLTErrorResources_ko.java XSLTErrorResources_pl.java XSLTErrorResources_pt_BR.java XSLTErrorResources_ru.java XSLTErrorResources_sk.java XSLTErrorResources_tr.java XSLTErrorResources_zh_CN.java XSLTErrorResources_zh_TW.java xml-xalan/java/src/org/apache/xalan/xslt Process.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages_ca.java ErrorMessages_cs.java ErrorMessages_de.java ErrorMessages_es.java ErrorMessages_fr.java ErrorMessages_hu.java ErrorMessages_it.java ErrorMessages_ja.java ErrorMessages_ko.java ErrorMessages_pl.java ErrorMessages_pt_BR.java ErrorMessages_ru.java ErrorMessages_sk.java ErrorMessages_tr.java ErrorMessages_zh_CN.java ErrorMessages_zh_TW.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime ErrorMessages_ca.java ErrorMessages_cs.java ErrorMessages_de.java ErrorMessages_es.java ErrorMessages_fr.java ErrorMessages_hu.java ErrorMessages_it.java ErrorMessages_ja.java ErrorMessages_ko.java ErrorMessages_pl.java ErrorMessages_pt_BR.java ErrorMessages_ru.java ErrorMessages_sk.java ErrorMessages_tr.java ErrorMessages_zh_CN.java ErrorMessages_zh_TW.java xml-xalan/java/src/org/apache/xml/res XMLErrorResources_ca.java XMLErrorResources_cs.java XMLErrorResources_de.java XMLErrorResources_es.java XMLErrorResources_fr.java XMLErrorResources_hu.java XMLErrorResources_it.java XMLErrorResources_ja.java XMLErrorResources_ko.java XMLErrorResources_pl.java XMLErrorResources_pt_BR.java XMLErrorResources_ru.java XMLErrorResources_sk.java XMLErrorResources_tr.java XMLErrorResources_zh_CN.java XMLErrorResources_zh_TW.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources_ca.java XPATHErrorResources_cs.java XPATHErrorResources_de.java XPATHErrorResources_es.java XPATHErrorResources_fr.java XPATHErrorResources_hu.java XPATHErrorResources_it.java XPATHErrorResources_ja.java XPATHErrorResources_ko.java XPATHErrorResources_pl.java XPATHErrorResources_pt_BR.java XPATHErrorResources_ru.java XPATHErrorResources_sk.java XPATHErrorResources_tr.java XPATHErrorResources_zh_CN.java XPATHErrorResources_zh_TW.java<br/><ref>Committer's log entry: </ref>
 
3170
Checked in localized messages for Xalan and XSLTC contributed by IBM.
 
3171
New Locale support includes ca, cs, hu, pl, pt_BR, ru, sk and tr.
 
3172
The old messages are also updated with translations for newly added
 
3173
English messages.
 
3174
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils BoolStack.java<br/><ref>Committer's log entry: </ref>
 
3175
Added a clear() method to clear a BoolStack, so that such a 
 
3176
stack can be re-used without the need to create a new one
 
3177
(for performance).
 
3178
Submitted by: Brian Minchau
 
3179
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer NamespaceMappings.java SerializerBase.java ToHTMLStream.java ToSAXHandler.java ToStream.java ToXMLSAXHandler.java ToXMLStream.java<br/><ref>Committer's log entry: </ref>
 
3180
Support for reset() for the stream serializers and for ToXMLSAXHandler.
 
3181
These serializers can now be reset and re-used rather than creating a new one.
 
3182
A reset() takes about 1/2 the time of creating a new one.
 
3183
 
 
3184
Submitted by: Brian Minchau
 
3185
<br/><br/></li><li><ref>Committed by </ref>minchau@apache.org<ref> on </ref>2003/05/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer ToHTMLSAXHandler.java<br/><ref>Committer's log entry: </ref>
 
3186
Support for a ToHTMLSAXHandler serializer to be reset() and re-used.
 
3187
Submitted by: Brian Minchau
 
3188
<br/><br/></li>
 
3189
<li><ref>Committed by </ref>grchiu@apache.org<ref> on </ref>2003/05/28<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml<br/><ref>Committer's log entry: </ref>
 
3190
Contributed by Christine Li (jycli@ca.ibm.com).
 
3191
Modified FAQ entry regarding bootclasspath; the class path separator is not
 
3192
colon for all systems.
 
3193
<br/><br/></li></ul>
 
3194
</s2>
 
3195
<s2 title="Changes for &xslt4j; 2.5.0">
 
3196
<p> Core (Non-XSLTC) source code updates:</p>
 
3197
<ul><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/02/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3198
XSLTC_DTM performance work
 
3199
Small improvement to SAXImpl.copyElement().
 
3200
Move the getStringValue() method from SAXImpl to SAX2DTM2.
 
3201
Remove the SAXImpl.stringValueAux() method.
 
3202
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/02/25<br/><ref>Modified: </ref> xml-xalan/java/src xml-commons-src.tar.gz xml-xalan/java/bin xml-apis.jar<br/><ref>Committer's log entry: </ref>
 
3203
Update to latest version of xml-apis.
 
3204
<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/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3205
XSLTC_DTM performance work
 
3206
Improvement to DescendantIterator. If _startNode is the root node, do
 
3207
not need to do the isDescendant() check.
 
3208
<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/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3209
XSLTC_DTM performance work
 
3210
Set the nextsib element of an attribute or namespace node to -1.
 
3211
This makes the logic in the iterators simpler and easier to
 
3212
maintain.
 
3213
<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/lib/sql DTMDocument.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime AttributeList.java xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java DTMStringPool.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java SAX2DTM2.java xml-xalan/java/src/org/apache/xml/utils SuballocatedIntVector.java<br/><ref>Committer's log entry: </ref>
 
3214
XSLTC_DTM performance work
 
3215
Improvement for RTF. These changes improve the performance
 
3216
for stylesheets which create and throw away many small RTFs.
 
3217
 
 
3218
Make the sizes of all internal storage units used by SAXImpl configurable.
 
3219
These include SuballocatedIntVector, DTMStringPool, IntStack and FastStringBuffer.
 
3220
The chain size of DTMStringPool and the number of blocks in SuballocatedIntVector
 
3221
can now be passed in the constructor. These sizes are set to smaller values in
 
3222
the RTF case.
 
3223
 
 
3224
The default RTF size is changed to 32. There is also a change in the XSLTC
 
3225
AttributeList class to use on-demand memory allocation for the internal vectors.
 
3226
The vectors are only allocated when there is an attribute.
 
3227
<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/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3228
XSLTC_DTM performance work
 
3229
Small improvement to DescendantIterator and TypedDescendantIterator.
 
3230
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/02/28<br/><ref>Modified: </ref> xml-xalan/java/samples/extensions/sql/streamable cachedNodes.xsl pivot.xsl xml-xalan/java/xdocs/sources/xalan samples.xml xml-xalan/java/samples/CompiledApplet menu.html README.applet xml-xalan/java/samples/extensions/sql/basic-connection dbinfo.xml dbtest.xsl<br/><ref>Committer's log entry: </ref>
 
3231
More sample and documentation updates from Christine Li (jycli@ca.ibm.com).
 
3232
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/02/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TrAXFilter.java<br/><ref>Committer's log entry: </ref>
 
3233
Add a getTransformer() interface to TrAXFilter. This is a user requested
 
3234
feature. This interface can be used by the UseXMLFilters samples to
 
3235
set the output properties correctly.
 
3236
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/02/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java DTMDefaultBaseIterators.java DTMDefaultBaseTraversers.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3237
XSLTC_DTM performance work
 
3238
Do not create the previous sibling array for XSLTC. This array is not used
 
3239
in XSLTC's SAXImpl. Creating it is a waste of time.
 
3240
 
 
3241
We add a boolean flag to the constructors of DTMDefaultBase and its
 
3242
subclasses to indicate whether the previous sibling array should be created.
 
3243
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/02/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java<br/><ref>Committer's log entry: </ref>
 
3244
Correct an error. The DTMDefaultBase.getPreviousSibling() interface
 
3245
returns a node handle instead of a node identity.
 
3246
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/02/28<br/><ref>Modified: </ref> xml-xalan/java/samples/CompiledEJB bottom_frame.html index.html README.ejb top_frame.html xml-xalan/java/samples/CompiledServlet CompileServlet.java README.servlet<br/><ref>Committer's log entry: </ref>
 
3247
Patches for samples from Christine Li (jycli@ca.ibm.com)
 
3248
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TrAXFilter.java<br/><ref>Committer's log entry: </ref>
 
3249
Propagate the change from head branch to XSLTC_DTM.
 
3250
Add a new getTransformer() interface to TrAXFilter.
 
3251
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TrAXFilter.java<br/><ref>Committer's log entry: </ref>
 
3252
Add a new getTransformer() interface to TrAXFilter.
 
3253
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/03<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 NameBase.java Stylesheet.java xpath.cup XSLTC.java xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java DocumentCache.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 TransformerHandlerImpl.java TransformerImpl.java XSLTCSource.java xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3254
XSLTC_DTM performance work
 
3255
 
 
3256
Implement a feature for on-demand building of the ID index table.
 
3257
 
 
3258
Before this change, the SAX2DTM2 class always builds an ID index
 
3259
hashtable by comparing the name of every attribute with "id". Now
 
3260
we maintain a flag _hasIdCall in AbstractTranslet to indicate
 
3261
whether the translet has id function calls. The value of this flag
 
3262
is compiled into the translet from the Stylesheet class. The Stylesheet
 
3263
class also has an _hasIdCall flag, which is set by the XPath parser.
 
3264
 
 
3265
When a SAXImpl object is created, the _hasIdCall flag is passed in from the
 
3266
Translet. Now the id index table is only built when the stylesheet makes
 
3267
use of the id function.
 
3268
 
 
3269
Also fix a bug in the NameBase class for using an incorrect class name
 
3270
(org.apache.xml.dtm.ref.DTMAxisIterator should be org.apache.xml.dtm.DTMAxisIterator).
 
3271
<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 AnyNodeCounter.java DOMAdapter.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3272
XSLTC_DTM performance work
 
3273
Improvement for xsl:number. Introduce an optimized version of
 
3274
getExpandedTypeID() in SAX2DTM2.
 
3275
<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 DOMWSFilter.java NodeSortRecord.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3276
XSLTC_DTM performance work
 
3277
Improvement for xsl:strip-space by caching the DTM that is used last time.
 
3278
Better Collator handling in NodeSortRecord.
 
3279
<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/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3280
XSLTC_DTM performance work
 
3281
Save the values of attribute, namespace, comment and PI nodes
 
3282
in a plain Vector instead of in DTMStringPool. Saving a String
 
3283
in DTMStringPool involves a hash calculation. These values
 
3284
are unlikely to be equal. Saving them in a plain Vector has a
 
3285
lower cost than saving them in DTMStringPool. Only prefixed QNames
 
3286
are saved in DTMStringPool after this change.
 
3287
 
 
3288
Need to make changes in a few interfaces to accommadate this change.
 
3289
<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/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>
 
3290
XSLTC_DTM performance work
 
3291
Small improvement in FastStringBuffer.sendSAXCharacters() when the whole
 
3292
piece of text is in one chunk.
 
3293
<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/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3294
XSLTC_DTM performance work
 
3295
Small improvement in SAX2DTM2.getStringValueX() and dispatchCharacterEvents()
 
3296
by saving one local variable.
 
3297
<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 CollatorFactoryBase.java SAXImpl.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3298
XSLTC_DTM performance work
 
3299
Save the offset and length of a Text node in a bitwise encoded value (10
 
3300
bits for length and 21 bits for offset) if they are within certain limits.
 
3301
Before this change, we need 3 SuballocatedIntVector calls to get the offset
 
3302
and length information. Now we only need one SuballocatedIntVector call,
 
3303
one bit AND &amp; one SHIFT. Bit AND and SHIFT are faster than accessing a
 
3304
SuballocatedIntVector.
 
3305
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java<br/><ref>Committer's log entry: </ref>
 
3306
Fix a bug for testcase axes129.
 
3307
DTMDefaultBase.getFirstNamespaceNode() should return NULL when
 
3308
the given node is not an element. axes129 passed in both
 
3309
Xalan and XSLTC_DTM after this change.
 
3310
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2003/03/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBaseTraversers.java<br/><ref>Committer's log entry: </ref>
 
3311
Oops! Old bug, just noticed -- we forgot to override RootTraverser's typed first().
 
3312
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom NthIterator.java xml-xalan/java/src/org/apache/xml/dtm DTMAxisIterator.java xml-xalan/java/src/org/apache/xml/dtm/ref DTMAxisIteratorBase.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3313
XSLTC_DTM performance work
 
3314
Improvement for step[n]. Introduce a new interface getNodeByPosition(int position)
 
3315
in DTMAxisIterator, which is used by the NthIterator. The default implementation
 
3316
is in DTMAxisIteratorBase. The subclasses can override this interface to provide
 
3317
a faster customized implementation.
 
3318
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3319
XSLTC_DTM performance work
 
3320
Introduce a copyAttribute() method in SAXImpl to speed up
 
3321
attribute copying.
 
3322
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3323
XSLTC_DTM performance work
 
3324
Improvement in DTM building. Make the code more efficient
 
3325
in a few expensive interfaces.
 
3326
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/03/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3327
Fix a bug in XSLTC_DTM.
 
3328
Change the name of the optimized getExpandedTypeID method to getgetExpandedTypeID2.
 
3329
The old one can be used during DTM building, while the new one is only
 
3330
used in document traversal.
 
3331
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/03/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java XSLTErrorResources.properties XSLTErrorResources.java XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/templates FuncDocument.java FuncDocument.java xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java XSLTErrorResources.properties XSLTErrorResources.java XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/templates FuncDocument.java FuncDocument.java<br/><ref>Committer's log entry: </ref>
 
3332
Committing Christine Li's (jycli@ca.ibm.com) patch for bugzilla #18210.
 
3333
<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/xml/dtm/ref/sax2dtm SAX2DTM.java SAX2DTM2.java<br/><ref>Committer's log entry: </ref>
 
3334
Merging XSLTC_DTM and common serializer to the head
 
3335
Changes in org.apache.xml.dtm.ref.sax2dtm.
 
3336
Add new file SAX2DTM2.
 
3337
<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/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>
 
3338
Merging XSLTC_DTM and common serializer to the head
 
3339
Changes in org.apache.xml.dtm.ref.dom2dtm.
 
3340
<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/xml/dtm DTM.java DTMAxisIterator.java DTMManager.java<br/><ref>Committer's log entry: </ref>
 
3341
Merging XSLTC_DTM and common serializer to the head
 
3342
Changes in org.apache.xml.dtm.
 
3343
<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/xml/dtm/ref DTMAxisIteratorBase.java DTMAxisIterNodeList.java DTMChildIterNodeList.java DTMDefaultBase.java DTMDefaultBaseIterators.java DTMDefaultBaseTraversers.java DTMDocumentImpl.java DTMManagerDefault.java DTMNamedNodeMap.java DTMNodeList.java DTMNodeListBase.java DTMNodeProxy.java DTMStringPool.java ExpandedNameTable.java ExtendedType.java IncrementalSAXSource_Xerces.java<br/><ref>Committer's log entry: </ref>
 
3344
Merging XSLTC_DTM and common serializer to the head
 
3345
Changes in org.apache.xml.dtm.ref.
 
3346
Add new files:
 
3347
DTMAxisIterNodeList.java
 
3348
DTMChildIterNodeList.java
 
3349
DTMNodeListBase.java
 
3350
ExtendedType.java
 
3351
<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/xml/res XMLErrorResources.java<br/><ref>Committer's log entry: </ref>
 
3352
Merging XSLTC_DTM and common serializer to the head
 
3353
Changes in org.apache.xml.res.
 
3354
Add new messages for common serializer.
 
3355
<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/xml/serializer AttributesImplSerializer.java CharInfo.java DOMSerializer.java ElemDesc.java EmptySerializer.java EncodingInfo.java Encodings.java Encodings.properties ExtendedContentHandler.java ExtendedLexicalHandler.java HTMLEntities.res Method.java NamespaceMappings.java output_html.properties output_text.properties output_unknown.properties output_xml.properties OutputPropertiesFactory.java OutputPropertyUtils.java package.html SerializationHandler.java Serializer.java SerializerBase.java SerializerConstants.java SerializerFactory.java SerializerTrace.java SerializerTraceWriter.java ToHTMLSAXHandler.java ToHTMLStream.java ToSAXHandler.java ToStream.java ToTextSAXHandler.java ToTextStream.java ToUnknownStream.java ToXMLSAXHandler.java ToXMLStream.java TransformStateSetter.java WriterToASCI.java WriterToUTF8.java WriterToUTF8Buffered.java XMLEntities.res XSLOutputAttributes.java<br/><ref>Committer's log entry: </ref>
 
3356
Merging XSLTC_DTM and common serializer to the head
 
3357
Add new serializer classes under package org.apache.xml.serializer.
 
3358
Log from Brian Minchau (minchau@ca.ibm.com):
 
3359
 
 
3360
In the past Xalan-J interpretive (Xalan) and XSLTC both implemented their own
 
3361
serialization stages.  Much of the code provides the same functionality.
 
3362
In order to improve the maintainability of the code, and to eliminate any
 
3363
functional differences, these two serializers are now merged in the
 
3364
org.apache.xml.serializer package.
 
3365
 
 
3366
The best performing features of both have been used.  The class hierarchy
 
3367
of serializers used by XSLTC is re-used for this reason. At the highest
 
3368
level the serializer classes split based on whether the output of the
 
3369
serializer is a "Stream" or whether it is a "SAX" handler.  After that
 
3370
both major branches split based on the output type (e.g. XML, HTML or TEXT).
 
3371
 
 
3372
The external user interface of the old Xalan serializer has been kept.
 
3373
Other classes and interfaces have been absorbed into the serializer
 
3374
package to keep it independent of both Xalan and XSLTC. The primary
 
3375
interface, SerializationHandler, accepts SAX and SAX-like calls, but
 
3376
it also absorbs other interfaces from the old Xalan serializer.
 
3377
<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/xml/utils DOMHelper.java FastStringBuffer.java IntStack.java SuballocatedIntVector.java XMLStringDefault.java XMLStringFactoryDefault.java<br/><ref>Committer's log entry: </ref>
 
3378
Merging XSLTC_DTM and common serializer to the head
 
3379
Changes in org.apache.xml.utils.
 
3380
<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/extensions XSLProcessorContext.java<br/><ref>Committer's log entry: </ref>
 
3381
Merging XSLTC_DTM and common serializer to the head
 
3382
Changes in org.apache.xalan.extensions.
 
3383
<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/lib ExsltDatetime.java PipeDocument.java Redirect.java xml-xalan/java/src/org/apache/xalan/lib/sql DTMDocument.java<br/><ref>Committer's log entry: </ref>
 
3384
Merging XSLTC_DTM and common serializer to the head
 
3385
Changes in org.apache.xalan.lib.
 
3386
 
 
3387
1. Change the return types of some date-time extension functions
 
3388
for support in XSLTC.
 
3389
 
 
3390
2. Changes for the new serializer.
 
3391
<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/processor ProcessorOutputElem.java TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
 
3392
Merging XSLTC_DTM and common serializer to the head
 
3393
Changes in org.apache.xalan.processor.
 
3394
<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/serialize CharInfo.java DOMSerializer.java ElemDesc.java EncodingInfo.java Encodings.java Encodings.properties HTMLEntities.res Method.java package.html Serializer.java serializer.properties SerializerFactory.java SerializerToHTML.java SerializerToText.java SerializerToXML.java SerializerUtils.java WriterToASCI.java WriterToUTF8.java WriterToUTF8Buffered.java XMLEntities.res<br/><ref>Committer's log entry: </ref>
 
3395
Merging XSLTC_DTM and common serializer to the head
 
3396
Remove old serializer classes under org.apache.xalan.serialize.
 
3397
The new serializer files are now in org.apache.xml.serializer.
 
3398
Add new file SerializerUtils.java.
 
3399
<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/templates ElemApplyTemplates.java ElemAttribute.java ElemCopy.java ElemCopyOf.java ElemElement.java ElemExtensionCall.java ElemForEach.java ElemLiteralResult.java ElemTemplateElement.java ElemTextLiteral.java ElemValueOf.java output_html.properties output_text.properties output_xml.properties OutputProperties.java StylesheetRoot.java<br/><ref>Committer's log entry: </ref>
 
3400
Merging XSLTC_DTM and common serializer to the head
 
3401
Changes in org.apache.xalan.templates.
 
3402
Replace ResultTreeHandler with SerializationHandler.
 
3403
<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/trace GenerateEvent.java PrintTraceListener.java<br/><ref>Committer's log entry: </ref>
 
3404
Merging XSLTC_DTM and common serializer to the head
 
3405
Changes in org.apache.xalan.trace.
 
3406
<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/transformer ClonerToResultTree.java QueuedEvents.java ResultTreeHandler.java SerializerSwitcher.java TransformerHandlerImpl.java TransformerIdentityImpl.java TransformerImpl.java TransformSnapshot.java TransformSnapshotImpl.java TransformState.java TreeWalker2Result.java XalanTransformState.java<br/><ref>Committer's log entry: </ref>
 
3407
Merging XSLTC_DTM and common serializer to the head
 
3408
Changes in org.apache.xalan.transformer for the new serializer.
 
3409
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/01<br/><ref>Modified: </ref> xml-xalan/java build.xml xsltc_todo.xml<br/><ref>Committer's log entry: </ref>
 
3410
Merging XSLTC_DTM and common serializer to the head
 
3411
Update build.xml and xsltc_todo.xml.
 
3412
 
 
3413
Now the default build target is a big xalan.jar which
 
3414
includes both Xalan-J Interpretive and XSLTC.
 
3415
<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 MANIFEST.MF<br/><ref>Committer's log entry: </ref>
 
3416
Merging XSLTC_DTM and common serializer to the head
 
3417
Update MANIFEST.MF to include information about
 
3418
xsltc and its support jars.
 
3419
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/02<br/><ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/><ref>Committer's log entry: </ref>
 
3420
Updating to Xerces-J 2.4.0.
 
3421
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/02<br/><ref>Modified: </ref> xml-xalan/java/src MANIFEST.MF<br/><ref>Committer's log entry: </ref>
 
3422
Merging XSLTC_DTM and common serializer to the head
 
3423
Update spec version for XSLTC in MANIFEST.MF
 
3424
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/02<br/><ref>Modified: </ref> xml-xalan/java/samples/CompiledApplet menu.html README.applet TransformApplet.java xml-xalan/java/samples/CompiledBrazil README.brazil TransformHandler.java xml-xalan/java/samples/CompiledEJB README.ejb TransformBean.java xml-xalan/java/samples/CompiledJAXP Compile.java README.cjaxp Transform.java xml-xalan/java/samples/CompiledServlet README.servlet TransformServlet.java xml-xalan/java/samples/DOM2DOM DOM2DOM.java xml-xalan/java/samples/Pipe Pipe.java xml-xalan/java/samples/SAX2SAX SAX2SAX.java xml-xalan/java/samples/translets JAXPTransletMultipleTransformations.java JAXPTransletOneTransformation.java todo.xsl xml-xalan/java/samples/UseXMLFilters UseXMLFilters.java<br/><ref>Committer's log entry: </ref>
 
3425
Merging XSLTC_DTM and common serializer to the head
 
3426
 
 
3427
Update in the samples
 
3428
1. Changes from Henry Zongaro (zongaro@ca.ibm.com) in the
 
3429
XSLTC samples. Use TrAX API instead of native API.
 
3430
2. Changes from Brian Minchau (minchau@ca.ibm.com) to use
 
3431
the new serializer classes.
 
3432
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/02<br/><ref>Modified: </ref> xml-xalan/java/samples/CompiledApplet singleTransform.html xml-xalan/java/samples/CompiledEJB bottom_frame.html index.html top_frame.html xml-xalan/java/samples/translets todo.xml todotoo.xml<br/><ref>Committer's log entry: </ref>
 
3433
Merging XSLTC_DTM and common serializer to the head
 
3434
Add new sample files.
 
3435
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/02<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources entities.ent xalan-jlocal.xml xalan-jsite.xml xml-xalan/java/xdocs/sources/xalan commandline_xsltc.xml commandline.xml dtm.xml history.xml readme.xml samples.xml usagepatterns.xml xsltc_history.xml xsltc_usage.xml<br/><ref>Committer's log entry: </ref>
 
3436
Merging XSLTC_DTM and common serializer to the head
 
3437
 
 
3438
Update in java/xdocs.
 
3439
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes FilterExprWalker.java<br/><ref>Committer's log entry: </ref>
 
3440
Commit patch for bug 12797 from Arun Yadav (arun.yadav@sun.com).
 
3441
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/03<br/><ref>Modified: </ref> xml-xalan/java build.xml<br/><ref>Committer's log entry: </ref>
 
3442
Added a new "fulldist" target.  It builds a distribution that includes Xalan-J
 
3443
components that depend upon non-standard components that aren't part of the
 
3444
Xalan-J repository.  In particular, xsltcbrazil.jar is built under the
 
3445
"fulldist" target, but not under the ordinary "dist" target.
 
3446
<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/xml/serializer ToStream.java<br/><ref>Committer's log entry: </ref>
 
3447
Replace Vector.add() by Vector.addElement() because the first method
 
3448
is not in JDK 1.1.8.
 
3449
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/05<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xml/utils TreeWalker.java<br/><ref>Committer's log entry: </ref>
 
3450
Instead of setting a default baseURI in newTemplates, append a dummy string
 
3451
to the default used in the TreeWalker constructors.  This solves the problem
 
3452
of violating the SourceLocator.getSystemId API which should return null
 
3453
if if no systemId was set, while allowing relative URI's to be resolved when
 
3454
the source is a DOM and no systemID has been set.  Relative URI's are already 
 
3455
resolved correctly for other source types.
 
3456
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/06<br/><ref>Modified: </ref> xml-xalan/java/samples/CompiledApplet TransformApplet.java README.applet<br/><ref>Committer's log entry: </ref>
 
3457
Patch from Christine Li (jycli@ca.ibm.com).  Reworked applet code so that the
 
3458
init method creates a thread to which it delegates all the work of creating
 
3459
Transformers and performing transformations.
 
3460
 
 
3461
Xalan needs all of its classes to be loaded with respect to the same class
 
3462
loader.  The thread that's created will have the context class loader, if any,
 
3463
that is in effect when the applet's init method is called, but calls to other
 
3464
methods on the applet might not have the same context class loader.  Using a
 
3465
thread avoids any problems that might arise from such a situation.
 
3466
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java HTMLEntities.properties output_html.properties output_xml.properties XMLEntities.properties xml-xalan/java/xdocs/sources/xalan usagepatterns.xml<br/><ref>Committer's log entry: </ref>
 
3467
Patch from Christine Li (jycli@ca.ibm.com).  Changed CharInfo so that it allows
 
3468
descriptions of entities to be specified as a properties file in addition to a
 
3469
Xalan-specific resource file format.
 
3470
 
 
3471
The code previously always assumed a Xalan-specific resource file format, for
 
3472
both user-supplied descriptions of entities, and for those supplied with
 
3473
Xalan-J.  The security restrictions of applets are such that an applet that
 
3474
relies on a copy of Xalan-J in the Java run-time would find that Xalan-J would
 
3475
be unable to read the default entities file that is packaged with the JRE on
 
3476
the applet's behalf - it can only do so with a properties, via ResourceBundle.
 
3477
<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/lib ExsltDatetime.java<br/><ref>Committer's log entry: </ref>
 
3478
Commit an implementation of the date-time:format-date() extension function
 
3479
(bugzilla 18713) contributed by Helg Bredow (helg.bredow@kalido.com).
 
3480
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2003/04/07<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan commandline_xsltc.xml<br/><ref>Committer's log entry: </ref>
 
3481
Docs update
 
3482
Document the new "use-classpath" attribute
 
3483
which is supported in the XSLTC TrAX API.
 
3484
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/07<br/><ref>Modified: </ref> xml-xalan/java/samples/CompiledServlet README.servlet TransformServlet.java xml-xalan/java/samples/CompiledBrazil README.brazil<br/><ref>Committer's log entry: </ref>
 
3485
Sample updates from Christine Li (jycli@ca.ibm.com).
 
3486
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2003/04/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize DOMSerializer.java Serializer.java SerializerFactory.java xml-xalan/java/src/org/apache/xml/serializer DOMSerializer.java SerializationHandler.java SerializerBase.java ToHTMLStream.java ToUnknownStream.java xml-xalan/java/src/org/apache/xalan/templates OutputProperties.java<br/><ref>Committer's log entry: </ref>
 
3487
Patch from Brian Minchau (minchau@ca.ibm.com) for backward compatibility
 
3488
of new serializers.  Also a fix related to a failure in the DOM2DOM sample.
 
3489
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/serializer HTMLEntities.res XMLEntities.res<br/><ref>Committer's log entry: </ref>
 
3490
Dropped descriptions of entities in the form of resource files in favour of
 
3491
those in the form of properties file.  The resource files are still supported,
 
3492
but Xalan-J's serializer only requires one.
 
3493
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2003/04/09<br/><ref>Modified: </ref> xml-xalan/java build.xml<br/><ref>Committer's log entry: </ref>
 
3494
Dropped descriptions of entities in the form of resource files in favour of
 
3495
those in the form of properties file.  The resource files are still supported,
 
3496
but Xalan-J's serializer only requires one.
 
3497
<br/><br/></li></ul>
 
3498
</s2>
 
3499
<s2 title="Changes for &xslt4j; 2.4.1">
 
3500
<p> Core (Non-XSLTC) source code updates:</p><ul>
 
3501
<li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql DefaultConnectionPool.java<br/><ref>Committer's log entry: </ref>
 
3502
Fixed Class loader Problem. Default Connection now uses context Classloader
 
3503
<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>
 
3504
Fixed problem where a query that returned zero rows would incorrectly return a JDBC
 
3505
Exception. Note: This only occurs in streaming mode.
 
3506
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMNodeProxy.java<br/><ref>Committer's log entry: </ref>
 
3507
Add a convenient interface getStringValue() which returns the
 
3508
string value of a node. It is used by the extension code
 
3509
to get a node value without hacking into the DTM.
 
3510
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates Constants.java<br/><ref>Committer's log entry: </ref>
 
3511
Add strings for new extension namespaces. This includes new EXSLT
 
3512
namespaces (dynamic and strings), namespaces for redirect, PipeDocument
 
3513
and SQL extensions and new namespace for the Java extension. For
 
3514
backward compatibility, the old Java namespace is still kept.
 
3515
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionNamespacesManager.java<br/><ref>Committer's log entry: </ref>
 
3516
Register new extension namespaces, including two new EXSLT namespaces
 
3517
(dynamic and strings), namespaces for redirect, PipeDocument and SQL
 
3518
extensions and the new/old namespaces for Java extension.
 
3519
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib Extensions.java<br/><ref>Committer's log entry: </ref>
 
3520
Reorganize the extension functions for new EXSLT extensions and
 
3521
XSLTC integration. The implementation of some extension functions
 
3522
(intersection, difference, distinct, evaluate and tokenize) are
 
3523
moved to the corresponding EXSLT extension classes. We also put
 
3524
a note to say that using these extension functions in the
 
3525
Xalan namespace is deprecated. The signature of some extension
 
3526
functions are changed to facilitate the XSLTC integration.
 
3527
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltMath.java<br/><ref>Committer's log entry: </ref>
 
3528
The EXSLT math extension was rewritten for XSLTC integration. The
 
3529
signatures of the existing functions (max, min, highest and lowest)
 
3530
are changed. We use NodeList instead of NodeSet and NodeIterator
 
3531
in arguments and return types, because it is the only node list type
 
3532
recognized by XSLTC. We also got rid of the ExpressionContext
 
3533
arguments in these functions. We implemented the toNumber() and toString()
 
3534
interfaces as a replacement.
 
3535
 
 
3536
I also implemented all of the remaining math functions in the EXSLT spec,
 
3537
e.g. constant, sin, random.
 
3538
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltSets.java<br/><ref>Committer's log entry: </ref>
 
3539
The signatures of the sets extension functions are changed for
 
3540
XSLTC integration. NodeList is used instead of NodeSet and NodeIterator
 
3541
in arguments and return types. The implementation of intersection,
 
3542
difference and distinct was moved from Extensions.java to this file.
 
3543
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib Redirect.java<br/><ref>Committer's log entry: </ref>
 
3544
Add comments for the new namespace (http://xml.apache.org/xalan/redirect).
 
3545
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib PipeDocument.java<br/><ref>Committer's log entry: </ref>
 
3546
Add comments for the new namespace (http://xml.apache.org/xalan/PipeDocument).
 
3547
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql XConnection.java<br/><ref>Committer's log entry: </ref>
 
3548
Add comments for the new namespace (http://xml.apache.org/xalan/sql).
 
3549
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltDynamic.java<br/><ref>Committer's log entry: </ref>
 
3550
Add the ExsltDynamic class which implements the EXSLT dynamic
 
3551
extension functions (max, min, sum, map, evaluate and closure).
 
3552
 
 
3553
The implementation of evaluate is taken from Extensions.java.
 
3554
The Javadoc is copied from the relevant EXSLT page.
 
3555
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltStrings.java<br/><ref>Committer's log entry: </ref>
 
3556
Implement the EXSLT strings extension functions (align,
 
3557
concat, padding, split and tokenize). The implementation
 
3558
of tokenize is taken from Extensions.java.
 
3559
 
 
3560
The Javadoc is copied from the relevant EXSLT page. Three
 
3561
functions (decode-uri, encode-uri and replace) are missing
 
3562
due to ambiguous spec.
 
3563
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes SelfIteratorNoPredicate.java<br/><ref>Committer's log entry: </ref>
 
3564
For Bugzilla 11809 and 10643. Fix the nextNode() interface so that
 
3565
it returns DTM.NULL if the m_foundLast flag is true.
 
3566
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemExtensionCall.java<br/><ref>Committer's log entry: </ref>
 
3567
For Bugzilla 11073. Fix an extension namespace problem.
 
3568
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/functions FuncExtFunction.java<br/><ref>Committer's log entry: </ref>
 
3569
For Bugzilla 11743 and 12298. Fix argument handling in
 
3570
extension functions. Arguments now have non-null parents
 
3571
and they will be visited by the XPathVisitor.
 
3572
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/09<br/><ref>Modified: </ref> xml-xalan/java KEYS<br/><ref>Committer's log entry: </ref>
 
3573
I had to get a new key after a hard drive crash.  This time, I backed it up!
 
3574
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/11<br/><ref>Modified: </ref> xml-xalan/java build.xml<br/><ref>Committer's log entry: </ref>
 
3575
Copy the LICENSE and README files to the bin directory for the source distribution.
 
3576
These files are needed by the xsltc.jar target.
 
3577
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerIdentityImpl.java<br/><ref>Committer's log entry: </ref>
 
3578
Throw an IllegalArgumentException in the setErrorListener() interface
 
3579
if the error listener is null.
 
3580
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions MethodResolver.java<br/><ref>Committer's log entry: </ref>
 
3581
For Bugzilla 9731. Convert an empty NodeList to a null Node.
 
3582
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates OutputProperties.java xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>
 
3583
For Bugzilla 12379. Transformer.setOutputProperties() should throw
 
3584
IllegalArgumentException if the property is invalid.
 
3585
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTAttributeDef.java<br/><ref>Committer's log entry: </ref>
 
3586
For Bugzilla 12127. Throw a TransformerException if a prefix cannot
 
3587
be resolved to a URI insteading of throwing a NullPointerException.
 
3588
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTAttributeDef.java<br/><ref>Committer's log entry: </ref>
 
3589
Correct a problem in the previous patch.
 
3590
<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/lib ExsltDatetime.java<br/><ref>Committer's log entry: </ref>
 
3591
Javadoc correction.
 
3592
<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/lib Extensions.java<br/><ref>Committer's log entry: </ref>
 
3593
Make the tokenize extension function different from the one in the
 
3594
EXSLT strings extension. Reuse the Document object to reduce
 
3595
memory consumption.
 
3596
<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/lib ExsltStrings.java<br/><ref>Committer's log entry: </ref>
 
3597
Make the tokenize function conformed with the EXSLT spec. Reuse
 
3598
the Document object to reduce memory usage.
 
3599
<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/xpath/axes RTFIterator.java xml-xalan/java/src/org/apache/xpath/objects XRTreeFrag.java<br/><ref>Committer's log entry: </ref>
 
3600
For Bugzilla 11341. Let RTFIterator extend NodeSetDTM so that it is the kind
 
3601
of DTMIterator expected by DTMNodeList. This also fixes the problem in
 
3602
testcase JavaBugzilla3722.
 
3603
<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/processor ProcessorExsltFunction.java XSLTSchema.java<br/><ref>Committer's log entry: </ref>
 
3604
For Bugzilla 12077. Fixed problem with func:function in included stylesheet.
 
3605
Add exsltFunction to the templateElements list so that we can detect the error where
 
3606
func:function is embedded in another (e.g. xsl:variable) element.
 
3607
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/17<br/><ref>Modified: </ref> xml-xalan/java/bin xml-apis.jar xml-xalan/java/src xml-commons-src.tar.gz<br/><ref>Committer's log entry: </ref>
 
3608
New version of xml-apis.jar taken from xml-commons with tag:
 
3609
factoryfinder-build.  It contains the JAXP FactoryFinder patch and some
 
3610
SAX file updates.
 
3611
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>
 
3612
XSLTC support - phase 1
 
3613
 
 
3614
Add the -XSLTC option to enable transforming using XSLTC
 
3615
 
 
3616
The following existing options do not work in XSLTC mode:
 
3617
-TT
 
3618
-TG
 
3619
-TS
 
3620
-TTC
 
3621
-QC
 
3622
-L
 
3623
-INCREMENTAL
 
3624
-NOOPTIMIZE
 
3625
-RL
 
3626
 
 
3627
If any of these options is used with -XSLTC, a message is printed
 
3628
and the option is ignored. All other existing options (e.g. -flavor,
 
3629
-text, etc.) can be used with -XSLTC.
 
3630
 
 
3631
In phase 2, we are going to migrate the XSLTC specific options in the
 
3632
XSLTC command lines (Compile and Transform) to the Process command line.
 
3633
One of the new features would be generating translet class files from
 
3634
the xsl.
 
3635
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltDynamic.java ExsltMath.java ExsltStrings.java<br/><ref>Committer's log entry: </ref>
 
3636
Extension work. A few Javadoc correction. Fix problems in math:max and math:min.
 
3637
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/objects XRTreeFragSelectWrapper.java<br/><ref>Committer's log entry: </ref>
 
3638
For Bugzilla 6181. Change the execute() interface to return the result
 
3639
of executing the select expression.
 
3640
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/20<br/><ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/><ref>Committer's log entry: </ref>
 
3641
Updating to latest xercesImpl.jar, which contains org.w3c.dom.xpath interfaces.
 
3642
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/domapi XPathEvaluatorImpl.java XPathExpressionImpl.java XPathNSResolverImpl.java XPathResultImpl.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3643
Prototype implementation of DOM L3 XPath Specification.
 
3644
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize SerializerToXML.java<br/><ref>Committer's log entry: </ref>
 
3645
Committing Gordon Chiu's (grchiu@ca.ibm.com) patch for bugzilla #6927.
 
3646
<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>2002/09/23<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan xsltc_constraints.xml xsltc_usage.xml<br/><ref>Committer's log entry: </ref>
 
3647
compile -n option changed so inlining is now the default
 
3648
<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/lib ExsltBase.java ExsltDynamic.java ExsltMath.java ExsltSets.java ExsltStrings.java<br/><ref>Committer's log entry: </ref>
 
3649
Extension cleanup.
 
3650
Add an ExsltBase class as the super class for other EXSLT implementation
 
3651
classes, so that the toString() and toNumber() interfaces can be easily
 
3652
reused by all the subclasses without duplicating code.
 
3653
<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/xpath DOMHelper.java<br/><ref>Committer's log entry: </ref>
 
3654
The isNodeTheSame(node1, node2) interface should return true if node1==node2.
 
3655
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemAttribute.java xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java XSLTErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3656
Patch for bugzilla #10384.  There's still a problem with attribseterr08 which
 
3657
is covered in bugzilla #3969.
 
3658
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/dom3/xpath XPathEvaluator.java XPathException.java XPathExpression.java XPathNamespace.java XPathNSResolver.java XPathResult.java<br/><ref>Committer's log entry: </ref>
 
3659
Since Xerces has decided not to build the org.w3c.dom.xpath interfaces into
 
3660
XercesImpl I have created a temporary home for these interfaces, until
 
3661
the specification becomes a recommendation.
 
3662
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/domapi XPathEvaluatorImpl.java XPathExpressionImpl.java XPathNSResolverImpl.java XPathResultImpl.java<br/><ref>Committer's log entry: </ref>
 
3663
Updating import statements to use the interfaces in the temporary org.apache.xalan.dom3.xpath package.
 
3664
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java XSLTErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3665
Added some new error message strings.
 
3666
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>
 
3667
Patch for bugzilla #4344.  The testcases, copyerr04-07 were already
 
3668
working correctly in that when an attempt was made to add an attribute
 
3669
after child elements, or before an element was produced, the attribute was 
 
3670
ignored.  However, Dave M.  said that a warning was also needed.  So,
 
3671
I have added a warning message for these cases.  Also, similar behaviour
 
3672
was being seen for testcases attribset19,35,36 and attribseterr08.  This
 
3673
was being handled in ElemAttribute.execute, but I've commented out the
 
3674
code there since it will get caught in  ResultTreeHandler.execute in the
 
3675
same place the copyerr tests get handled.
 
3676
 
 
3677
The negative testcases, copyerr04-07, attribset08 should  be moved
 
3678
to the positive bucket (possibly with a few tweaks) since they all run to
 
3679
completion.
 
3680
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemAttribute.java xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3681
Patch for bugzilla #4344.
 
3682
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/09/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>
 
3683
Gordon Chiu's (grchui@ca.ibm.com) patch for bugzilla #8473.  Thanks also
 
3684
to Brian Minchau (minchau@ca.ibm.com) for the analysis of this bug.
 
3685
<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/xpath/functions FunctionMultiArgs.java<br/><ref>Committer's log entry: </ref>
 
3686
For Bugzilla 7161. Add a public accessor to return the argument array.
 
3687
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java xml-xalan/java/src/org/apache/xalan/extensions ExpressionContext.java<br/><ref>Committer's log entry: </ref>
 
3688
For Bugzilla 10414. Provide a getErrorListener() interface in the ExpressionContext.
 
3689
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/09/27<br/><ref>Modified: </ref> xml-xalan/java/samples/AppletXMLtoHTML client.html<br/><ref>Committer's log entry: </ref>
 
3690
For bugzilla 13059. Fix typo width"0" to width="0".
 
3691
<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/res XSLTErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3692
Messages for new options in the Process command line.
 
3693
<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/xslt Process.java<br/><ref>Committer's log entry: </ref>
 
3694
XSLTC support in the Process command line - phase 2
 
3695
Migrate the options from the XSLTC command line (Compile and Transform)
 
3696
to the Process command line. The following new options are added:
 
3697
 
 
3698
-XO [translet_name]  (specify translate class name)
 
3699
-XD destination_directory (specify destination directory)
 
3700
-XJ jar_name (put translet into jar file)
 
3701
-XP package_prefix (specify package name prefix)
 
3702
-XN (enable template inlining)
 
3703
-XX (additional debug messages)
 
3704
-XT (use translet to transform if possible)
 
3705
 
 
3706
The new options can only be used with the -XSLTC option. The options are
 
3707
passed to XSLTC via the standard TRAX API - TransformerFactory.setAttribute().
 
3708
Process does not directly communicate with XSLTC.
 
3709
 
 
3710
The usage instructions are also re-organized. The options are divided into
 
3711
three categories (command options, Options for Xalan and Options for XSLTC). A
 
3712
pager is used when displaying the usage instructions so that you can see them
 
3713
page by page.
 
3714
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/10/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java xml-xalan/java/src/org/apache/xalan/xsltc/runtime ErrorMessages.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3715
Added and fixed up some additional translation guidelines.
 
3716
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/functions FuncExtFunction.java<br/><ref>Committer's log entry: </ref>
 
3717
Use Vector.elementAt() instead of Vector.get(). The latter is not available
 
3718
in JDK 1.1.8. Add two argument accessor methods for Bugzilla 8939.
 
3719
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates Constants.java ElemTemplateElement.java output_html.properties output_text.properties output_xml.properties OutputProperties.java<br/><ref>Committer's log entry: </ref>
 
3720
Use one namespace for all extensions (Bugzilla 9959)
 
3721
Use the new namespace uri "http://xml.apache.org/xalan" instead of
 
3722
"http://xml.apache.org/xslt" for xsl:output extension attributes.
 
3723
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorLRE.java XSLTElementDef.java XSLTSchema.java<br/><ref>Committer's log entry: </ref>
 
3724
Use one namespace for all extensions (Bugzilla 9959)
 
3725
Use the new namespace uri "http://xml.apache.org/xalan" for
 
3726
the component and script extension elements. We maintain
 
3727
backward compatibility so that using the old uri
 
3728
"http://xml.apache.org/xslt" still works.
 
3729
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/03<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerJavaPackage.java<br/><ref>Committer's log entry: </ref>
 
3730
Minor Javadoc update to use the new namespace uri.
 
3731
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/03<br/><ref>Modified: </ref> xml-xalan/java/samples/extensions 1-redir.xsl 2-basicJscript.xsl 3-java-namespace.xsl 4-numlistJava.xsl 5-numlistJscript.xsl 6-sqllib-instantdb.xsl<br/><ref>Committer's log entry: </ref>
 
3732
Update the extension samples to use the new namespace.
 
3733
<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/lib ExsltMath.java<br/><ref>Committer's log entry: </ref>
 
3734
Minor fix for math:max().
 
3735
<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/processor StylesheetHandler.java<br/><ref>Committer's log entry: </ref>
 
3736
For Bugzilla 13106. Visit the XPath expressions created for match patterns.
 
3737
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes DescendantIterator.java UnionPathIterator.java WalkerFactory.java xml-xalan/java/src/org/apache/xpath/compiler Compiler.java Lexer.java OpMap.java XPathParser.java<br/><ref>Committer's log entry: </ref>
 
3738
Patch for bugzilla #5046.
 
3739
 
 
3740
The token queue and operations map can now grow to accomodate really
 
3741
large XPath expressions.   Starting sizes of the data structures remain set
 
3742
at the size in the current code.
 
3743
 
 
3744
I created new classes org.apache.xml.utils.ObjectVector (based on org.apache.xml.utils.IntVector)
 
3745
and org.apache.xpath.compiler.OpMapVector to store the token queue
 
3746
and operations map.
 
3747
 
 
3748
This patch is essentially a stop gap until the new parser (xslt20 branch) is integrated.
 
3749
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils ObjectVector.java xml-xalan/java/src/org/apache/xpath/compiler OpMapVector.java<br/><ref>Committer's log entry: </ref>
 
3750
Patch for bugzilla #5046.
 
3751
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler OpMap.java<br/><ref>Committer's log entry: </ref>
 
3752
Cleaning up import statements.
 
3753
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils IntStack.java IntVector.java ObjectStack.java ObjectVector.java xml-xalan/java/src/org/apache/xalan/templates ElemApplyTemplates.java ElemForEach.java xml-xalan/java/src/org/apache/xalan/transformer StackGuard.java TransformerImpl.java TransformSnapshotImpl.java xml-xalan/java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>
 
3754
Commiting Gordon Chiu's (grchiu@ca.ibm.com) patch for bugzilla#8175.
 
3755
 
 
3756
IntStack's and ObjectStack's are now used in place of fixed length arrays, so that users
 
3757
should not run into limitations based on array sizes.  The initial size of the arrays has
 
3758
been set to current array sizes, so the user's experience should not change much, except
 
3759
in the cases where they were running into the size limitation.
 
3760
 
 
3761
No performance analysis has been done to determine an optimal initial
 
3762
size for the stacks.
 
3763
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>
 
3764
Committing Igor Hersht's (igorh@ca.ibm.com) patch for bugzilla #10176.
 
3765
 
 
3766
Also, removing testcase position102 from the excludes list for the smoketest
 
3767
since it now runs.
 
3768
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>
 
3769
Patch for bugzilla #13305.  Moved initalization code into a static initializer.
 
3770
 
 
3771
TransformerFactory.newInstance() can now be called safely from multiple
 
3772
threads.
 
3773
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/19<br/><ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/><ref>Committer's log entry: </ref>
 
3774
Updating to XercesJ 2.2.0.
 
3775
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref ExpandedNameTable.java<br/><ref>Committer's log entry: </ref>
 
3776
Committing Pavel Ausianik's (Pavel_Ausianik@epam.com) patch for bugzilla #12687.
 
3777
 
 
3778
Reduce memory allocation on initialization of ExpandedNameTable.
 
3779
 
 
3780
m_locNamesPool and m_namespaceNames and code that uses them has
 
3781
been commented out.  Some initialization now done in static initializer.
 
3782
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>
 
3783
Committing Gordon Chiu's (grchiu@ca.ibm.com) modified patch of Pavel Ausianik's (Pavel_Ausianik@epam.com) 
 
3784
patch for bugzilla #12486.
 
3785
 
 
3786
Method XPathContext.reset()  was creating many new instances of java objects, 
 
3787
causing unnecessary memory allocations, instead of reusing previously created 
 
3788
objects. 
 
3789
 
 
3790
 
 
3791
m_locNamesPool and m_namespaceNames and code that uses them has
 
3792
been commented out.  Some initialization now done in static initializer.
 
3793
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/20<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize Encodings.java Encodings.properties<br/><ref>Committer's log entry: </ref>
 
3794
Committing Gordon Chiu's (grchiu@ca.ibm.com) patch for bugzilla #13754.
 
3795
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/dom3/xpath COPYRIGHT.html<br/><ref>Committer's log entry: </ref>
 
3796
Copying the copyright statement for the DOM L3 XPath API interfaces into
 
3797
the temporary package (org.apache.xalan.dom3.xpath) which contains
 
3798
the interfaces until they become a recommendation.
 
3799
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorExsltFunction.java<br/><ref>Committer's log entry: </ref>
 
3800
For bugzilla 13711
 
3801
Fix the conditions for validating the child elements of func:function.
 
3802
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer KeyTable.java xml-xalan/java/src/org/apache/xpath/axes NodeSequence.java<br/><ref>Committer's log entry: </ref>
 
3803
Committing urban.spielmann@swisslife.ch (Urban Spielmann)'s  patch for bugzilla #11661.  
 
3804
 
 
3805
After the Redundant Expression Elimination merge, the key cache had
 
3806
not yet been replaced.  This patch puts back the key cache, which
 
3807
gives xsl:key much better performance.
 
3808
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemExtensionCall.java<br/><ref>Committer's log entry: </ref>
 
3809
For bugzilla 7357
 
3810
Fix problems in exception handling for extension elements.
 
3811
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/23<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>
 
3812
Patch for bugzilla #13863.
 
3813
 
 
3814
Moved setting the namespaceContext from the TransformerImpl constructor to
 
3815
the transform method.
 
3816
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPath.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3817
Move a hardcoded string into the properties file.
 
3818
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerJavaClass.java ExtensionHandlerJavaPackage.java<br/><ref>Committer's log entry: </ref>
 
3819
For bugzilla 13944. Check for InvocationTargetException in Method.invoke().
 
3820
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>
 
3821
For Bugzilla 13303.
 
3822
Fix Memory leak in XPathContext.popRTFContext().
 
3823
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>
 
3824
Backing out patch for bugzilla #13863.  It causes a bunch of failures in 
 
3825
the trax.sax flavour.
 
3826
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan extensions.xml extensionslib.xml samples.xml<br/><ref>Committer's log entry: </ref>
 
3827
Update the extensions documentation.
 
3828
Use the new namespaces in documents and examples. Update EXSLT development
 
3829
status. Modify setup instructions for SQL samples.
 
3830
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java/xdocs xml-site-style.tar.gz xml-xalan/java/xdocs/sources/xalan faq.xml resources.xml<br/><ref>Committer's log entry: </ref>
 
3831
For Bugzilla 14022
 
3832
Commit Gordon Chiu's update to the FAQ.
 
3833
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/dom3/xpath COPYRIGHT.html XPathEvaluator.java XPathException.java XPathExpression.java XPathNamespace.java XPathNSResolver.java XPathResult.java xml-xalan/java/src/org/apache/xpath/domapi XPathEvaluatorImpl.java XPathExpressionImpl.java XPathNSResolverImpl.java XPathResultImpl.java<br/><ref>Committer's log entry: </ref>
 
3834
Removed the temporary org.apache.xalan.dom3.xpath package.
 
3835
 
 
3836
Updated the org.w3c.dom.xpath interfaces.
 
3837
 
 
3838
Changed dependencies to org.w3c.dom.xpath interfaces in the implementation
 
3839
classes in org.apache.xalan.xpath.domapi.
 
3840
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java build.xml<br/><ref>Committer's log entry: </ref>
 
3841
Build org.w3c.xpath.dom interfaces into xalan.jar.
 
3842
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>
 
3843
Patch from Gordon Chiu.  Replace stack.clear() calls with stack.removeAllElements()
 
3844
to be compatible with JDK1.1.8.
 
3845
<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>2002/10/28<br/><ref>Modified: </ref> xml-xalan/java build.xml<br/><ref>Committer's log entry: </ref>
 
3846
Support compiling under JDK 1.2 - 1.4.  Also check for compatability with target JDK 1.1.x.
 
3847
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/10/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/domapi XPathNamespaceImpl.java XPathResultImpl.java<br/><ref>Committer's log entry: </ref>
 
3848
Somewhat rough implementation of XPathNamespace.
 
3849
<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>2002/10/29<br/><ref>Modified: </ref> xml-xalan/java/bin ant.jar<br/><ref>Committer's log entry: </ref>
 
3850
Upgrade to Ant 1.5.1.
 
3851
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/10/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltBase.java ExsltStrings.java xml-xalan/java/src/org/apache/xalan/lib/sql DefaultConnectionPool.java<br/><ref>Committer's log entry: </ref>
 
3852
Fix JDK 1.1.8 compatibility problems.
 
3853
Replace methods calls that are only in Java2 by JDK 1.1 equivalents.
 
3854
For DefaultConnectionPool.java, use reflection mechanism to invoke
 
3855
Thread.getContextClassLoader() instead of hard-coded invocation.
 
3856
<br/><br/></li></ul>
 
3857
</s2>
 
3858
<s2 title="Changes for &xslt4j; 2.4.0">
 
3859
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize SerializerToText.java<br/><ref>Committer's log entry: </ref>
 
3860
Bugzilla 8358 -- bad method signature. I've created a new method
 
3861
with the correct signature. The old one may or may not be entirely
 
3862
superfluous, but I don't want to muck with it right now.
 
3863
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources entities.ent xalan-jsite.xml<br/><ref>Committer's log entry: </ref>
 
3864
Updated Xalan version to 2.3.2 and Xerces to 2.0.1.
 
3865
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan xsltc_usage.xml<br/><ref>Committer's log entry: </ref>
 
3866
Added classpath information pertaining to xercesImpl.jar and xml-apis.jar.
 
3867
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources entities.ent<br/><ref>Committer's log entry: </ref>
 
3868
Added pointer to xml-apis.jar MANIFEST for version information.
 
3869
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan history.xml readme.xml xsltc_history.xml<br/><ref>Committer's log entry: </ref>
 
3870
Updates for next version (release notes to history)
 
3871
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan extensionslib.xml<br/><ref>Committer's log entry: </ref>
 
3872
Added info on Xalan implementation of EXSLT common, math,
 
3873
and set extensions, and ongoing work on the function and result
 
3874
elements and datetime extensions.
 
3875
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan index.xml<br/><ref>Committer's log entry: </ref>
 
3876
Added support for EXSLT extensions.
 
3877
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>
 
3878
Fix for Bugzilla entries
 
3879
        6833
 
3880
        7023
 
3881
        7123
 
3882
        7410
 
3883
 
 
3884
Basic summary of logic error: It is possible for multiple RTF DTMs
 
3885
to be pushed onto the stack between the start of a template and
 
3886
return from it. I hadn't anticipated that, so my pop logic was
 
3887
inadequate.
 
3888
 
 
3889
I'm still not 110% sure I understand the case where this situation
 
3890
arises... I have a general intuition that it makes sense, but also a
 
3891
suspicion that there might be a way to avoid creating one of these
 
3892
DTMs. We should review that someday.
 
3893
 
 
3894
Meanwhile, this fixes a whole batch of related bugs.
 
3895
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref ExpandedNameTable.java<br/><ref>Committer's log entry: </ref>
 
3896
Performance improvement. Instead of looping through the ExtendedType objects, use a hashtable and go directly to the correct object.
 
3897
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/05/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize Encodings.java Encodings.properties<br/><ref>Committer's log entry: </ref>
 
3898
Bugzilla 6356: Add support for "windows-1251" and use a properties file to store all the supported encodings. Patch from Sergey Ushakov.
 
3899
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/05/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref ExpandedNameTable.java<br/><ref>Committer's log entry: </ref>
 
3900
Add basic DOM nodetypes to our hashtable of extended type IDs
 
3901
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/05/12<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLMessages.java XSLTErrorResources.java XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/xslt Process.java xml-xalan/java/src/org/apache/xml/utils/res XResourceBundle.java XResourceBundleBase.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResourceBundle.java XPATHErrorResources_en.java XPATHErrorResources.java XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3902
Use PropertyResourceBundle instead of ListResourceBundle, and put error
 
3903
messages into property files, for easier localization.
 
3904
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/05/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes WalkerFactory.java<br/><ref>Committer's log entry: </ref>
 
3905
In mightBeProximate, there was a bug that assumed a variable would not be
 
3906
be a numeric result.  It is now fixed to assume a number may be a number, which
 
3907
may cause a small performance penalty.  In the future, it should be possible to
 
3908
chase this down a bit more to rule out more variables as non-numbers.
 
3909
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/05/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPath.java<br/><ref>Committer's log entry: </ref>
 
3910
Bugzilla 7157. Updated Javadoc comment to note that the XPath.installFunction() method currently does not
 
3911
use the name parameter.
 
3912
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/05/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler Compiler.java xml-xalan/java/src/org/apache/xpath/functions FuncLast.java FuncPosition.java Function.java<br/><ref>Committer's log entry: </ref>
 
3913
Bugzilla6284: New function added to position() and last() that will help us determine whether we are executing a top-level expression and therefore, not inside a predicate
 
3914
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/05/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLMessages.java XSLTErrorResources.java xml-xalan/java/src/org/apache/xalan/templates ElemTemplateElement.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java<br/><ref>Committer's log entry: </ref>
 
3915
Add a null constructor for resource files and fix XSLMessages to use the correct error resource file
 
3916
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/05/13<br/><ref>Modified: </ref> xml-xalan/java/src/META-INF/services org.apache.xml.dtm.DTMManager xml-xalan/java/src/org/apache/xml/dtm DTMManager.java<br/><ref>Committer's log entry: </ref>
 
3917
Add meta file for DTMManager factory and make sure it is read as UTF-8
 
3918
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/objects XNodeSetForDOM.java<br/><ref>Committer's log entry: </ref>
 
3919
m_last was not being set correctly. See comments.
 
3920
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/14<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemVariable.java<br/><ref>Committer's log entry: </ref>
 
3921
Bugzilla 7118: Variable set via RTF may have
 
3922
local variables within it; need to push a new
 
3923
context.
 
3924
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemTemplateElement.java<br/><ref>Committer's log entry: </ref>
 
3925
Missing safety net, mostly needed during stylesheet construction.
 
3926
 
 
3927
We really should change TransformerImpl to set parent _before_
 
3928
starting to setPropertiesFromAttributes, so the error conditions
 
3929
which might cause this test to be needed don't arise. Among other
 
3930
things, that would produce more useful diagnostic messages.
 
3931
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/05/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBaseTraversers.java<br/><ref>Committer's log entry: </ref>
 
3932
Bugzilla 8894: DescendantForRoot traversers needed to implement their own version of first(int, int) so that their context would be from the root.
 
3933
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/05/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes NodeSequence.java<br/><ref>Committer's log entry: </ref>
 
3934
Fix for NullPointerException in SQL extension stuff. Just check for a NULL iterator...
 
3935
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBaseIterators.java<br/><ref>Committer's log entry: </ref>
 
3936
Bugzilla 8324. This should have been checked into the main branch.
 
3937
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemTemplateElement.java<br/><ref>Committer's log entry: </ref>
 
3938
Dumb of me -- fixed one edge case and created another, because
 
3939
I forgot about subclassing Sigh. This version protects against both.
 
3940
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java DTMDefaultBaseIterators.java<br/><ref>Committer's log entry: </ref>
 
3941
Fix for new tests Variable71 and Variable72.
 
3942
 
 
3943
When we went to the shared RTF DTMs, we forgot to update
 
3944
PreceedingIterator to reflect the fact that the root of a DTM tree
 
3945
may no longer have 0 as its internal Node Identifier. This change
 
3946
corrects that situation, and does so without imposing a lot of
 
3947
computational overhead since we need to scan the ancestors
 
3948
anyway.
 
3949
 
 
3950
There appear to be similar hazards in some of the Traversers,
 
3951
still to be dealt with. Coming up with testcases which will provoke
 
3952
those bugs (and confirm that we've fixed them) is likely to be
 
3953
harder than writing the fix itself...
 
3954
<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>2002/05/17<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan xsltc_constraints.xml<br/><ref>Committer's log entry: </ref>
 
3955
section on problems was way out of date. Also incorporated material from JAXP 1.2 release notes
 
3956
<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>2002/05/17<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan xsltc_usage.xml<br/><ref>Committer's log entry: </ref>
 
3957
updated command option usuage. Some options have been added.
 
3958
<br/><br/></li><li><ref>Committed by </ref>santiagopg@apache.org<ref> on </ref>2002/05/17<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan xsltc_usage.xml<br/><ref>Committer's log entry: </ref>
 
3959
Updated first three sections.
 
3960
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemVariable.java<br/><ref>Committer's log entry: </ref>
 
3961
Bugzilla 7118 REVERT -- This fix was provoking bug 9195, which
 
3962
is more severe.
 
3963
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>
 
3964
Obvious mistake, apparently in a corner our regression tests missed.
 
3965
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/05/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2RTFDTM.java<br/><ref>Committer's log entry: </ref>
 
3966
Root node is not always 0 in an RTFDTM
 
3967
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/05/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLMessages.java XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/xslt Process.java xml-xalan/java/src/org/apache/xpath/functions FuncPosition.java<br/><ref>Committer's log entry: </ref>
 
3968
Fixed hard coded string for timing diagnostics.
 
3969
<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/serialize SerializerToXML.java<br/><ref>Committer's log entry: </ref>
 
3970
Prevent an external DTD from being inlined when using the built-in
 
3971
identity transform.
 
3972
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorFuncResult.java ProcessorFunction.java ProcessorOutputElem.java ProcessorResultDocument.java XSLTSchema.java<br/><ref>Committer's log entry: </ref>
 
3973
XSLT 2.0: stylesheet function, result-document, and
 
3974
principal-result-document.
 
3975
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/06/04<br/><ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/><ref>Committer's log entry: </ref>
 
3976
Xalan3 branch: Check in temporary version of Xerces. This predates
 
3977
the most recent changes to Xerces, and supports the older "light
 
3978
weight" PSVI APIs. Current Xerces has replaced those with a heavier
 
3979
version, but in the process lost the derivedFrom() method which
 
3980
we need; when they restore that functionality, we'll cut over.
 
3981
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/05<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltDatetime.java<br/><ref>Committer's log entry: </ref>
 
3982
Core EXSLT dates-and-times functions.
 
3983
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/06<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemVariable.java XUnresolvedVariable.java<br/><ref>Committer's log entry: </ref>
 
3984
Fix bug 7118.  In XUnresolvedVariable, treat the RTF variable much more like
 
3985
a template that has to count it's variables at compose-time, and link and unlink
 
3986
when the lazy variable is resolved.
 
3987
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib/sql DefaultConnectionPool.java xml-xalan/java/src/org/apache/xalan/processor TransformerFactoryImpl.java xml-xalan/java/src/org/apache/xalan/res XSLMessages.java XSLTErrorResources.java XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/templates RedundentExprEliminator.java xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBaseTraversers.java xml-xalan/java/src/org/apache/xml/utils ListingErrorHandler.java xml-xalan/java/src/org/apache/xml/utils/synthetic JavaUtils.java xml-xalan/java/src/org/apache/xpath VariableStack.java xml-xalan/java/src/org/apache/xpath/functions FuncConcat.java Function.java Function2Args.java Function3Args.java FunctionOneArg.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
3988
Integrated some removal of hard-coded error messages.
 
3989
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>
 
3990
Add resets for m_contextNodeLists, etc.  It might be possible that these are
 
3991
redundent with the same thing being done somewhere else, but given
 
3992
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6021 I suspect
 
3993
that this really does need to be done here.  It would explain any problems
 
3994
that might have been reported after an exception has been thrown, and
 
3995
the Transformer is being reused.
 
3996
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemApplyTemplates.java ElemTemplate.java xml-xalan/java/src/org/apache/xalan/transformer StackGuard.java TransformerImpl.java xml-xalan/java/src/org/apache/xml/utils URI.java<br/><ref>Committer's log entry: </ref>
 
3997
Add back a certain amount of StackGuard functionality.  Instead of checking
 
3998
counts where both the node and the xsl:template are the same... (we would
 
3999
really need also to check that parameters are the same), just check for recursion
 
4000
of templates.  We can make it fancier over time to also check for same params,
 
4001
but checking of the current node may be harder.  I was only able to set the
 
4002
recursion limit to about 475 before I would get stack overflow errors anyway.
 
4003
I also did some stuff where the error messages should be more consistent by
 
4004
making sure some of the arrays are reset in XPathContex, which may address
 
4005
some of the inconsistency problems that Christina reported.
 
4006
may address part of the problem that Christina was having.
 
4007
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/transformer StackGuard.java<br/><ref>Committer's log entry: </ref>
 
4008
Moved hard coded strings for StackGuard error message to properties file.
 
4009
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
4010
Fix bug for optionV.
 
4011
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExpressionContext.java ExpressionVisitor.java ExtensionHandlerExsltFunction.java ExtensionNamespacesManager.java ExtensionNamespaceSupport.java ExtensionsTable.java xml-xalan/java/src/org/apache/xalan/processor ProcessorExsltFuncResult.java ProcessorExsltFunction.java StylesheetHandler.java XSLTSchema.java xml-xalan/java/src/org/apache/xalan/templates Constants.java ElemExsltFuncResult.java ElemExsltFunction.java ElemExtensionCall.java ElemExtensionDecl.java StylesheetRoot.java xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java xml-xalan/java/src/org/apache/xpath ExtensionsProvider.java XPathContext.java xml-xalan/java/src/org/apache/xpath/functions FuncExtElementAvailable.java FuncExtFunction.java FuncExtFunctionAvailable.java<br/><ref>Committer's log entry: </ref>
 
4012
Updates to Xalan extensions: (1) EXLST function and (2) architectural modifications.
 
4013
This is a merge of the ExtensionEnhancements branch into Main.
 
4014
 
 
4015
1. EXSLT function
 
4016
We are well underway in our progress towards providing support for EXSLT extension functionss and elements. The EXSLT function and result elements (see http://www.exslt.org/func/func.html) require some fairly substantial additions.
 
4017
XSLTSchema includes new XSLTElementDefs for a top-level exslt:function element, which, along with other items, may contain an exslt:result element. These definitions specify a new element class and processor for both of these elements, and a new extension handler. I have tested the implementation with the 6 test cases that EXSLT provides (including recursive calls), and it passes these tests.
 
4018
Note: These additions/updates also provide the infrastructure for the XSLT 2.0 stylesheet function.
 
4019
2. Architectural changes
 
4020
During styesheet composition, Stylesheet Root assembles a vector of ExtensionNamespaceSupport objects. This object contains the information required during a transform to instantiate the required ExtensionHandler. If the stylesheet includes no extensions, this vector is null.  I.e.,  it does not include handlers for the default extension namespaces (of which there are currently 7, and which the Xalan currently loads for each transformation).
 
4021
The presence of an extension is detected as follows:
 
4022
Compilation of an expression that contains a FuncExtFunction. StylesheetHandler.createXPath()  uses an XPathVisitor to locate any FuncExtFunctions embedded in the expression.
 
4023
Final composition of a component element  -- ElemExtensionDecl.compose().
 
4024
Final composition of an extension component for which no component exsits -- ElemExtensionCall.compose().
 
4025
Final composition of an exslt:function element -- ElemFunction.compose().
 
4026
During StylesheetRoot.recompose(), any extension namespaces that are not predefined and for which no component or function element exists, are defined as java class (if a java class is found) or java package. In the current implementation, this last stab is made during the transformation, repeatedly if the element or function cannot be processed and is called more than once.
 
4027
At the beginning of each transformation -- transformNode() --  if any extensions exist, TransformerImpl instantiates an ExtensionsTable with a hashtable containing an ExtensionHandler for each of the ExtensionNamespaceSupport objects defined during stylesheet assembly. XPathContext  no longer creates or has any direct knowledge of the ExtensionsTable. The ExtensionsTable does not contain handlers for predefined namespaces that are not being used.
 
4028
TransformerImpl implements the org.apache.xpath.ExtensionsProvider interface. The relevant XPath functions (FuncExtFunction, FuncExtElememntAvailable, and FuncExtFunctionAvailable) call this interface, via XPathContext.getOwnerObject(). The implementation contains 3 methods that call through to the ExtensionsTable, which passes the call on to the appropriate ExtensionHandler..
 
4029
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize Encodings.java<br/><ref>Committer's log entry: </ref>
 
4030
Use ContextClassLoader - Use full Encoding file package name - Merge new patch from Sergey Ushakov
 
4031
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates FuncDocument.java FuncFormatNumb.java xml-xalan/java/src/org/apache/xpath/functions FuncConcat.java FuncExtFunction.java FuncSubstring.java Function.java Function2Args.java Function3Args.java FunctionDef1Arg.java FunctionMultiArgs.java FunctionOneArg.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
4032
Patch submitted by Henry_Zongaro@us.ibm.com:
 
4033
 
 
4034
To summarize what I did, the Function class and its subclasses have two
 
4035
methods that check the number of arguments:  setArg and
 
4036
checkNumberArgs.  The former checks whether too many arguments are
 
4037
specified, and the latter checks for too few (or too many, redundantly).
 
4038
 
 
4039
In the case where there are optional arguments (as in substring), the class
 
4040
for the function (FuncSubstring, in this case) derives from a class that has a
 
4041
fixed number of arguments (Func3Arguments, in this case).  If too few
 
4042
arguments are specified, the FuncSubstring.checkNumberArgs method
 
4043
reports that the function only allows 2 or 3 arguments; if too many arguments
 
4044
are specified, the Function3Arguments.setArg method reports that the
 
4045
function only allows 3 arguments.
 
4046
 
 
4047
To fix the problem, I added reportWrongNumberArgs() methods to the
 
4048
Function class and to its subclasses, as appropriate, and I added code to
 
4049
call that from checkNumberArgs and setArg - that way, the correct number
 
4050
of arguments is always reported in the error messages.
 
4051
 
 
4052
Alternatively, I could have changed the setArg method in all the classes that
 
4053
have optional arguments to report correctly the number of arguments, but I
 
4054
didn't like the idea of having it redundantly perform the same check that the
 
4055
setArg method of its base class was going to perform just to get a better
 
4056
message out.  A third possibility would be to have setArg call the
 
4057
checkNumberArgs method when it detects too many arguments are
 
4058
specified; that would guarantee that setArg would report the same message,
 
4059
and avoid introducing a new method, as long as checkNumberArgs always
 
4060
checks for both too few and for too many arguments.  A fourth possibility
 
4061
would be to report two different errors:  the minimum number of arguments
 
4062
required in checkNumberArgs and the maximum permitted in setArg.
 
4063
 
 
4064
I also noticed that the message produced for FuncSubstring when too few
 
4065
arguments are specified actually indicates that 0 or 1 arguments are required,
 
4066
 so I fixed the XPATHErrorResources.properties file.
 
4067
 
 
4068
I don't see the NPE that Dave Marston mentions in Bugzilla, so I assume
 
4069
that's been fixed.
 
4070
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor StylesheetHandler.java xml-xalan/java/src/org/apache/xalan/templates ElemNumber.java ElemTemplateElement.java xml-xalan/java/src/org/apache/xml/utils PrefixResolver.java PrefixResolverDefault.java xml-xalan/java/src/org/apache/xpath/compiler Lexer.java<br/><ref>Committer's log entry: </ref>
 
4071
Patch submitted by Ilene_Seelemann@us.ibm.com for Bug 6798:
 
4072
 
 
4073
Added a method (handlesNullPrefixes) to the PrefixResolver interface so
 
4074
that the resolver can indicate whether it supports null prefixes.  Then, in the
 
4075
tokenizer, if the prefix is null, and the resolver supports that, it continues
 
4076
processing as if the prefix had a value.  In Lexer.java, methods that have
 
4077
changed are: tokenize, mapNSTokens.
 
4078
 
 
4079
In ElemNumber#getCountMatchPattern, pass MyPrefixResolver instance to default
 
4080
psuedo match patterns.
 
4081
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan history.xml readme.xml xsltc_constraints.xml xsltc_history.xml<br/><ref>Committer's log entry: </ref>
 
4082
Moved 2.3.2 core and xsltc updates into the history files.
 
4083
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/bin xercesImpl.jar<br/><ref>Committer's log entry: </ref>
 
4084
xercesImpl.jar from Xerces-J-bin.2.0.1.zip (for upcoming Xalan-J 2.4.D1)
 
4085
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/src MANIFEST.MF<br/><ref>Committer's log entry: </ref>
 
4086
Update xerces.jar to be xercesImpl.jar; this should have been
 
4087
done quite a while ago.  Note the Class-Path: entry needs review
 
4088
in general at some point.
 
4089
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan builds.xml<br/><ref>Committer's log entry: </ref>
 
4090
Brief documentation about developer standards and official build processes
 
4091
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources xalan-jlocal.xml<br/><ref>Committer's log entry: </ref>
 
4092
Add builds.xml; perhaps should also be added to xalan-jsite.xml as well
 
4093
<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>2002/06/11<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemNumber.java xml-xalan/java/src/org/apache/xpath/compiler Lexer.java<br/><ref>Committer's log entry: </ref>
 
4094
From Ilene Seelemann:
 
4095
Added the following in blue to line 395 of Lexer.java
 
4096
 
 
4097
     if ((-1 != posOfNSSep) ||
 
4098
         ((m_namespaceContext != null) &amp;&amp; (m_namespaceContext.handlesNullPrefixes())))
 
4099
 
 
4100
I'm also including ElemNumber.java which really doesn't need to
 
4101
explicitly state that it implements PrefixResolver.
 
4102
Without these updates everything does run fine.
 
4103
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan readme.xml xsltc_constraints.xml<br/><ref>Committer's log entry: </ref>
 
4104
updates for developer's release.
 
4105
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources entities.ent xalan-jsite.xml xml-xalan/java/xdocs/sources/xalan history.xml index.xml readme.xml resources.xml xml-xalan/java KEYS<br/><ref>Committer's log entry: </ref>
 
4106
Patches for developer's release from Sarah McNamara.
 
4107
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>
 
4108
Updated version # for developer's release.
 
4109
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>
 
4110
Update .jar file sizes for 2.4.D1 release
 
4111
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan resources.xml<br/><ref>Committer's log entry: </ref>
 
4112
Remove extraneous slash char on path
 
4113
Submitted by: mcnamara@ca.ibm.com
 
4114
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>
 
4115
Fix Bugzilla #9137; don't toLowerCase() the filename (not really needed anymore);
 
4116
remove line for xalan.jar for 2_4_D1 because .jar build size is not determinate
 
4117
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/13<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan extensionslib.xml<br/><ref>Committer's log entry: </ref>
 
4118
Add pointers to info on new EXSLT extensions.
 
4119
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionNamespacesManager.java<br/><ref>Committer's log entry: </ref>
 
4120
Changed Vector.get(int) to Vector.elementAt(int) to maintain
 
4121
compability with Java 1.1.8.
 
4122
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/17<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltDatetime.java<br/><ref>Committer's log entry: </ref>
 
4123
Modified leap-year functions to use arithmetic logic rather than relying
 
4124
on a Calendar method that doesn't exist in Java 1.1.8.
 
4125
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes RTFIterator.java xml-xalan/java/src/org/apache/xpath/objects XRTreeFrag.java<br/><ref>Committer's log entry: </ref>
 
4126
Added RTFIterator (extends OneStepIteratorForward);
 
4127
created fromRTFFragment so EXSLT object-type function
 
4128
can identify an RTF with certainty.
 
4129
<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>2002/06/18<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltCommon.java<br/><ref>Committer's log entry: </ref>
 
4130
Removed duplicate implementation of several EXSLT "Set"
 
4131
functions.
 
4132
<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>2002/06/21<br/><ref>Modified: </ref> xml-xalan/java/bin jtidy.LICENSE.txt jtidy.README.txt Tidy.jar<br/><ref>Committer's log entry: </ref>
 
4133
adding Jtidy for use with test harness to parse html
 
4134
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils Hashtree2Node.java<br/><ref>Committer's log entry: </ref>
 
4135
Simplistic static utility to convert a Hashtable of items (either
 
4136
Hashtables or anything else cast to (String)) into an Element tree
 
4137
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib Extensions.java<br/><ref>Committer's log entry: </ref>
 
4138
Update checkEnvironment to attempt to call org.apache.env.Which first
 
4139
by using reflection; Which provides better output data than
 
4140
EnvironmentCheck.  If reflection doesn't work, then we
 
4141
fallback to EnvironmentCheck as before.
 
4142
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/21<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan faq.xml<br/><ref>Committer's log entry: </ref>
 
4143
Add doc about calling checkEnvironment as a stylesheet extension
 
4144
<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>2002/06/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize SerializerToXML.java<br/><ref>Committer's log entry: </ref>
 
4145
bug fix for bugzilla 9572, fix by Pavani.Mukthipudi@sun.com
 
4146
<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>2002/06/26<br/><ref>Modified: </ref> xml-xalan/java build.xml<br/><ref>Committer's log entry: </ref>
 
4147
Update docs.class.path to include XSLTC-dependent jars
 
4148
Submitted by:   Henri Gomez hgomez@slib.fr
 
4149
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/06/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
4150
Add error resources pulled out from code
 
4151
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/06/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java XSLTErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
4152
Add error resources pulled out from code
 
4153
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/06/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler Compiler.java OpMap.java<br/><ref>Committer's log entry: </ref>
 
4154
Pull out hard coded messages
 
4155
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/06/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/compiler XPathParser.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
4156
Bugzilla 5016: Patch from Henry Zongaro... Fix XPATHParser.java to prevent matching empty RelativeLocationPath and Step expressions, prevent a LocationPath from preceding a Predicate in a FilterExpr, check for valid NameTest in NodeTest()
 
4157
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/06/28<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
4158
Fix typo.
 
4159
<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>2002/06/29<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan xsltc_constraints.xml<br/><ref>Committer's log entry: </ref>
 
4160
fix typo in SmartTransormerFactoryImpl pointed out by Tobias McNulty
 
4161
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/07/01<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemNumber.java<br/><ref>Committer's log entry: </ref>
 
4162
Bug6268. Patch from Ilene Seelemann. Fix Grouping separator. If no grouping separator is specified but a gouping size is, number is not formatted. If grouping separator is "", warning is issued and number is not formatted. If grouping separator is more than one character, warning is issued and number is not formatted.
 
4163
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/07/08<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor StylesheetHandler.java XSLTAttributeDef.java xml-xalan/java/src/org/apache/xml/utils DefaultErrorHandler.java<br/><ref>Committer's log entry: </ref>
 
4164
resource error messages
 
4165
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/07/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTAttributeDef.java XSLTElementProcessor.java XSLTSchema.java xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/templates AVT.java Constants.java ElemAttribute.java ElemElement.java ElemNumber.java ElemPI.java xml-xalan/java/src/org/apache/xml/utils QName.java StringToIntTable.java xml-xalan/java/src/org/apache/xpath/res XPATHErrorResources.java XPATHErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
4166
Bugzilla 5013: Validation of QName attribute values. The patch will also fix the missing validation described in bugs 792 and 793
 
4167
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/07/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils XMLChar.java<br/><ref>Committer's log entry: </ref>
 
4168
Bugzilla 5013: Validation of QName attribute values. The patch will also fix the missing validation described in bugs 792 and 793
 
4169
<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>2002/07/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBaseIterators.java<br/><ref>Committer's log entry: </ref>
 
4170
bugzilla 9575: Fix AncestorIterator counting root node twice. Patch from Henry Zongaro.
 
4171
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/07/10<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils DOMBuilder.java<br/><ref>Committer's log entry: </ref>
 
4172
&lt;Blush&gt;
 
4173
 
 
4174
This was still trying to switch between setAttribute() and
 
4175
setAttributeNS(). Correct usage of DOM Level 2 would be to
 
4176
always use setAttributeNS(), and simply set a null URI when the
 
4177
node is not namespaced. (Basically, the L1 versions of
 
4178
createElement, createAttribute, setAttribute and setAttributeNode
 
4179
should be considered deprecated with the sole exception of
 
4180
manipulating a DOM intended to be viewed *only* as Level 1.)
 
4181
 
 
4182
I could swear we fixed this a VERY long time ago...
 
4183
Good catch, thanks for calling it to our attention.
 
4184
 
 
4185
&lt;/Blush&gt;
 
4186
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>
 
4187
Morris Kwan's patch for bugzilla#10306
 
4188
 
 
4189
The problem is that the namespace declaration is not added to the attributes if there are other leading attributes. There is a check for whether the namespace
 
4190
 has already been added. That check is commented out because multiple namespace declarations can exist in one element.
 
4191
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/22<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates RedundentExprEliminator.java<br/><ref>Committer's log entry: </ref>
 
4192
Applied patch from Morris Kwan for bugzilla #9753.
 
4193
 
 
4194
The bug addresses the problem that there is a build error with Xalan under JDK 1.4, because one of the classes uses assert() as method name.
 
4195
 And assert is a keyword in JDK 1.4. The patch just changes the word "assert" to "assertion".
 
4196
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTSchema.java xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java XSLTErrorResources.properties xml-xalan/java/src/org/apache/xalan/templates ElemPI.java xml-xalan/java/src/org/apache/xml/utils QName.java<br/><ref>Committer's log entry: </ref>
 
4197
Remaining updates for Bugzilla#5013.  
 
4198
 
 
4199
Some attributes that should have been handled as errors were getting
 
4200
handled as warnings.
 
4201
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/24<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemApplyTemplates.java ElemForEach.java<br/><ref>Committer's log entry: </ref>
 
4202
Check that recursionLimit is not negative before calling checkForInfinateLoop.
 
4203
<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>2002/07/25<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan xsltc_constraints.xml<br/><ref>Committer's log entry: </ref>
 
4204
fix typo, java for Java in doc on xsltc and external java functions
 
4205
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/25<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/serialize Encodings.java<br/><ref>Committer's log entry: </ref>
 
4206
Applying patch for bug#10839.
 
4207
 
 
4208
Try/catch block needed around System.getProperty call.
 
4209
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/26<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor XSLTAttributeDef.java XSLTSchema.java<br/><ref>Committer's log entry: </ref>
 
4210
Applying Paul Brown's patch for bug#6972.
 
4211
 
 
4212
xsl:output cdata-section-elements attribute was not handled correctly.
 
4213
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/07/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes SingletonIterator.java<br/><ref>Committer's log entry: </ref>
 
4214
file SingletonIterator.java was initially added on branch XSLTC_DTM.
 
4215
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/lib ExsltCommon.java ExsltMath.java ExsltSets.java Extensions.java<br/><ref>Committer's log entry: </ref>
 
4216
Committed patch for bugzilla#10323 (incorrect Javadoc 
 
4217
in the extension code.)
 
4218
Submitted by Morris Kwan (mkwan@ca.ibm.com)
 
4219
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerJavaClass.java xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.properties<br/><ref>Committer's log entry: </ref>
 
4220
Committed patch for bugzilla#10914
 
4221
( Need better error message for redirect select errors)
 
4222
Submitted by Morris Kwan (mkwan@ca.ibm.com)
 
4223
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/07/29<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils TreeWalker.java<br/><ref>Committer's log entry: </ref>
 
4224
Patch for bugzilla #9146
 
4225
 
 
4226
NullPointerException when attempting to build a stylesheet from 
 
4227
a DOM Element instead of a Document node.
 
4228
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/07/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/utils SystemIDResolver.java<br/><ref>Committer's log entry: </ref>
 
4229
Applying patches for Morris Kwan for bug 10519.  Changed condition in absoluteURI method to handle the case where the URI is the root of a file system - e.g., / or c:\
 
4230
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/07/30<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/processor ProcessorInclude.java<br/><ref>Committer's log entry: </ref>
 
4231
Applying patches for Morris Kwan for bug 10519.  In parse method, if SystemId of the returned DOMSource object is null, systemID is resolved using href.
 
4232
<br/><br/></li><li><ref>Committed by </ref>amiro@apache.org<ref> on </ref>2002/08/02<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan xsltc_constraints.xml<br/><ref>Committer's log entry: </ref>
 
4233
changed verbage to agree with new support of constructors and nonstatic external java functions
 
4234
<br/><br/></li><li><ref>Committed by </ref>zongaro@apache.org<ref> on </ref>2002/08/07<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/objects XRTreeFrag.java<br/><ref>Committer's log entry: </ref>
 
4235
Applying patch for Bug 9683 for Morris Kwan.  If XRTreeFrag is constructed
 
4236
without respect to an XPathContext, the object() method should defer to the
 
4237
parent class's object() method to convert the fragment to the appropriate
 
4238
representation.
 
4239
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/09<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates ElemValueOf.java<br/><ref>Committer's log entry: </ref>
 
4240
Patch for bugzilla #6071.  Specifically, this patch allows line numbers to 
 
4241
be reported when errors are discovered at runtime in a value-of attribute.
 
4242
(See idkeyerr10.)
 
4243
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/08/14<br/><ref>Modified: </ref> xml-xalan/java/src MANIFEST.MF<br/><ref>Committer's log entry: </ref>
 
4244
For Bug#6547. Remove reference to old jar files.
 
4245
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/15<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/templates FuncKey.java xml-xalan/java/src/org/apache/xalan/transformer KeyTable.java<br/><ref>Committer's log entry: </ref>
 
4246
Patch for bug: "The key() function throws an exception when called in the context of a 
 
4247
local variable." reported on xalan-dev.
 
4248
 
 
4249
Modified FuncKey.execute to use getDocumentRoot instead of getDocument.
 
4250
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/08/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xpath/axes BasicTestIterator.java<br/><ref>Committer's log entry: </ref>
 
4251
For Bug#11123. Fix infinite loop in union expression.
 
4252
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/08/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/extensions ExtensionHandlerJavaClass.java<br/><ref>Committer's log entry: </ref>
 
4253
For bug#7776. Fix argument passing problem for Java extension.
 
4254
<br/><br/></li><li><ref>Committed by </ref>mkwan@apache.org<ref> on </ref>2002/08/16<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/trace PrintTraceListener.java<br/><ref>Committer's log entry: </ref>
 
4255
See bug#10945. Test if a node is a DTMNodeProxy before casting.
 
4256
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/19<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBaseTraversers.java<br/><ref>Committer's log entry: </ref>
 
4257
Patch for bugzilla#11834.  Replaced calls to DTM.getDocument with get 
 
4258
DTM.getDocumentRoot.
 
4259
<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>2002/08/21<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/transformer ClonerToResultTree.java<br/><ref>Committer's log entry: </ref>
 
4260
James Riordan's bug -- Attributes on elements returned from
 
4261
extensions were not being processed successfully. Turns out
 
4262
our copying logic had a minor sequencing error.
 
4263
 
 
4264
I don't see anything similar listed in Bugzilla.
 
4265
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java/bin xml-apis.jar<br/><ref>Committer's log entry: </ref>
 
4266
Replacing xml-apis.jar with the version from the RIVERCOURT1 branch 
 
4267
of xml-commons.   The xml-commons-1.0.b2 version does not pass
 
4268
the TCK 1.1 or the TCK 1.2.
 
4269
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan builds.xml<br/><ref>Committer's log entry: </ref>
 
4270
Small updates to the build documentation.
 
4271
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>
 
4272
Updating version numbers to 2.4.0 for new release.
 
4273
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java build.xml xml-xalan/java/src/org/apache/xalan/processor XSLProcessorVersion.java xml-xalan/java/xdocs/sources entities.ent xalan-jsite.xml<br/><ref>Committer's log entry: </ref>
 
4274
Updating version numbers to 2.4.0 for new release.
 
4275
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java commits.xml<br/><ref>Committer's log entry: </ref>
 
4276
New commits.xml for upcoming Xalan 2.4.0 release.
 
4277
<br/><br/></li><li><ref>Committed by </ref>ilene@apache.org<ref> on </ref>2002/08/27<br/><ref>Modified: </ref> xml-xalan/java/xdocs/sources/xalan history.xml xsltc_history.xml<br/><ref>Committer's log entry: </ref>
 
4278
New history.xml, xsltc_history.xml for upcoming Xalan 2.4.0 release.
 
4279
<br/><br/></li></ul>
 
4280
</s2>
 
4281
<s2 title="Changes for &xslt4j; 2.3.1">
 
4282
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Make synchronized to address potential reentrancy issue in
 
4283
 XRTreeFrag.finalize(), as discussed in the Javadoc. This may
 
4284
 solve several outstanding bug reports regarding reuse of
 
4285
 Transformers and cache suppression in for-each.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>Well, _that_ was dumb... Forgot one "don't dereference if null" test.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XRTreeFrag.java<br/><ref>Committer's log entry: </ref>Just comment<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToXML.java<br/><ref>Committer's log entry: </ref>We weren't handling the case where no default-value handling was specified.
 
4286
 This didn't generally bother us because XSLT never produces an element
 
4287
 declaration as output... but it did affect TransformerIdentityImpl when the
 
4288
 source document had an internal subset.
 
4289
 
 
4290
 See xalan-j-users archives, under subject
 
4291
 "Differences between explicit and implicit parsing for docs with DTDs?"<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor StylesheetHandler.java
 
4292
 java/src/org/apache/xalan/templates ElemVariable.java
 
4293
 java/src/org/apache/xalan/transformer TransformerImpl.java
 
4294
 java/src/org/apache/xml/dtm/ref DTMManagerDefault.java
 
4295
 java/src/org/apache/xpath VariableStack.java
 
4296
 XPathContext.java<br/><ref>Committer's log entry: </ref>Variable64-66 and a number of variable-related Bugzilla reports: Global
 
4297
 variables may have their resolution deferred. This was causing their
 
4298
 content to be placed on the normal variable stack, where it could be
 
4299
 popped off (arggh) and later overwritten (double arggh). This change
 
4300
 gives them an independent storage space which is not subject to
 
4301
 those risks.
 
4302
 
 
4303
 While I was at it, I've also made the VariableStack class a trifle more
 
4304
 self-documenting by giving some of the fields more meaningful names.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils IntStack.java<br/><ref>Committer's log entry: </ref>Bugzilla 6854: Return the stack exception, as documented.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/12/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>Bugzilla 6156 reopened: Same symptom, different disease -- rather than
 
4305
 a late finalizer, we simply forgot to reset one field between invocations.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/19/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref TestDTM.java<br/><ref>Committer's log entry: </ref>Replace old version, which was specific to particular implentations of
 
4306
 DTM, with one which is specific only to DTMManagerDefault and which
 
4307
 can be generalized more easily to conduct other tests.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/19/2002<br/><ref>Removed: </ref>java/src/org/apache/xml/dtm/ref TestDTMNodes.java<br/><ref>Committer's log entry: </ref>No longer in service.
 
4308
 
 
4309
 This supported the old version of TestDTM. New version has
 
4310
 a node-dumper as an internal subroutine. (If we're going to do
 
4311
 a display method for other debugging purposes, it should be
 
4312
 both applicable to all DTMs and -- probably -- built into the
 
4313
 DTM system.)<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/20/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref TestDTM.java<br/><ref>Committer's log entry: </ref>Add Apache header, remove import of discarded TestDTMNode.
 
4314
 At some point, we should consider moving this class to the tests
 
4315
 directory.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/21/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToXML.java<br/><ref>Committer's log entry: </ref>Properly catch exception from CharInfo constructor, and try again.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/21/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SystemIDResolver.java<br/><ref>Committer's log entry: </ref>Put extra check for getAbsoluteURI(String urlString, String base) for absolute
 
4316
 file paths with no protocol... I think one of the last check-in's wiped this 
 
4317
out.
 
4318
 So now, if the path is the form of "x:/x" or "/x" then "file:///" is added to 
 
4319
it.
 
4320
 I don't see how this can screw anything up... but I'm sure it will.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/21/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>Merge from redundent expression elemination branch.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/21/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan Version.java
 
4321
 java/src/org/apache/xalan/lib/sql DTMDocument.java
 
4322
 java/src/org/apache/xalan/processor ProcessorKey.java
 
4323
 ProcessorPreserveSpace.java
 
4324
 ProcessorStripSpace.java StylesheetHandler.java
 
4325
 XSLTAttributeDef.java XSLTElementProcessor.java
 
4326
 java/src/org/apache/xalan/templates AVT.java AVTPart.java
 
4327
 AVTPartSimple.java AVTPartXPath.java
 
4328
 ElemApplyTemplates.java ElemAttribute.java
 
4329
 ElemCallTemplate.java ElemChoose.java
 
4330
 ElemCopyOf.java ElemElement.java
 
4331
 ElemExtensionCall.java ElemForEach.java ElemIf.java
 
4332
 ElemLiteralResult.java ElemNumber.java
 
4333
 ElemTemplateElement.java ElemValueOf.java
 
4334
 ElemVariable.java ElemWhen.java ElemWithParam.java
 
4335
 FuncDocument.java FuncKey.java Stylesheet.java
 
4336
 WhiteSpaceInfo.java
 
4337
 java/src/org/apache/xalan/trace TraceManager.java
 
4338
 java/src/org/apache/xalan/transformer KeyIterator.java
 
4339
 KeyManager.java KeyRefIterator.java KeyTable.java
 
4340
 NodeSorter.java ResultTreeHandler.java
 
4341
 TransformerHandlerImpl.java
 
4342
 java/src/org/apache/xml/utils NodeVector.java
 
4343
 java/src/org/apache/xpath Expression.java VariableStack.java
 
4344
 XPath.java
 
4345
 java/src/org/apache/xpath/axes AttributeIterator.java
 
4346
 AxesWalker.java ChildIterator.java
 
4347
 ChildTestIterator.java DescendantIterator.java
 
4348
 FilterExprWalker.java IteratorPool.java
 
4349
 LocPathIterator.java MatchPatternIterator.java
 
4350
 OneStepIterator.java OneStepIteratorForward.java
 
4351
 PredicatedNodeTest.java ReverseAxesWalker.java
 
4352
 SelfIteratorNoPredicate.java UnionPathIterator.java
 
4353
 WalkerFactory.java WalkingIterator.java
 
4354
 WalkingIteratorSorted.java
 
4355
 java/src/org/apache/xpath/compiler Compiler.java
 
4356
 java/src/org/apache/xpath/functions FuncBoolean.java
 
4357
 FuncCount.java FuncExtFunction.java Function.java
 
4358
 Function2Args.java Function3Args.java
 
4359
 FunctionMultiArgs.java FunctionOneArg.java
 
4360
 java/src/org/apache/xpath/objects XBoolean.java
 
4361
 XNodeSet.java XNodeSetForDOM.java XNumber.java
 
4362
 XObject.java XRTreeFrag.java
 
4363
 XRTreeFragSelectWrapper.java XString.java
 
4364
 XStringForFSB.java
 
4365
 java/src/org/apache/xpath/operations Bool.java Equals.java
 
4366
 Operation.java UnaryOperation.java Variable.java
 
4367
 java/src/org/apache/xpath/patterns FunctionPattern.java
 
4368
 NodeTest.java StepPattern.java UnionPattern.java<br/><ref>Added: </ref>java/src/org/apache/xalan/processor WhitespaceInfoPaths.java
 
4369
 java/src/org/apache/xalan/templates AbsPathChecker.java
 
4370
 ElemVariablePsuedo.java
 
4371
 RedundentExprEliminator.java VarNameCollector.java
 
4372
 XSLTVisitable.java XSLTVisitor.java
 
4373
 XUnresolvedVariableSimple.java
 
4374
 java/src/org/apache/xpath ExpressionNode.java
 
4375
 ExpressionOwner.java XPathVisitable.java
 
4376
 XPathVisitor.java
 
4377
 java/src/org/apache/xpath/axes BasicTestIterator.java
 
4378
 FilterExprIterator.java
 
4379
 FilterExprIteratorSimple.java
 
4380
 HasPositionalPredChecker.java NodeSequence.java
 
4381
 PathComponent.java UnionChildIterator.java
 
4382
 java/src/org/apache/xpath/operations VariableSafeAbsRef.java<br/><ref>Removed: </ref>java/src/org/apache/xalan/transformer KeyWalker.java<br/><ref>Committer's log entry: </ref>Redundent Expression Elimination branch merge.
 
4383
 
 
4384
 Major architectural changes
 
4385
 1) Rip out cacheing in all iterators, and move the caching into XNodeSet 
 
4386
(actually NodeSequence where the caching is done derives from XObject and 
 
4387
XNodeSet derives from NodeSequence).Lots of other changes went into this, 
 
4388
including rewriting of some of the xsl:key stuff.
 
4389
 
 
4390
 2) Implementation of a Visitor mechanism for the stylesheet and xpath 
 
4391
components.Each component for an XPath event is passed an ExpressionOwner, 
 
4392
which just has a getExpression and setExpression method, which allows us to 
 
4393
create a list of these, and then be able to do rewrites.This should be a 
 
4394
generally useful mechanism for all sorts of stuff, and should be considered a 
 
4395
public API.
 
4396
 
 
4397
 3) Implementation of deepEquality methods for all XPath components, which 
 
4398
allows us to see if two components are equal.
 
4399
 
 
4400
 4) Implementation of RedundentExprEliminator, which is a derivative from the 
 
4401
new XSLTVisitor class, which runs over the stylesheet collecting xpaths within 
 
4402
the same scope, and absolute xpaths that are not context dependent.These are 
 
4403
then each reduced by walking the list and checking for deep equality (though 
 
4404
global paths are always reduced).Reduction takes place by creating variables 
 
4405
that have a special namespace and a non-legal local name.Both full and partial 
 
4406
path reduction done.
 
4407
 
 
4408
 Not done yet: Add back in the xsl:key caching that I ripped out (not a big 
 
4409
deal).Could be skipped, with some risk.
 
4410
 
 
4411
 Not done yet: Implement isLast function.With the new stuff, the last() 
 
4412
function will be slower, so, since most cases are just checking to see if an 
 
4413
item is the last, I want to rewrite foo[last()] patterns to 
 
4414
foo[xalan:isLast()].Could be skipped, with some risk.
 
4415
 
 
4416
 Davanum performance test result: 4x increase in performance.
 
4417
 
 
4418
 Datapower performance suite results: very slight decrease in overall 
 
4419
performance.:-(
 
4420
 
 
4421
 Smoke test results: All clear when run with Xerces 1.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>03/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath DOMHelper.java<br/><ref>Committer's log entry: </ref>The Node identity test in isNodeAfter()
 
4422
 (ie., node1 == node2) does not work in some cases,
 
4423
 so I added a routine to use DTMNodeProxy equals()
 
4424
 if that test fails.
 
4425
 This was required to support the new EXSLT
 
4426
 leading() and trailing() extension functions.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>03/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions ExtensionsTable.java
 
4427
 MethodResolver.java<br/><ref>Committer's log entry: </ref>1. Registered the EXSLT 'common', 'sets', and 'math'
 
4428
 namespaces ExtensionsTable.
 
4429
 
 
4430
 2. To handle extension functions (e.g., some EXSLT
 
4431
 functions) that include a dash in their name, added
 
4432
 a routine in MethodResolver that maps abc_xyz to
 
4433
 abcXyz.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>03/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib package.html<br/><ref>Added: </ref>java/src/org/apache/xalan/lib ExsltCommon.java
 
4434
 ExsltMath.java ExsltSets.java<br/><ref>Committer's log entry: </ref>Preliminary set of EXSLT extension implementations.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>03/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib ExsltCommon.java
 
4435
 ExsltMath.java ExsltSets.java Extensions.java<br/><ref>Committer's log entry: </ref>Added Apache license.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/23/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemApplyImport.java
 
4436
 ElemApplyTemplates.java ElemAttribute.java
 
4437
 ElemCallTemplate.java ElemChoose.java
 
4438
 ElemComment.java ElemCopy.java ElemCopyOf.java
 
4439
 ElemFallback.java ElemForEach.java ElemIf.java
 
4440
 ElemMessage.java ElemNumber.java ElemPI.java
 
4441
 ElemParam.java ElemTemplate.java
 
4442
 ElemTextLiteral.java ElemUse.java ElemValueOf.java
 
4443
 ElemVariable.java
 
4444
 java/src/org/apache/xalan/trace TraceListenerEx.java
 
4445
 TraceManager.java
 
4446
 java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Added: </ref>java/src/org/apache/xalan/trace TraceListenerEx2.java<br/><ref>Committer's log entry: </ref>Implemented TraceListenerEx2, which extends TraceListenerEx to add
 
4447
 the traceEnd event.
 
4448
 
 
4449
 Modified all existing templates that call fireTraceEvent to also call
 
4450
 fireTraceEndEvent at the appropriate time.
 
4451
 
 
4452
 Note that there was a bad incompatibility between xsl:for-each and
 
4453
 xsl:if, which was called whether the test was successful or not.
 
4454
 With the current logic of xsl:for-each,
 
4455
 if the node-set is empty trace will not be called at all.
 
4456
 So I've changed xsl:if to match the xsl:for-each behavior.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/24/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>Set the DEVELOPMENT number to 1, in prep for a developer's release.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/24/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemForEach.java<br/><ref>Committer's log entry: </ref>Make sure the current element is nulled out if debug mode so that
 
4457
 TransformerImpl#getElementCallstack works correctly.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/24/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemElement.java<br/><ref>Committer's log entry: </ref>Added fire trace events, which seemed to be missing.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/24/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Added getElementCallstack() and getTemplateCallstack() methods, for support
 
4458
 of xsl debuggers.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/24/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>Changed the release number to 4, since new functionality has been added.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemApplyTemplates.java<br/><ref>Committer's log entry: </ref>Fix Frank Weiss bug, which has to do with the currentFrameBottom not being
 
4459
 restored properly when inside a with-param.
 
4460
 
 
4461
 Fix Cristina bug where the traceEnd event was being passed the wrong template.
 
4462
 
 
4463
 Fix problem with RTF pruning where push/popRTFContext wasn't being called
 
4464
 for xsl:apply-templates.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/trace TraceListenerEx2.java<br/><ref>Committer's log entry: </ref>Fix JavaDoc comment.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/trace PrintTraceListener.java<br/><ref>Committer's log entry: </ref>Handle TraceListenerEx2, even though we don't do anything with the extra 
 
4465
methods.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fix problem with the SAXSourceLocator not getting the line number info.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/27/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SAXSourceLocator.java<br/><ref>Committer's log entry: </ref>Add a constructor that takes a SourceLocator.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/28/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemTemplateElement.java<br/><ref>Committer's log entry: </ref>Added getOwnerXSLTemplate method, a convenience function.
 
4466
 Implemented getLocalName().<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/28/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor StylesheetHandler.java
 
4467
 ProcessorTemplateElem.java<br/><ref>Committer's log entry: </ref>Addressing http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6752.
 
4468
 Make the processor more robust against multiple failures during compilation.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/28/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XNull.java<br/><ref>Committer's log entry: </ref>Change derivation to XNodeSet.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath XPathProcessorException.java
 
4469
 XPathException.java<br/><ref>Committer's log entry: </ref>Pass in the parent ExpressionNode, so that more context information can be
 
4470
 set. For the moment, I've added methods that are dependent on the
 
4471
 XSLT module, to set the source stylesheet node. I'll deal with this more when
 
4472
 I deal with the proper breakup and packaging of the XPath package, in a
 
4473
 few days.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XObject.java<br/><ref>Committer's log entry: </ref>Pass this as ExpressionNode to the XPathException object on error, which
 
4474
 helps us to establish context information for the exception object.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XRTreeFrag.java<br/><ref>Committer's log entry: </ref>Add constructor that lets us set the owning ExpressionNode.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>For getCurrentElement, add some protection for access when there is no
 
4475
 current element.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemVariable.java
 
4476
 ElemWithParam.java<br/><ref>Committer's log entry: </ref>Pass the template to the XRTreeFrag constructor, so we can establish
 
4477
 better context.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath XPathException.java<br/><ref>Committer's log entry: </ref>Set the "StylesheetNode" to the ElemTemplateElement instead of the
 
4478
 DOM backpointer.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>04/02/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Wrap runtime exception in TransformerException, so we'll get line number info
 
4479
 when NPE and the like.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>04/02/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XRTreeFrag.java<br/><ref>Committer's log entry: </ref>Fix for http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7622.
 
4480
 1) Transform#1 creates an XRTreeFrag. This has a reference to a DTM, that in 
 
4481
turn is registered with a DTMManager. The DTM will need to be deleted from the 
 
4482
DTMManager when the XRTreeFrag is deleted. The XRTreeFrag also contains a 
 
4483
reference to the XPathContext.
 
4484
 2) Transform#1 completes. The XPathContext is reset... namely the a bunch of 
 
4485
structures are reset or rebuilt, including DTMManagerDefault#m_dtms. BUT, the 
 
4486
XRTreeFrags are still hanging around, waiting to unregister themselves.
 
4487
 3) Transform#2 starts humming along. It builds a XRTreeFrag and installs 
 
4488
that RTF DTM into DTMManagerDefault#m_dtms[2].
 
4489
 4) The finalizer thread wakes and decides to delete some of those old 
 
4490
XRTreeFrags from Transform#1.
 
4491
 5) The XRTreeFrag#finalize() method references through the XPathContext, and 
 
4492
deletes what it thinks is it's DTM from DTMManagerDefault#m_dtms[2] (via 
 
4493
getDTMIdentity(dtm)).
 
4494
 6) Transform#2 tries to reference DTMManagerDefault#m_dtms[2], finds it is 
 
4495
null, and chaos results.
 
4496
 
 
4497
 ...so, before calling xctxt.release, etc., check to make sure the DTM is 
 
4498
actually
 
4499
 entered in the current DTMManager.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>04/04/2002<br/><ref>Added: </ref>java/src/org/w3c/dom/xpath COPYRIGHT.html
 
4500
 XPathEvaluator.java XPathException.java
 
4501
 XPathExpression.java XPathNSResolver.java
 
4502
 XPathNamespace.java XPathResult.java<br/><ref>Committer's log entry: </ref>Add Document Object Model (DOM) Level 3 XPath Specification.
 
4503
 (Temp until it's added to xml-commons.)<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>04/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>On entry, set the document base URI in the DTM. Fixes bug reported
 
4504
 by Christine.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/09/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Fix inconsistancy in handling returned DTM IDs. (There's room for
 
4505
 debate about whether the current value -- expressed as the
 
4506
 NodeHandle for Node 0 in that DTM -- is the best possible
 
4507
 representation, but this is what we're currently using...)<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/09/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java<br/><ref>Committer's log entry: </ref>Clean-up of dumpDTM method, some code clarity changes.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/09/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Yeowch. Didn't mean to check in the XNI experiment.
 
4508
 Disabled, probably belongs on a branch. (And probably
 
4509
 needs to be rewritten fairly intensively, since the current
 
4510
 hook is something of a kluge!)<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/09/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>(nitpicking)<br/><br/></li><li><ref>Committed by </ref>pauldick@apache.org<ref> on </ref>04/10/2002<br/><ref>Removed: </ref>java/src/org/apache/xml/dtm/ref TestDTM.java<br/><ref>Committer's log entry: </ref>Moved into Test directory<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/10/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Cleaner disabling of experimental code. Sorry 'bout that.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/10/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm DTM.java
 
4511
 java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
4512
 DTMDefaultBaseIterators.java
 
4513
 DTMDefaultBaseTraversers.java
 
4514
 ExpandedNameTable.java
 
4515
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
4516
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Change extended types to be an integer and use a structure with a localname, 
 
4517
a namespace and a nodetype to represent the node extended type. We no longer 
 
4518
need to do the shifting left and right that we did for the previous extended 
 
4519
types.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/10/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/operations Variable.java
 
4520
 java/src/org/apache/xpath/patterns NodeTest.java<br/><ref>Committer's log entry: </ref>Change extended types to be an integer and use a structure with a localname, 
 
4521
a namespace and a nodetype to represent the node extended type. We no longer 
 
4522
need to do the shifting left and right that we did for the previous extended 
 
4523
types.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/10/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemApplyTemplates.java
 
4524
 ElemForEach.java TemplateList.java
 
4525
 VarNameCollector.java<br/><ref>Committer's log entry: </ref>Change extended types to be an integer and use a structure with a localname, 
 
4526
a namespace and a nodetype to represent the node extended type. We no longer 
 
4527
need to do the shifting left and right that we did for the previous extended 
 
4528
types.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/12/2002<br/><ref>Added: </ref>java/src/org/apache/xml/dtm XSequence.java<br/><ref>Committer's log entry: </ref>Creating a new branch, Xalan3, for experimentation with XPath2 support.
 
4529
 
 
4530
 Currently the changes are limited to org.apache.xml.dtm -- enabling
 
4531
 datatype support by tying into Xerces' low-level XNI layer, which
 
4532
 includes experimental support for post-schema-validation Infoset
 
4533
 (PSVI) information. Eventually we'll be patching other portions of
 
4534
 Xalan to actually retrieve and use this data.
 
4535
 
 
4536
 The code I'm now checking in is NOT in final form. Known issues:
 
4537
 
 
4538
 1) The logic in DTMManager which enables this behavior is
 
4539
 something of a kluge -- it only kicks in if you parse incrementally
 
4540
 from a StreamSource. The getDTM() method really wants to be
 
4541
 rationalized somewhat, which will make adding XNI easier.
 
4542
 
 
4543
 2) The storage for datatype information currently adds another
 
4544
 column to the DTM table. We really want to switch to associating
 
4545
 the datatype with the Expanded Type table, and using some form
 
4546
 of sparse array to record local overrides.
 
4547
 
 
4548
 3) The XNI code won't compile without Xerces2. We need to think
 
4549
 about whether we want to accept that as a dependency, or use
 
4550
 reflection to bind at run time rather than compile time.
 
4551
 
 
4552
 Note that typed values are currently computed on demand, with the
 
4553
 DTM storing only the sting values. An argument could be made for
 
4554
 precomputing some or all of this information and instead generating
 
4555
 strings on demand (see the XPath2 Data Model spec for discussion
 
4556
 of that alternative). But that's a considerably larger change, and
 
4557
 would affect non-type-based users of XSLT as well since it would
 
4558
 present values in their normalized form rather than as entered; I'd
 
4559
 rather not go that route until we have a string-based alternative
 
4560
 fully functional.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/12/2002<br/><ref>Added: </ref>java/src/org/apache/xml/dtm/ref/xni2dtm DTM_XSequence.java
 
4561
 XNI2DTM.java<br/><ref>Committer's log entry: </ref>Creating a new branch, Xalan3, for experimentation with XPath2 support.
 
4562
 
 
4563
 Currently the changes are limited to org.apache.xml.dtm -- enabling
 
4564
 datatype support by tying into Xerces' low-level XNI layer, which
 
4565
 includes experimental support for post-schema-validation Infoset
 
4566
 (PSVI) information. Eventually we'll be patching other portions of
 
4567
 Xalan to actually retrieve and use this data.
 
4568
 
 
4569
 The code I'm now checking in is NOT in final form. Known issues:
 
4570
 
 
4571
 1) The logic in DTMManager which enables this behavior is
 
4572
 something of a kluge -- it only kicks in if you parse incrementally
 
4573
 from a StreamSource. The getDTM() method really wants to be
 
4574
 rationalized somewhat, which will make adding XNI easier.
 
4575
 
 
4576
 2) The storage for datatype information currently adds another
 
4577
 column to the DTM table. We really want to switch to associating
 
4578
 the datatype with the Expanded Type table, and using some form
 
4579
 of sparse array to record local overrides.
 
4580
 
 
4581
 3) The XNI code won't compile without Xerces2. We need to think
 
4582
 about whether we want to accept that as a dependency, or use
 
4583
 reflection to bind at run time rather than compile time.
 
4584
 
 
4585
 Note that typed values are currently computed on demand, with the
 
4586
 DTM storing only the sting values. An argument could be made for
 
4587
 precomputing some or all of this information and instead generating
 
4588
 strings on demand (see the XPath2 Data Model spec for discussion
 
4589
 of that alternative). But that's a considerably larger change, and
 
4590
 would affect non-type-based users of XSLT as well since it would
 
4591
 present values in their normalized form rather than as entered; I'd
 
4592
 rather not go that route until we have a string-based alternative
 
4593
 fully functional.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/12/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm Tag: Xalan3 DTM.java
 
4594
 java/src/org/apache/xml/dtm/ref Tag: Xalan3
 
4595
 DTMDefaultBase.java DTMDocumentImpl.java
 
4596
 DTMManagerDefault.java
 
4597
 IncrementalSAXSource_Xerces.java
 
4598
 java/src/org/apache/xml/dtm/ref/sax2dtm Tag: Xalan3
 
4599
 SAX2DTM.java<br/><ref>Committer's log entry: </ref>Creating a new branch, Xalan3, for experimentation with XPath2 support.
 
4600
 
 
4601
 Currently the changes are limited to org.apache.xml.dtm -- enabling
 
4602
 datatype support by tying into Xerces' low-level XNI layer, which
 
4603
 includes experimental support for post-schema-validation Infoset
 
4604
 (PSVI) information. Eventually we'll be patching other portions of
 
4605
 Xalan to actually retrieve and use this data.
 
4606
 
 
4607
 The code I'm now checking in is NOT in final form. Known issues:
 
4608
 
 
4609
 1) The logic in DTMManager which enables this behavior is
 
4610
 something of a kluge -- it only kicks in if you parse incrementally
 
4611
 from a StreamSource. The getDTM() method really wants to be
 
4612
 rationalized somewhat, which will make adding XNI easier.
 
4613
 
 
4614
 2) The storage for datatype information currently adds another
 
4615
 column to the DTM table. We really want to switch to associating
 
4616
 the datatype with the Expanded Type table, and using some form
 
4617
 of sparse array to record local overrides.
 
4618
 
 
4619
 3) The XNI code won't compile without Xerces2. We need to think
 
4620
 about whether we want to accept that as a dependency, or use
 
4621
 reflection to bind at run time rather than compile time.
 
4622
 
 
4623
 Note that typed values are currently computed on demand, with the
 
4624
 DTM storing only the sting values. An argument could be made for
 
4625
 precomputing some or all of this information and instead generating
 
4626
 strings on demand (see the XPath2 Data Model spec for discussion
 
4627
 of that alternative). But that's a considerably larger change, and
 
4628
 would affect non-type-based users of XSLT as well since it would
 
4629
 present values in their normalized form rather than as entered; I'd
 
4630
 rather not go that route until we have a string-based alternative
 
4631
 fully functional.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/12/2002<br/><ref>Removed: </ref>java/src/org/apache/xml/dtm XSequence.java
 
4632
 java/src/org/apache/xml/dtm/ref/xni2dtm DTM_XSequence.java
 
4633
 XNI2DTM.java<br/><ref>Committer's log entry: </ref>These should only be on the Xalan3 branch, not the main branch.
 
4634
 I _hope_ I can split this successfully...<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/12/2002<br/><ref>Added: </ref>java/src/org/apache/xml/dtm Tag: Xalan3 XSequence.java<br/><ref>Committer's log entry: </ref>These should only be on the Xalan3 branch, not the main branch.
 
4635
 I _hope_ I can split this successfully...<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/12/2002<br/><ref>Added: </ref>java/src/org/apache/xml/dtm/ref/xni2dtm Tag: Xalan3
 
4636
 DTM_XSequence.java XNI2DTM.java<br/><ref>Committer's log entry: </ref>These should only be on the Xalan3 branch, not the main branch.
 
4637
 I _hope_ I can split this successfully...<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 Tag:
 
4638
 jaxp-ri-1_2_0-fcs-branch DOM.java<br/><ref>Committer's log entry: </ref>New implementation of xsl:element<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler XPathParser.java<br/><ref>Committer's log entry: </ref>Improve recovery if user's error handler insists on trying to
 
4639
 continue past a fatal error in the XPath syntax. Ideally, this
 
4640
 mechanism should be cleaned up and applied across the
 
4641
 entire XPath grammar. But for now, I'm addressing the one
 
4642
 specific complaint in a way that can be expanded later, and
 
4643
 doing so in a way that minimizes costs.
 
4644
 
 
4645
 (In fact, one can argue that since this is a rare event, we
 
4646
 shouldn't be minimizing the cost quite so much, and should
 
4647
 be throwing new exception objects rather than reusing a
 
4648
 preconstructed one.)<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler XPathParser.java<br/><ref>Committer's log entry: </ref>Decided I _was_ overoptimizing.
 
4649
 
 
4650
 Saving memory in tne non-error case trumps saving it in the error case.<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/templates Tag: XSLTC_DTM
 
4651
 ElemApplyTemplates.java
 
4652
 java/src/org/apache/xalan/xsltc Tag: XSLTC_DTM DOM.java
 
4653
 DOMCache.java NodeIterator.java Translet.java
 
4654
 java/src/org/apache/xalan/xsltc/cmdline Tag: XSLTC_DTM
 
4655
 Transform.java
 
4656
 java/src/org/apache/xalan/xsltc/compiler Tag: XSLTC_DTM
 
4657
 AbsolutePathPattern.java AncestorPattern.java
 
4658
 Constants.java CopyOf.java DocumentCall.java
 
4659
 ForEach.java IdKeyPattern.java Import.java Key.java
 
4660
 KeyCall.java LastCall.java Mode.java NameBase.java
 
4661
 NodeTest.java ParentLocationPath.java Parser.java
 
4662
 ProcessingInstructionPattern.java Step.java
 
4663
 StepPattern.java Stylesheet.java
 
4664
 SyntaxTreeNode.java UnionPathExpr.java XSLTC.java
 
4665
 java/src/org/apache/xalan/xsltc/compiler/util Tag: XSLTC_DTM
 
4666
 MethodGenerator.java NodeSetType.java
 
4667
 ResultTreeType.java
 
4668
 java/src/org/apache/xalan/xsltc/dom Tag: XSLTC_DTM
 
4669
 AbsoluteIterator.java AnyNodeCounter.java Axis.java
 
4670
 BitArray.java CurrentNodeListFilter.java
 
4671
 CurrentNodeListIterator.java DOMAdapter.java
 
4672
 DOMImpl.java DTDMonitor.java DocumentCache.java
 
4673
 DupFilterIterator.java FilterIterator.java
 
4674
 FilteredStepIterator.java KeyIndex.java
 
4675
 LoadDocument.java MatchingIterator.java
 
4676
 MultiDOM.java MultipleNodeCounter.java
 
4677
 NodeCounter.java NthIterator.java
 
4678
 ReverseIterator.java SingleNodeCounter.java
 
4679
 SingletonIterator.java SortingIterator.java
 
4680
 StepIterator.java UnionIterator.java
 
4681
 java/src/org/apache/xalan/xsltc/runtime Tag: XSLTC_DTM
 
4682
 AbstractTranslet.java BasisLibrary.java
 
4683
 Constants.java DefaultRun.java SAXAdapter.java
 
4684
 java/src/org/apache/xalan/xsltc/trax Tag: XSLTC_DTM
 
4685
 TransformerHandlerImpl.java TransformerImpl.java
 
4686
 XSLTCSource.java
 
4687
 java/src/org/apache/xml/dtm Tag: XSLTC_DTM DTM.java
 
4688
 DTMAxisIterator.java DTMManager.java
 
4689
 java/src/org/apache/xml/dtm/ref Tag: XSLTC_DTM
 
4690
 DTMAxisIteratorBase.java DTMDefaultBase.java
 
4691
 DTMDefaultBaseIterators.java DTMNamedNodeMap.java
 
4692
 DTMNodeList.java DTMNodeProxy.java
 
4693
 ExpandedNameTable.java
 
4694
 java/src/org/apache/xml/dtm/ref/dom2dtm Tag: XSLTC_DTM
 
4695
 DOM2DTM.java
 
4696
 java/src/org/apache/xml/dtm/ref/sax2dtm Tag: XSLTC_DTM
 
4697
 SAX2DTM.java<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc/dom Tag: XSLTC_DTM
 
4698
 SAXImpl.java XSLTCDTMManager.java<br/><ref>Committer's log entry: </ref>Checking in a branch of xalan where XSLTC is using the DTM interface. This 
 
4699
branch is very unstable, please do not use yet!!!<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/xml/dtm/ref/dom2dtm Tag: XSLTC_DTM
 
4700
 DOM2DTM.java<br/><ref>Committer's log entry: </ref>Make getNumberOfNodes() public<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/18/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref Tag: Xalan3
 
4701
 DTMManagerDefault.java
 
4702
 IncrementalSAXSource_Xerces.java<br/><ref>Committer's log entry: </ref>XNI support now always used if available, with SAX as fallback.
 
4703
 
 
4704
 Issues: DTMDefaultManager is still a bit more aware of Xerces2
 
4705
 than I want it to be. And the kluge of creating an Incremental Xerces
 
4706
 source and then running it non-incrementally, while producing
 
4707
 straightforward code, is a slightly ugly mixed metaphor.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/18/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref Tag: Xalan3
 
4708
 DTMManagerDefault.java
 
4709
 java/src/org/apache/xml/dtm/ref/xni2dtm Tag: Xalan3
 
4710
 XNI2DTM.java<br/><ref>Committer's log entry: </ref>Minor polishing, disabling debugging dump.
 
4711
 
 
4712
 We currently pass most of Smoketest with the new XNI code enabled.
 
4713
 Some suspicious stuff in the API tests; my attempts to disentangle
 
4714
 the XNI and SAX support may not have been 100% succesful.<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/dom Tag: XSLTC_DTM
 
4715
 SAXImpl.java
 
4716
 java/src/org/apache/xml/dtm/ref Tag: XSLTC_DTM
 
4717
 DTMDefaultBaseIterators.java
 
4718
 java/src/org/apache/xpath/compiler Tag: XSLTC_DTM
 
4719
 XPathParser.java<br/><ref>Committer's log entry: </ref>Misc fixes<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/22/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Bug 4546 -- thanks to Wolfram Eisert for tracking this down and
 
4720
 proposing the patch.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref Tag: Xalan3
 
4721
 DTMManagerDefault.java
 
4722
 IncrementalSAXSource_Xerces.java<br/><ref>Committer's log entry: </ref>Easy enable/disable of XNI support for testing purposes,
 
4723
 and some error-reporting cleanup. We still fail a few API tests
 
4724
 in XNI mode, mostly related to error handling.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/29/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm Tag: Xalan3 DTM.java
 
4725
 java/src/org/apache/xml/dtm/ref Tag: Xalan3
 
4726
 DTMDefaultBase.java DTMDefaultBaseIterators.java
 
4727
 DTMDefaultBaseTraversers.java
 
4728
 ExpandedNameTable.java
 
4729
 java/src/org/apache/xml/dtm/ref/dom2dtm Tag: Xalan3
 
4730
 DOM2DTM.java
 
4731
 java/src/org/apache/xml/dtm/ref/sax2dtm Tag: Xalan3
 
4732
 SAX2DTM.java<br/><ref>Committer's log entry: </ref>Merge ExtendedType changes from main branch<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>05/02/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref Tag: Xalan3
 
4733
 ExpandedNameTable.java<br/><ref>Committer's log entry: </ref>Oops. Typo.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>05/02/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref Tag: Xalan3
 
4734
 ExpandedNameTable.java
 
4735
 IncrementalSAXSource_Xerces.java
 
4736
 java/src/org/apache/xml/dtm/ref/xni2dtm Tag: Xalan3
 
4737
 XNI2DTM.java<br/><ref>Committer's log entry: </ref>Make sure current version checked in before I start experimenting with 
 
4738
alternatives.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>05/02/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/xni2dtm Tag: Xalan3
 
4739
 XNI2DTM.java<br/><ref>Committer's log entry: </ref>It helps if we actually remember to store the schema info...<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>05/03/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref Tag: Xalan3
 
4740
 ExpandedNameTable.java
 
4741
 java/src/org/apache/xml/dtm/ref/xni2dtm Tag: Xalan3
 
4742
 XNI2DTM.java<br/><ref>Committer's log entry: </ref>Xalan3 PSVI changes: Lighter-weight storage for PSVI datatype. Schema
 
4743
 type first seen is now stored as part of the ExpandedName. In many cases
 
4744
 all instances of the same node have the same type and this should suffice.
 
4745
 In some cases tthe actual type may be locally overridden (schema
 
4746
 derived types), and XNI2DTM will record an exception into a simple
 
4747
 "sparse vector".
 
4748
 
 
4749
 Storage improved. DTM construction speed improved. Schema type
 
4750
 retrieval speed adversely impacted but -- one hopes -- not significantly.
 
4751
 
 
4752
 Of course right now Xerces' schema-validator burns so many cycles
 
4753
 that our own efficiency or lack thereof is completely moot... but we
 
4754
 assume they'll be improving that over time.<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>05/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler XPathParser.java<br/><ref>Committer's log entry: </ref>Remove the duplicated ;;
 
4755
 
 
4756
 ( which broke the JDK1.4 compilation which in turn broke all the gump
 
4757
 deps ).<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>05/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes PredicatedNodeTest.java<br/><ref>Committer's log entry: </ref>Bugzilla 7159 -- Just an access-permission change, for improved
 
4758
 toolability.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>05/09/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToText.java<br/><ref>Committer's log entry: </ref>Bugzilla 8358 -- bad method signature. I've created a new method
 
4759
 with the correct signature. The old one may or may not be entirely
 
4760
 superfluous, but I don't want to muck with it right now.<br/><br/></li></ul>
 
4761
</s2>
 
4762
 
 
4763
<s2 title="Changes for &xslt4j; 2.3 and 2.3.1">
 
4764
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>01/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql XConnection.java<br/><ref>Committer's log entry: </ref>Fixed second connection problem<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>01/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Update for new DTM Model<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>01/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql DTMDocument.java<br/><ref>Committer's log entry: </ref>Update for new DTM Model<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>01/17/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java
 
4765
 DTMDocument.java<br/><ref>Committer's log entry: </ref>Removed Debug<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>01/18/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Whups. There's a possible reentrancy problem when data
 
4766
 is being serialized from an FSB, thru Sax, back into a new
 
4767
 chunk of the same FSB; if the append causes a rechunking,
 
4768
 the serialize loop may break.
 
4769
 
 
4770
 TEMPORARY PATCH; permanant fix to follow. See comments.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>01/18/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SuballocatedIntVector.java<br/><ref>Committer's log entry: </ref>&lt;blush&gt;Wrong side of the fencepost...&lt;/blush&gt;<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>01/23/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemTemplate.java
 
4771
 java/src/org/apache/xalan/transformer TransformerImpl.java
 
4772
 java/src/org/apache/xml/dtm DTMManager.java
 
4773
 java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
4774
 DTMManagerDefault.java
 
4775
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java
 
4776
 java/src/org/apache/xpath XPathContext.java<br/><ref>Added: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2RTFDTM.java<br/><ref>Committer's log entry: </ref>These changes allow us to store multiple Result Tree Fragment (RTF)
 
4777
 document trees (used when an XSLT variable contains a constructed
 
4778
 set of nodes) into a single DTM object rather than using a new DTM
 
4779
 for each RTF. They also permit "tail-pruning" this shared DTM to
 
4780
 reuse that space as the variables go out of scope.
 
4781
 
 
4782
 The result is a slight performance improvement, and a much more
 
4783
 significant improvement in storage efficiency. Stylesheets which
 
4784
 use RTFs heavily should now run in much less memory; in
 
4785
 one testcase, our "working set" heap size (storage actually in
 
4786
 use, not counting objects released but not yet GC'd) dropped
 
4787
 from 12-15MB down to 3-6MB, and heap churn (how quickly
 
4788
 storage was being allocated and discarded) also reduced
 
4789
 substantially.
 
4790
 
 
4791
 The code changes needed to support this new scheme are
 
4792
 surprisingly small. And I believe it may be possible to reduce them
 
4793
 further, if we're willing to merge the SAX2RTFDTM subclass back
 
4794
 into its SAX2DTM superclass. I believe that could be done with
 
4795
 very little adverse impact on other uses of SAX2DTM... but I felt it
 
4796
 was safer to defer that decision for now.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>01/25/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Bug 5982 and 6022. The variable stack was not being cleared accross 
 
4797
transforms so that when the transformer is reused, we were using nodesets from 
 
4798
the previous transform which were using a different DTM. Note that we want keep 
 
4799
any variables that have been set externally by the user (using 
 
4800
Transformer.setParameter()).<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>01/28/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/res XPATHErrorResources.java<br/><ref>Committer's log entry: </ref>bug 4762: Fixed the duplicate error message in XPATH.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>01/28/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Bugzilla 4054: Retain previously set output properties when adding new ones.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>01/28/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Bug 5872. We were using a constructor of TranformerException without the 
 
4801
locator information. Changed to code to use a locator if info is available.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>01/30/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib NodeInfo.java<br/><ref>Committer's log entry: </ref>Changed "system id" to "public identifier" in javadoc
 
4802
 comments for publicId() methods.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>01/30/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Bugzilla 2617, part 1: Construct the data structures and access them 
 
4803
correctly.
 
4804
 Ignore too-late-to-be-safe requests to enable this feature.
 
4805
 
 
4806
 This doesn't resolve how to rewrite higher-level code so it makes the
 
4807
 request early enough to be useful.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>01/30/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates StylesheetComposed.java
 
4808
 StylesheetRoot.java TemplateList.java
 
4809
 java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Bug 4987: Changed Apply-imports logic to only apply imports to stylesheets 
 
4810
that are direct imports. The logic for includes has not changed, we will 
 
4811
apply-imports to any stylesheet that is imported as a result of an inclusion. 
 
4812
Note: had to change the order when includes and imports are recomposed!<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>01/31/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib NodeInfo.java
 
4813
 java/src/org/apache/xalan/processor
 
4814
 TransformerFactoryImpl.java
 
4815
 java/src/org/apache/xalan/transformer TransformerImpl.java
 
4816
 java/src/org/apache/xalan/xslt Process.java
 
4817
 java/src/org/apache/xml/dtm/ref DTMManagerDefault.java
 
4818
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java
 
4819
 SAX2RTFDTM.java
 
4820
 java/src/org/apache/xml/utils DefaultErrorHandler.java<br/><ref>Committer's log entry: </ref>Bugzilla 2617: Recreated missing code, changed controls to ensure
 
4821
 that this mode gets set early enough to be useful and can't be broken
 
4822
 by being turned on and off during execution.
 
4823
 
 
4824
 NOTE: Current implementation relies on a global static flag in
 
4825
 TransformerFactoryImpl. We need to rearchitect our APIs slightly
 
4826
 so configuration hints of this kind can be passed down from top-level
 
4827
 objects to the back-end code more elegantly. Revisit in future
 
4828
 releases.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>01/31/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemApplyTemplates.java<br/><ref>Committer's log entry: </ref>Bug 5505: Need to resolve params before we do anything else, so move code 
 
4829
that does that above the code that sets up the different node stacks.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Bugzilla 6182. Darned fence posts; always either too many or not enough... 
 
4830
&lt;grin/&gt;<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/01/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java
 
4831
 java/src/org/apache/xpath VariableStack.java
 
4832
 XPathContext.java<br/><ref>Committer's log entry: </ref>Bug 6156: Change variable stack reset to just get a new object. Also make 
 
4833
sure that the stack of result tree fragments is also cleaned ot during a reset.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XBoolean.java
 
4834
 XNodeSet.java XNumber.java XObject.java
 
4835
 XRTreeFrag.java XString.java
 
4836
 java/src/org/apache/xpath/operations Equals.java<br/><ref>Committer's log entry: </ref>Bug 5851: Make sure that the equal operation is evaluated by order of 
 
4837
precedence of the operands, as defined by XSLT.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Bugzilla 5346: Prevent mantissa overflow when converting string to double.
 
4838
 There is still a possible edge-case, since I detect overflow on decimal digit
 
4839
 bounds rather than on bit bounds; I'm not sure what the IEEE spec calls for.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Bugzilla 5346: My first-cut messed up fractional values. This one is
 
4840
 somewhat better.
 
4841
 
 
4842
 There's an open issue w/r/t numbers with many digits after the
 
4843
 decimal point, regarding limits on how large a power of 10 can
 
4844
 be contained in a long. In that one case I'm falling back on successive
 
4845
 divisions (though as few as possible), and some loss of precision
 
4846
 may result.
 
4847
 
 
4848
 Need to find a better algorithm...<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/04/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Bugzilla 5346: Oops. Forgot to take out a debugging printout.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Bugzilla 5346: Responding to the re-open; more direct and reliable
 
4849
 edge-case test. This does lose a few low bits on many-digit values,
 
4850
 so it is not the best long-term solution.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Bug 5346: One more (last, I hope) edge case.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Bug 5346: Gaaah. This regressions was just plain foolish flailing. "Less 
 
4851
haste, more speed."<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/05/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize CharInfo.java<br/><ref>Committer's log entry: </ref>Bug 5857: Reusing objects that reuse objects has threading concerns.
 
4852
 Three possible solutions: Don't reuse, synchronize reuse, or rewrite
 
4853
 to avoid using the objects in the first place. See comments in code.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java
 
4854
 IncrementalSAXSource.java
 
4855
 IncrementalSAXSource_Filter.java
 
4856
 IncrementalSAXSource_Xerces.java
 
4857
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Bug 4244: Incremental wasn't setting up correctly for the
 
4858
 DTDHandler stream. It never occurred to me that XSLT would
 
4859
 ever have a use for unparsed entities...<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>02/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan Version.java
 
4860
 java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>Whoops! Never updated release number to 2.3 in these version files!<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>02/06/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>updated version number to 2.3<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/07/2002<br/><ref>Modified: </ref>java/src/org/apache/xpath SourceTreeManager.java<br/><ref>Committer's log entry: </ref>Bug 6304: Remove print stacktrace<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/08/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions
 
4861
 XSLProcessorContext.java
 
4862
 java/src/org/apache/xalan/lib/sql DTMDocument.java
 
4863
 java/src/org/apache/xalan/templates ElemForEach.java
 
4864
 FuncDocument.java FuncKey.java
 
4865
 java/src/org/apache/xalan/transformer KeyIterator.java
 
4866
 TransformerHandlerImpl.java TransformerImpl.java
 
4867
 java/src/org/apache/xml/dtm DTM.java
 
4868
 java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
4869
 DTMDefaultBaseIterators.java DTMDocumentImpl.java
 
4870
 DTMNodeProxy.java
 
4871
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2RTFDTM.java
 
4872
 java/src/org/apache/xpath/axes IteratorPool.java<br/><ref>Committer's log entry: </ref>Bugzilla 6314: Additional support changes for multiple RTFs per DTM.
 
4873
 Many files affected, but the basic change is that dtm.getDocument()
 
4874
 with no arguments is meaningless when there are multiple docs in
 
4875
 a single DTM object; instead, folks should use the new getRootNode()
 
4876
 method or getOwnerDocument(), both of which take a node as input
 
4877
 and thus more clearly identify which document we're referring to.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>02/12/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Bugzilla 6328, whitespace normalization. Late fix, but it was a genuine 
 
4878
regresion.
 
4879
 This code could still do with a rationalization pass; I think it can be made 
 
4880
slightly
 
4881
 a touch faster.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>02/14/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>Update various .jar sizes for recent builds and 2.3.0<br/><br/></li></ul>
 
4882
</s2>   
 
4883
<s2 title="Changes for &xslt4j; 2.2">
 
4884
<p>Following a series of Developer releases, &xslt4j; 2.2 represents a stable, production-quality release with 
 
4885
the <link idref="dtm">DTM (Document Table Model)</link>. &xslt4j; uses the DTM to represent the XML source document 
 
4886
to be transformed. Please send your feedback to the <human-resource-ref idref="xalandev"/>.</p>
 
4887
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>11/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>updated version number to 2.2.D14<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>11/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>updated version number to 2.2.D14<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBaseIterators.java<br/><ref>Committer's log entry: </ref>Bugzilla 5242: Special-case initializing iteration from Document node -- 
 
4888
one-liner wasn't safe.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>12/04/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc ProcessorVersion.java<br/><ref>Committer's log entry: </ref>new class to version xsltc software<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Additional debugging printouts, added while analysing Bugzilla 5272 but 
 
4889
generally useful.
 
4890
 No functional change, and should be optimized away when DEBUG is set false.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Removed the "magic" default which causes us to switch into incremental
 
4891
 processing mode whenever we were writing to Standard Output (ie,
 
4892
 -OUT had not been specified). If you want incremental processing,
 
4893
 please use the (relatively new) -INCREMENTAL switch to explicitly
 
4894
 request it.
 
4895
 
 
4896
 (The automatic switchover was causing some confusion
 
4897
 when testing against Xerces2. )<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
4898
 DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Efficiency improvement to the new DTM "overflow addressing" scheme.
 
4899
 In some tests, this one alteration shaved about 30% off the runtime.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath CachedXPathAPI.java
 
4900
 XPathContext.java<br/><ref>Committer's log entry: </ref>Changes requested by the xml-security group:
 
4901
 
 
4902
 1) Provide something a constructor that allows sharing the
 
4903
 XPathContext object between CachedXPathAPI objects
 
4904
 
 
4905
 2) Add getXPathContext(). I'm just a bit nervious about this
 
4906
 method, but they assure us they need it and the field isn't
 
4907
 private. We may need to discus this one further.
 
4908
 
 
4909
 3) Make the XPathContext's m_dtmManager member
 
4910
 protected rather than private, so their subclass can get to it.
 
4911
 We may want to work with them to understand why they're
 
4912
 accessing this directly and whether there's a better solution.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref
 
4913
 IncrementalSAXSource_Xerces.java<br/><ref>Committer's log entry: </ref>Bugzilla5272 patch suggested by Sandy Gao.
 
4914
 
 
4915
 This startup sequence for incremental SAX parsing under Xerces2
 
4916
 really is excessively complicated and excessively fragile as a result.
 
4917
 Not to mention being underdocumented. We really need to push the
 
4918
 Xerces folks to provide a simple incremental SAX API, similar to that
 
4919
 in the Xerces1incremental prototype.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Part 1 of 2: Reducing initial space requirements of a DTM. This may
 
4920
 involve a slight performance hit, but should help stylesheets which
 
4921
 generate a lot of Result Tree Fragment. Part 2 of this change will be
 
4922
 checked in after I resolve a bug in whitespace normalization.
 
4923
 
 
4924
 Note that a better long-term answer will be to reduce the number of
 
4925
 DTMs tied up as RTFs, by doing a better job of discarding or reusing
 
4926
 them when we're done with them. There are some issues regarding
 
4927
 exactly what their lifetimes will be when assigned to variables,
 
4928
 especially when one variable is used to build another, which we
 
4929
 need to address before we can make that change.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Part 2a of 2: Reducing initial space requirements of a DTM. This may
 
4930
 involve a slight performance hit in some circumstances due to
 
4931
 smaller and more complex subdivision of FastStringBuffers,, but
 
4932
 should help stylesheets which generate a lot of Result Tree
 
4933
 Fragments.
 
4934
 
 
4935
 Note that a better long-term answer will be to reduce the number of
 
4936
 DTMs tied up as RTFs<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Part 2b of 2: Reducing initial space requirements of a DTM. This may
 
4937
 involve a slight performance hit in some circumstances due to
 
4938
 smaller and more complex subdivision of FastStringBuffers,, but
 
4939
 should help stylesheets which generate a lot of Result Tree
 
4940
 Fragments.
 
4941
 
 
4942
 (Leveraging FSB's features more strongly exposed a bug in
 
4943
 whitespace normalization, which I've fixed.)
 
4944
 
 
4945
 Note that a better long-term answer will be to reduce the number of
 
4946
 DTMs tied up as RTFs<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils AttList.java<br/><ref>Committer's log entry: </ref>Two goofs: Forgetting to use the namespace-aware DOM call, and
 
4947
 forgetting to check for a returned null before dereferencing.
 
4948
 
 
4949
 How long has _that_ been lurking in the undergrowth?!<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SuballocatedIntVector.java<br/><ref>Committer's log entry: </ref>Finally following up on an old hunch, I switched from /% addressing
 
4950
 to shift-and-mask. Big improvement!<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>Performance improvements; Some changes to better leverage the
 
4951
 DOM's existing code, others to avoid some call-and-return overhead.
 
4952
 
 
4953
 Combined with other recent changes, we've now got a significant
 
4954
 speedup over D14 on some tests. We may want to drop the scheduled
 
4955
 December 17th 2.2 release and instead bring 2.2 out on 1/14 (which is
 
4956
 when we'd planned 2.3) with performance gains and Xerces2 support.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
4957
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
4958
 DOM2DTMdefaultNamespaceDeclarationNode.java<br/><ref>Committer's log entry: </ref>A few more subtle performance tweaks, and an actual bug.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>12/20/2001<br/><ref>Added: </ref>java/src/org/apache/xml/utils ListingErrorHandler.java<br/><ref>Committer's log entry: </ref>Alternate ErrorHandler/ErrorListener implementation that allows
 
4959
 configuration and prints errors out similarly to javac<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>12/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils AttList.java<br/><ref>Committer's log entry: </ref>Bugzilla 5496; previously unimplemented functions.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>01/03/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils DOMBuilder.java<br/><ref>Committer's log entry: </ref>[Bug 5528] DOMBuilder mixed DOM Level 1 and 2<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>01/11/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>updated release number to 2.2.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>01/11/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>updated release number to 2.2.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>01/13/2002<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SystemIDResolver.java<br/><ref>Committer's log entry: </ref>Fix Bugzilla#5701: incorrect resolution of certain kinds of absolute file: 
 
4960
URIs
 
4961
 Note: This definitely seems to be more correct in terms of resolving URIs
 
4962
 vis-a-vis RFC 2396 than it used to be. The only user case which might now
 
4963
 fail where it used to work is a user that supplies an incorrect
 
4964
 'file:subdir/blah' that they intended to be a relative URI (technically
 
4965
 it is an absolute URI no matter which way you look at it); this might
 
4966
 lead to a change in behavior in this particular case, although the behavior
 
4967
 before was incorrect.
 
4968
 The major risk factor could be if there are other parts of Xalan code that 
 
4969
rely
 
4970
 on the previously incorrect behavior, but I can't find any, and the whole test
 
4971
 suite runs and passes normally.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>01/14/2002<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Fix Bugzilla#4678 and Bugzilla#5533: call setSystemId on StreamResult
 
4972
 in Process command line class; ignored if using System.out
 
4973
 This should enable the redirect extension to properly put it's redirected
 
4974
 output in a location relative to the output if possible; previously it
 
4975
 always put redirected output relative to the input since it
 
4976
 never had the systemId of where the output should be<br/><br/></li></ul><note>This release includes no updates of the compatibility source code (now deprecated).</note>
 
4977
</s2>   
 
4978
<s2 title="Changes for &xslt4j; 2.2.D14">
 
4979
<p>&xslt4j; 2.2.D14 is intended to be the final release in the current series of Developer releases incorporating
 
4980
     the <link idref="dtm">DTM</link>. We believe Xalan with the DTM has reached a level of stability that warrants a                                                          
 
4981
     standard "User" release. Accordingly, we plan to release &xslt4j; 2.2 soon.</p>
 
4982
     <p>&xslt4j; 2.2.D14 also includes a new <jump href="apidocs/org/apache/xpath/CachedXPathAPI.html">CachedXPathAPI</jump> class that
 
4983
     provides an enhanced alternative to the XPath convenience methods in <jump href="apidocs/org/apache/xpath/XPathAPI.html">XPathAPI</jump>.</p>
 
4984
     <p>Beginning with 2.2.D12, xalan.jar contains just the &xslt4j; implementation. The source files for the SAX level 2, DOM 2, 
 
4985
     and JAXP 1.1 interfaces are pulled from the xml-commons repository (<resource-ref idref="xmlapirepository"/>), and are built as
 
4986
     xml-apis.jar. These interfaces are shared by a number of tools, so placing them in their own jar simplifies coordination and reduces 
 
4987
     the risk of duplication. <em>To run &xslt4j;, you must add xml-apis.jar to your classpath.</em> See <link idref="getstarted"
 
4988
     anchor="classpath">Setting up the system class path</link>.</p>
 
4989
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>Reorder slightly and add test to not synthesize xmlns:xsl declaration
 
4990
 if one was already present on the DOM's root element.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan Version.java<br/><ref>Committer's log entry: </ref>D13 internal version number update<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>D13 internal version number update<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMNodeList.java<br/><ref>Committer's log entry: </ref>Bugzilla4842, secondary complaint (glitch in getChildren)... &lt;blush/&gt;<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMNodeProxy.java<br/><ref>Committer's log entry: </ref>Bugzilla4842: Expand the proxy layer to support more of the DOM API.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>Namespace decls are themselves not namespace-aware, in the
 
4991
 Namespaces 1.0 REC. Use the qname.Grumble.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>"Tupograflica eror". Sorry 'bout that!<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>Sigh. The XML Namespaces spec it itself imperfectly
 
4992
 namespace-aware. While there's a plan to fix that, it's
 
4993
 safer for now if we test the QName when looking for
 
4994
 explicit instances of xmlns:xml in the source document.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql DTMDocument.java
 
4995
 java/src/org/apache/xalan/templates ElemApplyTemplates.java
 
4996
 java/src/org/apache/xalan/xslt Process.java
 
4997
 java/src/org/apache/xml/dtm DTMManager.java
 
4998
 java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
4999
 DTMDefaultBaseIterators.java
 
5000
 DTMDefaultBaseTraversers.java
 
5001
 DTMManagerDefault.java
 
5002
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
5003
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Another fairly large change in the DTM architexture (sic)....
 
5004
 
 
5005
 We've changed DTM's internal behavior so it can now assign
 
5006
 more than one "DTM ID" to a single document, cascading from
 
5007
 one ID to the next. This means that the size of a single DTM is
 
5008
 no longer limited by the bits available in the low part of the DTM
 
5009
 Node Handle. This means we can support larger documents.
 
5010
 
 
5011
 That has allowed us to reduce the number of bits reserved
 
5012
 for that portion of the node addresing scheme... which in turn has
 
5013
 increased the number of bits available for use in the DTM ID. This
 
5014
 means we can now have many more documents active at once.
 
5015
 
 
5016
 The trade-off is that huge documents will require more than one
 
5017
 DTM ID and thus cut into the number of documents, But since we
 
5018
 now have 16 bits of DTM ID space, I don't think we're really likely
 
5019
 to run into both limits at once. And the changes are essentially
 
5020
 limited to the DTM layer; the rest of Xalan should be unaffected.
 
5021
 
 
5022
 In the process of making this change, I've also encapsulated the
 
5023
 conversions between DTM API node handles and DTMDefaultBase's
 
5024
 internal node indices. That should be safer all 'round.
 
5025
 
 
5026
 NOTE: One side effect of this change is that the strings
 
5027
 generated by the key() function have changed again.
 
5028
 I've updated the IDKEY testcases to reflect this.
 
5029
 
 
5030
 Smoketest is currently passing everything except
 
5031
 axes109 and the API's TraceListenerTest . But I believe
 
5032
 those failures are due to a glitch in my test directory
 
5033
 since they also happen when I run the D13 code there,
 
5034
 whereas D13 runs fine in the directory where I built it.
 
5035
 I'm going to assume that "same result is no new bug"
 
5036
 for now.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref
 
5037
 DTMDefaultBaseTraversers.java<br/><ref>Committer's log entry: </ref>Found the glitch causing the axes108 bug -- exptype/type.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Added option to set the recursion limit (which we're having trouble with
 
5038
 right now; the code that supported it seems to be disabled...) and
 
5039
 selfdoc for this and a few other newer options.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>11/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>Catch exceptions from the output content handler in flush(), and throw a
 
5040
 SAXParseException with line numbers filled in.
 
5041
 If we don't do this, and the exception is a RuntimeException,
 
5042
 good line numbers of where the exception occured in the stylesheet
 
5043
 won't get reported. I tried just catching RuntimeException, but
 
5044
 for whatever reason it didn't seem to catch.
 
5045
 Fix for Christina's DOMException error problem.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Added: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm
 
5046
 DOM2DTMdefaultNamespaceDeclarationNode.java<br/><ref>Committer's log entry: </ref>Moved default namespace declaration node object out of its "inner
 
5047
 class" status, since I think I want to perform an instanceof test on it.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
5048
 DTMManagerDefault.java
 
5049
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
5050
 java/src/org/apache/xpath XPathAPI.java<br/><ref>Added: </ref>java/src/org/apache/xpath CachedXPathAPI.java<br/><ref>Committer's log entry: </ref>Bugzilla 4336 -- fix for presenting symptom (since the implicit
 
5051
 xml: declaration pseudo-DOM node is resynthesized in each
 
5052
 DTM, find the _corresponding_ node), and a first draft of
 
5053
 CachedXPathAPI which should be a fix for the larger symptom
 
5054
 (XPathAPI creates a new DTM every time, which is potentially
 
5055
 very ugly for applications that want to run XPaths repeatedly
 
5056
 on a single document).
 
5057
 
 
5058
 Also caught and fixed another node-handle/node-identity confusion.
 
5059
 The fact that DTM.get...() allowed us to be sloppy about that
 
5060
 distinction in the past means there may still be a few others lurking
 
5061
 in the code. Ye gods, I _wish_ Java had typedef!<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMNodeProxy.java<br/><ref>Committer's log entry: </ref>Minor tweaks<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib Redirect.java<br/><ref>Committer's log entry: </ref>Patch to enable optional 'append' attribute on redirect:open and
 
5062
 redirect:write elements to append to file; note that behavior may
 
5063
 not be what you expect when using xml output, since the xml decl
 
5064
 will currently be output *each* time you newly write to the file
 
5065
 Submitted by: jpvdm@iafrica.com<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMNodeProxy.java<br/><ref>Committer's log entry: </ref>Implement getDocumentElement. If the DTM doesn't represent a
 
5066
 wellformed Document, this call is undefined and throws an exception...
 
5067
 which isn't DOMlike but that's a non-DOMlike situation.<br/><br/></li></ul><note>This release includes no updates of the compatibility source code (now deprecated).</note>
 
5068
</s2>
 
5069
<s2 title="Changes for &xslt4j; 2.2.D12 and 2.2.D13">
 
5070
<p>&xslt4j; 2.2.D13 is intended to be the final release in the current series of Developer releases incorporating
 
5071
     the <link idref="dtm">DTM</link>. We believe Xalan with the DTM has reached a level of stability that warrants a                                                          
 
5072
     standard "User" release. Accordingly, we plan to release &xslt4j; 2.2 soon.</p>
 
5073
     <p>Beginning with this release, xalan.jar contains just the &xslt4j; implementation. The source files for the SAX level 2, DOM 2, 
 
5074
     and JAXP 1.1 interfaces are pulled from the xml-commons repository (<resource-ref idref="xmlapirepository"/>), and are built as
 
5075
     xml-apis.jar. These interfaces are shared by a number of tools, so placing them in their own jar simplifies coordination and reduces 
 
5076
     the risk of duplication. <em>To run &xslt4j;, you must add xml-apis.jar to your classpath.</em> See <link idref="getstarted"
 
5077
     anchor="classpath">Setting up the system class path</link>.</p>
 
5078
     <p>Beginning with this release, we are shipping two distribution files; a binary
 
5079
     distribution file, which includes everything needed to run &xslt4j; and build applications, and a source distribution. For
 
5080
     more information, see <link idref="downloads">Downloading what you need</link>.</p>
 
5081
     <p>This release also includes <link idref="samples" anchor="validatexmlinput">ValidateXMLInput</link>, a sample that illustrates 
 
5082
     how you can verify that the XML input you are transforming adheres to its document type. It is in the samples/validate subdirectory
 
5083
     along with a Validate utility that you can use to validate XML files without performing a transformation.</p>     
 
5084
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath VariableStack.java<br/><ref>Committer's log entry: </ref>Bugzilla3995: Removed "final" keywords. That doesn't by itself
 
5085
 provide the requested enhancement, but it makes prototyping one
 
5086
 a bit easier.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Bugzilla 3384. See comments in the toDouble method; I suspect this may be 
 
5087
wasted micro-optimization.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Is " 12 34 . 56 78 " really considered acceptable?
 
5088
 Or should whitespace within the value be treated as NAN?<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>Updated build number to 2.2.D12.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>Updated build number to 2.2.D12.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemLiteralResult.java<br/><ref>Committer's log entry: </ref>Fix for Bugzilla1133, LRE21: xsl:extension-element-prefixes should be 
 
5089
considered an exclusion<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemLiteralResult.java<br/><ref>Committer's log entry: </ref>Fix for Bugzilla 3464. Exposes errors in conformance tests namespace93 and 94.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>10/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize CharInfo.java
 
5090
 HTMLEntities.res XMLEntities.res<br/><ref>Committer's log entry: </ref>Fix Bugzilla#4000, force reading of *Entites.res to be in UTF-8; added 
 
5091
comments
 
5092
 PR: Bugzilla#4000<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Avoid overgenerality of isDigits
 
5093
 Combine most character tests into a single switch for performance
 
5094
 Reject values with embedded (as opposed to leading/trailing) whitespace.
 
5095
 
 
5096
 Note that this is "more correct:" than the old solution of calling Java's
 
5097
 toDouble, since (I think) XSLT doesn't officially accept leading + or
 
5098
 scientific notation. If folks want to accept those notations, an
 
5099
 extension function specifically for that purpose seems the
 
5100
 simplest/safest/most-portable solution.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Gaaah. Typo.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>10/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java
 
5101
 java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Added: </ref>java/src/org/apache/xalan Version.java<br/><ref>Committer's log entry: </ref>Added new org.apache.xalan.Version class for better versioning info;
 
5102
 Deprecated org.apache.xalan.processor.XSLProcessorVersion;
 
5103
 Updated EnvironmentCheck with this info<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan Version.java<br/><ref>Committer's log entry: </ref>Be careful with parentheses when using ?: operator.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java
 
5104
 IncrementalSAXSource_Xerces.java<br/><ref>Removed: </ref>java/src/org/apache/xml/dtm/ref CoroutineSAXParser.java
 
5105
 CoroutineSAXParser_Xerces.java<br/><ref>Committer's log entry: </ref>CoroutineParser API was replaced by IncrementalSAXSource; dropping obsolete 
 
5106
code.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/18/2001<br/><ref>Removed: </ref>java/src/org/apache/xml/dtm/ref CoroutineSAXFilterTest.java<br/><ref>Committer's log entry: </ref>CoroutineParser API was replaced by IncrementalSAXSource; dropping obsolete 
 
5107
code.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan Version.java<br/><ref>Committer's log entry: </ref>Whups; sloppy: Actually, problem was that the latter two arguments to ?:
 
5108
 must agree in datatype. Dropped in a quick-and-dirty int-to-string hint.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Preliminary Xerces-2 support. Doesn't leverage Xerces-2 incremental features
 
5109
 yet, but should at least compile and run under the new parser without
 
5110
 breaking support for the old one. Still working on improving this.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemApplyTemplates.java
 
5111
 ElemCallTemplate.java<br/><ref>Committer's log entry: </ref>Bugzilla 4218: Make sure that the stack frame gets restored to the frame that 
 
5112
was previously set. Just calling unlink() may restore to the wrong frame, and 
 
5113
get us out of synch.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/xml/sax/helpers ParserAdapter.java<br/><ref>Committer's log entry: </ref>Java 1.1.8 back-compatability requires not using Java 1.2 collection calls.
 
5114
 (Still waiting for community consensus before abandoning 1.1)<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>10/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath VariableStack.java<br/><ref>Committer's log entry: </ref>Bugzilla 4218: Make sure that the stack frame gets restored to the frame that 
 
5115
was previously set. Just calling unlink() may restore to the wrong frame, and 
 
5116
get us out of synch.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref
 
5117
 IncrementalSAXSource_Xerces.java<br/><ref>Committer's log entry: </ref>In Xerces2, SAXParser no longer seems to inherit from
 
5118
 XMLReader; explicit casts needed to work around that.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>10/23/2001<br/><ref>Removed: </ref>java/src/javax/xml/parsers SAXParserFactory.java
 
5119
 SAXParser.java ParserConfigurationException.java
 
5120
 package.html FactoryFinder.java
 
5121
 FactoryConfigurationError.java
 
5122
 DocumentBuilderFactory.java DocumentBuilder.java<br/><ref>Committer's log entry: </ref>Remove javax.xml.parsers package from xalan sources since we no longer ship 
 
5123
with these files<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize CharInfo.java<br/><ref>Committer's log entry: </ref>Microsoft VJ++ workaround. Should never arise in any reasonably
 
5124
 standards-compliant Java environment, but VJ++ isn't...<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize CharInfo.java<br/><ref>Committer's log entry: </ref>Additional "big scary" docs for Microsoft VJ++ workaround.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>10/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler XPathParser.java<br/><ref>Committer's log entry: </ref>Added fix for bug reported by Myriam for match="//x/a" patterns. On the
 
5125
 second "/" on "//", the parser wasn't swallowing the token, which caused
 
5126
 the "x" pattern to be ancestor instead of parent. If you don't have this fix,
 
5127
 it will cause 'a' to be matched when it has any ancestor that is 'x'.
 
5128
 This fix should be localized to only match patterns. The reason this probably
 
5129
 wasn't reported before, is because "//" at the head of a match pattern is
 
5130
 pretty useless, "x/a" being equivelent.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>10/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToHTML.java<br/><ref>Committer's log entry: </ref>By longstanding request, don't URL-escape spaces. This is consistent with the
 
5131
 specification, and the opinion of the right thing to do by several people on 
 
5132
the
 
5133
 XSL working group, including Mike Kay, and by the LotusXSLTeam.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLTElementDef.java<br/><ref>Committer's log entry: </ref>Improved safety net: When running with Xerces2, the "uri" field may be null.
 
5134
 (Also reordered tests to encourage optimization of code.)<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Add command-line switches for the options introduced at same time as DTM, to 
 
5135
make testing those features easier.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>11/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor StylesheetPIHandler.java<br/><ref>Committer's log entry: </ref>Bugzilla 4575: Add the EOL character to the list of token delimiters.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java
 
5136
 IncrementalSAXSource_Xerces.java<br/><ref>Committer's log entry: </ref>Leverage Xerces-2 incremental parsing feature, when possible,
 
5137
 
 
5138
 Making this compile _and_ run under both the old and new versions of
 
5139
 the parser involves a lot of reflection... especially since Xerces-2
 
5140
 no longer provides a way to directly request incremental delivery
 
5141
 of SAX events; we now have to assemble that concept ourselves,
 
5142
 using XNI components.
 
5143
 
 
5144
 Note that if you pass an existing Xerces-2 SAXParser into the
 
5145
 IncrementalSAXSource_Xerces wrapper, there is currently no way
 
5146
 for us to access its incremental controls. In that case, we are
 
5147
 forced to fall back on the _Filter solution and coroutines.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>11/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForFSB.java<br/><ref>Committer's log entry: </ref>Bugzilla 4396: Defaulting to the super hashCode(). This causes us to create 
 
5148
a string, but at this point this only seems to get called in key processing. 
 
5149
Maybe we can live with it?<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>11/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>Use appropriate context class loader as done in JAXP's FactoryFinder;
 
5150
 Added various new jars; added checkAntVersion()<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>11/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize HTMLEntities.res<br/><ref>Committer's log entry: </ref>Commented out mainly greek entities that Netscape seems not to handle.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>11/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize Encodings.java
 
5151
 SerializerToHTML.java SerializerToText.java
 
5152
 SerializerToXML.java<br/><ref>Committer's log entry: </ref>Progress on Bugzilla Bug 1639 : Xalan escaping characters for ISO encodings 
 
5153
other than ISO-8859-1.
 
5154
 
 
5155
 The problem is that you can't tell from the Java Writers if they can encode
 
5156
 a character, and you can't tell which character they are going to encode to.
 
5157
 So...
 
5158
 
 
5159
 Do a one-time-only reflection to see if a sun.io.CharToByteConverter for the
 
5160
 specific encoding is available. I'm hoping this will work for most or all
 
5161
 platforms... but only some extensive testing will tell for sure. If the
 
5162
 CharToByteConverter is not available, it falls back to the old behavior.
 
5163
 If it is available, use the canConvert method to see if the UTF-16 character
 
5164
 can be encoded. If it can be, just send it to the writer, otherwise escape 
 
5165
it.
 
5166
 This doesn't need to be done for &lt; 128, so I'm suspecting the performance
 
5167
 hit won't be too bad.
 
5168
 
 
5169
 The alternative is to create lookups for all the encodings that tell which
 
5170
 blocks of characters can't be encoded. Too much work for me this
 
5171
 weekend, though it remains a possibility. I want to try the use of
 
5172
 CharToByteConverter.canConvert first.
 
5173
 
 
5174
 One problem I've encountered is that CharToByteConverter.canConvert
 
5175
 returns true for (utf-16 code points) 127-159. And so they go unescaped.
 
5176
 How bad of a problem is this? This seems like a bug in the Java
 
5177
 CharToByteConverter for ISO-8859-7.
 
5178
 
 
5179
 It remains to be seen if this problem exists with other encodings, or if this 
 
5180
is
 
5181
 the best approach.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>11/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToXML.java<br/><ref>Committer's log entry: </ref>Check for control characters for canConvert, and return false if it is a 
 
5182
control
 
5183
 character, so that it will be escaped.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>11/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Don't set the ErrorHandler if it is already set.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>11/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Minor fix to JavaDoc for setRecursionLimit.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/operations Operation.java
 
5184
 UnaryOperation.java<br/><ref>Committer's log entry: </ref>Bugzilla 4679: Accessors for left and right operands<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>11/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToHTML.java<br/><ref>Committer's log entry: </ref>Do not escape the percent '%' character anymore.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>11/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes LocPathIterator.java
 
5185
 OneStepIterator.java PredicatedNodeTest.java<br/><ref>Committer's log entry: </ref>Bugzilla 4638: When we are in a subcontext we need to clip off the predicate 
 
5186
when evaluating. If not, we end up with the wrong nodeset. This also relates to 
 
5187
test position68.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
5188
 ClonerToResultTree.java ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>Bugzilla 4607; allow explicitly cloning namespace nodes rather than
 
5189
 throwing exception.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>11/07/2001<br/><ref>Removed: </ref>java/src/META-INF/services
 
5190
 javax.xml.parsers.SAXParserFactory
 
5191
 javax.xml.parsers.DocumentBuilderFactory<br/><ref>Committer's log entry: </ref>Remove services/javax.xml.parsers.* references; we assume parsers have their 
 
5192
own<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>11/07/2001<br/><ref>Removed: </ref>java/src/javax/xml/transform ErrorListener.java
 
5193
 FactoryFinder.java OutputKeys.java Result.java
 
5194
 Source.java SourceLocator.java Templates.java
 
5195
 Transformer.java
 
5196
 TransformerConfigurationException.java
 
5197
 TransformerException.java TransformerFactory.java
 
5198
 TransformerFactoryConfigurationError.java
 
5199
 URIResolver.java overview.html package.html
 
5200
 java/src/javax/xml/transform/dom DOMLocator.java
 
5201
 DOMResult.java DOMSource.java package.html
 
5202
 java/src/javax/xml/transform/sax SAXResult.java
 
5203
 SAXSource.java SAXTransformerFactory.java
 
5204
 TemplatesHandler.java TransformerHandler.java
 
5205
 package.html
 
5206
 java/src/javax/xml/transform/stream StreamResult.java
 
5207
 StreamSource.java package.html
 
5208
 java/src/org/w3c/dom Attr.java CDATASection.java
 
5209
 CharacterData.java Comment.java DOMException.java
 
5210
 DOMImplementation.java Document.java
 
5211
 DocumentFragment.java DocumentType.java
 
5212
 Element.java Entity.java EntityReference.java
 
5213
 NamedNodeMap.java Node.java NodeList.java
 
5214
 Notation.java ProcessingInstruction.java Text.java
 
5215
 package.html
 
5216
 java/src/org/w3c/dom/ranges DocumentRange.java Range.java
 
5217
 RangeException.java package.html
 
5218
 java/src/org/w3c/dom/traversal DocumentTraversal.java
 
5219
 NodeFilter.java NodeIterator.java TreeWalker.java
 
5220
 package.html
 
5221
 java/src/org/xml/sax AttributeList.java Attributes.java
 
5222
 ContentHandler.java DTDHandler.java
 
5223
 DocumentHandler.java EntityResolver.java
 
5224
 ErrorHandler.java HandlerBase.java InputSource.java
 
5225
 Locator.java Parser.java SAXException.java
 
5226
 SAXNotRecognizedException.java
 
5227
 SAXNotSupportedException.java
 
5228
 SAXParseException.java XMLFilter.java
 
5229
 XMLReader.java package.html
 
5230
 java/src/org/xml/sax/ext DeclHandler.java
 
5231
 LexicalHandler.java package.html
 
5232
 java/src/org/xml/sax/helpers AttributeListImpl.java
 
5233
 AttributesImpl.java DefaultHandler.java
 
5234
 LocatorImpl.java NamespaceSupport.java
 
5235
 ParserAdapter.java ParserFactory.java
 
5236
 XMLFilterImpl.java XMLReaderAdapter.java
 
5237
 XMLReaderFactory.java package.html<br/><ref>Committer's log entry: </ref>Use a condensed copy of xml-commons sources instead of individual sources;
 
5238
 remove xalan-specific copies of commons files<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTErrorResources.java
 
5239
 java/src/org/apache/xalan/templates ElemNumber.java
 
5240
 java/src/org/apache/xml/utils/res XResources_cy.java
 
5241
 XResources_el.java XResources_ja_JP_A.java
 
5242
 XResources_ja_JP_HA.java XResources_ja_JP_HI.java
 
5243
 XResources_ja_JP_I.java XResources_zh_CN.java
 
5244
 XResources_zh_TW.java<br/><ref>Committer's log entry: </ref>Bugzilla 4601: Change ElemNumber to use a long integer for the value of the 
 
5245
number. This will allow us to format bigger numbers. As far as japanese 
 
5246
multipliers, we decided to document as a xalan limitation the fact that the 
 
5247
last 2 japanese multipliers will not be supported. If anyone has a strong and 
 
5248
valid user case for this, we will reconsider. For now, we could not justify the 
 
5249
expense of moving to BigInteger to support these multipliers.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
5250
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Bugzilla 4735: We should at least report an error when we overflow DTM 
 
5251
addressing...<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor ProcessorInclude.java<br/><ref>Committer's log entry: </ref>Bugzilla 4355: Make sure that when finding out if a stylesheet imports 
 
5252
itself, we use the resolved href.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>11/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath NodeSetDTM.java<br/><ref>Committer's log entry: </ref>Bugzilla 4158: Make sure we get the current, not the node pointed to by 
 
5253
m_next, which has been already incremented.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>Bugzilla 4344: discard attrs which don't have an element to belong to<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>Bugzilla 4344: more efficient.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>Reorder slightly and add test to not synthesize xmlns:xsl declaration
 
5254
 if one was already present on the DOM's root element.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan Version.java<br/><ref>Committer's log entry: </ref>D13 internal version number update<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>11/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>D13 internal version number update<br/><br/></li></ul><note>This release includes no updates of the compatibility source code (now deprecated).</note>
 
5255
</s2>
 
5256
<s2 title="Changes for &xslt4j; 2.2.D11">
 
5257
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>09/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
5258
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
5259
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Removed the code which precalculated node levels
 
5260
 (depth in tree). This has been IFed out for some time, but
 
5261
 was retained in case we wanted to go back to it. Since it
 
5262
 seems we're happy with this choice, zapping it entirely
 
5263
 saves a few more cycles.
 
5264
 
 
5265
 It's simple enough to recreate if we change our minds later.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>09/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>Minor cleanup and updates in preparation for extension function;
 
5266
 note SAX portion isn't complete yet<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>09/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib Extensions.java
 
5267
 java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>Update EnvironmentCheck service with SAX checking; better method organization;
 
5268
 Add checkEnvironment to xalan: built-in Extensions class<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler Lexer.java<br/><ref>Committer's log entry: </ref>Bug 2140: Catch index out of bounds exception<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>Bug 2130: Check for null data to avoid NPE<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTErrorResources.java
 
5269
 java/src/org/apache/xalan/templates ElemElement.java<br/><ref>Committer's log entry: </ref>Bug 3421: Issue an error if namespace attribute is used with an empty string 
 
5270
in xsl:element<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemElement.java<br/><ref>Committer's log entry: </ref>Backing out this change. Some conformance tests need to be updated first<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemElement.java<br/><ref>Committer's log entry: </ref>Bug 3421: Issue an error if namespace
 
5271
 attribute is used with an empty string in xsl:element<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemTemplateElement.java<br/><ref>Committer's log entry: </ref>Bug 3442: when building the prefix table for an element, just override 
 
5272
prefixes defined in parent element with uris that have been redefined by the 
 
5273
element instead of keeping both uris in the table.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>09/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerFactory.java<br/><ref>Committer's log entry: </ref>Fix Bugzilla 3491: updated error message text; also updated Javadoc to
 
5274
 reflect @throws; note that the Javadoc is still somewhat contradictory
 
5275
 about returning a null on error (it appears to throw exceptions instead)
 
5276
 PR:3491
 
5277
 Submitted by:Julian.Birch@ranplc.co.uk<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>09/13/2001<br/><ref>Modified: </ref>java/src/javax/xml/transform TransformerFactory.java
 
5278
 java/src/org/apache/xml/dtm DTMManager.java<br/><ref>Committer's log entry: </ref>Fix Bugzilla 3423: documentation updates for proper class, property names
 
5279
 (one of two checkins)
 
5280
 PR:3423
 
5281
 Submitted by:gthb@dimon.is<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>09/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath XPath.java<br/><ref>Committer's log entry: </ref>Fix Bugzilla 2637: documentation updates for constructor functionality
 
5282
 PR:2637
 
5283
 Submitted by:gthb@dimon.is<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemUse.java<br/><ref>Committer's log entry: </ref>Bug 2548: Combine attribute sets with the same name but process them in order 
 
5284
of precedence.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes UnionPathIterator.java<br/><ref>Committer's log entry: </ref>Bug 3533: Check for null m_iterators before trying to use it.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer KeyRefIterator.java<br/><ref>Committer's log entry: </ref>Bugzilla 3618: Check cache before anything else when getting the next node in 
 
5285
the iterator.<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 TransletException.java<br/><ref>Committer's log entry: </ref>Changed the TransletException class so that it inherits from SAXException
 
5286
 and not from Exception. This should make it possible for us to avoid
 
5287
 testing for both SAXExceptions and TransletExceptions. Exception handling
 
5288
 is one of the things that JVM takes its time with, and we should try to
 
5289
 avoid using them when we can, and use as few of them as possible otherwise.
 
5290
 PR: n/a
 
5291
 Obtained from: n/a
 
5292
 Submitted by: morten@xml.apache.org
 
5293
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
5294
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Bugzilla 2332: Implement getAttribute() method to return the values for 
 
5295
incremental and optimize<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMNodeProxy.java<br/><ref>Committer's log entry: </ref>Enable Attr.getOwnerElement()<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor StylesheetHandler.java
 
5296
 java/src/org/apache/xalan/templates ElemLiteralResult.java<br/><ref>Committer's log entry: </ref>Bugzilla 1803: Handle version attribute on a litteral element.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>release 2.2.D11<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>09/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>release 2.2.D11<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLTSchema.java<br/><ref>Committer's log entry: </ref>Mark xsl:template as containing ordered elements. Fix for no error when 
 
5297
xsl:param not first child of xsl:template<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemLiteralResult.java
 
5298
 ElemTemplateElement.java Stylesheet.java<br/><ref>Committer's log entry: </ref>Bugzilla 3800: Make sure that when looking for excluded prefixes, we check 
 
5299
the URI associated with the prefix, not the prefix in the excluded list.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>09/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath NodeSetDTM.java<br/><ref>Committer's log entry: </ref>Do not reorder or strip duplicate nodes when converting a DOM nodelist into a 
 
5300
DTM nodelist<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref
 
5301
 IncrementalSAXSource_Filter.java<br/><ref>Committer's log entry: </ref>Catch for unwrappered StopException (apparently not all parsers generate
 
5302
 a SAXException wrapper).<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>10/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
5303
 DTMDefaultBaseIterators.java
 
5304
 DTMDefaultBaseTraversers.java
 
5305
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
5306
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Creating the implied Namespace Node for xml:<br/><br/></li></ul><note>This release includes no updates of the compatibility source code (now deprecated).</note>
 
5307
</s2>
 
5308
<s2 title="Changes for &xslt4j; 2.2.D10">
 
5309
<note>The SQL Extension library has been updated to work with DTM.</note>
 
5310
<p> Core (Non-XSLTC) source code updates:</p><ul>
 
5311
<li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>08/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Fix bugzilla bug 3056 
 
5312
(http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3056). SAX2DTM now keeps 
 
5313
track if it is receiving events inside a DTD and ignores comment events when 
 
5314
inside the DTD.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>Update version for 2.2.D9 build<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>08/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ConnectionPool.java
 
5315
 DefaultConnectionPool.java SQLDocument.java
 
5316
 XConnection.java<br/><ref>Committer's log entry: </ref>Fixed bug in connect method where User and Password were not
 
5317
 correctly being passed to the JDBC Driver. Requires chnage in
 
5318
 ConnectionPool Interface
 
5319
 Submitted by: John Gentilin<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/15o2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql XConnection.java<br/><ref>Committer's log entry: </ref>Use defined constant DTMManager.IDENT_DTM_NODE_BITS for shifting DTM nodes, 
 
5320
not hard coded value.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SystemIDResolver.java<br/><ref>Committer's log entry: </ref>Fix problem with resolving a relative URI from a processing instruction<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SystemIDResolver.java<br/><ref>Committer's log entry: </ref>Make sure base is not null before checking for its contents.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates FuncDocument.java<br/><ref>Committer's log entry: </ref>Fix document function so that if only one argument is passed and it is a 
 
5321
nodetest, the base to be used to resolve relative URIs is the base of the each 
 
5322
node in the nodeset.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLTSchema.java<br/><ref>Committer's log entry: </ref>Allow multiple iterations of xsl:with-param within an xsl:call-template or 
 
5323
xsl:apply-template<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>Added getCurrentNodeList() for getting the current node list as defined
 
5324
 by http://www.w3.org/TR/xslt#dt-current-node-list.
 
5325
 This looks up the stack of the SubContextLists to find the top-level
 
5326
 LocPathIterator. I'm fairly unhappy with this fix, and hope to restructure
 
5327
 the context list stuff a bit to avoid the casts in the getCurrentNodeList(),
 
5328
 and to fix getCurrentNode() so that it properly defines the current
 
5329
 node as defined by the XSLT spec. As a matter of fact, I would
 
5330
 like to break up XPathContext into an XSLTContext.
 
5331
 Part of the http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3031
 
5332
 fix.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/functions FuncCurrent.java<br/><ref>Committer's log entry: </ref>Call new XPathContext#getCurrentNodeList. Fixes
 
5333
 http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3031.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer KeyRefIterator.java
 
5334
 java/src/org/apache/xpath/axes ChildIterator.java
 
5335
 ChildTestIterator.java DescendantIterator.java
 
5336
 MatchPatternIterator.java
 
5337
 SelfIteratorNoPredicate.java UnionPathIterator.java<br/><ref>Committer's log entry: </ref>Fix for problem reported by Mike Starr &lt;mike.starr@air2web.com&gt;,
 
5338
 where the transformation hangs for "foo[2] | bang"
 
5339
 patters, i.e. unions with positional predicates. The fix
 
5340
 is to have the iterators#nextNode() set m_lastFetched to DTM.NULL
 
5341
 when m_foundLast is found to be true on function entry
 
5342
 (after the cache check). This allows getCurrentNode() to
 
5343
 fullfill it's contract of returning null if the last fetch was
 
5344
 null. The bug occured after an optimization for positional
 
5345
 predicates to have them not continue searching once
 
5346
 the positional node was found, by setting m_foundLast
 
5347
 to true.<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>08/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Removed debug flag
 
5348
 Submitted by:John Gentilin<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>08/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java
 
5349
 XConnection.java<br/><ref>Committer's log entry: </ref>Fixed Streaming Mode
 
5350
 Submitted by: John Gentilin<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>08/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm DTM.java
 
5351
 java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
5352
 DTMDocumentImpl.java DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>added document registration and release events to the DTM interface
 
5353
 Submitted by: John Gentilin<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>08/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib Extensions.java<br/><ref>Committer's log entry: </ref>Fix bug 3112 (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3112). Fix 
 
5354
tokenize to work with DTM by obtaining a new DocumentBuilder and not using the 
 
5355
document from the context node.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>08/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath VariableStack.java
 
5356
 java/src/org/apache/xpath/operations Variable.java<br/><ref>Committer's log entry: </ref>Fix bug 3265 (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3265). Using 
 
5357
an expression in the evaluate extension function that contains a top-level 
 
5358
variable was cause an NPE.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XStringForChars.java<br/><ref>Committer's log entry: </ref>Fixed two bugs, one in getChars and one in charAt where the m_start
 
5359
 offset wasn't being used correctly. This manifested itself in some
 
5360
 stuff I was doing with the startsWith function, but likely caused
 
5361
 many other bugs with other functionality.<br/><br/></li><li><ref>Committed by </ref>morten@apache.org<ref> on </ref>08/27/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xsltc StripFilter.java<br/><ref>Committer's log entry: </ref>Forgot to add this file in my last putback.
 
5362
 PR: n/a
 
5363
 Obtained from: n/a
 
5364
 Submitted by: morten@xml.apache.org
 
5365
 Reviewed by: morten@xml.apache.org<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java<br/><ref>Committer's log entry: </ref>added dumpNode method, convenience for debugging.
 
5366
 
 
5367
 We might want to move this function up to DTMDefaultBase, or
 
5368
 perhaps to the DTM API itself.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToText.java<br/><ref>Committer's log entry: </ref>Fix http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3131 by
 
5369
 overriding writeNormalizedChars and writeUTF16Surrogate to
 
5370
 not do any XML escaping.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java<br/><ref>Committer's log entry: </ref>The index was being stored as opposed to the node handle when we were 
 
5371
replacing namespace nodes. Store the actual node handle.<br/><br/></li>
 
5372
<li><ref>Committed by</ref> mmidy@apache.org<ref> on </ref>08/29/2001<br/><ref>Modified: </ref>
 
5373
java/src/org/apache/xpath/compiler Lexer.java<br/><ref>Committer's log entry: </ref>Fix for Bugzilla 2684 StringIndexOutOfBounds Exception. Check if we are at the end of the pattern string.<br/><br/></li>
 
5374
</ul><note>This release includes no updates of the compatibility source code (now deprecated).</note>
 
5375
</s2>
 
5376
<s2 title="Changes for &xslt4j; 2.2.D9">
 
5377
<p> Core (Non-XSLTC) source code updates:</p>
 
5378
<ul><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>2.2.D8<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>2.2.D8<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer NodeSortKey.java<br/><ref>Committer's log entry: </ref>Submitted fix for http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2851.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Just added some stuff to diagnose bugs for flavor th.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes WalkerFactory.java
 
5379
 java/src/org/apache/xpath/compiler Compiler.java
 
5380
 java/src/org/apache/xpath/patterns
 
5381
 ContextMatchStepPattern.java StepPattern.java<br/><ref>Committer's log entry: </ref>These are changes submitted (offline) by Mukund Raghavachari/Watson/IBM@IBMUS.
 
5382
 
 
5383
 This fixes a bug with match="chapter//footnote[1]" patterns.
 
5384
 
 
5385
 The main change here is minor to remove the automatic attachment of parent::* 
 
5386
to simple step patterns.
 
5387
 
 
5388
 He has re-implemented executePredicates to be
 
5389
 more efficient. Given a pattern such as row[6], it
 
5390
 does not iterate over the entire axis until it reaches
 
5391
 the node to see if it is the sixth node. Rather,
 
5392
 starting from the current node, it works backwards
 
5393
 (preceding siblings) until it either runs out of nodes
 
5394
 or finds more than six nodes that match the
 
5395
 predicate [I can explain it better if desired].
 
5396
 This optimization improves performance slightly
 
5397
 overall. It helps decoy and patterns most (by
 
5398
 about 10%).
 
5399
 
 
5400
 The other optimization that I implemented was the
 
5401
 following. For a pattern foo[][3][][4] ..., where more
 
5402
 than one predicate is a number (position check),
 
5403
 in checking the predicate [4], the fact that the
 
5404
 current node has passed foo[][3] implies that it is
 
5405
 the only node that is the third node among its
 
5406
 siblings that passes foo[]. Therefore, any
 
5407
 subsequent position checks can be true if and
 
5408
 only if the position is [1]. This optimization is not
 
5409
 used by the xsltmark benchmarks and so does
 
5410
 not offer any performance benefits.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes DescendantIterator.java<br/><ref>Committer's log entry: </ref>Fix for http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1336<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler Lexer.java<br/><ref>Committer's log entry: </ref>Resize the m_patternMap if m_patternMapSize exceeds the bounds.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions
 
5411
 ExtensionHandlerGeneral.java
 
5412
 ExtensionHandlerJavaPackage.java
 
5413
 ExtensionsTable.java MethodResolver.java
 
5414
 java/src/org/apache/xalan/lib Extensions.java
 
5415
 java/src/org/apache/xalan/lib/sql ConnectionPoolManager.java
 
5416
 java/src/org/apache/xalan/processor ProcessorLRE.java
 
5417
 ProcessorTemplateElem.java StylesheetHandler.java
 
5418
 TransformerFactoryImpl.java XSLTAttributeDef.java
 
5419
 XSLTElementProcessor.java
 
5420
 java/src/org/apache/xalan/res XSLTErrorResources.java
 
5421
 java/src/org/apache/xalan/serialize CharInfo.java
 
5422
 WriterToUTF8Buffered.java
 
5423
 java/src/org/apache/xalan/templates ElemExtensionCall.java
 
5424
 ElemExtensionDecl.java ElemMessage.java
 
5425
 FuncDocument.java FuncFormatNumb.java
 
5426
 OutputProperties.java StylesheetRoot.java
 
5427
 java/src/org/apache/xalan/transformer TrAXFilter.java
 
5428
 TransformerHandlerImpl.java
 
5429
 TransformerIdentityImpl.java TransformerImpl.java
 
5430
 java/src/org/apache/xalan/xslt Process.java
 
5431
 java/src/org/apache/xml/dtm DTMException.java
 
5432
 DTMManager.java
 
5433
 java/src/org/apache/xml/dtm/ref ChunkedIntArray.java
 
5434
 CoroutineManager.java CoroutineSAXParser.java
 
5435
 CoroutineSAXParser_Xerces.java DTMBuilder.java
 
5436
 DTMDefaultBase.java DTMDefaultBaseIterators.java
 
5437
 DTMDefaultBaseTraversers.java
 
5438
 DTMManagerDefault.java
 
5439
 IncrementalSAXSource_Filter.java
 
5440
 IncrementalSAXSource_Xerces.java
 
5441
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java
 
5442
 java/src/org/apache/xml/utils ObjectPool.java QName.java
 
5443
 URI.java
 
5444
 java/src/org/apache/xpath NodeSet.java NodeSetDTM.java
 
5445
 VariableStack.java XPath.java XPathContext.java
 
5446
 java/src/org/apache/xpath/axes WalkerFactory.java
 
5447
 java/src/org/apache/xpath/functions FuncSubstring.java
 
5448
 FunctionDef1Arg.java
 
5449
 java/src/org/apache/xpath/objects
 
5450
 XRTreeFragSelectWrapper.java XStringForChars.java
 
5451
 java/src/org/apache/xpath/operations Variable.java
 
5452
 java/src/org/apache/xpath/res XPATHErrorResources.java<br/><ref>Committer's log entry: </ref>Getting all (almost all) error message strings into the resource bundle<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>07/27/2001<br/><ref>Removed: </ref>java/src/org/apache/xml/dtm/ref DTMBuilder.java<br/><ref>Committer's log entry: </ref>Accidentally added. Now deleting.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath Expression.java
 
5453
 java/src/org/apache/xpath/axes AxesWalker.java
 
5454
 LocPathIterator.java PredicatedNodeTest.java
 
5455
 ReverseAxesWalker.java
 
5456
 java/src/org/apache/xpath/objects XNumber.java
 
5457
 java/src/org/apache/xpath/operations Variable.java<br/><ref>Committer's log entry: </ref>If a proximity predicate is a stable number (variable or number literal) then,
 
5458
 once the node is found, don't keep searching! (since only one
 
5459
 node is possible).<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java<br/><ref>Committer's log entry: </ref>In getNextNamespaceNode and getFirstNamespaceNode, was
 
5460
 sometimes returning a node without the DTM identity bits.
 
5461
 Fix for http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2878.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler OpMap.java<br/><ref>Committer's log entry: </ref>Throw real error instead of runtime error in getFirstPredicateOpPos
 
5462
 for better error reporting.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes PredicatedNodeTest.java
 
5463
 java/src/org/apache/xpath/compiler OpMap.java<br/><ref>Committer's log entry: </ref>Bit of a hack to make /descendant-or-self::north with getFirstPredicateOpPos
 
5464
 where getFirstPredicateOpPos was always throwing an error if
 
5465
 there was not a predicate (!! Should have been discovered before
 
5466
 now?!?!). If -2 return -2 (instead of throwing an error), and
 
5467
 handle this case in PredicatedNodeTest#initPredicateInfo.<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ObjectArray.java
 
5468
 SQLDocument.java SQLErrorDocument.java
 
5469
 XConnection.java<br/><ref>Committer's log entry: </ref>Added the original pquery and streaming mode functionality
 
5470
 Submitted by: John Gentilin<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/30/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/lib/sql DTMDocument.java<br/><ref>Committer's log entry: </ref>Added DTM Document, a common impl between SQLDocument and SQLErrorDocument
 
5471
 Submitted by: John Gentilin<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/30/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes DescendantIterator.java
 
5472
 WalkerFactory.java<br/><ref>Committer's log entry: </ref>Fix addresses http://nagoya.apache.org/bugzilla/enter_bug.cgi?product=XalanJ2,
 
5473
 and a whole class of related problems.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XNodeSet.java XObject.java
 
5474
 java/src/org/apache/xpath/patterns StepPattern.java<br/><ref>Committer's log entry: </ref>Detach expressions in match patterns. Also, defined
 
5475
 numWithSideEffects and boolWithSideEffects (for lack of
 
5476
 better names) that will increment the iterator, and call these
 
5477
 for predicates. The combination of these results in about an
 
5478
 18% performance improvement for decoy.xsl.
 
5479
 Credits to Mukund Raghavachari/Watson/IBM@IBMUS.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>07/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions
 
5480
 ExtensionHandlerGeneral.java
 
5481
 java/src/org/apache/xalan/res XSLTErrorResources.java
 
5482
 java/src/org/apache/xalan/templates ElemExtensionDecl.java<br/><ref>Committer's log entry: </ref>Add support for external scripts (ie, the src attribute on a script element)<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath XPathContext.java
 
5483
 java/src/org/apache/xpath/axes ChildTestIterator.java
 
5484
 OneStepIteratorForward.java<br/><ref>Committer's log entry: </ref>In XPathContext#createDTMIterator(int node), call 
 
5485
OneStepIteratorForward(Axis.SELF)
 
5486
 instead of DescendantIterator. This addresses one of the bugs
 
5487
 in http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2925
 
5488
 (i.e. &lt;xsl:copy-of select="xalan:nodeset($stylesheets)"/&gt;...
 
5489
 The DescendantIterator was enumerating all of the nodes in the RTF
 
5490
 rather than just the one.)<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/31/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ConnectionPool.java
 
5491
 ConnectionPoolManager.java DTMDocument.java
 
5492
 DefaultConnectionPool.java ObjectArray.java
 
5493
 PooledConnection.java SQLDocument.java
 
5494
 SQLErrorDocument.java XConnection.java<br/><ref>Committer's log entry: </ref>Added Error Managment and javadocs
 
5495
 Submitted by: John Gentilin<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/patterns StepPattern.java<br/><ref>Committer's log entry: </ref>Fixed some major problems with position() and last() in secondary
 
5496
 predicates for match patterns. Credit goes to
 
5497
 Mukund Raghavachari/Watson/IBM@IBMUS for flagging these.<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>08/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql XConnection.java<br/><ref>Committer's log entry: </ref>Update after building Unit Test's
 
5498
 Submitted by: John Gentilin<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLTAttributeDef.java<br/><ref>Committer's log entry: </ref>Fix for Bugzilla 2930. Fix from Alexander Rudnev. Handle namespaced elements.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/01/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm DTMAxisIterator.java
 
5499
 java/src/org/apache/xml/dtm/ref DTMAxisIteratorBase.java
 
5500
 DTMDefaultBaseIterators.java
 
5501
 java/src/org/apache/xpath/axes OneStepIterator.java<br/><ref>Committer's log entry: </ref>Addresses http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2945
 
5502
 
 
5503
 Bug was caused by (redundent) cloneWithReset being called from
 
5504
 the UnionPathIterator, and the iterator in OneStepIterator not being
 
5505
 reset. (Need to review: check other iterators for this.)
 
5506
 
 
5507
 Call reset on the iterator in OneStepIterator#reset. Reset the position
 
5508
 value in the ancestor iterator reset. Define DTMAxisIterator#cloneIterator
 
5509
 to not reset the iterator position, and fix the implementations of
 
5510
 this to not call clone.reset().<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java
 
5511
 java/src/org/apache/xpath NodeSetDTM.java
 
5512
 java/src/org/apache/xpath/functions FuncExtFunction.java
 
5513
 java/src/org/apache/xpath/objects XBoolean.java
 
5514
 XNodeSet.java XNumber.java XObject.java<br/><ref>Added: </ref>java/src/org/apache/xpath/objects XNodeSetForDOM.java<br/><ref>Committer's log entry: </ref>Address http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2925
 
5515
 
 
5516
 Create new XObject, XNodeSetForDOM, which is constructed
 
5517
 from a Node, NodeList, or NodeIterator, and acts the same as
 
5518
 XNodeSet, except it returns the original object for object(),
 
5519
 nodeset(), and nodelist().
 
5520
 
 
5521
 Add XObject#create(Object val, XPathContext xctxt), which is
 
5522
 called from TransformerImpl#setParameter(s), and
 
5523
 FuncExtFunction#execute (for the return values of the
 
5524
 extension).
 
5525
 
 
5526
 XBoolean and XNumber now also have Boolean and Number
 
5527
 constructors, in which case the original object will also be
 
5528
 returned from the object() method.
 
5529
 
 
5530
 This should make the conversion from java object to XObject
 
5531
 consistent between function returns and setParameter. These
 
5532
 changes should also fix a bug where NodeLists weren't being converted.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/03/2001<br/><ref>Added: </ref>java/src/org/apache/xml/utils NamespaceSupport2.java<br/><ref>Committer's log entry: </ref>Replacement for org.xml.sax.helpers.NamespaceSupport; extends
 
5533
 that API so it can be easily swapped in.
 
5534
 
 
5535
 Current changes;
 
5536
 
 
5537
 Minor code reorg. I'm sorry, but I find classes easier to read
 
5538
 if fields are defined before methods reference them rather than
 
5539
 at end, especially when inner classes are present.
 
5540
 
 
5541
 Punt stack vector in favor of doubly-linked list. (It was already
 
5542
 singly-linked in parallel with the vector!)
 
5543
 
 
5544
 The whole dirty-tables concept was broken, because Context's
 
5545
 ctor always called copyTables and thus always marked tables
 
5546
 dirty. It also wasted some time setting itself only to be reset by
 
5547
 setParent. I've fixed both by parameterizing the ctor and making
 
5548
 copyTables specific to prep-for-new-declaration. (Could be
 
5549
 moved back into the declaration method, for that matter.)
 
5550
 
 
5551
 I'm dubious about the caches in processName. As far as I can
 
5552
 tell, Xalan per se never actually uses that method...
 
5553
 
 
5554
 The use of Hashtables is questionable. Hashtable is
 
5555
 known to be inefficient and oversynchronized in older JVMs, and
 
5556
 the fact that this is a bidirectional mapping suggests that an
 
5557
 approach similar to our own String Pool -- lighter-weight, more
 
5558
 targeted, hashing without reduplicating the two column tables --
 
5559
 would be a win. Since these are typically short sets, even
 
5560
 simple linear search is worth considering!<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor StylesheetHandler.java
 
5561
 java/src/org/apache/xalan/templates ElemTemplateElement.java
 
5562
 java/src/org/apache/xalan/transformer ResultTreeHandler.java
 
5563
 TransformSnapshotImpl.java<br/><ref>Committer's log entry: </ref>Cutover to NamespaceSupport2, q.v.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils NamespaceSupport2.java<br/><ref>Committer's log entry: </ref>Continuing code review.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils NamespaceSupport2.java<br/><ref>Committer's log entry: </ref>More efficient prefixes-for-specific-URI. This may wind up being
 
5564
 redone yet again if/when the underlying storage representation
 
5565
 changes.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>08/03/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/lib PipeDocument.java<br/><ref>Committer's log entry: </ref>PipeDocument extension element (the pipeDocument method).<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java
 
5566
 java/src/org/apache/xpath NodeSet.java NodeSetDTM.java<br/><ref>Committer's log entry: </ref>Bug fixed regarding the current() function in the root template
 
5567
 (related to bug#1269). Bug was reported by David Marston
 
5568
 offline. The test for this is conf/copy/copy29.
 
5569
 
 
5570
 In TransformerImpl#applyTemplateToNode, create a NodeSetDTM and pass it to 
 
5571
m_xcontext.pushContextNodeList(cnl);.
 
5572
 In NodeSetDTM fix getCurrentNode so that it doesn't use m_next-1
 
5573
 (which simply appears to be completely wrong). Do the same for
 
5574
 NodeSet... though I don't think this will be called anywhere in
 
5575
 Xalan.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm DTMAxisIterator.java
 
5576
 java/src/org/apache/xml/dtm/ref DTMAxisIteratorBase.java
 
5577
 DTMDefaultBaseIterators.java<br/><ref>Committer's log entry: </ref>Provide method for DTMAxisIterator to get the current root node
 
5578
 of the iteration.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XObject.java<br/><ref>Committer's log entry: </ref>In response to regression posted on xalan-dev by John Gentilin 
 
5579
&lt;johnglinux@eyecatching.com&gt;
 
5580
 on 08/03/2001 06:49 PM. When the XNodeSet taks a DTMIterator, it
 
5581
 will call val.getDTMManager();, which will call LocPathIterator#getDTMManager,
 
5582
 which will call m_execContext..getDTMManager(), which means
 
5583
 that setRoot has to be called on the iterator before it is added to
 
5584
 XNodeSet. Thus, call setRoot on the OneStepIterator in
 
5585
 create(Object, XPathContext) before it is added to the XNodeSet.
 
5586
 The regression was related to fix for 
 
5587
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2925.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes OneStepIterator.java<br/><ref>Committer's log entry: </ref>For the OneStepIterator(DTMAxisIterator iterator) constructor,
 
5588
 initialize the node tests to DTMFilter.SHOW_ALL (duh).<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XObject.java<br/><ref>Added: </ref>java/src/org/apache/xpath/objects XObjectFactory.java<br/><ref>Committer's log entry: </ref>Move create methods from XObject to XObjectFactory, in response
 
5589
 to cyclic build problems encountered with javac 1.1.8.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils NamespaceSupport2.java<br/><ref>Committer's log entry: </ref>Moved anonomous class to PrefixEnumerator, in response
 
5590
 to problems encountered with 1.1.8 build.
 
5591
 Joe may want to fix this in another way, as
 
5592
 I'm sure the anon class is probably a bit
 
5593
 cheaper?<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath VariableStack.java<br/><ref>Committer's log entry: </ref>Address http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2972,
 
5594
 where it was throwing a NPE instead of reporting that the variable
 
5595
 was being accessed before it was bound (i.e. the variable was being
 
5596
 accessed inside an RTF for that same variable).<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
5597
 TransformerHandlerImpl.java<br/><ref>Committer's log entry: </ref>Remove m_hasStarted variable and associated assertion.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBaseIterators.java<br/><ref>Committer's log entry: </ref>Addresses bug http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3001.
 
5598
 In the cloneIterator function of PrecedingIterator, the cloned array
 
5599
 was being sized for _maxAncestors, which defaults to 8. But if the
 
5600
 _stack was resized, it will copy more into the new stack than is
 
5601
 allocated. The solution is to allocate the new clone._stack array to
 
5602
 _stack.length.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils NamespaceSupport2.java<br/><ref>Committer's log entry: </ref>Don't create caches unless used (which I don't think they are, in Xalan).<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBaseIterators.java<br/><ref>Committer's log entry: </ref>Made _maxAncestors not static, as this is
 
5603
 not compatible with 1.1.8 (reported by
 
5604
 Gary Peskin).<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils NamespaceSupport2.java<br/><ref>Committer's log entry: </ref>Playing a hunch, I moved the Context objects out of NamespaceSupport2.
 
5605
 They're now a second class in the same file rather than being an inner class.
 
5606
 That reduces the size of the Context2 object, and its initialization time, by
 
5607
 removing the need for it to carry a reference to the NamespaceSupport2
 
5608
 object that created it.
 
5609
 
 
5610
 Performance seems significantly improved... even (surprisingly!) on the
 
5611
 getDeclaredPrefixes operation. Memory usage also seems better, as
 
5612
 expected.
 
5613
 
 
5614
 NamespaceSupport2 is still acounting for about 5%
 
5615
 of the time spent in the ResultTreeHandler, according
 
5616
 to my latest trace. Apparently we are calling
 
5617
 getDeclaredPrefixes an obscenely large number of
 
5618
 times, and the Vector.elements call is adding up. We
 
5619
 may want to look at where this is being called from
 
5620
 and whether we can reduce the number of invocations.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>Performance improvement; avoid scanning the same list twice.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
5621
 TransformerHandlerImpl.java TransformerImpl.java
 
5622
 java/src/org/apache/xalan/xslt Process.java
 
5623
 java/src/org/apache/xml/dtm/ref
 
5624
 IncrementalSAXSource_Filter.java
 
5625
 java/src/org/apache/xml/utils DefaultErrorHandler.java
 
5626
 java/src/org/apache/xpath/operations Variable.java<br/><ref>Committer's log entry: </ref>This checkin hopefully fixes many problems with bad diagnostics lately, but
 
5627
 at the expense of a slight change in behavior. The rule now is, the
 
5628
 DefaultErrorHandler never outputs location info for error and fatalError... 
 
5629
this has to be done
 
5630
 by the catcher of the exception. Convenience methods for this are
 
5631
 in DefaultErrorHandler#printLocation. This method will unwrap the
 
5632
 exception as close to the originating source as possible.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions
 
5633
 XSLProcessorContext.java
 
5634
 java/src/org/apache/xml/dtm DTMIterator.java
 
5635
 java/src/org/apache/xml/dtm/ref DTMAxisIteratorBase.java
 
5636
 java/src/org/apache/xpath NodeSetDTM.java
 
5637
 java/src/org/apache/xpath/axes AttributeIterator.java
 
5638
 AxesWalker.java ChildIterator.java
 
5639
 ChildTestIterator.java DescendantIterator.java
 
5640
 FilterExprWalker.java LocPathIterator.java
 
5641
 OneStepIterator.java OneStepIteratorForward.java
 
5642
 ReverseAxesWalker.java UnionPathIterator.java
 
5643
 WalkingIteratorSorted.java
 
5644
 java/src/org/apache/xpath/objects XObjectFactory.java<br/><ref>Committer's log entry: </ref>Changes to allow some dynamic determination in WalkerIteratorSorted to
 
5645
 see if the nodes really need to be sorted. Added isDocOrdered() and
 
5646
 getAxis() to both DTMIterator and AxesWalker, and implemented
 
5647
 appropriate overloads in derived or implementing classes. In FilterExprWalker
 
5648
 return the contained DTMIterator's getAxis(). In WalkerIteratorSorted,
 
5649
 implement canBeWalkedInNaturalDocOrder() function that is called
 
5650
 from setRoot(...). If this function returns true, than don't sort the nodes
 
5651
 in setRoot, and in all other respects treat this as if it is a simple
 
5652
 WalkingIterator.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fix for bugzilla 1251. Make sure exceptions are thrown when we're on the main 
 
5653
thread.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes AxesWalker.java
 
5654
 WalkerFactory.java WalkingIteratorSorted.java<br/><ref>Committer's log entry: </ref>Eliminate do/while check for duplicates in AxesWalker#nextNode()
 
5655
 by using WalkingIteratorSorted for cases where both the preceding[-sibling]
 
5656
 and following[-sibling] axes are being walked, and for "@*/foo" patterns
 
5657
 ("@attr/foo" patterns still use WalkingIterator).<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>08/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates FuncFormatNumb.java<br/><ref>Committer's log entry: </ref>Fix bugzilla bug 3036 
 
5658
(http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3036). When no 
 
5659
xsl:decimal-format element is supplied in the composed stylesheet, the defaults 
 
5660
specified in the Recommendation section 12.3 should be used for the attribute 
 
5661
values, not locale-specific defaults.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>08/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Fix for bugzilla 3060 
 
5662
(http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3060). Prefixes and
 
5663
 namespaceURIs are kept in the same Vector, m_prefixMappings. The entries are 
 
5664
stored as pairs of vector elements. The even elements contain the prefix and 
 
5665
the odd elements contain the URI. In two routines, getPrefix and endElement, 
 
5666
the appropriate prefix or URI was being located in the Vector using an 
 
5667
indexOf. However, in this case where the prefix and the URI were the same, the 
 
5668
routine was looking for the URI but finding the prefix instead of the URI. It 
 
5669
tried tried to back up one to get the prefix and underflowed the Vector size.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer ResultTreeHandler.java
 
5670
 TransformerImpl.java<br/><ref>Committer's log entry: </ref>Implement ErrorHandler in ResultTreeHandler so that fatal errors can get 
 
5671
passed in to the SAXHandler. Also change the code in TransformerImpl to call 
 
5672
fatalError in case of an error instead of endDocument. (overlaps with URI 
 
5673
handling fix...)<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
5674
 TransformerFactoryImpl.java
 
5675
 java/src/org/apache/xalan/transformer
 
5676
 TransformerIdentityImpl.java
 
5677
 java/src/org/apache/xml/utils SystemIDResolver.java<br/><ref>Committer's log entry: </ref>Fix code to handle absolute paths from unix systems. This fix is part of an 
 
5678
ongoing process and is just meant to fix a few pending bugs. More changes are 
 
5679
expected in this area.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>Change version for xalan2.2.D9 build<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>08/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemElement.java
 
5680
 java/src/org/apache/xalan/transformer ResultTreeHandler.java
 
5681
 java/src/org/apache/xml/utils DefaultErrorHandler.java<br/><ref>Committer's log entry: </ref>ResultTreeHandler was pushing a new namespace context but failing to note 
 
5682
that result in more pushes than pops. Cleaned up the execute() method of 
 
5683
ElemElement to make it more understandable (to me) and added a few comments. 
 
5684
The DefaultErrorHandler was not flushing Writers that it created. Since the 
 
5685
Writers are never closed (and cannot be as there is no close method), error 
 
5686
messages were failing to appear.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm DTMManager.java<br/><ref>Committer's log entry: </ref>Increasing the number of bits used to identify DTM nodes, at the expense of 
 
5687
decreasing the number of DTMs that a DTMManager can track simultaneously. Some 
 
5688
other code has been updated to track this change (and to better track posible 
 
5689
future changes), as have the IDKEY testcases.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
5690
 DTMDocumentImpl.java DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Increasing the number of bits used to identify DTM nodes, at the expense of 
 
5691
decreasing the number of DTMs that a DTMManager can track simultaneously. Some 
 
5692
other code has been updated to track this change (and to better track posible 
 
5693
future changes), as have the IDKEY testcases.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>08/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/functions FuncGenerateId.java<br/><ref>Committer's log entry: </ref>Increasing the number of bits used to identify DTM nodes, at the expense of 
 
5694
decreasing the number of DTMs that a DTMManager can track simultaneously. Some 
 
5695
other code has been updated to track this change (and to better track posible 
 
5696
future changes), as have the IDKEY testcases.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>08/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath NodeSetDTM.java<br/><ref>Committer's log entry: </ref>Try to support getRoot. Fixes problem with TransformStateTest.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>08/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes WalkerFactory.java<br/><ref>Committer's log entry: </ref>Fix problem with duplicate nodes produced from a walking iterator<br/><br/></li></ul><note>This release includes no updates of the compatibility source code (now deprecated).</note>
 
5697
</s2>
 
5698
<s2 title="Changes for &xslt4j; 2.2.D8">
 
5699
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Code Update
 
5700
 Submitted by:John Gentilin<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Fixed DTM.NULL compile error<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TreeWalker2Result.java<br/><ref>Committer's log entry: </ref>Redundant test removed, possibly redundant code flagged for %REVIEW%<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java
 
5701
 java/src/org/apache/xalan/transformer
 
5702
 TransformerHandlerImpl.java
 
5703
 java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
 
5704
 DTMDocumentImpl.java DTMManagerDefault.java
 
5705
 IncrementalSAXSource.java
 
5706
 IncrementalSAXSource_Filter.java
 
5707
 IncrementalSAXSource_Xerces.java
 
5708
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
5709
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java
 
5710
 java/src/org/apache/xml/utils SuballocatedIntVector.java<br/><ref>Committer's log entry: </ref>IncrementalSAXSource replaces CoroutineSAXParser -- simpler API,
 
5711
 hence less risk of programming errors introducing timing windows. I hope.
 
5712
 A few performance-related tweaks are also included in this check-in.
 
5713
 Only very minor gains are expected.<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ObjectArray.java
 
5714
 SQLDocument.java<br/><ref>Committer's log entry: </ref>Project Update<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Oops.Should have been checked in as part of the IncrementalSAXSource cutover. 
 
5715
Sorry!<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>07/23/2001<br/><ref>Modified: </ref>java build.xml
 
5716
 java/src/org/apache/xml/dtm/ref
 
5717
 IncrementalSAXSource_Filter.java
 
5718
 java/src/org/apache/xml/utils/synthetic JavaUtils.java<br/><ref>Committer's log entry: </ref>3 small fixes to the build process ( to make it work with jdk1.4 and crimson)
 
5719
 
 
5720
 - exclude IncrementalSAXSource_Xerces if xerces is not detected
 
5721
 - comment-out the "main" in IncrementalSAXSource_Filter.java ( it is a
 
5722
 test, but has deps on xerces )
 
5723
 - don't try to load the compiler in syntetic/JavaUtils. This is a mess,
 
5724
 it was debated on tomcat-dev and ant-dev, as you may know some people
 
5725
 decided to remove the internal compiler class ( sun.tools.javac.Main ),
 
5726
 and that brakes jasper, ant and now xalan.
 
5727
 
 
5728
 It seems right now the only portable way to run the compiler is via command
 
5729
 line call in a separate process ( jikes can easily make up for the
 
5730
 overhead of creating a new process and doesn't leave garbage ).
 
5731
 
 
5732
 Question: is synthetic used ? Seems like a very usefull package, but if
 
5733
 xalan is not using it it might be better to move it to xml-commons or
 
5734
 jakarta-commons or some other place.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Don't set m_level anymore, as it looks like Joe commented out it's
 
5735
 initialization. m_level is no longer called by Xalan, and the implementation
 
5736
 can calculate it when it is called.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
5737
 TransformerIdentityImpl.java<br/><ref>Committer's log entry: </ref>Fixed bug 2758 (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2758). The 
 
5738
flag indicating that a call to startDocument() in the resultContentHandler was 
 
5739
necessary was not being reset for multiple transforms.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Fix bug 2727 (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2727). 
 
5740
Attributes which contain a namespace prefix are indicated by placing a negative 
 
5741
number in the appropriate entry in the m_dataOrQName array. The absolute value 
 
5742
of this number is an entry in m_data. However, in this example, there were no 
 
5743
text nodes before the first namespaced attribute so the entry in m_data had an 
 
5744
array index of 0. This resulted in an entry of zero, not a negative number, in 
 
5745
m_dataOrQName. This situation got several routines which tested for &lt; 0 
 
5746
confused. I looked at several ways of fixing this but decided to just always 
 
5747
allocate m_data.elementAt(0) entry to a dummy entry. The other solutions 
 
5748
involved runtime checking which could slow down this piece of code and I felt 
 
5749
that wasting one entry was worth it to not slow down the run time.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize
 
5750
 WriterToUTF8Buffered.java<br/><ref>Committer's log entry: </ref>Fix bugzilla bug 2639 
 
5751
(http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2639) where buffer was 
 
5752
overflowing because the expansion of the Unicode characters into multiple UTF8 
 
5753
characters was not being properly taken into account. Many thanks to 
 
5754
Gunnlaugur Thor Briem for his "multiply by three" trick.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer NodeSorter.java<br/><ref>Committer's log entry: </ref>Commented out NumberFormat m_formatter = NumberFormat.getNumberInstance();.
 
5755
 
 
5756
 Mukund reported:
 
5757
 
 
5758
 a minor improvement for alphabetize.xsl is to comment out the line
 
5759
 
 
5760
 //NumberFormat m_formatter = NumberFormat.getNumberInstance();
 
5761
 
 
5762
 in NodeSorter.java. The variable m_formatter does not seem to be used 
 
5763
anywhere, and the performance difference is:
 
5764
 
 
5765
 Before: alphabetize 10 90 5108 196 156 34.58 
 
5766
OK
 
5767
 After : alphabetize 10 70 4316 196 156 
 
5768
40.93 OK<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>2.2.D8<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>2.2.D8<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer NodeSortKey.java<br/><ref>Committer's log entry: </ref>Submitted fix for http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2851.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Just added some stuff to diagnose bugs for flavor th.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes WalkerFactory.java
 
5769
 java/src/org/apache/xpath/compiler Compiler.java
 
5770
 java/src/org/apache/xpath/patterns
 
5771
 ContextMatchStepPattern.java StepPattern.java<br/><ref>Committer's log entry: </ref>These are changes submitted (offline) by Mukund Raghavachari/Watson/IBM@IBMUS.
 
5772
 
 
5773
 This fixes a bug with match="chapter//footnote[1]" patterns.
 
5774
 
 
5775
 The main change here is minor to remove the automatic attachment of parent::* 
 
5776
to simple step patterns.
 
5777
 
 
5778
 He has re-implemented executePredicates to be
 
5779
 more efficient. Given a pattern such as row[6], it
 
5780
 does not iterate over the entire axis until it reaches
 
5781
 the node to see if it is the sixth node. Rather,
 
5782
 starting from the current node, it works backwards
 
5783
 (preceding siblings) until it either runs out of nodes
 
5784
 or finds more than six nodes that match the
 
5785
 predicate [I can explain it better if desired].
 
5786
 This optimization improves performance slightly
 
5787
 overall. It helps decoy and patterns most (by
 
5788
 about 10%).
 
5789
 
 
5790
 The other optimization that I implemented was the
 
5791
 following. For a pattern foo[][3][][4] ..., where more
 
5792
 than one predicate is a number (position check),
 
5793
 in checking the predicate [4], the fact that the
 
5794
 current node has passed foo[][3] implies that it is
 
5795
 the only node that is the third node among its
 
5796
 siblings that passes foo[]. Therefore, any
 
5797
 subsequent position checks can be true if and
 
5798
 only if the position is [1]. This optimization is not
 
5799
 used by the xsltmark benchmarks and so does
 
5800
 not offer any performance benefits.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes DescendantIterator.java<br/><ref>Committer's log entry: </ref>Fix for http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1336<br/><br/></li></ul><note>This release includes no updates of the compatibility source code (now deprecated).</note>
 
5801
</s2>
 
5802
<s2 title="Changes for &xslt4j; 2.2.D7">
 
5803
<p> Core (Non-XSLTC) source code updates:</p><ul><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/03/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMManagerDefault.java<br/><ref>Committer's log entry: </ref>Since the real root of our tree may be a DocumentFragment, we need to
 
5804
 use getParent to find the root, instead of getOwnerDocument. Otherwise
 
5805
 DOM2DTM#getHandleOfNode will be very unhappy.
 
5806
 Result of report via private mail by Carsten Ziegeler of breakage
 
5807
 in Cocoon.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToHTML.java
 
5808
 SerializerToXML.java<br/><ref>Committer's log entry: </ref>Made m_maxCharacter, accumDefaultEscape,
 
5809
 accumDefaultEntity, and m_isRawStack
 
5810
 protected by request from Johannes Farrenkopf
 
5811
 and Frank Nestel.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/functions FuncNormalizeSpace.java<br/><ref>Committer's log entry: </ref>In executeCharsToContentHandler check first for
 
5812
 DTM.NULL before trying to get the DTM.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Fix bug reported by "Carsten Ziegeler" &lt;cziegeler@sundn.de&gt;.
 
5813
 Test for this is whitespace23.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SuballocatedIntVector.java<br/><ref>Committer's log entry: </ref>Drop some bounds tests for cases which shouldn't arise in the first place, 
 
5814
since this is an inner-loop method.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SuballocatedByteVector.java
 
5815
 SuballocatedIntVector.java<br/><ref>Committer's log entry: </ref>Synch SuballocatedByteVector with changed SuballocatedIntVector<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref CoroutineSAXParser.java<br/><ref>Committer's log entry: </ref>Revert back to throwing a shutdownException if (arg == null) in co_yield. I 
 
5816
see this
 
5817
 occur if the parser is Crimson with output\output01, and it causes
 
5818
 a hang if the shutdownException is not thrown.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToXML.java<br/><ref>Committer's log entry: </ref>Make accumDefaultEntity and accumDefaultEscape non-final.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes ChildTestIterator.java
 
5819
 OneStepIterator.java
 
5820
 java/src/org/apache/xpath/functions FuncExtFunction.java<br/><ref>Committer's log entry: </ref>Fix for John G. for the SQL extension: handle return types of
 
5821
 DTM and DTMAxisIterator.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>In executeChildTemplates, somehow there was a popMode without
 
5822
 a corresponding pushMode. The pushMode was added.
 
5823
 Addresses bug posted by Stephane Bailliez &lt;sbailliez@imediation.com&gt;
 
5824
 on the xalan-dev list on 07/09/2001 07:28 AM.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions ExpressionContext.java
 
5825
 java/src/org/apache/xalan/templates StylesheetRoot.java
 
5826
 java/src/org/apache/xpath VariableStack.java
 
5827
 XPathContext.java<br/><ref>Committer's log entry: </ref>Resolve bugzilla 2355 
 
5828
&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2355&gt;. To make the 
 
5829
functionality clearer, I've changed the method name from getVariable to 
 
5830
getVariableOrParam since the routine will pick up either one. Also fixed a 
 
5831
bug where top level variables and parameters were not getting marked as such.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib Extensions.java
 
5832
 java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>Resolve bugzilla 2523 
 
5833
&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2523&gt;. evaluate extension 
 
5834
function was not refactored with DTM. Also need to add function to 
 
5835
XPathContext.XPathExpressionContext to allow an extension to obtain the 
 
5836
associated XPathContext.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>07/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes DescendantIterator.java<br/><ref>Committer's log entry: </ref>Fix problem with descendant-or-self and from root pattern. When from root, 
 
5837
descedant or self was not recognized.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>Quick patch to handle case where someone wants to build a DTM from
 
5838
 an Element rather than from a Document. The Attr handling might want to
 
5839
 move down into addNode.
 
5840
 
 
5841
 This opens several cans of worms -- what if the next user wants the
 
5842
 root of their DTM to be an EntityReference node, which has no DTM
 
5843
 node equivalent -- but we'll eat those when we get to them.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib Extensions.java<br/><ref>Committer's log entry: </ref>Modify distinct() extension so that it no longer relies on DOMHelper which is 
 
5844
deprecated but uses ExpressionContext.toString().<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTErrorResources.java
 
5845
 java/src/org/apache/xalan/trace PrintTraceListener.java
 
5846
 java/src/org/apache/xalan/transformer TransformerImpl.java
 
5847
 java/src/org/apache/xalan/xslt Process.java
 
5848
 java/src/org/apache/xml/dtm DTM.java
 
5849
 java/src/org/apache/xml/dtm/ref DTMDocumentImpl.java
 
5850
 ExpandedNameTable.java
 
5851
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
5852
 java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Added: </ref>java/src/org/apache/xalan/lib NodeInfo.java
 
5853
 java/src/org/apache/xalan/transformer XalanProperties.java
 
5854
 java/src/org/apache/xml/dtm/ref NodeLocator.java<br/><ref>Committer's log entry: </ref>Application of patch submitted by Ovidiu Predescu &lt;ovidiu@cup.hp.com&gt;
 
5855
 for file, line, column number information for XML source document.
 
5856
 
 
5857
 [A made one change: m_sourceSystemId, m_sourceLine, and
 
5858
 m_sourceColumn are not created with the member variable
 
5859
 initializer, since they are initialized in setProperty.]
 
5860
 
 
5861
 The following patch is a rework of a previous patch I've submitted on
 
5862
 May 24 against the Stree model, current at that time. This time the
 
5863
 patch is against the DTM model, and makes use of DTM features to
 
5864
 optimize the lookup time and storage requirements. I hope this time
 
5865
 the patch gets incorporated in the CVS repository, before any major
 
5866
 rework happens again ;-).
 
5867
 
 
5868
 As with the previous patch, there is no overhead in space or time if
 
5869
 source information is not needed.
 
5870
 
 
5871
 From a user perspective, this feature can be turned on by passing the
 
5872
 -L flag to Xalan when invoking it from the command
 
5873
 line. Programmatically you can also enable it by invoking the
 
5874
 setProperty method on the TransformerImpl:
 
5875
 
 
5876
 TransformerImpl impl = ((TransformerImpl) transformer);
 
5877
 
 
5878
impl.setProperty(org.apache.xalan.transformer.XalanProperties.SOURCE_LOCATION,
 
5879
 Boolean.TRUE);
 
5880
 
 
5881
 A Transformer "property" is different from a "feature": while a
 
5882
 feature is specific to all the transformer instances and usually
 
5883
 refers to an implementation aspect, a property is a runtime capability
 
5884
 that is set per Transformer instance. Currently the only property
 
5885
 added by this patch is the source location in the XML source document.
 
5886
 
 
5887
 The patch adds two methods to the DTM interface:
 
5888
 
 
5889
 public void setProperty(String property, Object value);
 
5890
 public SourceLocator getSourceLocatorFor(int node);
 
5891
 
 
5892
 The second method is used to obtain the source location given a node
 
5893
 handle.
 
5894
 
 
5895
 There are two ways you can make use of the source location. The first
 
5896
 one is from within a stylesheet, where you can have something like
 
5897
 this:
 
5898
 
 
5899
 &lt;xsl:stylesheet
 
5900
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
 
5901
 xmlns:nodeinfo="xalan://org.apache.xalan.lib.NodeInfo"
 
5902
 version="1.0"&gt;
 
5903
 
 
5904
 &lt;xsl:template match="*"&gt;
 
5905
 //node &lt;xsl:value-of select="name()"/&gt;
 
5906
 //file &lt;xsl:value-of select="nodeinfo:systemId()"/&gt;
 
5907
 //line &lt;xsl:value-of select="nodeinfo:lineNumber()"/&gt;
 
5908
 //column &lt;xsl:value-of select="nodeinfo:columnNumber()"/&gt;
 
5909
 &lt;xsl:apply-templates/&gt;
 
5910
 &lt;/xsl:template&gt;
 
5911
 
 
5912
 &lt;/xsl:stylesheet&gt;
 
5913
 
 
5914
 If no arguments are passed to the systemId(), lineNumber() or
 
5915
 columnNumber() functions, the corresponding information of the current
 
5916
 context node is returned. A node can be passed as argument to the
 
5917
 above functions, in which case the corresponding information about
 
5918
 that node is returned. If a node set containing multiple nodes is
 
5919
 passed as argument, only the information of the first node in the set
 
5920
 is returned.
 
5921
 
 
5922
 The second way of obtaining the source location is
 
5923
 programmatically. Given a Node instance, one can obtain the owner DTM
 
5924
 and the node handle (an integer) that represents the
 
5925
 node. Unfortunately I didn't see any way of hiding this: if you find
 
5926
 one please let me know and I'll fix it.
 
5927
 
 
5928
 The following example is extracted from PrintTraceListener and
 
5929
 illustrates the API:
 
5930
 
 
5931
 Node sourceNode = ev.m_sourceNode;
 
5932
 int nodeHandler = ((DTMNodeProxy)sourceNode).getDTMNodeNumber();
 
5933
 SourceLocator locator = ((DTMNodeProxy)sourceNode).getDTM()
 
5934
 .getSourceLocatorFor(nodeHandler);
 
5935
 
 
5936
 m_pw.println("Selected source node '" + sourceNode.getNodeName()
 
5937
 + "', at " + locator);<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler Compiler.java<br/><ref>Committer's log entry: </ref>Fix bug 2175 &lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2175&gt; by 
 
5938
adding the current time to the method key to ensure method key uniqueness. 
 
5939
Multiple Compilers were getting the same hashCode, particularly in Visual Age 
 
5940
for Java, due to aggressive garbage collection. Added the current time in 
 
5941
mills to distinguish between the different functions being compiled.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemVariable.java
 
5942
 StylesheetRoot.java
 
5943
 java/src/org/apache/xpath VariableStack.java
 
5944
 java/src/org/apache/xpath/operations Variable.java<br/><ref>Committer's log entry: </ref>Resolve bugzilla 2355 
 
5945
&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2355&gt;. Added code to 
 
5946
populate m_index for global variables and parameters. If the backward search 
 
5947
for templates reaches the top level, use the list of composed top-level 
 
5948
variables and parameters from StylesheetRoot.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMNodeProxy.java<br/><ref>Committer's log entry: </ref>Now implements DocumentFragment.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>07/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>Updated version to 2.2.0.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>07/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>Updated version to 2.2.0.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMNodeProxy.java<br/><ref>Committer's log entry: </ref>Fixed very ugly bug, left-over from DTM1, in getValue, where +1 was being 
 
5949
added per the old attribute structure of DTM1.<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ConnectionPool.java
 
5950
 DefaultConnectionPool.java PooledConnection.java
 
5951
 QueryParameter.java XConnection.java<br/><ref>Added: </ref>java/src/org/apache/xalan/lib/sql ConnectionPoolManager.java
 
5952
 ObjectArray.java SQLDocument.java
 
5953
 SQLErrorDocument.java<br/><ref>Removed: </ref>java/src/org/apache/xalan/lib/sql Column.java
 
5954
 ColumnAttribute.java ColumnData.java
 
5955
 ColumnHeader.java ExtensionError.java Row.java
 
5956
 RowSet.java SQLExtensionError.java
 
5957
 StreamableNode.java XConnectionPoolManager.java
 
5958
 XStatement.java<br/><ref>Committer's log entry: </ref>First round of changes to port DOM mode to DTM Mode
 
5959
 Submitted by: John Gentilin mailto://johng@apache.org<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Check if locator property is set before trying to use locator fields<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/trace PrintTraceListener.java<br/><ref>Committer's log entry: </ref>Don't print locator message if locator is null<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
5960
 TransformerHandlerImpl.java<br/><ref>Committer's log entry: </ref>In startDocument, run m_contentHandler.startDocument before you start the 
 
5961
thread.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Call wait for initial events before the the transform is started.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref CoroutineSAXParser.java<br/><ref>Committer's log entry: </ref>Allow co_yield to be called after the parse has finished.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java
 
5962
 SQLErrorDocument.java<br/><ref>Committer's log entry: </ref>Added setProperty and getSourceLocatorFor empty methods.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>07/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>Fix problem reported by Carsten Ziegeler &lt;cziegeler@sundn.de&gt;. Using 
 
5963
ApplyXPath (or doing a transformation) with DOM input was resulting in an NPE 
 
5964
due to declareNamespaceInContext() being called before setting m_exptype which 
 
5965
is needed by declareNamespaceInContext().<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
5966
 TransformerHandlerImpl.java<br/><ref>Committer's log entry: </ref>Add pauseForTransformThreadStartup. Call this in startDocument just
 
5967
 after starting the transform thread. This should get rid of any variability
 
5968
 with racing threads.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions
 
5969
 XSLProcessorContext.java<br/><ref>Committer's log entry: </ref>Fix problem reported by jason heddings &lt;Jason.Heddings@Sun.COM&gt;.
 
5970
 
 
5971
 "In v2.0.1, I was able to pass a Node to this function and have the node
 
5972
 be copied to the result tree (as expected). In the source code for
 
5973
 XSLProcessorContext, it appears that the only objects that can be sent
 
5974
 to the result tree are XObjects. Everything else is converted to a
 
5975
 String. So for instance, I can no longer create a ProcessingInstruction
 
5976
 and pass it to the result tree via this method since the PI is simply
 
5977
 converted to a String."<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToHTML.java<br/><ref>Committer's log entry: </ref>Application of patch submitted by Benjamin Riefenstahl 
 
5978
&lt;Benjamin.Riefenstahl@ision.net&gt;
 
5979
 
 
5980
 Motivation: We are using Xalan to generate HTML pages. We have the
 
5981
 requirement to integrate code for ad banners. The ad server provider
 
5982
 has written the code to use with compatibility to NetScape 4 in mind.
 
5983
 The code uses the NetScape proprietory &lt;LAYER&gt; element and &lt;IFRAME&gt;
 
5984
 elements for other browsers. The SRC attributes of these elements
 
5985
 contain URLs with several URL parameters separated by '&amp;', as is the
 
5986
 common convention.
 
5987
 
 
5988
 Problem: The code is integrated in our XSL stylesheets. In the
 
5989
 stylesheet the '&amp;' has to be written as the entity '&amp;amp;'. That's
 
5990
 ok. The problem is that in the output the '&amp;' is also written as
 
5991
 '&amp;amp;' which is not ok, because NetScape doesn't understand that.
 
5992
 OTOH the same URL is written with '&amp;' when used in an &lt;A&gt; element.
 
5993
 
 
5994
 Solution: This goes down to a different handling of attribute values
 
5995
 in the class SerializeToHTML, depending on whether the attribute in
 
5996
 question is known to contain a URI or not. Xalan knows this for &lt;A&gt;
 
5997
 but not for &lt;LAYER&gt; and &lt;IFRAME&gt;. When I compare the list in
 
5998
 SerializeToHTML.java with the HTML specs, I find a couple of other
 
5999
 missing URI attributes in SerializeToHTML.java. When I add the
 
6000
 missing pieces, the generation works fine.
 
6001
 
 
6002
 Patch: Here is the patch (diff -c) for xalan-j_2_2_D6. I also have
 
6003
 one for xalan-j_2_0_1 which is the version I actually tested this
 
6004
 with. Please let me know if this is insufficient or the patch is
 
6005
 wrong or if there is something else I can do to fix this problem.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>On code review of previous checkin from Gary P., we determined there
 
6006
 was a problem with the point at which type was declared a
 
6007
 DTM.NAMESPACE_NODE. So that part was moved back up (actuall
 
6008
 a bit higher than where it was before),
 
6009
 and the call to declareNamespaceInContext was moved a bit
 
6010
 further down.<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql XConnection.java<br/><ref>Committer's log entry: </ref>Project Update
 
6011
 Submitted by: John Gentilin mailto://johng@apache.org<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Project Update
 
6012
 Submitted by: John gentilin mailto://johng@apache.org<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Fixup from previous check-in, defined new
 
6013
 functions.
 
6014
 Submitted by: John Gentilin mailto://johng@apache.org<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Project Update<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>reduced Attribute's for testing<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>07/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java<br/><ref>Committer's log entry: </ref>Minor hack to catch an attribute value being null.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>07/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemNumber.java
 
6015
 java/src/org/apache/xalan/transformer Counter.java
 
6016
 CountersTable.java KeyRefIterator.java
 
6017
 java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java
 
6018
 java/src/org/apache/xpath NodeSetDTM.java
 
6019
 java/src/org/apache/xpath/axes LocPathIterator.java
 
6020
 UnionPathIterator.java WalkingIteratorSorted.java
 
6021
 java/src/org/apache/xpath/objects XNodeSet.java
 
6022
 XRTreeFrag.java<br/><ref>Committer's log entry: </ref>Add new parameter to NodeSetDTM constructor. We need to have a DTMManager on 
 
6023
hand. Change code to use the new constructors.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>07/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref/dom2dtm DOM2DTM.java<br/><ref>Committer's log entry: </ref>OOps! Back out this last change. Old code on my machine!!!<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>07/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql SQLDocument.java<br/><ref>Committer's log entry: </ref>Fixed a few bugs, almost there
 
6024
 Submitted by: John Gentilin mailto://johng@apache.org<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref CoroutineManager.java
 
6025
 CoroutineSAXParser.java
 
6026
 CoroutineSAXParser_Xerces.java<br/><ref>Added: </ref>java/src/org/apache/xml/dtm/ref IncrementalSAXSource.java
 
6027
 IncrementalSAXSource_Filter.java
 
6028
 IncrementalSAXSource_Xerces.java<br/><ref>Committer's log entry: </ref>Starting to phase out Coroutine*Parser* in favor of IncrementalSAXSource*.
 
6029
 The latter simplifies the code, and should help us avoid some of the
 
6030
 confusion that can arise in using the older tools.
 
6031
 
 
6032
 Most importantly, it greatly simplifies the calling sequences, by discarding
 
6033
 the "which file do you want to parse" and "do you want to parse any more
 
6034
 files" transactions. These now operate _only_ as filters, and only as single
 
6035
 -use (though in fact the Xerces-specific version is reusable, and we may
 
6036
 reintroduce that feature in the generic filtering version at a later date).
 
6037
 
 
6038
 Note too that we have swept the CoroutineManager completely
 
6039
 under the covers of the filter's API. There's no particular reason to expose
 
6040
 that implementation detal to the outside world.
 
6041
 
 
6042
 Still to be done: Rework the rest of Xalan to use the new code.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref CoroutineParser.java<br/><ref>Committer's log entry: </ref>Starting to phase out Coroutine*Parser* in favor of IncrementalSAXSource*.
 
6043
 See comment in previous check-in; I just missed this one....<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/dtm/ref DTMStringPool.java<br/><ref>Committer's log entry: </ref>doc.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>07/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>2.2.D7<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>07/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>2.2.D7<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>07/18/2001<br/><ref>Removed: </ref>java/src/org/apache/xml/dtm/ref DTMBuilder.java<br/><ref>Committer's log entry: </ref>Obsolete<br/><br/></li></ul><note>This release includes no updates of the compatibility source code (now deprecated).</note>
 
6044
</s2>
 
6045
<s2 title="Changes for &xslt4j; 2.2.D6">
 
6046
     <p><em>Important: Xerces has added a number of DOM level-3 methods to its DOM interfaces. The DOM level-3 proposal
 
6047
is currently a working draft (it is not yet a W3C recommendation), and Xalan does not support these new methods. 
 
6048
To run Xalan in the JDK 1.1.8 platform, you must put xalan.jar (with its DOM level-2 interfaces) in front of 
 
6049
xerces.jar on the system class path. If you want to rebuild Xalan (on JDK 1.1.8 or higher), you must put Xalan 
 
6050
in front of xerces.jar the system class path.</em></p>
 
6051
 
 
6052
     <p>This beta release includes the following non-XSLTC code changes:</p>     
 
6053
     <ul>
 
6054
       <li>Costin Manolache has slightly modified the CoRoutine stuff so that a you can compile and run everything but the CoRoutineXercesParser without having Xerces on the classpath.<br/><br/></li>
 
6055
       <li>Joseph Kesselman added chunked int array stuff to address our scaling problems that Mukund &amp; co. uncovered.  This was a fairly mechanical, but still substantial, change.  No bugs have yet been discovered that relate to this.  This is probably the most controversial change.<br/><br/></li>       
 
6056
       <li>The Process class now outputs incrementally if the output is standard out.  This is mostly for testing purposes, but it makes general sense.<br/><br/></li>
 
6057
       <li>Bug was fixed with setting the incremental flag in TransformerFactoryImpl.  Clearly the change was made but never tested.  Simply a missing 'else'.<br/><br/></li>
 
6058
       <li>Fix for Bugzilla Bug 2275, Xalan did not fire the right templates.  This was substantial and somewhat risky.  Xalan had several problems related to the last() function.  Fixes cover four axes files.<br/><br/></li>                     
 
6059
       <li>Change PrintTraceListener to output the file, as well as the line numbers.  This is really a feature change, but simple, and aids diagnosing problems with multi-part stylesheets.<br/><br/></li>       
 
6060
       <li>XPath fix: the XPath API wasn't working correctly due to a problem with with NodeSet/NodeIterator adapters.  This fix ended up interacting quite a bit with the #2275 fix.<br/><br/></li>
 
6061
       <li>Fix for the Norm Walsh bug posted 06/20/2001: iterators weren't always being cloned correctly from the variable value stack.  This fix is not without some risk, though we haven't seen any problems since Scott Boag made it.<br/><br/></li>
 
6062
       <li>David Bertoni added missing html element properties to SerializerToHTML.java.<br/><br/></li>
 
6063
       <li>Shance Curcuru modified TransformerFactoryImpl.setAttribute() to accept a String ("true" or "false") as well as a Boolean object to set the value of a Boolean attribute.<br/><br/></li>
 
6064
       <li>TransformerHandlerImpl was threading when incrementality is turned off. Scott Boag has fixed this bug.</li>       
 
6065
     </ul>
 
6066
</s2>     
 
6067
   <anchor name="dtm"/>
 
6068
     <s2 title="Changes for &xslt4j; 2.2.D2">
 
6069
     <p>This release includes the following changes:</p>
 
6070
     <ul>
 
6071
       <li>Deprecation of the <link idref="usagepatterns" anchor="compat">Xalan-Java 1 compatiblity API</link></li>
 
6072
       <li>The DTM</li>
 
6073
       <li>Other optimization work</li>
 
6074
     </ul>
 
6075
     <p>The primary focus of the 2.2 Developer releases is incorporation of all our work over the past several months on the Document Table
 
6076
      Model (<link idref="dtm">DTM</link>).</p>
 
6077
 
 
6078
<p>As a result of the changes in *internal* api, you may encounter problems with extensions. We have done some bug fixing in support
 
6079
for extensions since 2.2.D1.  John Gentilin is working on fixing the SQL library extension,which currently is broken. Please report 
 
6080
any problems you find (see <link idref="jira">bugs</link>).</p>
 
6081
 
 
6082
<p>The DTM and related work provides faster performance and less accumulation of garbage... though it is an
 
6083
ongoing battle.  Brief summary:</p>
 
6084
<ul>
 
6085
<li>The DTM identifies nodes with 32-bit integer handles.
 
6086
The DTM has many features, including direct character dispatch to SAX2,
 
6087
native DTM iterators and "traversers", multiple document management, etc.<br/><br/></li>
 
6088
<li>Joe Kesselman's CoRoutine parsers, which are in a threaded SAX flavor
 
6089
and in a Xerces parseMore() flavor (no threads).  These do away with the
 
6090
"race" conditions that occured in the original code, and should make Xalan
 
6091
much more robust.<br/><br/></li>
 
6092
<li>*Much* more robust XPath itteration.  The "waiting" iterators of old are
 
6093
no more, and good riddance.  There is stil lots more we want to do with
 
6094
this mechanism.  (There is something here called MatchIterators, but it's
 
6095
not being used yet for various reasons.  We will be taking advantage of
 
6096
these down the line.)<br/><br/></li>
 
6097
<li>A fair amount of XObject creation reduction.  You can now get boolean,
 
6098
number, nodeset, and string values directly from an Expression, instead of
 
6099
going through an XObject.<br/><br/></li>
 
6100
<li>XMLString, which allows us to work with string objects that don't wrap
 
6101
Java's String object. These objects get their character data from an array or
 
6102
Fast String Buffer.<br/><br/></li>
 
6103
<li>Serializers now only do internal buffering if they know they are writing
 
6104
to a FileStream.<br/><br/></li>
 
6105
<li>The variable stack mechanism has been redisigned, so that it is no
 
6106
longer so interpretive, and we believe it is much more robust.<br/><br/></li>
 
6107
<li> Some small amount of stylesheet rewriting (but not yet redundent
 
6108
expression elimination), in particular to reduce full RTF creation and
 
6109
interpretation.</li>
 
6110
</ul>
 
6111
<p>&xslt4j; implements two DTM performance features that you can control with the TransformerFactory
 
6112
<jump href="apidocs/javax/xml/transform/TransformerFactory.html#setAttribute(java.lang.String, java.lang.Object)">setAttribute()</jump>
 
6113
method. See <link idref="dtm" anchor="settings">DTM performance settings</link></p>
 
6114
     </s2>
 
6115
     <s2 title="Changes for &xslt4j; 2.1.0">
 
6116
     <p>This release includes a number of bug fixes to &xslt4j; and TrAX. 
 
6117
     We have also enhanced the ApplyXSLT servlet. It can now be set up to use a compiled Templates object to respond to multiple
 
6118
     client transformation requests involving the same stylesheet.</p>
 
6119
<!--This XML fragment contains a list of source code updates to place in an <s2> section of readme.xml--><p>Core source code updates:</p><ul><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>03/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor StylesheetHandler.java
 
6120
 java/src/org/apache/xpath Expression.java XPath.java
 
6121
 XPathContext.java
 
6122
 java/src/org/apache/xpath/compiler Compiler.java
 
6123
 XPathParser.java<br/><ref>Committer's log entry: </ref>Renamed "assert()" to "assertion()".
 
6124
 
 
6125
 Assert can be a keyword, and brake the compilation.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>03/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer KeyWalker.java<br/><ref>Committer's log entry: </ref>Throw an error message if the key name in a key function was not defined<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Reworked "chunk growth" algorithm again. Growing mode not
 
6126
 yet adequately tested, but fixed-size mode (which is what Xalan
 
6127
 is currently using) is simpler code and shows improved performance.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>03/20/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>Utility class to check your JVM environment for common problems<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>03/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>Added more .jar sizes to jarVersions listing<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>We've reworked the algorithm again. The fixed-chunk-size mode (initial
 
6128
 and max. chunk sizes equal) runs essentially unchanged, though with a
 
6129
 few cycles less overhead. The variable-chunk-size mode now uses a
 
6130
 recursive-encapsulation scheme, where the first chunk may itself be a
 
6131
 FastStringBuffer whose total length equals one chunk; every so often
 
6132
 we push the existing data down one level and restart with a larger
 
6133
 chunk size. The new scheme has been stress-tested and is apparently
 
6134
 working. At this writing, however, Xalan uses only the fixed-size
 
6135
 mode (initial size equals max size), and no effort has been made to
 
6136
 find the optimial values for the tuning parameters. It does appear
 
6137
 likely that the best values will vary with usage patterns, but we hope
 
6138
 to find a good compromise.
 
6139
 
 
6140
 I'll probably be putting this aside for a while to work on other things.
 
6141
 If someone wants to experiment with varying the block sizes and
 
6142
 how frequently they grow, and suggest good performance/memory
 
6143
 tradeoff points, go for it!<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Minor tweak to the javadoc.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>reset() versus setLength(0).<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemForEach.java<br/><ref>Committer's log entry: </ref>Fix for bug# 1116, getMatchedTemplate throws ClassCastException.
 
6144
 Don't push template unless it is a xsl:template.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/26/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates OutputProperties.java<br/><ref>Committer's log entry: </ref>Patches submitted by Patrick Moore &lt;patrickm@rioport.com&gt;
 
6145
 on 03/15/2001 01:25 PM:
 
6146
 
 
6147
 This proposed change does a number of things:
 
6148
 
 
6149
 1. Problem: HTML output method does not uses XML output properties as
 
6150
 default.
 
6151
 
 
6152
 In both org/apache/xalan/templates/output_html.properties and in the java
 
6153
 doc for
 
6154
 org/apache/xalan/templates/OutputProperties#getDefaultMethodProperties(Strin
 
6155
 g) It specifically states that all OutputProperties use the
 
6156
 output_xml.properties as a base. In the code this is not true for html. This
 
6157
 is now changed to match the comments
 
6158
 
 
6159
 2. Problem: unclear IOException.
 
6160
 
 
6161
 If there was a problem loading the XML properties file. The wrapped
 
6162
 exception now will say which file was trying to be loaded. If the file did
 
6163
 not exist I was getting a very strange "Stream closed" IOException message.
 
6164
 
 
6165
 3. Problem: the streams were not closed after reading the property file.
 
6166
 
 
6167
 Fixed.
 
6168
 
 
6169
 4. Problem: the double-check locking mechanism does not work in Java (see
 
6170
 bug #919)
 
6171
 
 
6172
 &lt;http://www.javaworld.com/javaworld/jw-02-2001/jw-0209-toolbox.html&gt;
 
6173
 
 
6174
 5. QUESTION: now if there is a default properties (i.e.
 
6175
 output_xml.properties has been loaded) but the expected properties file does
 
6176
 not exist a error message will be printed to System.err and the processing
 
6177
 will continuing using just the default properties (output_xml.properties) I
 
6178
 felt that this is the best behavior.
 
6179
 
 
6180
 (comment by sboag: I think it's better to
 
6181
 throw a runtime exception in this case.
 
6182
 but we can discuss this over time. For now
 
6183
 the patch was modified to do the runtime exception).<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLTSchema.java
 
6184
 java/src/org/apache/xalan/stree SourceTreeHandler.java
 
6185
 java/src/org/apache/xalan/templates ElemForEach.java
 
6186
 ElemLiteralResult.java
 
6187
 java/src/org/apache/xalan/transformer QueuedSAXEvent.java
 
6188
 ResultTreeHandler.java TransformerImpl.java
 
6189
 java/src/org/apache/xml/utils BoolStack.java
 
6190
 java/src/org/apache/xpath XPathContext.java<br/><ref>Committer's log entry: </ref>This check-in contains a couple things that overlapped on my
 
6191
 system, so I'm checking them in together.
 
6192
 1) Unfinished (in progress) implementation of TransformSnapshot mechanism,
 
6193
 which will hopefully allow a result ContentHandler to take a snapshot
 
6194
 at a given point, and the restart execution from that point at some
 
6195
 later time. For tooling support.
 
6196
 2) Check to make sure SourceTreeHandler isn't being entered twice,
 
6197
 which is related to the cocoon bug from a couple of weeks ago. This
 
6198
 will just help diagnose such a problem in the future.
 
6199
 3) Removed the error stack trace print from postExceptionFromThread.
 
6200
 4) Report exception in SourceTreeHandler#endDocument after
 
6201
 the join, if we can determine that the posted exception won't be
 
6202
 caught elsewhere.
 
6203
 5) removed some catches that simply rethrew the exception
 
6204
 (thanks to Patrick Moore &lt;patrickm@rioport.com&gt;).
 
6205
 See my note on 3/27/2001 to Patrick for more info
 
6206
 on the last two.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/27/2001<br/><ref>Added: </ref>java/src/org/apache/xalan/transformer TransformSnapshot.java
 
6207
 TransformSnapshotImpl.java<br/><ref>Committer's log entry: </ref>Unfinished (in progress) implementation of TransformSnapshot mechanism,
 
6208
 which will hopefully allow a result ContentHandler to take a snapshot
 
6209
 at a given point, and the restart execution from that point at some
 
6210
 later time. For tooling support.on the last two.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>03/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
6211
 ProcessorStylesheetElement.java
 
6212
 ProcessorTemplateElem.java StylesheetHandler.java
 
6213
 XSLTElementDef.java XSLTElementProcessor.java
 
6214
 XSLTSchema.java<br/><ref>Committer's log entry: </ref>Try to catch element order and required element errors during stylesheet 
 
6215
object creation. This new code adds an order and a required field to 
 
6216
XSLElementDef objects where it is applicable.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>04/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fix bugzilla bug 1170. If we're trying an xsl:apply-imports at the top level 
 
6217
(ie there are no
 
6218
 imported stylesheets), we need to indicate that there is no matching template 
 
6219
and prevent and infinite recursion by using the built-in template.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>04/02/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions MethodResolver.java<br/><ref>Committer's log entry: </ref>Code cleanup submitted by Art Welch &lt;art_w@EASTPOINT.COM&gt;.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils TreeWalker.java<br/><ref>Committer's log entry: </ref>Add locator support to TreeWalker<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>04/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
6220
 QueuedStartElement.java<br/><ref>Committer's log entry: </ref>Small fix made for getCurrentNode.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>04/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils TreeWalker.java<br/><ref>Committer's log entry: </ref>Commented out extra call to getData()... this could be a big performance
 
6221
 improvement for some stylesheets.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
6222
 TransformSnapshotImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>Additional support for tooling. Allow tools to take a snapshot of context and 
 
6223
restart execution at that point.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
6224
 XSLTElementProcessor.java
 
6225
 java/src/org/apache/xalan/res XSLTErrorResources.java
 
6226
 java/src/org/apache/xalan/transformer
 
6227
 TransformSnapshotImpl.java TransformerImpl.java<br/><ref>Committer's log entry: </ref>Misc stuff left out from previous check in<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/functions FuncCurrent.java<br/><ref>Committer's log entry: </ref>Don't assume that the object returned by getSubContextList() is a 
 
6228
PredicatedNodeTest object.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor ProcessorInclude.java
 
6229
 TransformerFactoryImpl.java
 
6230
 java/src/org/apache/xalan/transformer
 
6231
 TransformerIdentityImpl.java
 
6232
 java/src/org/apache/xml/utils TreeWalker.java<br/><ref>Committer's log entry: </ref>Create new TreeWalker constructor that takes a systemId parameter. Change 
 
6233
TreeWalker to change fields in the locator and not set it for each node.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>04/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath XPath.java<br/><ref>Committer's log entry: </ref>Fix Bugzilla bug:
 
6234
 PR: 1106
 
6235
 Submitted by: elharo@metalab.unc.edu<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>04/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql QueryParameter.java
 
6236
 SQLExtensionError.java XConnection.java<br/><ref>Committer's log entry: </ref>Minor Javadoc updates (add @author name, remove declared but unthrown @throws)<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>04/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql Column.java
 
6237
 ColumnAttribute.java ColumnData.java
 
6238
 ColumnHeader.java Row.java RowSet.java
 
6239
 StreamableNode.java XConnection.java
 
6240
 XStatement.java<br/><ref>Committer's log entry: </ref>Support for Streamable Mode- John Gentilin<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>04/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/objects XObject.java<br/><ref>Committer's log entry: </ref>Resolve bugzilla bug 1015 
 
6241
&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1015&gt;.
 
6242
 Fix prevents null pointer exceptions when null non-XSLT arguments are
 
6243
 passed to an extension function.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>04/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions MethodResolver.java<br/><ref>Committer's log entry: </ref>Resolve bugzilla bug 1015 
 
6244
&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1015&gt;.
 
6245
 Fix prevents null pointer exceptions when null non-XSLT arguments are
 
6246
 passed to an extension function.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
6247
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Fix copy/paste error. Want to use TransformerFactoryImpl's class loader.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>04/24/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
6248
 TransformSnapshotImpl.java<br/><ref>Committer's log entry: </ref>Keep a copy of current contextNodeList is there is one<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>04/25/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt EnvironmentCheck.java<br/><ref>Committer's log entry: </ref>Added checkDirForJars() which checks java.ext.dirs as well now<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>04/26/2001<br/><ref>Added: </ref>java/src/javax/xml/transform package.html
 
6249
 java/src/javax/xml/transform/dom package.html
 
6250
 java/src/javax/xml/transform/sax package.html
 
6251
 java/src/javax/xml/transform/stream package.html<br/><ref>Committer's log entry: </ref>Add package.html for each package in javax.xml.transform.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>04/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Resolve bug 1496 &lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1496&gt; 
 
6252
where xsl:param statements were not being reset properly if the TransformerImpl 
 
6253
was reused.<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>04/27/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/stree DocImpl.java<br/><ref>Committer's log entry: </ref>Fix for #1561<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>04/29/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/functions FuncExtFunction.java<br/><ref>Committer's log entry: </ref>Resolve bugzilla bug 1373 
 
6254
&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1373&gt;.
 
6255
 Added code to support return of Integer or Long by an external function.
 
6256
 Code was contributed by Patrick Moore &lt;patmoore@ieee.org&gt;.<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>05/03/2001<br/><ref>Modified: </ref>java/src/javax/xml/transform/stream StreamResult.java
 
6257
 StreamSource.java<br/><ref>Committer's log entry: </ref>Small fix to avoid file:////path that may fail on some JDK.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>05/04/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql package.html<br/><ref>Committer's log entry: </ref>Preliminary updates for John G's work.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>05/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Check for a null contextNodeList before returning its clone<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>05/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/stree StreeDOMBuilder.java<br/><ref>Committer's log entry: </ref>Set the element's level correctly, before we process attributes.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
6258
 TransformerIdentityImpl.java<br/><ref>Committer's log entry: </ref>Resolve bugzilla 1648 
 
6259
(http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1648).
 
6260
 TransformerIdentityImpl was improperly using an old LexicalHandler when 
 
6261
invoked for a second transform.
 
6262
 This bug only affects identity transforms with StreamResults.
 
6263
 Many thanks to John Keyes &lt;johnkeyes@yahoo.com&gt; for reporting this bug.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>05/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>Updated version number to 2.1.0<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>05/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>Updated version number to 2.1.0<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/functions FuncExtFunction.java<br/><ref>Committer's log entry: </ref>Change submitted by Patrick Moore &lt;patmoore@ieee.org&gt; as part of bugzilla 
 
6264
1373 (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1373).
 
6265
 Return value from extension function is now generalized so that all 
 
6266
derivatives of Number are now properly handled.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>05/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLTSchema.java<br/><ref>Committer's log entry: </ref>Set the correct order of xsl:include elements<br/><br/></li><li><ref>Committed by </ref>johng@apache.org<ref> on </ref>05/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql Column.java
 
6267
 ColumnAttribute.java ColumnData.java
 
6268
 ColumnHeader.java ConnectionPool.java
 
6269
 DefaultConnectionPool.java ExtensionError.java
 
6270
 PooledConnection.java QueryParameter.java Row.java
 
6271
 RowSet.java SQLExtensionError.java
 
6272
 StreamableNode.java XConnection.java
 
6273
 XConnectionPoolManager.java XStatement.java
 
6274
 package.html<br/><ref>Committer's log entry: </ref>Updates Javadocs
 
6275
 Submitted by:John Gentilin mailto://johnglinux@eyecatching.com<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Correct typo introduced in revision 1.30 causing problems with transforms on 
 
6276
Unix platforms.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemChoose.java<br/><ref>Committer's log entry: </ref>Correct bugzilla bug 1748 
 
6277
&lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1748&gt;.
 
6278
 When evaluating xsl:when, the xsl:choose element was used to resolve 
 
6279
namespace prefixes instead of
 
6280
 the xsl:when element itself. This caused namespace prefixes defined on the 
 
6281
xsl:when to be ignored.<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>05/15/2001<br/><ref>Modified: </ref>java/src/javax/xml/parsers DocumentBuilderFactory.java
 
6282
 SAXParserFactory.java
 
6283
 java/src/javax/xml/transform TransformerFactory.java<br/><ref>Committer's log entry: </ref>Use the context class loader if available.
 
6284
 
 
6285
 The implementation is based on ExtensionHandler, and it's needed in order
 
6286
 to work in certain environments ( like tomcat ).<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>05/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions ExtensionHandler.java
 
6287
 ExtensionHandlerGeneral.java<br/><ref>Committer's log entry: </ref>Make getClassForName a public method. There are few other places in xalan
 
6288
 where Class.forName is used, and this can create problems in some cases
 
6289
 where the Thread.getContextClassLoader should be used.
 
6290
 
 
6291
 getClassForName uses introspection to call getContextClassLoader
 
6292
 ( so it works in JDK1.1 ).
 
6293
 
 
6294
 In ExtensionHandlerGeneral, use the thread loader to find BSF ( it may be
 
6295
 possible that xalan is installed in CLASSPATH, but BSF is in a webapp ).<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>05/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
6296
 CompilingStylesheetHandler.java
 
6297
 java/src/org/apache/xalan/serialize SerializerFactory.java<br/><ref>Committer's log entry: </ref>2 more instances where Class.forName was used.
 
6298
 
 
6299
 Use the method in ExtensionHandler for consistency ( we could move it in
 
6300
 org.apache.xml.utils, but for now it's easier to just use it as it is )<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>05/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/stree SourceTreeHandler.java
 
6301
 java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>This is the "thread pooling hook".
 
6302
 
 
6303
 It slightly changes the API used to create and wait for the transform thread.
 
6304
 Instead of using threadCreate() and Thread.start() that creates a new thread
 
6305
 and thread.join() that waits for a thread to end, we now use a 
 
6306
ThreadControler
 
6307
 class that has the equivalent methods:
 
6308
 - run( Runnable ) - executes a task in a thread. The default implementation
 
6309
 is identical with what we had, using new Thread() and start()
 
6310
 - waitTread() - waits for a task to end. The default impl. is identical with
 
6311
 the previous code, using thread.join().
 
6312
 
 
6313
 Someone wanting to use a thread pool for xalan will have to extend
 
6314
 the ThreadControler and override the 2 methods, then call setThreadController.
 
6315
 
 
6316
 Xalan itself doesn't implement a thread pool right now ( for mosts uses it's
 
6317
 not even needed - if you just do few transforms for example ), instead
 
6318
 a server that runs xalan could plug it's own thread pool.<br/><br/></li><li><ref>Committed by </ref>Gary L Peskin &lt;garyp@firstech.com&gt;<ref> on </ref>05/15/2001<br/><ref>Committer's log entry: </ref>
 
6319
&gt; Use the context class loader if available.
 
6320
&gt;
 
6321
&gt; The implementation is based on ExtensionHandler, and it's needed in order
 
6322
&gt; to work in certain environments ( like tomcat ).
 
6323
&gt;
 
6324
&gt;<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>05/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ExtensionError.java<br/><ref>Committer's log entry: </ref>Fixed "conflict" in javadoc comments.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>05/16/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql package.html<br/><ref>Committer's log entry: </ref>Editing pass.<br/><br/></li><li><ref>Committed by </ref>tmiller@apache.org<ref> on </ref>05/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xsltc TransletOutputHandler.java<br/><ref>Committer's log entry: </ref>bug # 1406 fixed, omit xml header implemented<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>05/17/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Update Javadoc and remove commented out reference to properties file
 
6325
 PR:Bugzilla1627<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>Resolve bug 1330 &lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1330&gt;.
 
6326
 setContentHandler failed to also reset m_lexicalHandler if the ContentHandler
 
6327
 was also a LexicalHandler. This caused the old LexicalHandler to be used 
 
6328
which
 
6329
 was pointing to a previous result tree.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/18/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
6330
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Resolve bug 1762 &lt;http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1762&gt;.
 
6331
 TransformerFactoryImpl's URIResolver was not propagated to created 
 
6332
Transformers.
 
6333
 Modified code to propagate.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>05/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils TreeWalker.java
 
6334
 SystemIDResolver.java<br/><ref>Committer's log entry: </ref>Catch SecurityException whenever accessing System.getProperty("user.dir");
 
6335
 minor javadoc update<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>05/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemCopy.java
 
6336
 ElemValueOf.java
 
6337
 java/src/org/apache/xalan/transformer TreeWalker2Result.java
 
6338
 java/src/org/apache/xpath/functions FuncLast.java<br/><ref>Committer's log entry: </ref>Fix for bugs reported by the Eclipse folks for TransformState, where
 
6339
 some operations (xsl:value-of, xsl-copy) were not pushing the
 
6340
 current node on the current node stack. Addresses
 
6341
 http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1524.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>05/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates OutputProperties.java<br/><ref>Committer's log entry: </ref>Catch SecurityException as needed
 
6342
 PR: Bugzilla1258<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates OutputProperties.java<br/><ref>Committer's log entry: </ref>Fix to the following bug reported by dims@yahoo.com:
 
6343
 
 
6344
 loadPropertiesFile method in org\apache\xalan\templates\OutputProperties.java 
 
6345
does not fall back
 
6346
 to the Thread Context Class Loader to load properties files like 
 
6347
output_xml.properties etc. This
 
6348
 is causing problems in ServletExec_3_1+C2.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates OutputProperties.java<br/><ref>Committer's log entry: </ref>Correct implementation of ContextClassLoader to support case where properties 
 
6349
file is to be loaded by a different ClassLoader than the OutputProperties 
 
6350
class. Thanks to Davanum Srinivas &lt;dims@yahoo.com&gt; for this code and for 
 
6351
reporting this bug.
 
6352
 loadPropertiesFile should eventually be moved into a thread-specific class.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>05/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
6353
 TransformerFactoryImpl.java
 
6354
 java/src/org/apache/xalan/serialize CharInfo.java
 
6355
 java/src/org/apache/xpath/functions FuncSystemProperty.java<br/><ref>Committer's log entry: </ref>Modify getResourceAsStream calls to use the contextClassLoader, if available.
 
6356
 This is a temporary fix until we can centralize this function.<br/><br/></li></ul><note>This release includes no updates of the compatibility source code.</note>
 
6357
 </s2>
 
6358
 
 
6359
<s2 title="Changes for &xslt4j; 2.0.1">
 
6360
<p>This release includes a number of bug fixes to the &xslt4j; and TrAX core and Xalan-Java 1 compability API. We have also</p>
 
6361
<ul>
 
6362
  <li>Entered all known &xslt4j; 2 <link idref="jira">bugs</link> in the Apache Bugzilla database<br/><br/></li>
 
6363
  <li>Added support for using custom URIResolver, EntityResolver, and ContentHandler implementations with the <link
 
6364
      idref="commandline">command-line utility</link><br/><br/></li> 
 
6365
  <li>Upgraded from Ant 1.2 to Ant 1.3 for our <link idref="builds">builds</link> (the new ant.jar is in the bin directory).</li>
 
6366
</ul>
 
6367
<p>Core source code updates:</p>
 
6368
<ul>
 
6369
<li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes ChildWalkerMultiStep.java<br/><ref>Committer's log entry: </ref>Fix for bug reported by "Chris P. McCabe" &lt;chris_mccabe@choicehotels.com&gt;
 
6370
 02/06/2001 06:55 PM.
 
6371
 Defensive fix for if the last used walker is null, then don't check to
 
6372
 see if it is a fast walker! Without this, a null pointer exception is
 
6373
 very possible.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fixes for exceptions being thrown that weren't being passed through
 
6374
 the error listener.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes FollowingWalker.java<br/><ref>Committer's log entry: </ref>Fix for bug reported by Dave Haffner &lt;dave.haffner@xmls.com&gt;
 
6375
 02/06/2001 04:03 AM
 
6376
 In parentNode(), don't screen out nextAncestor, since the parent
 
6377
 is never actually returned. This sets things up correctly for firstChild
 
6378
 and nextSibling.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes PrecedingWalker.java<br/><ref>Committer's log entry: </ref>Fix for bug reported by Dave Haffner &lt;dave.haffner@xmls.com&gt;
 
6379
 02/06/2001 04:03 AM
 
6380
 In nextSibling(), don't return null if isAncestorOfRootContext, instead
 
6381
 do next.getFirstChild().<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath SourceTreeManager.java<br/><ref>Committer's log entry: </ref>Fix for bug reported by anders.domeij@uc.se
 
6382
 02/07/2001 09:35 AM
 
6383
 removed extra bogus TransformerException decl in resolveURI<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/stree SourceTreeHandler.java<br/><ref>Committer's log entry: </ref>Fix bug reported by Jason Harrop &lt;jharrop@bigpond.net.au&gt;
 
6384
 02/07/2001 08:12 PM
 
6385
 Don't process comment or whitespace events if inside a startDTD/endDTD
 
6386
 event.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/10/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/axes WalkerFactory.java<br/><ref>Committer's log entry: </ref>In indirect response to bug posted by "Thee Boon Hoo" &lt;theebh@newstakes.com&gt;
 
6387
 02/07/2001 09:37 PM
 
6388
 
 
6389
 "//table[1]" patterns would give one node
 
6390
 when they should have given 2, when applied to Boon Hoo's
 
6391
 source.
 
6392
 "//table[1]" is equivelent to
 
6393
 "/descendant-or-self::node()/table[1]",
 
6394
 and so must return the first table child
 
6395
 of each table-inst element.
 
6396
 
 
6397
 An optimization was optimizing this to
 
6398
 "/descendant-or-self::table, which is
 
6399
 fine as long as indexing isn't used. Since
 
6400
 we can not tell until runtime if indexing
 
6401
 is being used, we have to turn of this
 
6402
 optimization for all predicated "//foo[xx]"
 
6403
 patterns.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor StylesheetPIHandler.java
 
6404
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Patch for Dmitri IIyin to use the specified URIResolver.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemNumber.java<br/><ref>Committer's log entry: </ref>Number Expression should be evaluated then rounded up.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Create a document fragment for the output node, for -flavor d2d.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler Compiler.java<br/><ref>Committer's log entry: </ref>Better error message when quo is used.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemCallTemplate.java
 
6405
 ElemChoose.java ElemCopy.java ElemFallback.java
 
6406
 ElemIf.java ElemLiteralResult.java
 
6407
 ElemTemplate.java
 
6408
 java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Remove extra method/call to TransformerImpl.executeChildTemplates()<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/patterns NodeTest.java<br/><ref>Committer's log entry: </ref>Return an empty string instead of null from getLocalName() when the
 
6409
 nodetest does not have a name. Encountered with the SQL extension,
 
6410
 in response to bug reported by "Michael Kay" &lt;mhkay@iclway.co.uk&gt;,
 
6411
 02/08/2001 08:57 AM.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ColumnData.java<br/><ref>Committer's log entry: </ref>In getData() return an empty string instead of null if there is
 
6412
 no data to be obtained.
 
6413
 In response to bug reported by "Michael Kay" &lt;mhkay@iclway.co.uk&gt;,
 
6414
 02/08/2001 08:57 AM.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>02/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/extensions MethodResolver.java<br/><ref>Committer's log entry: </ref>Correct ConversionInfo array for Node-Set and RTF. Remove DocumentFragment 
 
6415
from RTF and replace with NodeList. Remove duplicate Boolean from both. Fix 
 
6416
Boolean conversion to make java.lang.Boolean higher than string.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/19/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ColumnHeader.java
 
6417
 RowSet.java XStatement.java<br/><ref>Committer's log entry: </ref>Use null nodetest to mean the same as "node()". This fixes a bug reported
 
6418
 by "Voytenko, Dimitry" &lt;DVoytenko@SECTORBASE.COM&gt;
 
6419
 where &lt;xsl:copy-of select="sql:query(...)"/&gt;
 
6420
 crashes with NullPointerException, i.e.
 
6421
 there are cases where we really don't want
 
6422
 to set the NodeTest.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/compiler XPathParser.java<br/><ref>Committer's log entry: </ref>Check for null token before checking if it is a letter<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/20/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
6423
 TransformerIdentityImpl.java<br/><ref>Committer's log entry: </ref>Fix made for bug reported by "Glencross, Christian" 
 
6424
&lt;Christian.Glencross@gs.com&gt;
 
6425
 on 02/16/2001 10:18 AM.
 
6426
 Xerces 1.2.3 SAX parser calls
 
6427
 handler.setDocumentLocator() before handler.startDocument().
 
6428
 TransformerIdentityImpl.m_resultContentHandler isn't initialised until
 
6429
 TransformerIdentityImpl.startDocument() is called.
 
6430
 Added lazy construction of result handler
 
6431
 in setDocumentLocator, in addition to
 
6432
 startDocument.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>02/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib Extensions.java<br/><ref>Committer's log entry: </ref>Correct implementation of string value of a node.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>02/21/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql Column.java
 
6433
 ColumnAttribute.java ColumnData.java
 
6434
 ColumnHeader.java Row.java RowSet.java
 
6435
 StreamableNode.java XConnection.java
 
6436
 XStatement.java package.html<br/><ref>Committer's log entry: </ref>Added experimental usage metatag to all classes in this package,
 
6437
 and an explanatory note to package.html.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/stree ElementImpl.java<br/><ref>Committer's log entry: </ref>Bug fix attributed to Norman Walsh &lt;ndw@nwalsh.com&gt;, on
 
6438
 02/20/2001 09:50 AM. if the attribute 'name' doesn't occur in the AttList, 
 
6439
the
 
6440
 result of getIndex(name) is -1, but
 
6441
 getChildAttribute() would incorrectly
 
6442
 return the first attribute. Fix returns
 
6443
 null if index &lt; 0.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToXML.java
 
6444
 java/src/org/apache/xalan/transformer
 
6445
 TransformerIdentityImpl.java<br/><ref>Committer's log entry: </ref>Implement DeclHandler for identity transforms<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>02/22/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Fix for bug originally reported by Daryl Beattie &lt;DarylB@screamingmedia.com&gt;
 
6446
 on 02/14/2001 04:16 PM. A hang was occuring inside the use
 
6447
 of a Result Tree Fragment. When the result tree fragement was
 
6448
 being created, the Redirect extension was being called, which
 
6449
 called createResultContentHandler which set the ContentHandler
 
6450
 in the Transformer, but not in the ResultTreeHandler. Then, Redirect
 
6451
 called Transformer#executeChildTemplates(
 
6452
 ElemTemplateElement elem, Node sourceNode, QName mode, 
 
6453
ContentHandler handler)
 
6454
 which saves the reference to the original content handler in
 
6455
 the transformer, and then sets the new one by calling setContentHandler,
 
6456
 which sets the ContentHandler in the ResultTreeHandler as well
 
6457
 as the Transformer. When it tried to restore the old ContentHandler,
 
6458
 it restored the value in the ResultTreeHandler to a Serializer, instead
 
6459
 of the correct ContentHandler. When transformToRTF then called
 
6460
 endDocument on it's resultTreeFragment, the event was sent
 
6461
 to the Serializer instead of the SourceTreeHandler, and thus the
 
6462
 isComplete flag was not set, and thus the hang. (whew!)
 
6463
 The fix is in executeChildTemplates save the value of the
 
6464
 resultTreeHandler's contentHandler as well as Transformer's
 
6465
 content handler, and restore them both. A more architectual fix
 
6466
 could be made, but not without high risk, so I think this is the best
 
6467
 and safest way to fix it.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>02/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTInfo.properties<br/><ref>Committer's log entry: </ref>Changed version to 2.0.1<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>02/23/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor XSLProcessorVersion.java<br/><ref>Committer's log entry: </ref>Changed version to 2.0.1<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>02/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTErrorResources.java<br/><ref>Committer's log entry: </ref>Update text of error messages
 
6468
 Submitted by: Andreas Zehnpfund<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>02/28/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Update printArgOptions() with better text and to better reflect actual
 
6469
 options that are currently supported; catch missing -IN argument<br/><br/></li><li><ref>Committed by </ref>jkesselm@apache.org<ref> on </ref>03/05/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/client XSLTProcessorApplet.java
 
6470
 java/src/org/apache/xalan/processor StylesheetHandler.java
 
6471
 TransformerFactoryImpl.java
 
6472
 java/src/org/apache/xalan/stree DocImpl.java
 
6473
 StreeDOMBuilder.java TextImpl.java
 
6474
 java/src/org/apache/xalan/templates OutputProperties.java
 
6475
 java/src/org/apache/xalan/xslt Process.java
 
6476
 java/src/org/apache/xml/utils FastStringBuffer.java
 
6477
 java/src/trax trax.properties<br/><ref>Committer's log entry: </ref>New approach to FastStringBuffer, and changes needed to support it.
 
6478
 We still need to do some serious work on both the initial values of the
 
6479
 tuning parameters and the heuristics driving the "chunk growth" algorithms.
 
6480
 Currently set for fixed-sized chunks of 8Kch in main tree, .5Kch in RTF.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemElement.java
 
6481
 ElemForEach.java ElemLiteralResult.java
 
6482
 java/src/org/apache/xalan/transformer
 
6483
 ClonerToResultTree.java QueuedSAXEvent.java
 
6484
 QueuedStartDocument.java QueuedStartElement.java
 
6485
 ResultTreeHandler.java TransformerImpl.java
 
6486
 TreeWalker2Result.java<br/><ref>Committer's log entry: </ref>Fix for http://nagoya.apache.org/bugzilla/show_bug.cgi?id=741.
 
6487
 
 
6488
 1) ResultTreeHandler now implements the TransformState interface.
 
6489
 2) Queued state such as the current node and the current template is stored 
 
6490
as part of QueuedStartElement. Storage will only occur if the ContentHandler 
 
6491
implements TransformClient.
 
6492
 3) When state is requested (for instance TransformState#getCurrentElement()), 
 
6493
if the queued element is null or not pending (for instance, in a characters 
 
6494
event), it will get the state from the transformer, otherwise it will get the 
 
6495
state from the queued element.
 
6496
 
 
6497
 Other fixes were attempted for this problem, including trying to
 
6498
 get rid of queueing altogether, and flushing a bit earlier before
 
6499
 the state was pushed on the various stacks, but both of
 
6500
 these had show-stopping issues (see discussions
 
6501
 on xalan-dev).
 
6502
 
 
6503
 Note that for the moment the ContextNodeList is node
 
6504
 cloned as it needs to be in order for
 
6505
 TransformState#getContextNodeList.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>03/06/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemParam.java
 
6506
 java/src/org/apache/xpath Arg.java VariableStack.java<br/><ref>Committer's log entry: </ref>The field Arg.isParamVar was attempting to serve two functions: to indicate 
 
6507
variable Frame entries which are not currently activated and to indicate Frames 
 
6508
containing parameters passed with xsl:with-param. When processing was finished 
 
6509
for a node in a node-set, the isParamVar flag was turned on to indicate the 
 
6510
Frame slot was available. Unfortunately, this also indicated that the item was 
 
6511
passed as a parameter which it wasn't. This fix changes isParamVar into to 
 
6512
fields, isAvailable which indicates that the slot is available and 
 
6513
isFromWithParam indicating the Frame slot came from an xsl:with-param or a 
 
6514
top-level parameter passed in via the tranformerImpl.setParameter() API.
 
6515
 I have tested this change against the conformance suite and had no 
 
6516
regression. I've also submitted a test case which fails on the existing 
 
6517
codebase but works okay after this fix.
 
6518
 It is possible that I've missed something with regard to the API setParameter 
 
6519
calls but we can fix those if problems are reported.<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>03/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils FastStringBuffer.java<br/><ref>Committer's log entry: </ref>Correct operation when length of content to be appended is zero.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>03/07/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToXML.java<br/><ref>Committer's log entry: </ref>Fix closing out doctype declaration<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>03/08/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SystemIDResolver.java<br/><ref>Committer's log entry: </ref>Change SystemIdResolver to default to user.dir if the base URI is null<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>03/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java
 
6520
 java/src/org/apache/xpath VariableStack.java<br/><ref>Committer's log entry: </ref>Parameters set with setParameter were available to stylesheet as variable 
 
6521
references ($myParam) even though there was no xsl:param element to receive it.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>03/09/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer
 
6522
 TransformerIdentityImpl.java<br/><ref>Committer's log entry: </ref>Check if there is a DeclHandler before calling it.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils WrappedRuntimeException.java<br/><ref>Committer's log entry: </ref>Patch attributed to Patrick Moore &lt;patrickm@rioport.com&gt; on 03/09/2001.
 
6523
 Adds another constructor to pass in the error message.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemAttribute.java
 
6524
 ElemElement.java<br/><ref>Committer's log entry: </ref>Checkin addresses http://nagoya.apache.org/bugzilla/show_bug.cgi?id=923.
 
6525
 elemAttribute now derives from elemElement so the basic name resolution
 
6526
 code can be shared. Breaks attribset24 test, but I think the newer
 
6527
 behavior is better. New virtual methods overloaded by elemAttribute are
 
6528
 constructNode, resolvePrefix, and validateNodeName. Also, in the
 
6529
 elemAttribute#execute method, checks are made to make sure an
 
6530
 element is pending.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils SystemIDResolver.java<br/><ref>Committer's log entry: </ref>Added getAbsoluteURI(String url), and merge
 
6531
 with Myriam's changes.
 
6532
 Part of fix for problem found when
 
6533
 investigating http://nagoya.apache.org/bugzilla/show_bug.cgi?id=906.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
6534
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Call getAbsoluteURI(String url) for the source URL.
 
6535
 Fix for problem found when
 
6536
 investigating http://nagoya.apache.org/bugzilla/show_bug.cgi?id=906.
 
6537
 This tries to force us always having an absolute URL in the processing
 
6538
 stack as the base URL, which should be OK, I hope.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer TransformerImpl.java<br/><ref>Committer's log entry: </ref>Call getAbsoluteURI(String url) for the source URL.
 
6539
 Fix for problem found when
 
6540
 investigating http://nagoya.apache.org/bugzilla/show_bug.cgi?id=906.
 
6541
 This tries to force us always having an absolute URL in the processing
 
6542
 stack as the base URL, which should be OK, I hope.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/transformer QueuedEvents.java
 
6543
 QueuedStartElement.java ResultTreeHandler.java<br/><ref>Committer's log entry: </ref>The user for http://nagoya.apache.org/bugzilla/show_bug.cgi?id=741 reported
 
6544
 problems on testing, so these changes are a re-fix. He tested and
 
6545
 everything seems OK now. There actually may be a slight performance
 
6546
 improvement involved here.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize SerializerToHTML.java<br/><ref>Committer's log entry: </ref>Applied patches from dmitri.ilyin@memiq.com (Dmitri Ilyin)
 
6547
 from http://nagoya.apache.org/bugzilla/show_bug.cgi?id=705.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath XPathAPI.java<br/><ref>Committer's log entry: </ref>Applied patch submitted by nboyd@atg.com (Norris Boyd)
 
6548
 at http://nagoya.apache.org/bugzilla/show_bug.cgi?id=702.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/serialize Encodings.java<br/><ref>Committer's log entry: </ref>Applied patch submitted by havardw@underdusken.no (H嶡rd Wigtil).
 
6549
 Also added "XXX-X" variants for all "XXX_X" java encoding names.
 
6550
 I'm not totally confident that this is the right thing to do, but I can't
 
6551
 see that it will hurt, except to make the table a bit larger. I
 
6552
 would prefer to be safe and make sure we handle the encoding.
 
6553
 See my comments in http://nagoya.apache.org/bugzilla/show_bug.cgi?id=718.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates ElemTemplateElement.java
 
6554
 StylesheetRoot.java<br/><ref>Committer's log entry: </ref>Minor changes to better bottleneck throwing of Runtime exceptions
 
6555
 during processing.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor
 
6556
 TransformerFactoryImpl.java<br/><ref>Committer's log entry: </ref>Catch all exceptions thrown when processing stylesheet, and send
 
6557
 them to the error listener. There's probably some danger of having
 
6558
 the same error sent to the error listener multiple times, but better too
 
6559
 many reports, than none, I guess.
 
6560
 This addresses http://nagoya.apache.org/bugzilla/show_bug.cgi?id=906.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql XConnection.java
 
6561
 XStatement.java<br/><ref>Added: </ref>java/src/org/apache/xalan/lib/sql ConnectionPool.java
 
6562
 DefaultConnectionPool.java ExtensionError.java
 
6563
 PooledConnection.java QueryParameter.java
 
6564
 SQLExtensionError.java XConnectionPoolManager.java<br/><ref>Committer's log entry: </ref>These are John Gentilin &lt;johnglinux@eyecatching.com&gt;
 
6565
 patches for connection pooling and parameterized
 
6566
 queries. These should be considered to be unstable
 
6567
 right now, as we are still working on some things.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/11/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor ProcessorInclude.java
 
6568
 TransformerFactoryImpl.java
 
6569
 java/src/org/apache/xalan/serialize SerializerToXML.java
 
6570
 java/src/org/apache/xalan/stree StreeDOMHelper.java
 
6571
 java/src/org/apache/xalan/transformer ResultTreeHandler.java
 
6572
 TransformerIdentityImpl.java TreeWalker2Result.java
 
6573
 java/src/org/apache/xml/utils AttList.java TreeWalker.java
 
6574
 java/src/org/apache/xpath DOM2Helper.java XPathContext.java<br/><ref>Committer's log entry: </ref>The DOM2Helper#isNodeAfter(Node node1, Node node2) method
 
6575
 has been fixed so that it no longer does the try/catch thing if one
 
6576
 of the nodes doesn't implement DOMOrder, but instead does an
 
6577
 instanceof test. In StreeDOMHelper, it overloads this method and
 
6578
 *does* do the try/catch business, since almost always both nodes
 
6579
 will implement DOMOrder in this case, and this will be faster than
 
6580
 an instanceof test. Also, in various classes, I did some stuff to try
 
6581
 and make sure that a DOM2Helper wasn't being created and used
 
6582
 when a StreeDOMHelper is needed.
 
6583
 
 
6584
 This addresses http://nagoya.apache.org/bugzilla/show_bug.cgi?id=800
 
6585
 and should give a good performance fix for foreign DOM processing.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath/patterns NodeTest.java<br/><ref>Committer's log entry: </ref>Xerces at some point decided to use "" instead
 
6586
 of null for null namespaces. There has been a
 
6587
 discussion between Gary Peskin in
 
6588
 Joe Kessleman on xalan-dev about this,
 
6589
 but I hadn't been fully keeping up the the
 
6590
 thread that well, and missed it's relation to
 
6591
 this problem. I include some of the discussion
 
6592
 at the end of this note. I made Xalan be able to
 
6593
 compare a "" namespace to null for now, until
 
6594
 we get this resolved.
 
6595
 
 
6596
 The gist of the discussion on xalan-dev regarding this is:
 
6597
 
 
6598
 &gt;&gt;1. Declare the Xerces-J support of schemas to have a bug and ask that
 
6599
 &gt;&gt;Xerces be corrected to always use a null namespace URI to indicate that
 
6600
 &gt;&gt;there is no default namespace. Even if the Xerces people change this
 
6601
 &gt;&gt;behavior, is this correct?
 
6602
 &gt;
 
6603
 &gt; Yes. If your description of the problem is accurate (you should probably
 
6604
 &gt; submit a more detailed case so it can be reproduced in the lab), this is a
 
6605
 &gt; parser/DOM-builder bug.<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>03/12/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ExtensionError.java<br/><ref>Committer's log entry: </ref>Removed ( commented out ) dump() method and the imports in ExtensionError.
 
6606
 
 
6607
 So far the method doesn't seem to be used ( no warning in the compile ).
 
6608
 
 
6609
 The problem is that this method is breaking the build with crimson ( since
 
6610
 it uses xerces-specific classes ). It is possible to implement it on top
 
6611
 of the serialization classes that are part of xalan - if someone needs the
 
6612
 method I'll try to port it.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils TreeWalker.java<br/><ref>Committer's log entry: </ref>Added back in the TreeWalker(ContentHandler contentHandler)
 
6613
 constructor, because I'm worried I'll break more dependent code.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>03/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/res XSLTErrorResources.java
 
6614
 java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Implement new arguments for the command line interface: URIResolver, 
 
6615
EntityResolver and ContentHandler<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>03/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/templates FuncFormatNumb.java<br/><ref>Committer's log entry: </ref>Fix error message to say that 2 or 3 arguments are required.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>03/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/processor ProcessorLRE.java
 
6616
 java/src/org/apache/xalan/res XSLTErrorResources.java<br/><ref>Committer's log entry: </ref>Better error message for missing or incorrect XSLT namespace declaration in a 
 
6617
stylesheet<br/><br/></li><li><ref>Committed by </ref>garyp@apache.org<ref> on </ref>03/13/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib Redirect.java
 
6618
 java/src/org/apache/xalan/transformer TransformerImpl.java
 
6619
 java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Remember the Result that was used to trigger the transform. Access that 
 
6620
result from the Redirect extension to make file references in Redirect relative 
 
6621
to the original result URI.
 
6622
 If this is not available, references are relative to the source URI.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xpath VariableStack.java<br/><ref>Committer's log entry: </ref>Added protection for null pointer exception that I discovered when
 
6623
 running some Cocoon tests. Since I've never seen this before,
 
6624
 I assume this is related to the changes that Gary made, but am
 
6625
 unsure as it's 4:00 in the morning and I'm too tired to look into it deeply.<br/><br/></li><li><ref>Committed by </ref>curcuru@apache.org<ref> on </ref>03/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>Remove check for missing -IN arg; there are a number of use
 
6626
 cases for calling Process.main without an XML document<br/><br/></li><li><ref>Committed by </ref>costin@apache.org<ref> on </ref>03/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/xslt Process.java<br/><ref>Committer's log entry: </ref>A (last ? ) place where XMLReaderFactory was used without
 
6627
 trying jaxp first. I used the same code that is used in all other
 
6628
 places in xalan.
 
6629
 
 
6630
 With this change, the parser defined in XSLTInfo.properties will be used
 
6631
 only if jaxp is not available.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>03/14/2001<br/><ref>Modified: </ref>java/src/org/apache/xml/utils StringVector.java<br/><ref>Committer's log entry: </ref>Added missing @serial Javadoc tags.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/15/2001<br/><ref>Modified: </ref>java/src/org/apache/xalan/lib/sql ConnectionPool.java
 
6632
                        DefaultConnectionPool.java ExtensionError.java
 
6633
                        SQLExtensionError.java XConnection.java
 
6634
                        XConnectionPoolManager.java XStatement.java<br/><ref>Committer's log entry: </ref>Update from John Gentilin &lt;johnglinux@eyecatching.com&gt; to
 
6635
  fix connection cleanup.<br/><br/></li></ul><p>Compatibility source code updates:</p><ul><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/02/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt XSLTInputSource.java
 
6636
 XSLTResultTarget.java<br/><ref>Committer's log entry: </ref>Implement some more methods for compatibility<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>02/02/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt XSLTInputSource.java<br/><ref>Committer's log entry: </ref>Fixed javadoc for api that was just added back.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>02/02/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt XSLTResultTarget.java<br/><ref>Committer's log entry: </ref>Fixed javadoc for api that was just added back.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/02/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt XSLTEngineImpl.java<br/><ref>Committer's log entry: </ref>Fix problem with calling the processor with a liaison<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/02/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt XSLTEngineImpl.java<br/><ref>Committer's log entry: </ref>Fix problem where source file was being parsed more than once and if using an 
 
6637
input stream, we would get a read error<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/12/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt XSLTEngineImpl.java<br/><ref>Committer's log entry: </ref>Set system id in stylesheet handler<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/14/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt XSLTInputSource.java<br/><ref>Committer's log entry: </ref>Call local setSystemId.<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/15/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt XSLTEngineImpl.java<br/><ref>Committer's log entry: </ref>Fix problem with processing an input source created from a reader with no 
 
6638
systemId
 
6639
 Fix problem with reading an input source file twice if it has a PI<br/><br/></li><li><ref>Committed by </ref>mmidy@apache.org<ref> on </ref>02/22/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xslt StylesheetRoot.java<br/><ref>Committer's log entry: </ref>Add getOutputMethod API.<br/><br/></li><li><ref>Committed by </ref>dleslie@apache.org<ref> on </ref>03/07/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xpath/xml
 
6640
 XMLParserLiaisonDefault.java<br/><ref>Committer's log entry: </ref>Put in Apache copyright.<br/><br/></li><li><ref>Committed by </ref>sboag@apache.org<ref> on </ref>03/13/2001<br/><ref>Modified: </ref>java/compat_src/org/apache/xalan/xpath/xml TreeWalker.java
 
6641
 java/compat_src/org/apache/xalan/xslt XSLTEngineImpl.java<br/><ref>Committer's log entry: </ref>Made changes for change to API for XalanJ2 TreeWalker, which
 
6642
 now requires that the DOM helper be created by the caller.</li>
 
6643
 </ul>
 
6644
</s2>
 
6645
 
 
6646
<s2 title="Changes for &xslt4j; version 2.0.0">
 
6647
<p>Release 2.0 includes several bug fixes to the &xslt4j; and TrAX core and to the Xalan-Java 1 compatibility API. We also updated bsf.jar to the <resource-ref idref="bsf"/> release candidate 2.2, which fixes a bug running JPython extensions.</p>
 
6648
<p><em>Core bug fixes:</em></p>
 
6649
<ul>
 
6650
  <li>A threading problem showed up when using multiple processors. We fixed it by using a separate XPathContext object to do whitespace node
 
6651
   matches (xsl:strip-space).<br/><br/></li>
 
6652
  <li>Fixed a bug running Norm Walsh's DocBook stylesheets by not setting the variable stack position if the FilterExprWalker is not owned by a
 
6653
  top-level NodeIterator.<br/><br/></li>
 
6654
  <li>Fixed a problem with null namespace being passed from xsl:element. This bug also surfaced while processing DocBook
 
6655
   stylesheets.<br/><br/></li>
 
6656
  <li>In the interest of stability, we now treat "unknown error in XPath" as a fatal error.<br/><br/></li>
 
6657
  <li>Added support in stylesheet processing instructions for "text/xml" and "application/xml+xslt" mime types.<br/><br/></li>
 
6658
  <li>Fixed tokenizing of stylesheet processing instructions to allow parameters to be passed to server in href attributes.<br/><br/></li>
 
6659
  <li>Fixed a bug passing Transformer creation error messages to ErrorListener when an ErrorListener has been set on
 
6660
   TransformerFactory.<br/><br/></li>
 
6661
  <li>When using an Exception to instantiate a FactoryConfigurationError (extends Error), we now propagate the Exception message to 
 
6662
  super().<br/><br/></li>
 
6663
  <li>Added defensive code to ElemTemplateElement for handling a null URI.<br/><br/></li>
 
6664
  <li>When using an Exception to instantiate a TransformerException (extends Exception), we now propagate the Exception message to super() 
 
6665
  rather than a generic message.<br/><br/></li>
 
6666
  <li>Fixed a bug (the generation of an unwanted entity reference) performing the identity transformation 
 
6667
  (see <link idref="usagepatterns" anchor="serialize">Serializing output</link>) with an XML document containing a DOCTYPE
 
6668
   declaration.<br/><br/></li>
 
6669
   <li>Message manager modified so that the SourceLocator must always be passed in,
 
6670
  which will make a major difference in getting line number information.<br/><br/></li> 
 
6671
  <li>xsl:element's handling of namespace attribute and prefix in
 
6672
  name attribute changed so that it no longer manufactures prefixes...
 
6673
  it always tries its best to match the prefix entered.<br/><br/></li>  
 
6674
  <li>Bug fixed with namespace contexts in the stylesheet processor.
 
6675
  The bug could cause &lt;a xmlns:a="x"&gt;&lt;b&gt; to produce &lt;a xmlns:a="x"&gt;&lt;b xmlns:a="x"&gt;.<br/><br/></li>  
 
6676
  <li>Modified processing of xsl:message to enhance it as a debugging aid. Line numbers are now output with each
 
6677
  message. If the terminate attribute is true (the default is false) the message is sent to the console, and an exception is thrown with the
 
6678
  message "Stylesheet directed termination".<br/><br/></li>
 
6679
  <li>In TransformerException, check that the cause != null when checking for a contained exception.<br/><br/></li>
 
6680
  <li>Fixed a problem validating non-namespaced attributes and a problem allowing non-namespaced attributes to be children of the
 
6681
   stylesheet element.<br/><br/></li>
 
6682
   <li>Fixed checking of number of arguments in document() function.<br/><br/></li>
 
6683
   <li>Fixed problem with mutation of templates at run time. Templates resolution now takes place during the compose() method.<br/><br/></li>
 
6684
   <li>Fixed some minor threading issues in org.apache.xalan.stree (Child, Parent, ElementImpl, SourceTreeHandler).<br/><br/></li>
 
6685
   <li>Synchronized TrAX API functions subject to mutation to prevent mutation during a transformation.<br/><br/></li>
 
6686
   <li>Fixed bug reported by Jano Elovirta: substring() was returning an error if the start index is larger than the string.<br/><br/></li>   
 
6687
   <li>Set StringKey.toString() to return the underlying String (m_str), thus avoiding a potential symmetry problem with the equals() method
 
6688
   reported by Ito Kazumitsu.<br/><br/></li>
 
6689
   <li>In response to note from Ito Kazumitsu, changed Java encoding name "EUCJIS" in FormatterToXML to "EUC_JP".<br/><br/></li>
 
6690
   <li>When Xalan creates a FileOutputStream, it now closes the stream before exiting.<br/><br/></li>
 
6691
   <li>Fixed handling of an exception that can be thrown while building a DOM.<br/><br/></li>
 
6692
   <li>Fixed a problem reported by Dimitry Voytenko serializing compiled stylesheets.<br/><br/></li>
 
6693
   <li>For support of applets, modified TransformerFactory System.getProperty() calls to catch SecurityExceptions.<br/><br/></li>
 
6694
   <li>Fixed a bug reported by Krishna Mohan Meduri setting output properties.<br/><br/></li>
 
6695
   <li>Fixed error recovery when xsl:element encounters a bad name or unresolvable prefix.<br/><br/></li>
 
6696
   <li>Added AbstractMethodError handling to existing NoSuchMethodError handling as a fallback to the XMLReaderFactory for XML parsers that do
 
6697
       not implement the JAXP parsers interface for creating an XMLReader<br/><br/></li>
 
6698
   <li>Fixed bug with cloned iterators reported by Tim Sean.<br/><br/></li>
 
6699
   <li>Fixed null pointer exception that could occur with getValue("xxx").<br/><br/></li>
 
6700
   <li>Fixed bug reported by Tim Sean handling the xml:space attribute.</li>
 
6701
</ul>
 
6702
<p><em>Bug fixes in the Xalan-Java 1 compatibility API:</em></p>
 
6703
<ul>
 
6704
  <li>Fixed ProblemListener (for processing error messages) to derive from &xslt4j; 2 ErrorHandler.<br/><br/></li>
 
6705
  <li>Fixed evaluation of stylesheet string parameters to conform to &xslt4j; 1 behavior (expressions for &xslt4j; 1 vs. String objects 
 
6706
  for &xslt4j; 2).<br/><br/></li>    
 
6707
  <li>Added XPathSupport and XPathSupportDefault, and fixed the derivation of XObject sub-types (XString, etc.).<br/><br/></li>
 
6708
  <li>Fixed bug with XSLTProcessor process(xmlIn, null, out) method so that it uses the StylesheetRoot (if one exists) that has been created
 
6709
   with the processStylesheet() method.</li>
 
6710
</ul>
 
6711
</s2>
 
6712
 
 
6713
<s2 title="Changes for &xslt4j; version 2.0.D07">
 
6714
<p>&xslt4j; 2.0.D07 incorporates a <link idref="usagepatterns" anchor="compat">Xalan-Java 1 compatibility jar</link>, some performance enhancements, and a number of bug fixes for bugs found in version 2.0.D06.</p>
 
6715
<ul>
 
6716
<li>Fixed handling of disable-output-escaping="no".  Previously, once it was turned on, it could not be turned off.<br/><br/></li>
 
6717
<li>Fixed a bug with whitespace handling where Xalan was incorrectly checking for whitespace 
 
6718
    stripping before collation of multiple whitespace events into a single text node.<br/><br/></li>
 
6719
<li>Whitespace stripping wasn't working with input DOMs before.  This is now fixed.<br/><br/></li>
 
6720
<li>Fixed many exception handling problems and problems with error reporting.<br/><br/></li>
 
6721
<li>Fixed a bug resetting parameters in Transformer clearParameters().<br/><br/></li>
 
6722
<li>Fixed a bug where CDATA sections were not matching the text() node test.<br/><br/></li>
 
6723
<li>Made better memory allocation problem with result tree fragments.<br/><br/></li>
 
6724
<li>Made result tree fragment parsing of numbers consistent with strings.<br/><br/></li>
 
6725
<li>Exceptions thrown from extensions should now be properly reported via the error listener.<br/><br/></li>
 
6726
<li>Fixed hard-coded stack dump set off by m_reportInPostExceptionFromThread variable.<br/><br/></li>
 
6727
<li>Fixed intermittent threading problem with text nodes being dropped.<br/><br/></li>
 
6728
<li>Fixed problem with variable evaluation inside of union expressions.</li>
 
6729
</ul>
 
6730
</s2>
 
6731
<s2 title="Changes for &xslt4j; version 2.0.D06">
 
6732
<p>We have fixed the bugs reported in &xslt4j; 2.0.D05. Along with several other enhancements, 
 
6733
we have also fixed a number of bugs found by testing and our users:</p>
 
6734
<ul>
 
6735
<li>Fixed some threading problems and improved support for handling Exceptions thrown in a secondary thread.<br/><br/>
 
6736
Note: To support incremental output, &xslt4j; performs the transformation in a second thread while building the source tree in the main thread.<br/><br/></li>
 
6737
<li>Fixed problems encountered in piping (utilizing transformation output as input for another transformation).<br/><br/></li>
 
6738
<li>Fixed problems handling attributes and adding attributes to result tree.<br/><br/></li>
 
6739
<li>Added defensive checking for null entities, null namespaces, and empty strings passed in for URIs and local names.<br/><br/></li>
 
6740
<li>We now conform to the SAX convention of representing null namespaces with empty strings.<br/><br/></li>
 
6741
<li>Fixed a bug encountered evaluating a variable in a predicate expression applied to child nodes.<br/><br/></li>
 
6742
<li>Changed names of serializers from FormatterTo<ref>Xxx</ref> to SerializerTo<ref>Xxx</ref>. See 
 
6743
<jump href="apidocs/org/apache/xalan/serialize/package-summary.html">Package org.apache.xalan.serialize</jump>.<br/><br/></li>
 
6744
<li>Improved debugging support in a number of areas.</li>
 
6745
</ul>
 
6746
</s2>
 
6747
<s2 title="Changes for &xslt4j; version 2.0.D05">
 
6748
<p>All of the bugs reported in &xslt4j; 2.0.D01 have been fixed. The remainder of this section discusses two changes that we believe are of particular importance:</p>
 
6749
<p><em>TrAX</em></p>
 
6750
<p>The Transformation API for XML (TrAX) that &xslt4j2; implements has undergone substantial revisions since the release of &xslt4j; 2.0.D01. TrAX has joined the Java API for XML Parsing (JAXP) as part of the Sun&reg; <resource-ref idref="jsr063"/>. Accordingly, the TrAX package names have changed. The conceptual organization has also changed somewhat: The primary transformation interfaces are defined in javax.xml.transform, with concrete classes for managing stream input/output, SAX parsers and ContentHandler, and DOM parsers and DOM trees in javax.xml.transform.stream, javax.xml.transform.sax, and javax.xml.transform.dom. For more information, see <link idref="trax">TrAX (Transformation API for XML)</link>, and review <link idref="usagepatterns">Usage Patterns</link>.</p>
 
6751
<anchor name="outputprops"/><p><em>Output properties</em></p>
 
6752
<p>The handling of xsl:output properties has changed: org.apache.xalan.serialize.OutputFormat and apache.xalan.templates.OutputFormatExtended were removed and replaced with org.apache.xalan.templates.OutputProperties. The SerializerFactory getSerializer() method now takes Properties rather than a String indicating the output method. You can replace <code>getSerializer("xml")</code>, for example, with <code>getSerializer(OutputProperties.getDefaultMethodProperties("xml"))</code>.</p>
 
6753
<p>HTML, XML, and text xsl:output properties are specified in property files in org.apache.xalan.templates: output_html.properties, output_xml.properties, and output_text.properties.</p>
 
6754
<p>You can start using the output properties defined in these files in your stylesheets. For example, you can turn URL escaping off in HTML output with<br/><code>{http\u003a//xml.apache.org/xslt}use-url-escaping=no</code><br/>
 
6755
and you can control indenting with<br/>
 
6756
<code>{http\u003a//xml.apache.org/xslt}indent-amount=<ref>n</ref></code></p>
 
6757
<note>The colon after the "http" protocol must be escaped.</note>
 
6758
<p>Character-to-entity mapping is specified in org.apache.xalan.serialize: HTMLEntities.res and XMLEntities.res. You can override entity ref 
 
6759
mapping from a stylesheet. For example:</p>
 
6760
<source>&lt;?xml version="1.0"?&gt;
 
6761
&lt;xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
 
6762
         xmlns:xalan="http://xml.apache.org/xslt" version="1.0"&gt;
 
6763
 
 
6764
  &lt;xsl:output xalan:entities="myentities.ent"/&gt;
 
6765
 
 
6766
  &lt;xsl:template match="/"&gt;
 
6767
    &lt;out&gt;&amp;#125;&lt;/out&gt;
 
6768
  &lt;/xsl:template&gt;
 
6769
 
 
6770
&lt;/xsl:stylesheet&gt;</source>
 
6771
<p>=== myentities.ent ===</p>
 
6772
<source>quot 34
 
6773
amp 38
 
6774
lt 60
 
6775
gt 62
 
6776
lala 125</source>
 
6777
<p>The output is:</p>
 
6778
<source>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
 
6779
&lt;out&gt;&amp;lala;&lt;/out&gt;</source>
 
6780
<p>See also <link idref="usagepatterns" anchor="outputprops">Setting output properties in your stylesheets</link>.</p>
 
6781
</s2>
 
6782
</s1>