1 2008-06-03 Atsushi Enomoto <atsushi@ximian.com>
3 * XsltDebuggerWrapper.cs : allow public methods in debugger instance.
5 2008-01-08 Atsushi Enomoto <atsushi@ximian.com>
7 * XslKey.cs, XslStylesheet.cs, Compiler.cs : XSLT 1.0 does not
8 prohibit more than one xsl:key with the same QName, so do not use
9 the name as a 'key' in the table for xsl:key. Fixed bug #351939,
10 patch by Tor Lillqvist.
12 2007-12-27 Atsushi Enomoto <atsushi@ximian.com>
14 * XslTemplate.cs, XslTransformProcessor.cs :
15 Some disambiguation around whitespace handling (input strip/preserve
17 * XslStylesheet.cs : change GetPreserveWhitespace() to match the
18 actual behavior; it does not (and should not) really walk through
19 ancestors. Default whitespace handling depends on the default ("*")
20 handling. (Those changes should not affect anything.)
22 2007-10-30 Atsushi Enomoto <atsushi@ximian.com>
24 * Compiler.cs : added CheckExtraAttributes() to check invalid
25 attributes on stylesheet component elements.
26 Use it in xsl:sort too.
28 2007-09-21 Atsushi Enomoto <atsushi@ximian.com>
30 * GenericOutputter.cs : fixed possible conflict for auto-filled
31 attribute prefixes. Fixed bug #325482.
33 2007-08-21 Atsushi Enomoto <atsushi@ximian.com>
35 * XslFunctions.cs : fix wrong unboxing in extension functions.
38 2007-06-28 Atsushi Enomoto <atsushi@ximian.com>
40 initial attempt to hook debuggers.
41 * XsltDebuggerWrapper.cs : new.
42 * XslTransformProcessor.cs Compiler.cs : use above.
44 2007-01-09 Atsushi Enomoto <atsushi@ximian.com>
46 * XslKey.cs : keep keytables per instance document and do not share
49 2006-11-30 Atsushi Enomoto <atsushi@ximian.com>
51 * XslStylesheet.cs, XslTemplate.cs : added XSLT stack frame debug
52 support, based on the patch by Michael Meeks.
54 2006-04-07 Atsushi Enomoto <atsushi@ximian.com>
56 * XslTransformProcessor.cs : push current node context after iterating
57 template target node. Added another NodesetMoveNext() which takes
58 explicit XPathNodeIterator to iterate and filter whitespaces out.
60 2006-04-07 Atsushi Enomoto <atsushi@ximian.com>
62 * XslTransformProcessor.cs : in NodesetMoveNext() take
63 XPathContext.PreserveWhitespace() into consideration.
65 2006-03-15 Atsushi Enomoto <atsushi@ximian.com>
67 * XslTransformProcessor.cs,
68 Compiler.cs : eliminate ExpressionStore. Now sorting is done
69 inside XslSortEvaluator.
70 * XslSortEvaluator.cs : new file. It handles current node in XSLT
71 context. Fixed bug #77781.
73 2006-03-15 Atsushi Enomoto <atsushi@ximian.com>
75 * XslTransformProcessor.cs : in PushNodeset() avoid Clone(). It saves
76 extra cost, and might avoid possible bug in for-each and current()
79 2006-02-22 Atsushi Enomoto <atsushi@ximian.com>
81 * ScriptCompilerInfo.cs : mbas unlike vbc references System.dll
82 etc. by default, so don't add them as references.
83 Set only local file name for #ExternalSource. Fixed bug #75789.
85 2006-01-13 Atsushi Enomoto <atsushi@ximian.com>
87 * GenericOutputter.cs : When writing string, use WriteWhitespace()
88 instead of WhiteString() when its state is not Content. This fixes
89 BVTs_bvt066 case (broken after implementing strict state check in
92 2005-12-24 Gert Driesen <drieseng@users.sourceforge.net>
94 * XslOutput.cs: Do not report error for unknown value for "standalone"
95 and "omit-xml-declaration" attributes, and extranous attributes if
96 stylesheet version is not "1.0".
98 2005-12-24 Atsushi Enomoto <atsushi@ximian.com>
100 * Compiler.cs : pass stylesheet version to XslOutput to determine
101 "indent" value validity.
102 * XslOutput.cs, HtmlEmitter.cs, GenericOutputter.cs : Reverted
103 buggy changes on "indent" attribute handling.
104 http://www.w3.org/TR/xslt#section-HTML-Output-Method
106 2005-12-23 Gert Driesen <drieseng@users.sourceforge.net>
108 * XslOutput.cs: Reduced indentation of cases in switch statement.
110 2005-12-23 Gert Driesen <drieseng@users.sourceforge.net>
112 * ScriptCompilerInfo.cs: Fixed line endings.
113 * XslStylesheet.cs: Beautify error messages.
114 * Debug.cs: Fixed line endings.
115 * XslOutput.cs: Indent is now bool instead of string, use
116 MoveToAttribute to navigate through attributes instead of using
117 GetAttribute, as we also need to distinguish attributes with
118 zero-length value from attributes that are not specified for
119 correct implementation of DOCTYPE. Implemented validation for
120 value of "omit-xml-declaration", "standalone" and "indent".
121 We now throw a XsltCompileException for unknown attribute.
122 * XmlWriterEmitter.cs: only skip WriteDocType is systemId is null.
123 * HtmlEmitter.cs: XslOutput.Indent is now bool. Fixed WriteDocType
125 * XmlDecimalFormat.cs: Beautify error messages.
126 * XslTemplate.cs: Beautify error messages.
127 * GenericOutputter.cs: XslOutput.Indent is now bool.
128 * Compiler.cs: Beautify error messages.
130 2005-12-21 Atsushi Enomoto <atsushi@ximian.com>
132 * XslTemplate.cs : don't check name and mode attributes on
133 non-'xsl:template' element. This should fix bug #77051.
135 2005-12-13 Andrew Skiba <andrews@mainsoft.com>
137 * XslDecimalFormat.jvm.cs: set correct defaults for NaN and Infinity
139 2005-11-30 Atsushi Enomoto <atsushi@ximian.com>
141 * ScriptCompilerInfo.cs : (VBCompilerInfo) There was a space between
142 '#' and 'ExternalResource'. bug #75789 should be fixed.
144 2005-11-23 Vladimir Krasnov <vladimirk@mainsoft.com>
146 * XslKey.cs: fixed KeyIndexTable.Evaluate method, changed
147 XPathNavigator given to GetNodesByValue()
149 2005-11-17 Atsushi Enomoto <atsushi@ximian.com>
151 * XslCompiledContext.cs : since XsltContextInfo is struct, having
152 an array of this type and setting fields of each struct didn't
153 make sense. It thus blocked expected PreserveWhitespace behavior.
155 2005-10-24 Atsushi Enomoto <atsushi@ximian.com>
157 * Compiler.cs : (FromString(s, hashtable)) pull default namespace
158 from the table for LRE (don't consider it as ""; spec. 7.1.2)
161 2005-09-16 Atsushi Enomoto <atsushi@ximian.com>
163 * ScriptCompilerInfo.cs : Compile correct replacement result.
166 2005-09-10 Atsushi Enomoto <atsushi@ximian.com>
168 * Compiler.cs : (Compile) check children only when it is the document
169 element. Fixed bug #76046.
171 2005-08-25 Atsushi Enomoto <atsushi@ximian.com>
173 * ScriptCompilerInfo.cs : It should not be "#line" when the source is
174 not C#. It should fix bug #75789.
176 2005-08-05 Atsushi Enomoto <atsushi@ximian.com>
178 * XslKey.cs : Fixed match pattern in xsl:key to check attribute nodes.
179 To minimize attribute iteration, use Pattern.EvaluatedNodeType.
182 2005-07-29 Atsushi Enomoto <atsushi@ximian.com>
184 * XslFunctions.cs : XslTransform recovers from errors on document
185 resolution. Fixed bug #75663.
187 2005-06-06 Atsushi Enomoto <atsushi@ximian.com>
189 * HtmlEmitter.cs : Boolean attribute values should be omitted, but
190 only for related elements.
192 2005-05-07 Atsushi Enomoto <atsushi@ximian.com>
194 * MSXslScriptManager.cs : it should ignore compiler warnings. This
197 2005-04-07 Andrew Skiba <andrews@mainsoft.com>
199 * XslDecimalFormat.jvm.cs : added
201 2005-03-31 Atsushi Enomoto <atsushi@ximian.com>
203 * MSXslScriptManager.cs : added TARGET_JVM switch (that does not
204 support CodeDom). Use Guid.ToString("N").
206 2005-03-31 Atsushi Enomoto <atsushi@ximian.com>
208 * Compiler.cs : removed extraneous using_directive.
210 2005-03-25 Atsushi Enomoto <atsushi@ximian.com>
212 * XslKey.cs : the iterator does not require sorting (already sorted).
215 2005-03-23 Atsushi Enomoto <atsushi@ximian.com>
218 Variables are stored per stylesheet and added to compiler after
219 all of the contents are processed (handle import precedence).
220 Imports are now processed in prior to other contents (incorrect
221 imports are now rejected). After imports, process includes to
222 process nested imports. In-process included stylesheets are
223 temporarily stored in including stylesheet.
224 Handle keys like variables are handled.
225 Added Compile() that is splitted from .ctor().
227 Store keys in compiler and compiled stylesheet.
228 Duplicate variables in imports are now overriden as expected.
229 * XsltCompiledContext.cs : use CompiledStylesheet.ResolveKey().
231 2005-03-22 Atsushi Enomoto <atsushi@ximian.com>
233 * XslTransformProcessor.cs : now it looks safe to remove SetContext()
234 from each EvaluateXXX() methods.
235 * MsxslScriptManager.cs : not to leave reference to stylesheet
236 navigator, pass current node to Compile().
237 * XslCompiledContext.cs : Added GetNavCache() that returns reusable
238 navigator cache for each pattern, to avoid Clone() and not to leave
239 reference to already-done instance navigator.
241 2005-03-22 Atsushi Enomoto <atsushi@ximian.com>
243 * Compiler.cs : Now it holds XPath parser and XSLT pattern parser.
244 * XslKey.cs : Use XSLT pattern parser for match.
245 UsePattern is now "Use" (it is not a pattern).
246 Reimplemented Evaluate() to make full use of index table.
247 Added Matches() to handle shorter match evaluation. For const value
248 for key (e.g. key patterns), it could avoid Evaluate().
249 * XsltCompiledContext.cs : Added MatchesKey() that just delegates to
250 new KeyIndexTable.Matches().
251 * XslFunctions.cs : Added PatternMatches() that just delegates to new
252 XsltCompiledContext.MatchesKey().
254 2005-03-22 Atsushi Enomoto <atsushi@ximian.com>
256 * GenericOutputter.cs : commented out warned fields.
258 2005-03-15 Atsushi Enomoto <atsushi@ximian.com>
260 * XslKey.cs : removed last ListIterator.ctor() argument.
261 Reverted the last commit that changed internal key index change
262 from ArrayList to Hashtable. Avoid clone in CollectIndex().
263 Sort results in Evaluate() before passing list to ListIterator.
264 * XslFunctions.cs : removed last ListIterator.ctor() argument.
266 2005-03-14 Atsushi Enomoto <atsushi@ximian.com>
269 XsltCompiledContext.cs,
271 XslTransformProcessor.cs : Now dynamic context key index table is
272 separate from XslKey static context. Added KeyIndexTable class and
273 store it into XsltCompiledContext with hash name-table mapping.
274 Cache map from statically-named key to index table.
275 Use Hashtable for internal key cache instead of ArrayList.
277 2005-03-14 Atsushi Enomoto <atsushi@ximian.com>
279 * XslKey.cs : fixed node iteration on collecting key indices which
280 could have resulted in an infinite loop.
282 2005-03-14 Atsushi Enomoto <atsushi@ximian.com>
284 * XslDecimalFormat.cs : in some cases it does not throw format
287 2005-03-11 Atsushi Enomoto <atsushi@ximian.com>
289 * XsltCompiledContext.cs,
290 XslStylesheet.cs : Fixed significant performance loss on whitespace
293 2005-03-11 Atsushi Enomoto <atsushi@ximian.com>
295 * XslKey.cs : removed unused NeedAbsoluteMatching.
296 * XslFunctions.cs : Added Peer (for peer & subtree optimization).
297 Added some missing ToString() overrides.
299 2005-03-09 Atsushi Enomoto <atsushi@ximian.com>
301 * XslStylesheet.cs, XslCompiledContext.cs : Fixed PreserveWhitespace()
302 to work fine with xsl:*-space attributes as expected.
303 * XslTransformProcessor.cs : PreserveWhitespace() in this file is
304 actually nothing. It should not use XsltContext.PreserveWhitespace()
305 because this method is used to control output, while the referenced
306 method is used to control source document.
308 2005-03-09 Atsushi Enomoto <atsushi@ximian.com>
310 * XslTemplate.cs : First non-element content were incorrectly ignored.
312 2005-03-09 Atsushi Enomoto <atsushi@ximian.com>
314 * XslFunctions.cs, Compiler.cs : Eliminated XPathNavigatorNsm class
315 to reduce references to stylesheet XPathNavigator. To accomplish it,
316 IStaticXsltContext does not declare GetNsm() anymore. All xslt
317 function types now directly hold IStaticXsltContext.
318 * XslStylesheet.cs : removed "Compiler c" field.
319 Removed unused properties.
321 2005-03-08 Atsushi Enomoto <atsushi@ximian.com>
323 * GenericOutputter.cs : When WriteStartElement() requires to add
324 new namespace declaration, _currentNamespaceDecls needs to be set.
326 2005-03-08 Atsushi Enomoto <atsushi@ximian.com>
328 * GenericOutputter.cs : for duplicate attribute in an element, no need
329 to keep previous prefix.
331 2005-03-08 Atsushi Enomoto <atsushi@ximian.com>
333 * GenericOutputter.cs : Prefix "xml" is only allowed to the fixed XML
334 namespace. Rewrite prefix only when there is non-empty namespace.
336 2005-03-07 Atsushi Enomoto <atsushi@ximian.com>
338 * XslStylesheet.cs : Now namespace aliases are collected in prior to
339 all other toplevel elements. Removed unused code.
341 2005-03-07 Atsushi Enomoto <atsushi@ximian.com>
343 * GenericOutputter.cs : compute attribute prefix only when actual
344 emission. Fixed some cases that namespace output was missing.
346 2005-03-07 Atsushi Enomoto <atsushi@ximian.com>
348 * GenericOutputter.cs : no need to use two collections to store
349 pending attributes. Just use ordered ListDictionary.
350 newNamespace.Add(int) causes extraneous boxing.
352 2005-03-07 Atsushi Enomoto <atsushi@ximian.com>
354 * XslTransformProcessor.cs : renamed TryElementNamespacesOutput() to
355 OutputLiteralNamespaceUriNodes() so that everyone can understand
356 what it means and when it should be invoked.
358 2005-03-04 Atsushi Enomoto <atsushi@ximian.com>
360 * Compiler.cs : added another CompileTemplateContent() which is
361 requred in xsl:for-each. Commented out unused method.
363 2005-03-03 Atsushi Enomoto <atsushi@ximian.com>
365 * XslStylesheet.cs, XslTransformProcessor.cs : exclude-element-prefix
366 in stylesheet should be considered in TryElementNamespacesOutput().
367 ParseQNameListAttribute() is not properly working for filling
370 2005-03-02 Atsushi Enomoto <atsushi@ximian.com>
372 * XslStylesheet.cs : included stylesheet could be literal result
373 element as stylesheet (see the spec 2.6.1).
375 2005-03-02 Atsushi Enomoto <atsushi@ximian.com>
377 * GenericOutputter.cs : On WriteStartElement(), prefix should be an
378 empty string when nsURI is empty.
379 * HtmlEmitter.cs : non-HTML elements in default namespace are treated
380 unlike xml but like span, as written in the spec 16.2.
382 2005-03-02 Atsushi Enomoto <atsushi@ximian.com>
384 * XslCompiledContext.cs, XslTransformProcessor.cs :
385 According to errata E25, those namespaces 1) that has the same
386 name as current element's prefix, or an empty name when current
387 element's namespace URI is empty, are not written to output.
388 So added current element information to XPathContext and added
389 prefix parameter to PushElementState(), added xsl:copy check to
390 TryElementNamespacesOutput().
391 http://www.w3.org/1999/11/REC-xslt-19991116-errata/
393 2005-02-26 Atsushi Enomoto <atsushi@ximian.com>
395 * XslFunctions.cs : unparsed-entity-uri() should return SYSTEM ID
398 2005-02-25 Atsushi Enomoto <atsushi@ximian.com>
400 * XslTemplate.cs : According to the spec 5.7, it is an error for
401 xsl:template to have 'mode' without 'match'.
403 2005-02-24 Atsushi Enomoto <atsushi@ximian.com>
405 * Compiler.cs : added ns lookup with nsDecls Hashtable.
407 2005-02-24 Atsushi Enomoto <atsushi@ximian.com>
409 * XslStylesheet.cs : It should consider "#default" in namespace-alias.
411 2005-02-23 Atsushi Enomoto <atsushi@ximian.com>
413 * GenericOutputter.cs : It should not attempt to write prefix "xml" and
414 namespace "http://www.w3.org/XML/1998/namespace".
416 2005-02-21 Atsushi Enomoto <atsushi@ximian.com>
418 * XmlWriterEmitter.cs : PI nodes are normalized as to not contain "?>".
419 * HtmlEmitter.cs : CDATA nodes are written just as text.
420 * GenericOutputter.cs : custom format are treated just as XML output.
422 2005-02-17 Atsushi Enomoto <atsushi@ximian.com>
426 GenericOutputter.cs : removed WriteStartDocument(), WriteEndDocument()
427 and WriteState. Writing XML declaration is done inside
428 DetermineOutputMethod().
430 2005-02-17 Atsushi Enomoto <atsushi@ximian.com>
432 * Compiler.cs : reverted previous fix, since it should be done
433 in XslTransformProcessor with root stylesheet.
434 * XslTransformProcessor.cs : In TryElementNamespacesOutput(),
435 don't output alias namespaces. And now consider null exclusions.
437 2005-02-17 Atsushi Enomoto <atsushi@ximian.com>
439 * Compiler.cs : don't return alias namespaces in GetNamespacesToCopy().
441 2005-02-16 Atsushi Enomoto <atsushi@ximian.com>
443 * Compiler.cs : GetNamespacesToCopy() should also find for non-local
444 namespace nodes. Patch by Andrew Skiba with some fixes.
445 * XslTransformProcessor.cs : Patch by Andrew Skiba.
446 TryStylesheetNamespaceOutput() is now TryElementNamespacesOutput()
447 as to handle all namespace nodes to copy in stylesheet nodes.
448 Global parameterss are evaluated before global variables.
449 * XmlOutputter.cs : removed unused code.
453 * Actually variables and params should check reference recursion.
454 This patch incompletely fixes the problem.
455 * Those operations that considers excluded-result-prefixes must
456 also check those attributes of its ancestors.
458 2005-02-10 Atsushi Enomoto <atsushi@ximian.com>
460 * XmlWriterEmitter.cs : String.Replace() was insufficient for
461 sequential candidates for replacement. Patch by Andrew Skiba.
463 2005-02-10 Atsushi Enomoto <atsushi@ximian.com>
465 * GenericOutputter.cs : don't output extraneous xml declaration.
468 2005-02-09 Atsushi Enomoto <atsushi@ximian.com>
470 * XslStylesheet.cs : MS implementation had chosen to recover from
471 the error, in the way specified in the spec 7.7.1. Patch by Andrew
474 2005-02-08 Atsushi Enomoto <atsushi@ximian.com>
476 * XslTemplate.cs : if input is literal result element, it could result
477 in ArgumentException. Patch by Andrew Skiba.
479 2005-02-08 Atsushi Enomoto <atsushi@ximian.com>
481 * XslFunctions.cs : Fixed unparsed-entity-uri() that might result in
482 NullReferenceException. Patch by Andrew Skiba.
484 2005-02-08 Atsushi Enomoto <atsushi@ximian.com>
486 * XslOutput.cs : MS.NET recovers from unknown encoding according to
487 XSLT spec 16.1. Patch by Andrew Skiba.
489 2005-02-08 Atsushi Enomoto <atsushi@ximian.com>
491 * HtmlEmitter.cs : patch by Andrew Skiba.
492 Remove extra element prefix output. simplify attribute prefix output.
493 Attribute output might have resulted in invalid element stack peek.
494 Output specified media type if any.
496 2005-02-08 Atsushi Enomoto <atsushi@ximian.com>
498 * Compiler.cs : Patch by Andrew Skiba.
499 wrap internal exception with XsltCompileException.
500 Raise an error for not-found document URI.
501 QName might contain sequential whitespaces and thus could be empty.
503 2005-02-08 Atsushi Enomoto <atsushi@ximian.com>
505 * XslAttributeSet.cs : just ignore other kind of nodes than element
506 in its content. Fix by Andrew Skiba.
508 2005-02-08 Atsushi Enomoto <atsushi@ximian.com>
510 * XslOutput.cs : for html and text output mode, just set internal
511 omitXmlDeclaration status true. Patch by Andrew Skiba.
513 2005-02-08 Atsushi Enomoto <atsushi@ximian.com>
515 * XslFunctions.cs : fixed line ending mixture.
517 2005-02-03 Atsushi Enomoto <atsushi@ximian.com>
519 * ScriptCompilerInfo.cs : XsltCompileException->XsltException, just
522 2004-12-22 Atsushi Enomoto <atsushi@ximian.com>
525 Compiler.cs : XmlResolver.ResolveUri() may return null.
527 2004-12-01 Atsushi Enomoto <atsushi@ximian.com>
529 * Compiler.cs : XPathNavigatorNsm needed more love. Clone() does not
532 2004-12-01 Atsushi Enomoto <atsushi@ximian.com>
534 * Compiler.cs : don't create XPathNavigatorNsm for every GetNsm() call.
536 2004-11-26 Atsushi Enomoto <atsushi@ximian.com>
538 * XslKey.cs, XslStylesheet.cs, MSXslScriptManager.cs :
541 2004-11-24 Atsushi Enomoto <atsushi@ximian.com>
543 * XslStylesheet.cs : removed unused fields.
544 * XslOutput.cs : removed members for XSLT 2.0 (won't be implemented in
547 2004-11-08 Atsushi Enomoto <atsushi@ximian.com>
549 * Compiler.cs, XslTransformProcessor.cs :
550 when creating XmlTextReader, reuse XmlNameTable.
552 2004-11-05 Atsushi Enomoto <atsushi@ximian.com>
554 * Compiler.cs : Changes that reflects CompiledExpression changes.
556 2004-10-04 Atsushi Enomoto <atsushi@ximian.com>
558 * HtmlEmitter.cs : TH tag is not regarded as HTML tag.
559 This fixes bug #67390.
561 Thu Sep 9 07:09:11 PDT 2004 Paolo Molaro <lupus@ximian.com>
563 * ScriptCompilerInfo.cs: avoid using a .cctor and fix precomp.
565 2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
567 * Debug.cs, HtmlEmitter.cs, MSXslScriptManager.cs,
568 ScriptCompilerInfo.cs, XslFunctions.cs, XslTemplate.cs
569 : Globalization. Removed unused code.
571 2004-06-14 Atsushi Enomoto <atsushi@ximian.com>
573 * XslKey.cs : Key-value search in absolute path search was
576 2004-06-14 Atsushi Enomoto <atsushi@ximian.com>
578 * HtmlEmitter.cs : Correct URL escape implementation.
580 2004-06-06 Atsushi Enomoto <atsushi@ximian.com>
582 * XslTransformProcessor.cs : On document() function, close the
583 XmlTextReader opened from uri string.
585 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
588 GenericOutputter.cs : XmlNamespaceManager.LookupPrefix() allows only
589 atomized names. Fixed XPathNavigatorNsm.LookupNamespace() that
590 should override another overload.
592 2004-05-25 Lluis Sanchez Gual <lluis@ximian.com>
594 * ScriptCompilerInfo.cs: the name used to load the Microsoft.JScript
595 assembly should not include the .dll extension.
597 2004-05-20 Atsushi Enomoto <atsushi@ximian.com>
600 - CompilePattern() now throws XsltCompileException for invalid
601 pattern, and add error location support.
602 - In Compiler.TryGetFunction(), compare namespace URI, not prefix.
603 Now it returns MSXslNodeSet instance (for msxsl:node-set).
604 * Debug.cs : don't throw System.Exception.
605 * XslFunctions.cs : Added MSXslNodeSet class.
606 * XslTemplate.cs : reflected CompilePattern() change.
607 * XslTransformProcessor.cs : don't throw System.Exception.
608 * XsltCompiledContext.cs : don't throw System.Exception.
610 2004-05-12 Atsushi Enomoto <atsushi@ximian.com>
614 XslStylesheet.cs : made classes/enums internal.
616 2004-04-24 Atsushi Enomoto <atsushi@ximian.com>
618 * Attribute.cs, Compiler.cs, Debug.cs, Emitter.cs,
619 MSXslScriptCompiler.cs, Outputter.cs, XslAttributeSet.cs,
620 XslDecimalFormat.cs, XslKey.cs, XslStylesheet.cs, XslTemplate.cs,
621 XslTransformProcessor.cs : Make extra classes internal.
623 * XslKey.cs : It should require sorting.
624 * Debug.cs : Just avoid debug output. Only who want to output should
627 2004-04-24 Atsushi Enomoto <atsushi@ximian.com>
629 * GenericOutputter.cs : Culture-independency fix.
630 Replaced StringCollection to ArrayList.
631 * XslOutput.cs : Culture-independency fix.
633 2004-04-12 Atsushi Enomoto <atsushi@ximian.com>
635 * Compiler.cs : When BaseURI is an empty string, it should not try to
636 create Uri instance. This will fix bug #56832, but not sure.
637 * XslFunctions.cs : for XsltDocument.Resolve(), did the same.
638 * HtmlEmitter.cs : Environment.NewLine was incorrectly used (it
639 should be the TextReader's NewLine).
640 * MSXslScriptManager.cs : Should raise an error when the prefix which
641 was specified by "implements-prefix" was not found.
643 2004-03-27 Atsushi Enomoto <atsushi@ximian.com>
645 * ScriptCompilerInfo.cs : #line directive now holds dummy filename
646 when BaseURI for msxsl:script node is not available. This fixes
648 Don't output line number in the error message, when it is 0.
650 2004-03-27 Atsushi Enomoto <atsushi@ximian.com>
652 * Compiler.cs : Supply NameTable to base ctor() of XPathNavigatorNsm.
654 2004-03-22 Atsushi Enomoto <atsushi@ximian.com>
659 XslTransformProcessor.cs :
660 Throw specific types of exceptions instead of Exception.
661 * XslFunctions.cs, XsltCompiledContext.cs :
662 added node argument for XsltExtensionFunction ctor() etc.
664 2004-03-22 Atsushi Enomoto <atsushi@ximian.com>
666 * ScriptCompilerInfo.cs : Modified compilation processing. Now it uses
667 CodeDom. Compilation error should be caught. This fixes bug #55875.
669 2004-03-13 Atsushi Enomoto <atsushi@ximian.com>
671 * XslStylesheet.cs : "version" attribute is also required for embedded
674 2004-03-13 Atsushi Enomoto <atsushi@ximian.com>
677 XslStylesheet.cs : Reject xsl element other than stylesheet and
678 transform. Check mandatory version attribute (only for existence).
680 2004-03-07 Atsushi Enomoto <atsushi@ximian.com>
682 * MSXslScriptManager.cs : if extension namespace was not found in
683 the script, just return null. Patch by Joshua Tauberer.
685 2004-03-01 Atsushi Enomoto <atsushi@ximian.com>
687 * XslLiteralElement.cs : quick fix for ArgumentNullException which
688 was because of the combination of non-namespaced instances and
689 exclude-result-prefixes.
691 2004-02-17 Atsushi Enomoto <atsushi@ximian.com>
693 * XsltCompiledContext.cs : Extracted XslFunctions and changed namespace
694 from Mono.Xml.Xsl.Functions to Mono.Xml.Xsl.
695 * XslFunctions.cs : hereby Added.
696 * Compiler.cs : Removed deleted usingdecl.
698 2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
700 * XslTransformProcessor.cs : Bugfix. Stored keys should be cleared.
701 * XslKey.cs : Added ExprKeyContainer expression type, which is
702 designed to be matched at any level.
703 * Compiler.cs : support for ExprKeyContainer.
705 2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
707 * XslKey.cs : Now it collects key and matching nodes at the first
708 evaluation time. After that, we can just get them from the table.
709 * Compiler.cs : Added KeyCompilationMode. It is used to prevent
710 prohibited key() usage in "match" and "use" attributes in xsl:key.
711 Modified accessibility of some classes.
712 * GenericOutputter.cs,
716 XmlWriterEmitter.cs : made classes internal.
717 * XslOutput.cs : support line info for exception.
718 * XsltCompiledContext.cs : implemented CompareDocument() - so easily.
720 2004-02-13 Atsushi Enomoto <atsushi@ximian.com>
722 * XsltCompiledContext.cs : fixed the length of context info array.
724 2004-02-10 Atsushi Enomoto <atsushi@ximian.com>
726 * XsltCompiledContext.cs :
727 replaced EnumeratorIterator with ListIterator
729 2004-02-08 Atsushi Enomoto <atsushi@ximian.com>
731 * GenericOutputter.cs,
734 XslTemplate.cs : tiny foreach elimination.
736 2004-01-16 Atsushi Enomoto <atsushi@ximian.com>
738 * XslOutput.cs : Reverted. default encoding should be utf-8.
740 2004-01-14 Jackson Harper <jackson@ximian.com>
742 * GenericOutputter.cs: Add constructors that do not take an
743 encoding to fix build.
745 2004-01-14 Atsushi Enomoto <atsushi@ximian.com>
747 * XmlWriterEmitter.cs : It now uses WriteProcessingInstruction() to
748 write XML declaration. It means that output supports non document
749 entity. This fixes bug #52729.
750 * Emitter.cs, TextEmitter.cs, HtmlEmitter.cs, XmlWriterEmitter.cs :
751 modified WriteStartDocument() signature to receive Encoding.
752 * GenericOutputter.cs :
753 - Added .ctor() which receives Encoding. (It is used for TextWriter
754 output to get actual encoding.)
755 - Added .ctor() to take an boolean argument which indicates it is
756 variable content or not. (When variable, it does not call
757 WriteStartDocument().)
759 XsltCompiledContext.cs : comment out WriteLine().
760 * XslOutput.cs : set default encoding utf-16.
762 2004-01-08 Nick Drochak <ndrochak@ieee.org>
764 * XsltCompiledContext.cs: Remove unused variable and unreachable code.
766 2003-12-26 Atsushi Enomoto <atsushi@ximian.com>
768 * XslDecimalFormat.cs : implemented format-number() other than number
770 * XsltCompiledContext.cs : Modified XsltFormatNumber.Evaluate() to
771 catch ArgumentException which will be thrown by formatting process.
773 2003-12-23 Atsushi Enomoto <atsushi@ximian.com>
775 * ScriptCompilerInfo.cs : Use "mjs" as JScript compiler.
777 2003-12-20 Ben Maurer <bmaurer@users.sourceforge.net>
779 * XsltCompiledContext.cs: Remove workaround now that monodoc
782 2003-12-20 Atsushi Enomoto <atsushi@ximian.com>
784 * XslStylesheet.cs : considering xsl:imports, we can't handle namespace
785 aliases at compilation time, so evaluate at the first run-time.
787 2003-12-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
789 * GenericOutputter.cs : support for runtime-determined output type.
790 * HtmlEmitter.cs : Fixed invalid doctype output.
791 Fixed incorrect double attribute output on non-HTML elements.
792 Improved indentation. Fixed "selected" attribute output.
793 Don't have to convert "'" to "'".
794 * XmlWriterEmitter.cs : Now don't output incorrect doctype.
795 Escapes CDATA section text "]]>" to "...]]]]><![CDATA[>..." .
796 * XslStylesheet.cs, XsltCompiledContext.cs :
797 space resolution consideration for import and wildcard.
799 2003-12-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
801 * Compiler.cs, XslTransformProcessor.cs :
802 Use XmlValidatingReader to support id() for external stylesheets.
803 * XslKey.cs, XsltCompiledContext.cs :
804 to evaluate MatchPattern and UsePattern, SetContext() is required.
805 * XslTemplate.cs : Forgot to commit. Change is below(12/16).
807 2003-12-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
809 * Emitter.cs, HtmlEmitter.cs, XmlWriterEmitter.cs :
810 Added WriteWhitespace().
811 * GenericOutputter.cs, XslTemplate.cs : Call above.
812 * XslTransformProcessor.cs : Changed NodesetStack to ArrayList since
813 CurrentNode in for-each context have to be pulled at evaluation.
815 2003-12-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
817 * XsltCompiledContext.cs : Temporarily allow incorrectly resolved
818 function for bugzilla #52144. It should be reverted soon.
820 2003-12-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
822 * ScriptCompilerInfo.cs : SecurityManager.ResolvePolicy() was not
824 * MSMslScriptManager.cs : modified generated assembly class to be unique
825 through running AppDomain.
826 * XsltCompiledContext.cs : XsltExtensionFunction.Invoke() has to cast
827 arguments to actual argument types. Bugzilla #51450 should be fixed.
829 2003-12-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
831 * HtmlEmitter.cs : Fixed incorrect character entity output.
833 2003-12-11 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
835 * Added ScriptCompilerInfo.cs.
836 * MSXslScriptManager.cs : Fixed *true* author's name.
837 Implemented basic msxsl:script support.
838 * Compiler.cs : Added Evidence member.
840 2003-12-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
842 * Compiler.cs : Check stylesheet recursion. Check decimal-format name.
843 * GenericOutputter.cs, Outputter.cs, TextOutputter.cs :
844 Added WriteWhitespace() to assure not writing whitespaces as cdata.
845 * XslAttributeSet.cs : Error check if attribute-set contains other than
846 xsl:attribute. Error should be XsltException.
847 * XslDecimalFormat.cs : Complete equality check. Allow just one
848 character value for some attributes.
849 * XslStylesheet.cs : Made whitespace control setting overridable.
850 Added Version property (for the future compatibility mode).
851 Check unrecongnized top level element.
852 * XslTemplate.cs : Check priority as a number.
853 * XslTransformProcessor.cs : PushCDataState is now PushElementState,
854 for xsl:preserve-space and xsl:strip-space support.
855 * XsltCompiledContext.cs : Implemented PreserveWhitespace() (far from
856 incomplete), PushScope and Pop
858 2003-12-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
860 * HtmlEmitter.cs : CloseStartElement is needed almost everywhere.
862 2003-12-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
864 * Compiler.cs : In FromListString(), it should use default ns,
866 * GenericOutputter.cs : CheckState() - attribute's Prefix should take
867 precedence. Doctype should be written even if SYSTEM id is absent.
868 Fixed possible multiple xmlns output.
870 - Encoding output using META element.
871 - Doctype name is fixed (html).
872 - Double quotation on PUBLIC and SYSTEM missing.
873 - Fixed incorrect tag name check for IMG.
874 - '>' should not be escaped.
875 * XmlWriterEmitter.cs :
876 Added newline before doctype. In WriteComment(), "--" and tail
877 '-' are not allowed (it escapes, while XmlWriter simply rejects).
878 * XslTransformProcessor.cs : cdata-section-elements should enclose
879 direct child tests only. Added PreserveWhitespace() (incomplete).
880 * XsltCompiledContext.cs : Implemented PreserveWhitespace() (incomplete).
882 2003-11-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
884 * IdPattern.cs : This should work against multiple ids.
886 2003-11-27 Ben Maurer <bmaurer@users.sourceforge.net>
889 * MSXslScriptManager.cs
891 * XslTransformProcessor.cs
892 * XsltCompiledContext.cs: Some work on msxsl script.
894 2003-11-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
896 (in general: cdata-section-elements support, correct document()
897 base uri handling, and so on)
898 * Compiler.cs : Use XmlSpace.Preserve to parse included stylesheet.
899 And move to document element. Added XslNameUtil.FromListString().
900 * Emitter.cs, HtmlEmitter.cs, TextEmitter.cs XmlWriterEmitter.cs :
901 Added WriteCDataSection().
902 * Outputter.cs, GenericOutputter.cs, TextOutputter.cs :
903 Added InsideCDataSection.
904 * GenericOutputter.cs :
905 In .ctor(), WriteState should be succeeded from output XmlWriter.
906 WriteNamespaceDecl() now drops declaration identical to existing one.
907 Removed obsolete htmlEmulation.
908 * XslOutput.cs : Added CDataSectionElements support.
909 * XslStylesheet.cs : Added BaseUri, StyleDocument and PrefixInEffect().
910 * XslTransformProcessor.cs :
911 Added Output and CurrentOutputUri. TryStylesheetNamespaceOutput()
912 now considers xsl:exclude-element-prefixes on literal element.
913 Added PushCDataState() and PopCDataState().
914 * XsltCompiledContext.cs : When base uri of document() target is empty,
915 then it should use stylesheet's BaseURI, not that of current document.
917 2003-11-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
919 * Compiler.cs : Modified decimal-format comparison code.
922 GenericOutputter.cs : Added WriteState. Now WriteStartDocument() will
923 be called only when required.
924 * HtmlEmitter.cs : Improved indentation stuff.
925 * XslDecimalFormat.cs : Added incomplete implementation of
926 CheckSameAs() and FormatNumber().
928 XslTransformProcessor.cs : Changed XslStylesheet.StylesheetNamespaces
929 from StringDictionary to ArrayList of QName (to keep order).
931 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
933 * XsltCompiledContext.cs : XsltGenerateId.Evaluate() should consider
934 node type (i.e. attribute and namespace). Removed extraneous Clone().
935 Fixed XsltKey.Evaluate() to use MoveToNextAttribute to iterate attrs.
937 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
939 * Compiler.cs : Changed Keys from ArrayList to Hashtable.
940 XslStylesheet.cs : Added Keys support here.
941 * XslTransformProcessor.cs : Should call SetContext() to expressions
942 before evaluating current nodes.
943 * XsltCompiledContext.cs : 1) XsltDocument.GetDocument() should use
944 xsltContext. 2) XsltKey exposes KeyName, Field and NamespaceManager
945 for KeyPattern. It now uses CompiledStyle.FindKeys().
947 2003-11-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
949 * GenericOutputter.cs : Added HTML output support. Closer xmlns handling
950 to Xalan tests and MS.NET implementation (only for test convenience).
951 * XslOutput.cs : Indent holds string rathen than bool. Its default value
952 varies in the context. When method="html", then default is "yes".
953 * XslTransformProcessor.cs : Extension element prefixes should not
954 be written as stylesheet namespaces.
955 * XsltCompiledContext.cs : Return type of generate-id() is string.
956 Implemented unparsed-entity-uri().
958 2003-11-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
960 * Compiler.cs : More complete attribute set gathering.
961 GetNamespacesToCopy() should only return Local namespaces.
962 * GenericOutputter.cs : Added support for indentation.
963 Added easy hack for html output.
964 More correct Prefix handling (considers already defined ones).
965 Namespace emmission is moved to CheckState().
966 * Emitter.cs, XmlWriterEmitter.cs, GenericOutputter.cs, Outputter.cs :
967 Added WriteFullEndElement(). (i.e. IsEmptyElement support)
968 * GenericOutputter.cs, Outputter.cs :
969 Added CanProcessAttributes property for
970 use-attribute-sets of xsl:copy.
971 * XslStylesheet.cs : Added support for stylesheet-defined xmlns decls.
972 Added support for exclude-result-prefixes.
973 * XslTransformProcessor.cs : Added support for stylesheet-defined xmlns.
975 2003-10-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
977 * Compiler.cs : It is not important, but attribute order became closer
978 to MS.NET and Xalan (assuming from OASIS tests).
980 2003-10-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
982 * GenericOutputter.cs : Attribute wasn't overwritten its properties
983 because Attribute is struct it was let to another local variable.
985 2003-09-28 Ben Maurer <bmaurer@users.sourceforge.net>
987 * GenericOutputter.cs: make html output a warning, because doing
988 xml will be right most of the time.
990 2003-09-28 Ben Maurer <bmaurer@users.sourceforge.net>
992 * Debug.cs: comment out {Enter, Exit}Navigator. Haven't had bugs
993 here for a long time and it hurts thread safty and memory
996 2003-09-21 Ben Maurer <bmaurer@users.sourceforge.net>
998 * Compiler.cs: save the parser (will reduce memory allocation when
999 Jackson's jay patch is committed).
1001 2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
1003 * Attribute.cs: Change to struct. Remove QName class.
1004 * GenericOutputter.cs: use an Attribute [] rather than an
1005 ArrayList. Allows us not to allocate Attributes, which is great
1006 for speed. Roll our own allocation.
1008 2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
1010 * Compiler.cs: add GetNsm to main class as well.
1012 2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
1014 * Compiler.cs (ParseAvtAttribute): Get the attribue using our
1015 internal version so we get null if the attr doesnt exist.
1017 2003-09-17 Ben Maurer <bmaurer@users.sourceforge.net>
1019 * Compiler.cs (IStaticXsltContext.TryGetVariable): handle the case
1020 where curVarScope == null
1022 2003-09-16 Ben Maurer <bmaurer@users.sourceforge.net>
1025 - Better handling of empty attributes (vs not being specified)
1026 - Bug in handling #default
1028 2003-09-15 Ben Maurer <bmaurer@users.sourceforge.net>
1030 * Compiler.cs: Off by one when parsing localname of QName
1031 * XslAttributeSet.cs: must evaluate used attr sets *BEFORE*
1032 children (so that they get overriden)
1034 2003-09-15 Ben Maurer <bmaurer@users.sourceforge.net>
1036 * GenericOutputter.cs: Output attributes in order recieved; not
1037 required by spec, but useful for running test cases.
1039 2003-09-14 Oleg Tkachenko <oleg@tkachenko.com>
1041 * GenericOutputter.cs - fix bug with outputting state.
1042 * Emitter.cs, TextEmitter.cs, XmlWriterEmitter.cs, Outputter.cs,
1043 * TextOutputter.cs - get rid of WriteStartAttribute/WriteEndAttribute.
1045 2003-09-13 Ben Maurer <bmaurer@users.sourceforge.net>
1047 * Compiler.cs, XslKey.cs, XslTransformProcessor.cs: dont clone
1048 exprs on use, pass to nav.
1050 2003-09-13 Ben Maurer <bmaurer@users.sourceforge.net>
1052 * Compiler.cs: pass satic context to Pattern ctor.
1054 2003-08-30 Oleg Tkachenko <oleg@tkachenko.com>
1057 GenericOutputter.cs - generic Outputter implementation,
1058 Attribute.cs - represents outputted attribute,
1059 Emitter.cs - abstract output emitter,
1060 TextEmitter.cs - text emitter,
1061 XmlWriterEmitter.cs - emitter to XmlWriter.
1062 * Checking of duplicating attributes is done in GenericOutputter.
1063 * Namespace outputting logic is implemented in GenericOutputter.
1064 * Outputter.cs: Writing namespace declarations is delegated to
1065 derived classes (GenericOutputter).
1066 * XslOutput.cs: standalone flag is now 3-value enum (NONE, YES, NO).
1068 2003-08-21 Ben Maurer <bmaurer@users.sourceforge.net>
1070 * XslTransformProcessor.cs: evaluate variables at beginning
1071 when / is current node.
1073 2003-08-21 Ben Maurer <bmaurer@users.sourceforge.net>
1075 * Compiler.cs, XsltCompiledContext.cs, XslTransformProcessorcs:
1076 Fix up namespace handeling
1078 2003-08-20 Ben Maurer <bmaurer@users.sourceforge.net>
1080 * Compiler.cs, XslStylesheet.cs, XsltCompiledContext.cs: Stubs for
1082 * XslDecimalFormat.cs: Stub for decimal-format.
1084 2003-08-20 Ben Maurer <bmaurer@users.sourceforge.net>
1086 * TextOutputter.cs: Add option to ignore element content (Oleg).
1088 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
1090 * Compiler.cs: Really give null for blank avt's
1092 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
1094 * Compiler.cs: Fixed lre/lre04.
1096 2003-08-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1098 * Compiler.cs : Fixed XslNameUtil.FromString() so that unprefixed name
1099 won't have default namespace. See http://www.w3.org/TR/xslt#qname
1101 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
1103 * XslTransformProcessor.cs: add support for resolving documents.
1104 * XsltCompiledContext: add support for document () function.
1106 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
1108 * Outputter.cs, TextOutputter.cs, XmlOutputter.cs: Implement some
1109 of the abstract methods in Outputter, making them call other
1110 functions with default values, remove impl's in derived classes.
1112 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
1114 * Outputter.cs: s/Close/Done
1115 * TextOutputter.cs, XmlOutputter.cs: Flush, don't close the backing.
1116 * XslTransformProcessor.cs: Flush output when popping, pop at end.
1118 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
1120 * Outputter.cs: Add support for namespaces.
1122 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
1124 * Compiler.cs, XslOutput.cs, XslStylesheet.cs,
1125 XslTransformProcessor.cs: move output logic from XslStylesheet to
1128 2003-08-18 Ben Maurer <bmaurer@users.sourceforge.net>
1130 * XslOutput.cs: add support for encoding.
1132 2003-08-18 Ben Maurer <bmaurer@users.sourceforge.net>
1134 * *.cs: Support for xsl:output. (Oleg)
1136 2003-08-17 Ben Maurer <bmaurer@users.sourceforge.net>
1138 * Compiler.cs: handle extension and excluded namespaces.
1140 2003-08-17 Ben Maurer <bmaurer@users.sourceforge.net>
1142 * XsltCompiledContext.cs, Compiler.cs: copy the XPathNavigator
1143 from the stylesheet for correct namespace resolution.
1145 2003-08-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1147 * Compiler.cs : 1) Changed public .ctor() to receive Evidence argument
1148 introduced in .NET 1.1. 2) XmlResolver object is required for 'res'.
1150 2003-08-07 Ben Maurer <bmaurer@users.sourceforge.net>
1152 * XslTransformProcessor.cs: Add a table to detect when an object
1154 * XslAttributeSet.cs: Use the above table. Dont throw nullref
1155 exception when no use-attribute-sets are specified.
1157 2003-08-04 Ben Maurer <bmaurer@users.sourceforge.net>
1159 * Compiler.cs: Add support for boolean attributes (yes/no).
1161 2003-08-04 Ben Maurer <bmaurer@users.sourceforge.net>
1163 * Compiler.cs: Add method LocalNameOf, to get the local name of a
1165 * XslTransformProcessor.cs: Support for setting the XmlResolver.
1167 2003-08-01 Ben Maurer <bmaurer@users.sourceforge.net>
1169 * Compiler.cs, XslAttributeSet.cs: Handle attribute set merging
1171 2003-08-01 Ben Maurer <bmaurer@users.sourceforge.net>
1173 * XslTransformProcessor.cs: Add EvaluateNumber method.
1175 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
1177 * XsltCompiledContext.cs: Implement more functions.
1179 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
1181 * Compiler.cs: Add support for key, utility function to parse
1182 QName's from the XsltContext. Store keys in the CompiledStyle, not
1184 * XslKey.cs: Real implementation
1185 * XslStylesheet.cs: Move the keys to CompiledStyle.
1186 * XsltCompiledContext.cs: Implement the key function
1188 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
1190 * XsltCompiledContext.cs: Hmm, maybe I should actually *enable*
1191 the functions ;-). Also wrote current ().
1193 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
1195 * XsltCompiledContext.cs: Remove excess conversion stuff. It is
1196 done in XPath. Add stubs for XSLT functions.
1198 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
1200 * Compiler.cs: To resolve a variable you now need to pass the
1201 processor, so that it can be passed to IsEvaluated. A local will
1202 only be resolved if it has already been evaluated.
1203 * XsltCompiledContext.cs: Pass along the processor.
1205 2003-07-30 Ben Maurer <bmaurer@users.sourceforge.net>
1207 * Compiler.cs, XslTemplate.cs, XslTransformProcessor.cs: Store
1208 variable values in the XslTransformProcessor.
1209 * XsltCompiledContext.cs: If the scope is null, don't look there!
1210 * Debug.cs: New method Assert
1212 2003-07-30 Ben Maurer <bmaurer@users.sourceforge.net>
1214 * Compiler.cs, XsltCompiledContext.cs: Remove verbose messages
1215 * XslTransformProcessor.cs: Use strongtyped evaluation, using new
1216 internal methods in XPathNavigator. Remove verbose debugging messages.
1218 2003-07-29 Ben Maurer <bmaurer@users.sourceforge.net>