* XmlTextWriterTests.cs: Improved coverage of xml prefix tests.
[mono.git] / mcs / class / System.XML / Mono.Xml.Xsl / ChangeLog
1 2005-12-23  Gert Driesen  <drieseng@users.sourceforge.net>
2
3         * ScriptCompilerInfo.cs: Fixed line endings.
4         * XslStylesheet.cs: Beautify error messages.
5         * Debug.cs: Fixed line endings.
6         * XslOutput.cs: Indent is now bool instead of string, use
7         MoveToAttribute to navigate through attributes instead of using
8         GetAttribute, as we also need to distinguish attributes with 
9         zero-length value from attributes that are not specified for
10         correct implementation of DOCTYPE. Implemented validation for 
11         value of "omit-xml-declaration", "standalone" and "indent".
12         We now throw a XsltCompileException for unknown attribute.
13         * XmlWriterEmitter.cs: only skip WriteDocType is systemId is null.
14         * HtmlEmitter.cs: XslOutput.Indent is now bool. Fixed WriteDocType
15         to match MS.NET.
16         * XmlDecimalFormat.cs: Beautify error messages.
17         * XslTemplate.cs: Beautify error messages.
18         * GenericOutputter.cs: XslOutput.Indent is now bool.
19         * Compiler.cs: Beautify error messages.
20
21 2005-12-21  Atsushi Enomoto  <atsushi@ximian.com>
22
23         * XslTemplate.cs : don't check name and mode attributes on
24           non-'xsl:template' element. This should fix bug #77051.
25
26 2005-12-13  Andrew Skiba  <andrews@mainsoft.com>
27
28         * XslDecimalFormat.jvm.cs: set correct defaults for NaN and Infinity
29
30 2005-11-30  Atsushi Enomoto  <atsushi@ximian.com>
31
32         * ScriptCompilerInfo.cs : (VBCompilerInfo) There was a space between
33           '#' and 'ExternalResource'. bug #75789 should be fixed.
34
35 2005-11-23  Vladimir Krasnov  <vladimirk@mainsoft.com>
36
37         * XslKey.cs: fixed KeyIndexTable.Evaluate method, changed
38         XPathNavigator given to GetNodesByValue()
39
40 2005-11-17  Atsushi Enomoto  <atsushi@ximian.com>
41
42         * XslCompiledContext.cs : since XsltContextInfo is struct, having
43           an array of this type and setting fields of each struct didn't
44           make sense. It thus blocked expected PreserveWhitespace behavior.
45
46 2005-10-24  Atsushi Enomoto  <atsushi@ximian.com>
47
48         * Compiler.cs : (FromString(s, hashtable)) pull default namespace
49           from the table for LRE (don't consider it as ""; spec. 7.1.2)
50           Fixed bug #76530.
51
52 2005-09-16  Atsushi Enomoto  <atsushi@ximian.com>
53
54         * ScriptCompilerInfo.cs : Compile correct replacement result.
55           Fixed bug #76116.
56
57 2005-09-10  Atsushi Enomoto  <atsushi@ximian.com>
58
59         * Compiler.cs : (Compile) check children only when it is the document
60           element. Fixed bug #76046.
61
62 2005-08-25  Atsushi Enomoto  <atsushi@ximian.com>
63
64         * ScriptCompilerInfo.cs : It should not be "#line" when the source is
65           not C#. It should fix bug #75789.
66
67 2005-08-05  Atsushi Enomoto  <atsushi@ximian.com>
68
69         * XslKey.cs : Fixed match pattern in xsl:key to check attribute nodes.
70           To minimize attribute iteration, use Pattern.EvaluatedNodeType.
71           Fixed bug #75709.
72
73 2005-07-29  Atsushi Enomoto  <atsushi@ximian.com>
74
75         * XslFunctions.cs : XslTransform recovers from errors on document
76           resolution. Fixed bug #75663.
77
78 2005-06-06  Atsushi Enomoto  <atsushi@ximian.com>
79
80         * HtmlEmitter.cs : Boolean attribute values should be omitted, but
81           only for related elements.
82
83 2005-05-07  Atsushi Enomoto  <atsushi@ximian.com>
84
85         * MSXslScriptManager.cs : it should ignore compiler warnings. This
86           fixes bug #74859.
87
88 2005-04-07  Andrew Skiba  <andrews@mainsoft.com>
89
90         * XslDecimalFormat.jvm.cs : added
91  
92 2005-03-31  Atsushi Enomoto  <atsushi@ximian.com>
93
94         * MSXslScriptManager.cs : added TARGET_JVM switch (that does not
95           support CodeDom). Use Guid.ToString("N").
96
97 2005-03-31  Atsushi Enomoto  <atsushi@ximian.com>
98
99         * Compiler.cs : removed extraneous using_directive.
100
101 2005-03-25  Atsushi Enomoto  <atsushi@ximian.com>
102
103         * XslKey.cs : the iterator does not require sorting (already sorted).
104           Removed unused code.
105
106 2005-03-23  Atsushi Enomoto  <atsushi@ximian.com>
107
108         * XslStylesheet.cs :
109           Variables are stored per stylesheet and added to compiler after
110           all of the contents are processed (handle import precedence).
111           Imports are now processed in prior to other contents (incorrect
112           imports are now rejected). After imports, process includes to 
113           process nested imports. In-process included stylesheets are 
114           temporarily stored in including stylesheet.
115           Handle keys like variables are handled.
116           Added Compile() that is splitted from .ctor().
117         * Compiler.cs :
118           Store keys in compiler and compiled stylesheet.
119           Duplicate variables in imports are now overriden as expected.
120         * XsltCompiledContext.cs : use CompiledStylesheet.ResolveKey().
121
122 2005-03-22  Atsushi Enomoto  <atsushi@ximian.com>
123
124         * XslTransformProcessor.cs : now it looks safe to remove SetContext()
125           from each EvaluateXXX() methods.
126         * MsxslScriptManager.cs : not to leave reference to stylesheet
127           navigator, pass current node to Compile().
128         * XslCompiledContext.cs : Added GetNavCache() that returns reusable
129           navigator cache for each pattern, to avoid Clone() and not to leave
130           reference to already-done instance navigator.
131
132 2005-03-22  Atsushi Enomoto  <atsushi@ximian.com>
133
134         * Compiler.cs : Now it holds XPath parser and XSLT pattern parser.
135         * XslKey.cs : Use XSLT pattern parser for match.
136           UsePattern is now "Use" (it is not a pattern). 
137           Reimplemented Evaluate() to make full use of index table.
138           Added Matches() to handle shorter match evaluation. For const value
139           for key (e.g. key patterns), it could avoid Evaluate().
140         * XsltCompiledContext.cs : Added MatchesKey() that just delegates to
141           new KeyIndexTable.Matches().
142         * XslFunctions.cs : Added PatternMatches() that just delegates to new
143           XsltCompiledContext.MatchesKey().
144
145 2005-03-22  Atsushi Enomoto  <atsushi@ximian.com>
146
147         * GenericOutputter.cs : commented out warned fields.
148
149 2005-03-15  Atsushi Enomoto  <atsushi@ximian.com>
150
151         * XslKey.cs : removed last ListIterator.ctor() argument.
152           Reverted the last commit that changed internal key index change 
153           from ArrayList to Hashtable. Avoid clone in CollectIndex().
154           Sort results in Evaluate() before passing list to ListIterator.
155         * XslFunctions.cs : removed last ListIterator.ctor() argument.
156
157 2005-03-14  Atsushi Enomoto  <atsushi@ximian.com>
158
159         * XslKey.cs,
160           XsltCompiledContext.cs,
161           XslFunctions.cs,
162           XslTransformProcessor.cs : Now dynamic context key index table is 
163           separate from XslKey static context. Added KeyIndexTable class and
164           store it into XsltCompiledContext with hash name-table mapping.
165           Cache map from statically-named key to index table.
166           Use Hashtable for internal key cache instead of ArrayList.
167
168 2005-03-14  Atsushi Enomoto  <atsushi@ximian.com>
169
170         * XslKey.cs : fixed node iteration on collecting key indices which
171           could have resulted in an infinite loop.
172
173 2005-03-14  Atsushi Enomoto  <atsushi@ximian.com>
174
175         * XslDecimalFormat.cs : in some cases it does not throw format
176           exception.
177
178 2005-03-11  Atsushi Enomoto  <atsushi@ximian.com>
179
180         * XsltCompiledContext.cs,
181           XslStylesheet.cs : Fixed significant performance loss on whitespace
182           handling.
183
184 2005-03-11  Atsushi Enomoto  <atsushi@ximian.com>
185
186         * XslKey.cs : removed unused NeedAbsoluteMatching.
187         * XslFunctions.cs : Added Peer (for peer & subtree optimization).
188           Added some missing ToString() overrides.
189
190 2005-03-09  Atsushi Enomoto  <atsushi@ximian.com>
191
192         * XslStylesheet.cs, XslCompiledContext.cs : Fixed PreserveWhitespace()
193           to work fine with xsl:*-space attributes as expected.
194         * XslTransformProcessor.cs : PreserveWhitespace() in this file is 
195           actually nothing. It should not use XsltContext.PreserveWhitespace()
196           because this method is used to control output, while the referenced
197           method is used to control source document.
198
199 2005-03-09  Atsushi Enomoto  <atsushi@ximian.com>
200
201         * XslTemplate.cs : First non-element content were incorrectly ignored.
202
203 2005-03-09  Atsushi Enomoto  <atsushi@ximian.com>
204
205         * XslFunctions.cs, Compiler.cs : Eliminated XPathNavigatorNsm class
206           to reduce references to stylesheet XPathNavigator. To accomplish it,
207           IStaticXsltContext does not declare GetNsm() anymore. All xslt
208           function types now directly hold IStaticXsltContext.
209         * XslStylesheet.cs : removed "Compiler c" field.
210           Removed unused properties.
211
212 2005-03-08  Atsushi Enomoto  <atsushi@ximian.com>
213
214         * GenericOutputter.cs : When WriteStartElement() requires to add
215           new namespace declaration, _currentNamespaceDecls needs to be set.
216
217 2005-03-08  Atsushi Enomoto  <atsushi@ximian.com>
218
219         * GenericOutputter.cs : for duplicate attribute in an element, no need
220           to keep previous prefix.
221
222 2005-03-08  Atsushi Enomoto  <atsushi@ximian.com>
223
224         * GenericOutputter.cs : Prefix "xml" is only allowed to the fixed XML
225           namespace. Rewrite prefix only when there is non-empty namespace.
226
227 2005-03-07  Atsushi Enomoto  <atsushi@ximian.com>
228
229         * XslStylesheet.cs : Now namespace aliases are collected in prior to
230           all other toplevel elements. Removed unused code.
231
232 2005-03-07  Atsushi Enomoto  <atsushi@ximian.com>
233
234         * GenericOutputter.cs : compute attribute prefix only when actual
235           emission. Fixed some cases that namespace output was missing.
236
237 2005-03-07  Atsushi Enomoto  <atsushi@ximian.com>
238
239         * GenericOutputter.cs : no need to use two collections to store
240           pending attributes. Just use ordered ListDictionary.
241           newNamespace.Add(int) causes extraneous boxing.
242
243 2005-03-07  Atsushi Enomoto  <atsushi@ximian.com>
244
245         * XslTransformProcessor.cs : renamed TryElementNamespacesOutput() to
246           OutputLiteralNamespaceUriNodes() so that everyone can understand
247           what it means and when it should be invoked.
248
249 2005-03-04  Atsushi Enomoto  <atsushi@ximian.com>
250
251         * Compiler.cs : added another CompileTemplateContent() which is
252           requred in xsl:for-each. Commented out unused method.
253
254 2005-03-03  Atsushi Enomoto  <atsushi@ximian.com>
255
256         * XslStylesheet.cs, XslTransformProcessor.cs : exclude-element-prefix
257           in stylesheet should be considered in TryElementNamespacesOutput().
258           ParseQNameListAttribute() is not properly working for filling
259           namespaces.
260
261 2005-03-02  Atsushi Enomoto  <atsushi@ximian.com>
262
263         * XslStylesheet.cs : included stylesheet could be literal result 
264           element as stylesheet (see the spec 2.6.1).
265
266 2005-03-02  Atsushi Enomoto  <atsushi@ximian.com>
267
268         * GenericOutputter.cs : On WriteStartElement(), prefix should be an
269           empty string when nsURI is empty.
270         * HtmlEmitter.cs : non-HTML elements in default namespace are treated
271           unlike xml but like span, as written in the spec 16.2.
272
273 2005-03-02  Atsushi Enomoto  <atsushi@ximian.com>
274
275         * XslCompiledContext.cs, XslTransformProcessor.cs :
276           According to errata E25, those namespaces 1) that has the same
277           name as current element's prefix, or an empty name when current
278           element's namespace URI is empty, are not written to output.
279           So added current element information to XPathContext and added
280           prefix parameter to PushElementState(), added xsl:copy check to
281           TryElementNamespacesOutput().
282           http://www.w3.org/1999/11/REC-xslt-19991116-errata/
283
284 2005-02-26  Atsushi Enomoto <atsushi@ximian.com>
285
286         * XslFunctions.cs : unparsed-entity-uri() should return SYSTEM ID
287           instead of BaseURI.
288
289 2005-02-25  Atsushi Enomoto <atsushi@ximian.com>
290
291         * XslTemplate.cs : According to the spec 5.7, it is an error for 
292           xsl:template to have 'mode' without 'match'.
293
294 2005-02-24  Atsushi Enomoto <atsushi@ximian.com>
295
296         * Compiler.cs : added ns lookup with nsDecls Hashtable.
297
298 2005-02-24  Atsushi Enomoto <atsushi@ximian.com>
299
300         * XslStylesheet.cs : It should consider "#default" in namespace-alias.
301
302 2005-02-23  Atsushi Enomoto <atsushi@ximian.com>
303
304         * GenericOutputter.cs : It should not attempt to write prefix "xml" and
305           namespace "http://www.w3.org/XML/1998/namespace".
306
307 2005-02-21  Atsushi Enomoto <atsushi@ximian.com>
308
309         * XmlWriterEmitter.cs : PI nodes are normalized as to not contain "?>".
310         * HtmlEmitter.cs : CDATA nodes are written just as text.
311         * GenericOutputter.cs : custom format are treated just as XML output.
312
313 2005-02-17  Atsushi Enomoto <atsushi@ximian.com>
314
315         * Outputter.cs,
316           TextOutputter.cs,
317           GenericOutputter.cs : removed WriteStartDocument(), WriteEndDocument()
318           and WriteState. Writing XML declaration is done inside
319           DetermineOutputMethod().
320
321 2005-02-17  Atsushi Enomoto <atsushi@ximian.com>
322
323         * Compiler.cs : reverted previous fix, since it should be done
324           in XslTransformProcessor with root stylesheet.
325         * XslTransformProcessor.cs : In TryElementNamespacesOutput(),
326           don't output alias namespaces. And now consider null exclusions.
327
328 2005-02-17  Atsushi Enomoto <atsushi@ximian.com>
329
330         * Compiler.cs : don't return alias namespaces in GetNamespacesToCopy().
331
332 2005-02-16  Atsushi Enomoto <atsushi@ximian.com>
333
334         * Compiler.cs : GetNamespacesToCopy() should also find for non-local
335           namespace nodes. Patch by Andrew Skiba with some fixes.
336         * XslTransformProcessor.cs : Patch by Andrew Skiba.
337           TryStylesheetNamespaceOutput() is now TryElementNamespacesOutput()
338           as to handle all namespace nodes to copy in stylesheet nodes.
339           Global parameterss are evaluated before global variables. 
340         * XmlOutputter.cs : removed unused code.
341
342         Pending items:
343
344         * Actually variables and params should check reference recursion.
345             This patch incompletely fixes the problem.
346         * Those operations that considers excluded-result-prefixes must
347           also check those attributes of its ancestors.
348
349 2005-02-10  Atsushi Enomoto <atsushi@ximian.com>
350
351         * XmlWriterEmitter.cs : String.Replace() was insufficient for
352           sequential candidates for replacement. Patch by Andrew Skiba.
353
354 2005-02-10  Atsushi Enomoto <atsushi@ximian.com>
355
356         * GenericOutputter.cs : don't output extraneous xml declaration.
357           fix by Andrew Skiba.
358
359 2005-02-09  Atsushi Enomoto <atsushi@ximian.com>
360
361         * XslStylesheet.cs : MS implementation had chosen to recover from 
362           the error, in the way specified in the spec 7.7.1. Patch by Andrew
363           Skiba.
364
365 2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
366
367         * XslTemplate.cs : if input is literal result element, it could result
368           in ArgumentException. Patch by Andrew Skiba.
369
370 2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
371
372         * XslFunctions.cs : Fixed unparsed-entity-uri() that might result in
373           NullReferenceException. Patch by Andrew Skiba.
374
375 2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
376
377         * XslOutput.cs : MS.NET recovers from unknown encoding according to
378           XSLT spec 16.1. Patch by Andrew Skiba.
379
380 2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
381
382         * HtmlEmitter.cs : patch by Andrew Skiba.
383           Remove extra element prefix output. simplify attribute prefix output.
384           Attribute output might have resulted in invalid element stack peek.
385           Output specified media type if any.
386
387 2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
388
389         * Compiler.cs : Patch by Andrew Skiba.
390           wrap internal exception with XsltCompileException.
391           Raise an error for not-found document URI.
392           QName might contain sequential whitespaces and thus could be empty.
393
394 2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
395
396         * XslAttributeSet.cs : just ignore other kind of nodes than element
397           in its content. Fix by Andrew Skiba.
398
399 2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
400
401         * XslOutput.cs : for html and text output mode, just set internal
402           omitXmlDeclaration status true. Patch by Andrew Skiba.
403
404 2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
405
406         * XslFunctions.cs : fixed line ending mixture.
407
408 2005-02-03  Atsushi Enomoto <atsushi@ximian.com>
409
410         * ScriptCompilerInfo.cs : XsltCompileException->XsltException, just
411           to make test pass.
412
413 2004-12-22  Atsushi Enomoto <atsushi@ximian.com>
414
415         * XslFunction.cs,
416           Compiler.cs : XmlResolver.ResolveUri() may return null.
417
418 2004-12-01  Atsushi Enomoto  <atsushi@ximian.com>
419
420         * Compiler.cs : XPathNavigatorNsm needed more love. Clone() does not
421           make sense here.
422
423 2004-12-01  Atsushi Enomoto  <atsushi@ximian.com>
424
425         * Compiler.cs : don't create XPathNavigatorNsm for every GetNsm() call.
426
427 2004-11-26  Atsushi Enomoto  <atsushi@ximian.com>
428
429         * XslKey.cs, XslStylesheet.cs, MSXslScriptManager.cs :
430           warning elimination.
431
432 2004-11-24  Atsushi Enomoto  <atsushi@ximian.com>
433
434         * XslStylesheet.cs : removed unused fields.
435         * XslOutput.cs : removed members for XSLT 2.0 (won't be implemented in
436           this class).
437
438 2004-11-08  Atsushi Enomoto  <atsushi@ximian.com>
439
440         * Compiler.cs, XslTransformProcessor.cs :
441           when creating XmlTextReader, reuse XmlNameTable.
442
443 2004-11-05  Atsushi Enomoto  <atsushi@ximian.com>
444
445         * Compiler.cs : Changes that reflects CompiledExpression changes.
446
447 2004-10-04  Atsushi Enomoto  <atsushi@ximian.com>
448
449         * HtmlEmitter.cs : TH tag is not regarded as HTML tag.
450           This fixes bug #67390.
451
452 Thu Sep 9 07:09:11 PDT 2004 Paolo Molaro <lupus@ximian.com>
453
454         * ScriptCompilerInfo.cs: avoid using a .cctor and fix precomp.
455
456 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
457
458         * Debug.cs, HtmlEmitter.cs, MSXslScriptManager.cs,
459           ScriptCompilerInfo.cs, XslFunctions.cs, XslTemplate.cs
460           : Globalization. Removed unused code.
461
462 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
463
464         * XslKey.cs : Key-value search in absolute path search was 
465           insufficient.
466
467 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
468
469         * HtmlEmitter.cs : Correct URL escape implementation.
470
471 2004-06-06  Atsushi Enomoto  <atsushi@ximian.com>
472
473         * XslTransformProcessor.cs : On document() function, close the 
474           XmlTextReader opened from uri string.
475
476 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
477
478         * Compiler.cs,
479           GenericOutputter.cs : XmlNamespaceManager.LookupPrefix() allows only
480           atomized names. Fixed XPathNavigatorNsm.LookupNamespace() that 
481           should override another overload.
482
483 2004-05-25  Lluis Sanchez Gual  <lluis@ximian.com>
484
485         * ScriptCompilerInfo.cs: the name used to load the Microsoft.JScript
486           assembly should not include the .dll extension.
487
488 2004-05-20  Atsushi Enomoto  <atsushi@ximian.com>
489
490         * Compiler.cs :
491           - CompilePattern() now throws XsltCompileException for invalid
492             pattern, and add error location support.
493           - In Compiler.TryGetFunction(), compare namespace URI, not prefix.
494             Now it returns MSXslNodeSet instance (for msxsl:node-set).
495         * Debug.cs : don't throw System.Exception.
496         * XslFunctions.cs : Added MSXslNodeSet class.
497         * XslTemplate.cs : reflected CompilePattern() change.
498         * XslTransformProcessor.cs : don't throw System.Exception.
499         * XsltCompiledContext.cs : don't throw System.Exception.
500
501 2004-05-12  Atsushi Enomoto  <atsushi@ximian.com>
502
503         * XmlOutputter.cs,
504           XslOutput.cs,
505           XslStylesheet.cs : made classes/enums internal.
506
507 2004-04-24  Atsushi Enomoto  <atsushi@ximian.com>
508
509         * Attribute.cs, Compiler.cs, Debug.cs, Emitter.cs, 
510           MSXslScriptCompiler.cs, Outputter.cs, XslAttributeSet.cs,
511           XslDecimalFormat.cs, XslKey.cs, XslStylesheet.cs, XslTemplate.cs,
512           XslTransformProcessor.cs : Make extra classes internal.
513
514         * XslKey.cs : It should require sorting.
515         * Debug.cs : Just avoid debug output. Only who want to output should
516           turn it on.
517
518 2004-04-24  Atsushi Enomoto  <atsushi@ximian.com>
519
520         * GenericOutputter.cs : Culture-independency fix. 
521           Replaced StringCollection to ArrayList.
522         * XslOutput.cs : Culture-independency fix.
523
524 2004-04-12  Atsushi Enomoto  <atsushi@ximian.com>
525
526         * Compiler.cs : When BaseURI is an empty string, it should not try to
527           create Uri instance. This will fix bug #56832, but not sure.
528         * XslFunctions.cs : for XsltDocument.Resolve(), did the same.
529         * HtmlEmitter.cs : Environment.NewLine was incorrectly used (it 
530           should be the TextReader's NewLine).
531         * MSXslScriptManager.cs : Should raise an error when the prefix which
532           was specified by "implements-prefix" was not found.
533
534 2004-03-27  Atsushi Enomoto  <atsushi@ximian.com>
535
536         * ScriptCompilerInfo.cs : #line directive now holds dummy filename
537           when BaseURI for msxsl:script node is not available. This fixes
538           bug #56070.
539           Don't output line number in the error message, when it is 0.
540
541 2004-03-27  Atsushi Enomoto  <atsushi@ximian.com>
542
543         * Compiler.cs : Supply NameTable to base ctor() of XPathNavigatorNsm.
544
545 2004-03-22 Atsushi Enomoto <atsushi@ximian.com>
546
547         * Compiler.cs, 
548           XslAttributeSet.cs,
549           XslFunctions,
550           XslTransformProcessor.cs :
551           Throw specific types of exceptions instead of Exception.
552         * XslFunctions.cs, XsltCompiledContext.cs :
553           added node argument for XsltExtensionFunction ctor() etc.
554
555 2004-03-22 Atsushi Enomoto <atsushi@ximian.com>
556
557         * ScriptCompilerInfo.cs : Modified compilation processing. Now it uses
558           CodeDom. Compilation error should be caught. This fixes bug #55875.
559
560 2004-03-13 Atsushi Enomoto <atsushi@ximian.com>
561
562         * XslStylesheet.cs : "version" attribute is also required for embedded
563           stylesheet.
564
565 2004-03-13 Atsushi Enomoto <atsushi@ximian.com>
566
567         * Compiler.cs,
568           XslStylesheet.cs : Reject xsl element other than stylesheet and
569           transform. Check mandatory version attribute (only for existence).
570
571 2004-03-07 Atsushi Enomoto <atsushi@ximian.com>
572
573         * MSXslScriptManager.cs : if extension namespace was not found in
574           the script, just return null. Patch by Joshua Tauberer.
575
576 2004-03-01 Atsushi Enomoto <atsushi@ximian.com>
577
578         * XslLiteralElement.cs : quick fix for ArgumentNullException which
579           was because of the combination of non-namespaced instances and
580           exclude-result-prefixes.
581
582 2004-02-17 Atsushi Enomoto <atsushi@ximian.com>
583
584         * XsltCompiledContext.cs : Extracted XslFunctions and changed namespace
585           from Mono.Xml.Xsl.Functions to Mono.Xml.Xsl.
586         * XslFunctions.cs : hereby Added.
587         * Compiler.cs : Removed deleted usingdecl.
588
589 2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
590
591         * XslTransformProcessor.cs : Bugfix. Stored keys should be cleared.
592         * XslKey.cs : Added ExprKeyContainer expression type, which is 
593           designed to be matched at any level.
594         * Compiler.cs : support for ExprKeyContainer.
595
596 2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
597
598         * XslKey.cs : Now it collects key and matching nodes at the first
599           evaluation time. After that, we can just get them from the table.
600         * Compiler.cs : Added KeyCompilationMode. It is used to prevent
601           prohibited key() usage in "match" and "use" attributes in xsl:key.
602           Modified accessibility of some classes.
603         * GenericOutputter.cs,
604           HtmlEmitter.cs,
605           TextEmitter.cs,
606           TextOutputter.cs,
607           XmlWriterEmitter.cs : made classes internal.
608         * XslOutput.cs : support line info for exception.
609         * XsltCompiledContext.cs : implemented CompareDocument() - so easily.
610
611 2004-02-13 Atsushi Enomoto <atsushi@ximian.com>
612
613         * XsltCompiledContext.cs : fixed the length of context info array.
614
615 2004-02-10 Atsushi Enomoto <atsushi@ximian.com>
616
617         * XsltCompiledContext.cs :
618           replaced EnumeratorIterator with ListIterator
619
620 2004-02-08 Atsushi Enomoto <atsushi@ximian.com>
621
622         * GenericOutputter.cs,
623           XslAttributeSet.cs,
624           XslStylesheet.cs,
625           XslTemplate.cs : tiny foreach elimination.
626
627 2004-01-16 Atsushi Enomoto <atsushi@ximian.com>
628
629         * XslOutput.cs : Reverted. default encoding should be utf-8.
630
631 2004-01-14  Jackson Harper <jackson@ximian.com>
632
633         * GenericOutputter.cs: Add constructors that do not take an
634         encoding to fix build.
635         
636 2004-01-14 Atsushi Enomoto <atsushi@ximian.com>
637
638         * XmlWriterEmitter.cs : It now uses WriteProcessingInstruction() to
639           write XML declaration. It means that output supports non document
640           entity. This fixes bug #52729.
641         * Emitter.cs, TextEmitter.cs, HtmlEmitter.cs, XmlWriterEmitter.cs :
642           modified WriteStartDocument() signature to receive Encoding.
643         * GenericOutputter.cs : 
644           - Added .ctor() which receives Encoding. (It is used for TextWriter 
645             output to get actual encoding.)
646           - Added .ctor() to take an boolean argument which indicates it is
647             variable content or not. (When variable, it does not call 
648             WriteStartDocument().)
649         * XslKey.cs,
650           XsltCompiledContext.cs : comment out WriteLine().
651         * XslOutput.cs : set default encoding utf-16.
652
653 2004-01-08  Nick Drochak <ndrochak@ieee.org>
654
655         * XsltCompiledContext.cs: Remove unused variable and unreachable code.
656
657 2003-12-26 Atsushi Enomoto <atsushi@ximian.com>
658
659         * XslDecimalFormat.cs : implemented format-number() other than number
660           grouping.
661         * XsltCompiledContext.cs : Modified XsltFormatNumber.Evaluate() to
662           catch ArgumentException which will be thrown by formatting process.
663
664 2003-12-23 Atsushi Enomoto <atsushi@ximian.com>
665
666         * ScriptCompilerInfo.cs : Use "mjs" as JScript compiler.
667
668 2003-12-20 Ben Maurer  <bmaurer@users.sourceforge.net>
669
670         * XsltCompiledContext.cs: Remove workaround now that monodoc
671         is fixed.
672
673 2003-12-20 Atsushi Enomoto <atsushi@ximian.com>
674
675         * XslStylesheet.cs : considering xsl:imports, we can't handle namespace
676           aliases at compilation time, so evaluate at the first run-time.
677
678 2003-12-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
679
680         * GenericOutputter.cs : support for runtime-determined output type.
681         * HtmlEmitter.cs : Fixed invalid doctype output.
682           Fixed incorrect double attribute output on non-HTML elements.
683           Improved indentation. Fixed "selected" attribute output.
684           Don't have to convert "'" to "&apos;".
685         * XmlWriterEmitter.cs : Now don't output incorrect doctype.
686           Escapes CDATA section text "]]>" to "...]]]]><![CDATA[>..." .
687         * XslStylesheet.cs, XsltCompiledContext.cs :
688           space resolution consideration for import and wildcard.
689
690 2003-12-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
691
692         * Compiler.cs, XslTransformProcessor.cs :
693           Use XmlValidatingReader to support id() for external stylesheets.
694         * XslKey.cs, XsltCompiledContext.cs :
695           to evaluate MatchPattern and UsePattern, SetContext() is required.
696         * XslTemplate.cs : Forgot to commit. Change is below(12/16).
697
698 2003-12-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
699
700         * Emitter.cs, HtmlEmitter.cs, XmlWriterEmitter.cs :
701           Added WriteWhitespace().
702         * GenericOutputter.cs, XslTemplate.cs : Call above.
703         * XslTransformProcessor.cs : Changed NodesetStack to ArrayList since
704           CurrentNode in for-each context have to be pulled at evaluation.
705
706 2003-12-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
707
708         * XsltCompiledContext.cs : Temporarily allow incorrectly resolved
709           function for bugzilla #52144. It should be reverted soon.
710
711 2003-12-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
712
713         * ScriptCompilerInfo.cs : SecurityManager.ResolvePolicy() was not 
714           implemented yet.
715         * MSMslScriptManager.cs : modified generated assembly class to be unique
716           through running AppDomain.
717         * XsltCompiledContext.cs : XsltExtensionFunction.Invoke() has to cast
718           arguments to actual argument types. Bugzilla #51450 should be fixed.
719
720 2003-12-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
721
722         * HtmlEmitter.cs : Fixed incorrect character entity output.
723
724 2003-12-11 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
725
726         * Added ScriptCompilerInfo.cs.
727         * MSXslScriptManager.cs : Fixed *true* author's name.
728           Implemented basic msxsl:script support.
729         * Compiler.cs : Added Evidence member.
730
731 2003-12-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
732
733         * Compiler.cs : Check stylesheet recursion. Check decimal-format name.
734         * GenericOutputter.cs, Outputter.cs, TextOutputter.cs :
735           Added WriteWhitespace() to assure not writing whitespaces as cdata.
736         * XslAttributeSet.cs : Error check if attribute-set contains other than
737           xsl:attribute.  Error should be XsltException.
738         * XslDecimalFormat.cs : Complete equality check.  Allow just one
739           character value for some attributes.
740         * XslStylesheet.cs : Made whitespace control setting overridable.
741           Added Version property (for the future compatibility mode).
742           Check unrecongnized top level element.
743         * XslTemplate.cs : Check priority as a number.
744         * XslTransformProcessor.cs : PushCDataState is now PushElementState, 
745           for xsl:preserve-space and xsl:strip-space support.
746         * XsltCompiledContext.cs : Implemented PreserveWhitespace() (far from
747           incomplete), PushScope and Pop
748
749 2003-12-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
750
751         * HtmlEmitter.cs : CloseStartElement is needed almost everywhere.
752
753 2003-12-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
754
755         * Compiler.cs : In FromListString(), it should use default ns,
756           not unqualified one.
757         * GenericOutputter.cs : CheckState() - attribute's Prefix should take
758           precedence.  Doctype should be written even if SYSTEM id is absent.
759           Fixed possible multiple xmlns output.
760         * HtmlEmitter.cs :
761           - Encoding output using META element.
762           - Doctype name is fixed (html).
763           - Double quotation on PUBLIC and SYSTEM missing.
764           - Fixed incorrect tag name check for IMG.
765           - '>' should not be escaped.
766         * XmlWriterEmitter.cs :
767           Added newline before doctype.  In WriteComment(), "--" and tail
768           '-' are not allowed (it escapes, while XmlWriter simply rejects).
769         * XslTransformProcessor.cs : cdata-section-elements should enclose
770           direct child tests only.   Added PreserveWhitespace() (incomplete).
771         * XsltCompiledContext.cs : Implemented PreserveWhitespace() (incomplete).
772
773 2003-11-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
774
775         * IdPattern.cs : This should work against multiple ids.
776
777 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
778
779         * Compiler.cs
780         * MSXslScriptManager.cs
781         * XslStylesheet.cs
782         * XslTransformProcessor.cs
783         * XsltCompiledContext.cs: Some work on msxsl script.
784
785 2003-11-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
786
787         (in general: cdata-section-elements support, correct document() 
788         base uri handling, and so on)
789         * Compiler.cs : Use XmlSpace.Preserve to parse included stylesheet.
790           And move to document element.  Added XslNameUtil.FromListString().
791         * Emitter.cs, HtmlEmitter.cs, TextEmitter.cs XmlWriterEmitter.cs :
792           Added WriteCDataSection().
793         * Outputter.cs, GenericOutputter.cs, TextOutputter.cs :
794           Added InsideCDataSection.
795         * GenericOutputter.cs :
796           In .ctor(), WriteState should be succeeded from output XmlWriter.
797           WriteNamespaceDecl() now drops declaration identical to existing one.
798           Removed obsolete htmlEmulation.
799         * XslOutput.cs : Added CDataSectionElements support.
800         * XslStylesheet.cs : Added BaseUri, StyleDocument and PrefixInEffect().
801         * XslTransformProcessor.cs :
802           Added Output and CurrentOutputUri. TryStylesheetNamespaceOutput()
803           now considers xsl:exclude-element-prefixes on literal element.
804           Added PushCDataState() and PopCDataState().
805         * XsltCompiledContext.cs : When base uri of document() target is empty,
806           then it should use stylesheet's BaseURI, not that of current document.
807
808 2003-11-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
809
810         * Compiler.cs : Modified decimal-format comparison code.
811         * Outputter.cs,
812           TextOutputter.cs,
813           GenericOutputter.cs : Added WriteState. Now WriteStartDocument() will
814           be called only when required. 
815         * HtmlEmitter.cs : Improved indentation stuff.
816         * XslDecimalFormat.cs : Added incomplete implementation of 
817           CheckSameAs() and FormatNumber().
818         * XslStylesheet.cs,
819           XslTransformProcessor.cs : Changed XslStylesheet.StylesheetNamespaces
820           from StringDictionary to ArrayList of QName (to keep order).
821
822 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
823
824         * XsltCompiledContext.cs : XsltGenerateId.Evaluate() should consider
825           node type (i.e. attribute and namespace). Removed extraneous Clone().
826           Fixed XsltKey.Evaluate() to use MoveToNextAttribute to iterate attrs.
827
828 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
829
830         * Compiler.cs : Changed Keys from ArrayList to Hashtable.
831           XslStylesheet.cs : Added Keys support here.
832         * XslTransformProcessor.cs : Should call SetContext() to expressions
833           before evaluating current nodes.
834         * XsltCompiledContext.cs : 1) XsltDocument.GetDocument() should use
835           xsltContext. 2) XsltKey exposes KeyName, Field and NamespaceManager
836           for KeyPattern. It now uses CompiledStyle.FindKeys().
837
838 2003-11-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
839
840         * GenericOutputter.cs : Added HTML output support. Closer xmlns handling
841           to Xalan tests and MS.NET implementation (only for test convenience).
842         * XslOutput.cs : Indent holds string rathen than bool. Its default value
843           varies in the context. When method="html", then default is "yes".
844         * XslTransformProcessor.cs : Extension element prefixes should not 
845           be written as stylesheet namespaces.
846         * XsltCompiledContext.cs : Return type of generate-id() is string.
847           Implemented unparsed-entity-uri().
848
849 2003-11-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
850
851         * Compiler.cs : More complete attribute set gathering.
852           GetNamespacesToCopy() should only return Local namespaces.
853         * GenericOutputter.cs : Added support for indentation.
854           Added easy hack for html output.
855           More correct Prefix handling (considers already defined ones).
856           Namespace emmission is moved to CheckState().
857         * Emitter.cs, XmlWriterEmitter.cs, GenericOutputter.cs, Outputter.cs :
858           Added WriteFullEndElement(). (i.e. IsEmptyElement support)
859         * GenericOutputter.cs, Outputter.cs :
860           Added CanProcessAttributes property for 
861           use-attribute-sets of xsl:copy.
862         * XslStylesheet.cs : Added support for stylesheet-defined xmlns decls.
863           Added support for exclude-result-prefixes.
864         * XslTransformProcessor.cs : Added support for stylesheet-defined xmlns.
865
866 2003-10-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
867
868         * Compiler.cs : It is not important, but attribute order became closer
869           to MS.NET and Xalan (assuming from OASIS tests).
870
871 2003-10-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
872
873         * GenericOutputter.cs : Attribute wasn't overwritten its properties
874           because Attribute is struct it was let to another local variable.
875
876 2003-09-28 Ben Maurer  <bmaurer@users.sourceforge.net>
877
878         * GenericOutputter.cs: make html output a warning, because doing
879         xml will be right most of the time.
880
881 2003-09-28 Ben Maurer  <bmaurer@users.sourceforge.net>
882
883         * Debug.cs: comment out {Enter, Exit}Navigator. Haven't had bugs
884         here for a long time and it hurts thread safty and memory
885         allocation.
886
887 2003-09-21 Ben Maurer  <bmaurer@users.sourceforge.net>
888
889         * Compiler.cs: save the parser (will reduce memory allocation when
890         Jackson's jay patch is committed).
891
892 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
893
894         * Attribute.cs: Change to struct. Remove QName class.
895         * GenericOutputter.cs: use an Attribute [] rather than an
896         ArrayList. Allows us not to allocate Attributes, which is great
897         for speed. Roll our own allocation.
898
899 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
900
901         * Compiler.cs: add GetNsm to main class as well.
902
903 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
904
905         * Compiler.cs (ParseAvtAttribute): Get the attribue using our
906         internal version so we get null if the attr doesnt exist.
907
908 2003-09-17 Ben Maurer  <bmaurer@users.sourceforge.net>
909
910         * Compiler.cs (IStaticXsltContext.TryGetVariable): handle the case
911         where curVarScope == null
912
913 2003-09-16 Ben Maurer  <bmaurer@users.sourceforge.net>
914
915         * Compiler.cs: 
916         - Better handling of empty attributes (vs not being specified)
917         - Bug in handling #default
918         
919 2003-09-15 Ben Maurer  <bmaurer@users.sourceforge.net>
920
921         * Compiler.cs: Off by one when parsing localname of QName 
922         * XslAttributeSet.cs: must evaluate used attr sets *BEFORE*
923         children (so that they get overriden)
924
925 2003-09-15 Ben Maurer  <bmaurer@users.sourceforge.net>
926
927         * GenericOutputter.cs: Output attributes in order recieved; not
928         required by spec, but useful for running test cases.
929
930 2003-09-14 Oleg Tkachenko <oleg@tkachenko.com>
931
932         * GenericOutputter.cs - fix bug with outputting state.
933         * Emitter.cs, TextEmitter.cs, XmlWriterEmitter.cs, Outputter.cs, 
934         * TextOutputter.cs - get rid of WriteStartAttribute/WriteEndAttribute.  
935
936 2003-09-13 Ben Maurer  <bmaurer@users.sourceforge.net>
937
938         * Compiler.cs, XslKey.cs, XslTransformProcessor.cs: dont clone
939         exprs on use, pass to nav.
940
941 2003-09-13 Ben Maurer  <bmaurer@users.sourceforge.net>
942
943         * Compiler.cs: pass satic context to Pattern ctor.
944
945 2003-08-30 Oleg Tkachenko <oleg@tkachenko.com>
946
947         * New files: 
948         GenericOutputter.cs - generic Outputter implementation,
949         Attribute.cs - represents outputted attribute,
950         Emitter.cs - abstract output emitter,
951         TextEmitter.cs - text emitter,
952         XmlWriterEmitter.cs - emitter to XmlWriter.
953         * Checking of duplicating attributes is done in GenericOutputter.
954         * Namespace outputting logic is implemented in GenericOutputter.
955         * Outputter.cs: Writing namespace declarations is delegated to 
956         derived classes (GenericOutputter).
957         * XslOutput.cs: standalone flag is now 3-value enum (NONE, YES, NO).                    
958          
959 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
960
961         * XslTransformProcessor.cs: evaluate variables at beginning
962         when / is current node.
963
964 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
965
966         * Compiler.cs, XsltCompiledContext.cs, XslTransformProcessorcs:
967         Fix up namespace handeling
968
969 2003-08-20 Ben Maurer  <bmaurer@users.sourceforge.net>
970
971         * Compiler.cs, XslStylesheet.cs, XsltCompiledContext.cs: Stubs for
972         format-number.
973         * XslDecimalFormat.cs: Stub for decimal-format.
974
975 2003-08-20 Ben Maurer  <bmaurer@users.sourceforge.net>
976
977         * TextOutputter.cs: Add option to ignore element content (Oleg).
978
979 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
980
981         * Compiler.cs: Really give null for blank avt's
982
983 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
984
985         * Compiler.cs: Fixed lre/lre04.
986
987 2003-08-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
988
989         * Compiler.cs : Fixed XslNameUtil.FromString() so that unprefixed name
990           won't have default namespace. See http://www.w3.org/TR/xslt#qname
991
992 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
993
994         * XslTransformProcessor.cs: add support for resolving documents.
995         * XsltCompiledContext: add support for document () function.
996
997 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
998
999         * Outputter.cs, TextOutputter.cs, XmlOutputter.cs: Implement some
1000         of the abstract methods in Outputter, making them call other
1001         functions with default values, remove impl's in derived classes.
1002
1003 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
1004
1005         * Outputter.cs: s/Close/Done
1006         * TextOutputter.cs, XmlOutputter.cs: Flush, don't close the backing.
1007         * XslTransformProcessor.cs: Flush output when popping, pop at end.
1008
1009 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
1010
1011         * Outputter.cs: Add support for namespaces.
1012
1013 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
1014
1015         * Compiler.cs, XslOutput.cs, XslStylesheet.cs,
1016         XslTransformProcessor.cs: move output logic from XslStylesheet to
1017         Compiler.
1018
1019 2003-08-18 Ben Maurer  <bmaurer@users.sourceforge.net>
1020
1021         * XslOutput.cs: add support for encoding.
1022
1023 2003-08-18 Ben Maurer  <bmaurer@users.sourceforge.net>
1024
1025         * *.cs: Support for xsl:output. (Oleg)
1026
1027 2003-08-17 Ben Maurer  <bmaurer@users.sourceforge.net>
1028
1029         * Compiler.cs: handle extension and excluded namespaces.
1030
1031 2003-08-17 Ben Maurer  <bmaurer@users.sourceforge.net>
1032
1033         * XsltCompiledContext.cs, Compiler.cs: copy the XPathNavigator
1034         from the stylesheet for correct namespace resolution.
1035
1036 2003-08-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1037
1038         * Compiler.cs : 1) Changed public .ctor() to receive Evidence argument 
1039           introduced in .NET 1.1. 2) XmlResolver object is required for 'res'.
1040
1041 2003-08-07 Ben Maurer  <bmaurer@users.sourceforge.net>
1042
1043         * XslTransformProcessor.cs: Add a table to detect when an object
1044         is busy.
1045         * XslAttributeSet.cs: Use the above table. Dont throw nullref
1046         exception when no use-attribute-sets are specified.
1047
1048 2003-08-04 Ben Maurer  <bmaurer@users.sourceforge.net>
1049
1050         * Compiler.cs: Add support for boolean attributes (yes/no).
1051
1052 2003-08-04 Ben Maurer  <bmaurer@users.sourceforge.net>
1053
1054         * Compiler.cs: Add method LocalNameOf, to get the local name of a
1055         string.
1056         * XslTransformProcessor.cs: Support for setting the XmlResolver.
1057
1058 2003-08-01 Ben Maurer  <bmaurer@users.sourceforge.net>
1059
1060         * Compiler.cs, XslAttributeSet.cs: Handle attribute set merging
1061
1062 2003-08-01 Ben Maurer  <bmaurer@users.sourceforge.net>
1063
1064         * XslTransformProcessor.cs: Add EvaluateNumber method.
1065
1066 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
1067
1068         * XsltCompiledContext.cs: Implement more functions.
1069
1070 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
1071
1072         * Compiler.cs: Add support for key, utility function to parse
1073         QName's from the XsltContext. Store keys in the CompiledStyle, not
1074         in the Stylesheet.
1075         * XslKey.cs: Real implementation
1076         * XslStylesheet.cs: Move the keys to CompiledStyle.
1077         * XsltCompiledContext.cs: Implement the key function
1078
1079 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
1080
1081         * XsltCompiledContext.cs: Hmm, maybe I should actually *enable*
1082         the functions ;-). Also wrote current ().
1083
1084 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
1085
1086         * XsltCompiledContext.cs: Remove excess conversion stuff. It is
1087         done in XPath. Add stubs for XSLT functions.
1088
1089 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
1090
1091         * Compiler.cs: To resolve a variable you now need to pass the
1092         processor, so that it can be passed to IsEvaluated. A local will
1093         only be resolved if it has already been evaluated.
1094         * XsltCompiledContext.cs: Pass along the processor.
1095         
1096 2003-07-30 Ben Maurer  <bmaurer@users.sourceforge.net>
1097
1098         * Compiler.cs, XslTemplate.cs, XslTransformProcessor.cs: Store
1099         variable values in the XslTransformProcessor.
1100         * XsltCompiledContext.cs: If the scope is null, don't look there!
1101         * Debug.cs: New method Assert
1102
1103 2003-07-30 Ben Maurer  <bmaurer@users.sourceforge.net>
1104
1105         * Compiler.cs, XsltCompiledContext.cs: Remove verbose messages
1106         * XslTransformProcessor.cs: Use strongtyped evaluation, using new
1107         internal methods in XPathNavigator. Remove verbose debugging messages.
1108
1109 2003-07-29 Ben Maurer  <bmaurer@users.sourceforge.net>
1110
1111         * Initial Checkin
1112