1 2003-12-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
3 * ScriptCompilerInfo.cs : SecurityManager.ResolvePolicy() was not
5 * MSMslScriptManager.cs : modified generated assembly class to be unique
6 through running AppDomain.
7 * XsltCompiledContext.cs : XsltExtensionFunction.Invoke() has to cast
8 arguments to actual argument types. Bugzilla #51450 should be fixed.
10 2003-12-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
12 * HtmlEmitter.cs : Fixed incorrect character entity output.
14 2003-12-11 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
16 * Added ScriptCompilerInfo.cs.
17 * MSXslScriptManager.cs : Fixed *true* author's name.
18 Implemented basic msxsl:script support.
19 * Compiler.cs : Added Evidence member.
21 2003-12-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
23 * Compiler.cs : Check stylesheet recursion. Check decimal-format name.
24 * GenericOutputter.cs, Outputter.cs, TextOutputter.cs :
25 Added WriteWhitespace() to assure not writing whitespaces as cdata.
26 * XslAttributeSet.cs : Error check if attribute-set contains other than
27 xsl:attribute. Error should be XsltException.
28 * XslDecimalFormat.cs : Complete equality check. Allow just one
29 character value for some attributes.
30 * XslStylesheet.cs : Made whitespace control setting overridable.
31 Added Version property (for the future compatibility mode).
32 Check unrecongnized top level element.
33 * XslTemplate.cs : Check priority as a number.
34 * XslTransformProcessor.cs : PushCDataState is now PushElementState,
35 for xsl:preserve-space and xsl:strip-space support.
36 * XsltCompiledContext.cs : Implemented PreserveWhitespace() (far from
37 incomplete), PushScope and Pop
39 2003-12-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
41 * HtmlEmitter.cs : CloseStartElement is needed almost everywhere.
43 2003-12-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
45 * Compiler.cs : In FromListString(), it should use default ns,
47 * GenericOutputter.cs : CheckState() - attribute's Prefix should take
48 precedence. Doctype should be written even if SYSTEM id is absent.
49 Fixed possible multiple xmlns output.
51 - Encoding output using META element.
52 - Doctype name is fixed (html).
53 - Double quotation on PUBLIC and SYSTEM missing.
54 - Fixed incorrect tag name check for IMG.
55 - '>' should not be escaped.
56 * XmlWriterEmitter.cs :
57 Added newline before doctype. In WriteComment(), "--" and tail
58 '-' are not allowed (it escapes, while XmlWriter simply rejects).
59 * XslTransformProcessor.cs : cdata-section-elements should enclose
60 direct child tests only. Added PreserveWhitespace() (incomplete).
61 * XsltCompiledContext.cs : Implemented PreserveWhitespace() (incomplete).
63 2003-11-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
65 * IdPattern.cs : This should work against multiple ids.
67 2003-11-27 Ben Maurer <bmaurer@users.sourceforge.net>
70 * MSXslScriptManager.cs
72 * XslTransformProcessor.cs
73 * XsltCompiledContext.cs: Some work on msxsl script.
75 2003-11-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
77 (in general: cdata-section-elements support, correct document()
78 base uri handling, and so on)
79 * Compiler.cs : Use XmlSpace.Preserve to parse included stylesheet.
80 And move to document element. Added XslNameUtil.FromListString().
81 * Emitter.cs, HtmlEmitter.cs, TextEmitter.cs XmlWriterEmitter.cs :
82 Added WriteCDataSection().
83 * Outputter.cs, GenericOutputter.cs, TextOutputter.cs :
84 Added InsideCDataSection.
85 * GenericOutputter.cs :
86 In .ctor(), WriteState should be succeeded from output XmlWriter.
87 WriteNamespaceDecl() now drops declaration identical to existing one.
88 Removed obsolete htmlEmulation.
89 * XslOutput.cs : Added CDataSectionElements support.
90 * XslStylesheet.cs : Added BaseUri, StyleDocument and PrefixInEffect().
91 * XslTransformProcessor.cs :
92 Added Output and CurrentOutputUri. TryStylesheetNamespaceOutput()
93 now considers xsl:exclude-element-prefixes on literal element.
94 Added PushCDataState() and PopCDataState().
95 * XsltCompiledContext.cs : When base uri of document() target is empty,
96 then it should use stylesheet's BaseURI, not that of current document.
98 2003-11-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
100 * Compiler.cs : Modified decimal-format comparison code.
103 GenericOutputter.cs : Added WriteState. Now WriteStartDocument() will
104 be called only when required.
105 * HtmlEmitter.cs : Improved indentation stuff.
106 * XslDecimalFormat.cs : Added incomplete implementation of
107 CheckSameAs() and FormatNumber().
109 XslTransformProcessor.cs : Changed XslStylesheet.StylesheetNamespaces
110 from StringDictionary to ArrayList of QName (to keep order).
112 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
114 * XsltCompiledContext.cs : XsltGenerateId.Evaluate() should consider
115 node type (i.e. attribute and namespace). Removed extraneous Clone().
116 Fixed XsltKey.Evaluate() to use MoveToNextAttribute to iterate attrs.
118 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
120 * Compiler.cs : Changed Keys from ArrayList to Hashtable.
121 XslStylesheet.cs : Added Keys support here.
122 * XslTransformProcessor.cs : Should call SetContext() to expressions
123 before evaluating current nodes.
124 * XsltCompiledContext.cs : 1) XsltDocument.GetDocument() should use
125 xsltContext. 2) XsltKey exposes KeyName, Field and NamespaceManager
126 for KeyPattern. It now uses CompiledStyle.FindKeys().
128 2003-11-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
130 * GenericOutputter.cs : Added HTML output support. Closer xmlns handling
131 to Xalan tests and MS.NET implementation (only for test convenience).
132 * XslOutput.cs : Indent holds string rathen than bool. Its default value
133 varies in the context. When method="html", then default is "yes".
134 * XslTransformProcessor.cs : Extension element prefixes should not
135 be written as stylesheet namespaces.
136 * XsltCompiledContext.cs : Return type of generate-id() is string.
137 Implemented unparsed-entity-uri().
139 2003-11-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
141 * Compiler.cs : More complete attribute set gathering.
142 GetNamespacesToCopy() should only return Local namespaces.
143 * GenericOutputter.cs : Added support for indentation.
144 Added easy hack for html output.
145 More correct Prefix handling (considers already defined ones).
146 Namespace emmission is moved to CheckState().
147 * Emitter.cs, XmlWriterEmitter.cs, GenericOutputter.cs, Outputter.cs :
148 Added WriteFullEndElement(). (i.e. IsEmptyElement support)
149 * GenericOutputter.cs, Outputter.cs :
150 Added CanProcessAttributes property for
151 use-attribute-sets of xsl:copy.
152 * XslStylesheet.cs : Added support for stylesheet-defined xmlns decls.
153 Added support for exclude-result-prefixes.
154 * XslTransformProcessor.cs : Added support for stylesheet-defined xmlns.
156 2003-10-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
158 * Compiler.cs : It is not important, but attribute order became closer
159 to MS.NET and Xalan (assuming from OASIS tests).
161 2003-10-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
163 * GenericOutputter.cs : Attribute wasn't overwritten its properties
164 because Attribute is struct it was let to another local variable.
166 2003-09-28 Ben Maurer <bmaurer@users.sourceforge.net>
168 * GenericOutputter.cs: make html output a warning, because doing
169 xml will be right most of the time.
171 2003-09-28 Ben Maurer <bmaurer@users.sourceforge.net>
173 * Debug.cs: comment out {Enter, Exit}Navigator. Haven't had bugs
174 here for a long time and it hurts thread safty and memory
177 2003-09-21 Ben Maurer <bmaurer@users.sourceforge.net>
179 * Compiler.cs: save the parser (will reduce memory allocation when
180 Jackson's jay patch is committed).
182 2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
184 * Attribute.cs: Change to struct. Remove QName class.
185 * GenericOutputter.cs: use an Attribute [] rather than an
186 ArrayList. Allows us not to allocate Attributes, which is great
187 for speed. Roll our own allocation.
189 2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
191 * Compiler.cs: add GetNsm to main class as well.
193 2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
195 * Compiler.cs (ParseAvtAttribute): Get the attribue using our
196 internal version so we get null if the attr doesnt exist.
198 2003-09-17 Ben Maurer <bmaurer@users.sourceforge.net>
200 * Compiler.cs (IStaticXsltContext.TryGetVariable): handle the case
201 where curVarScope == null
203 2003-09-16 Ben Maurer <bmaurer@users.sourceforge.net>
206 - Better handling of empty attributes (vs not being specified)
207 - Bug in handling #default
209 2003-09-15 Ben Maurer <bmaurer@users.sourceforge.net>
211 * Compiler.cs: Off by one when parsing localname of QName
212 * XslAttributeSet.cs: must evaluate used attr sets *BEFORE*
213 children (so that they get overriden)
215 2003-09-15 Ben Maurer <bmaurer@users.sourceforge.net>
217 * GenericOutputter.cs: Output attributes in order recieved; not
218 required by spec, but useful for running test cases.
220 2003-09-14 Oleg Tkachenko <oleg@tkachenko.com>
222 * GenericOutputter.cs - fix bug with outputting state.
223 * Emitter.cs, TextEmitter.cs, XmlWriterEmitter.cs, Outputter.cs,
224 * TextOutputter.cs - get rid of WriteStartAttribute/WriteEndAttribute.
226 2003-09-13 Ben Maurer <bmaurer@users.sourceforge.net>
228 * Compiler.cs, XslKey.cs, XslTransformProcessor.cs: dont clone
229 exprs on use, pass to nav.
231 2003-09-13 Ben Maurer <bmaurer@users.sourceforge.net>
233 * Compiler.cs: pass satic context to Pattern ctor.
235 2003-08-30 Oleg Tkachenko <oleg@tkachenko.com>
238 GenericOutputter.cs - generic Outputter implementation,
239 Attribute.cs - represents outputted attribute,
240 Emitter.cs - abstract output emitter,
241 TextEmitter.cs - text emitter,
242 XmlWriterEmitter.cs - emitter to XmlWriter.
243 * Checking of duplicating attributes is done in GenericOutputter.
244 * Namespace outputting logic is implemented in GenericOutputter.
245 * Outputter.cs: Writing namespace declarations is delegated to
246 derived classes (GenericOutputter).
247 * XslOutput.cs: standalone flag is now 3-value enum (NONE, YES, NO).
249 2003-08-21 Ben Maurer <bmaurer@users.sourceforge.net>
251 * XslTransformProcessor.cs: evaluate variables at beginning
252 when / is current node.
254 2003-08-21 Ben Maurer <bmaurer@users.sourceforge.net>
256 * Compiler.cs, XsltCompiledContext.cs, XslTransformProcessorcs:
257 Fix up namespace handeling
259 2003-08-20 Ben Maurer <bmaurer@users.sourceforge.net>
261 * Compiler.cs, XslStylesheet.cs, XsltCompiledContext.cs: Stubs for
263 * XslDecimalFormat.cs: Stub for decimal-format.
265 2003-08-20 Ben Maurer <bmaurer@users.sourceforge.net>
267 * TextOutputter.cs: Add option to ignore element content (Oleg).
269 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
271 * Compiler.cs: Really give null for blank avt's
273 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
275 * Compiler.cs: Fixed lre/lre04.
277 2003-08-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
279 * Compiler.cs : Fixed XslNameUtil.FromString() so that unprefixed name
280 won't have default namespace. See http://www.w3.org/TR/xslt#qname
282 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
284 * XslTransformProcessor.cs: add support for resolving documents.
285 * XsltCompiledContext: add support for document () function.
287 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
289 * Outputter.cs, TextOutputter.cs, XmlOutputter.cs: Implement some
290 of the abstract methods in Outputter, making them call other
291 functions with default values, remove impl's in derived classes.
293 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
295 * Outputter.cs: s/Close/Done
296 * TextOutputter.cs, XmlOutputter.cs: Flush, don't close the backing.
297 * XslTransformProcessor.cs: Flush output when popping, pop at end.
299 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
301 * Outputter.cs: Add support for namespaces.
303 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
305 * Compiler.cs, XslOutput.cs, XslStylesheet.cs,
306 XslTransformProcessor.cs: move output logic from XslStylesheet to
309 2003-08-18 Ben Maurer <bmaurer@users.sourceforge.net>
311 * XslOutput.cs: add support for encoding.
313 2003-08-18 Ben Maurer <bmaurer@users.sourceforge.net>
315 * *.cs: Support for xsl:output. (Oleg)
317 2003-08-17 Ben Maurer <bmaurer@users.sourceforge.net>
319 * Compiler.cs: handle extension and excluded namespaces.
321 2003-08-17 Ben Maurer <bmaurer@users.sourceforge.net>
323 * XsltCompiledContext.cs, Compiler.cs: copy the XPathNavigator
324 from the stylesheet for correct namespace resolution.
326 2003-08-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
328 * Compiler.cs : 1) Changed public .ctor() to receive Evidence argument
329 introduced in .NET 1.1. 2) XmlResolver object is required for 'res'.
331 2003-08-07 Ben Maurer <bmaurer@users.sourceforge.net>
333 * XslTransformProcessor.cs: Add a table to detect when an object
335 * XslAttributeSet.cs: Use the above table. Dont throw nullref
336 exception when no use-attribute-sets are specified.
338 2003-08-04 Ben Maurer <bmaurer@users.sourceforge.net>
340 * Compiler.cs: Add support for boolean attributes (yes/no).
342 2003-08-04 Ben Maurer <bmaurer@users.sourceforge.net>
344 * Compiler.cs: Add method LocalNameOf, to get the local name of a
346 * XslTransformProcessor.cs: Support for setting the XmlResolver.
348 2003-08-01 Ben Maurer <bmaurer@users.sourceforge.net>
350 * Compiler.cs, XslAttributeSet.cs: Handle attribute set merging
352 2003-08-01 Ben Maurer <bmaurer@users.sourceforge.net>
354 * XslTransformProcessor.cs: Add EvaluateNumber method.
356 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
358 * XsltCompiledContext.cs: Implement more functions.
360 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
362 * Compiler.cs: Add support for key, utility function to parse
363 QName's from the XsltContext. Store keys in the CompiledStyle, not
365 * XslKey.cs: Real implementation
366 * XslStylesheet.cs: Move the keys to CompiledStyle.
367 * XsltCompiledContext.cs: Implement the key function
369 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
371 * XsltCompiledContext.cs: Hmm, maybe I should actually *enable*
372 the functions ;-). Also wrote current ().
374 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
376 * XsltCompiledContext.cs: Remove excess conversion stuff. It is
377 done in XPath. Add stubs for XSLT functions.
379 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
381 * Compiler.cs: To resolve a variable you now need to pass the
382 processor, so that it can be passed to IsEvaluated. A local will
383 only be resolved if it has already been evaluated.
384 * XsltCompiledContext.cs: Pass along the processor.
386 2003-07-30 Ben Maurer <bmaurer@users.sourceforge.net>
388 * Compiler.cs, XslTemplate.cs, XslTransformProcessor.cs: Store
389 variable values in the XslTransformProcessor.
390 * XsltCompiledContext.cs: If the scope is null, don't look there!
391 * Debug.cs: New method Assert
393 2003-07-30 Ben Maurer <bmaurer@users.sourceforge.net>
395 * Compiler.cs, XsltCompiledContext.cs: Remove verbose messages
396 * XslTransformProcessor.cs: Use strongtyped evaluation, using new
397 internal methods in XPathNavigator. Remove verbose debugging messages.
399 2003-07-29 Ben Maurer <bmaurer@users.sourceforge.net>