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