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