2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
[mono.git] / mcs / class / System.XML / Mono.Xml.Xsl / ChangeLog
1 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
2
3         * Compiler.cs : Changed Keys from ArrayList to Hashtable.
4           XslStylesheet.cs : Added Keys support here.
5         * XslTransformProcessor.cs : Should call SetContext() to expressions
6           before evaluating current nodes.
7         * XsltCompiledContext.cs : 1) XsltDocument.GetDocument() should use
8           xsltContext. 2) XsltKey exposes KeyName, Field and NamespaceManager
9           for KeyPattern. It now uses CompiledStyle.FindKeys().
10
11 2003-11-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
12
13         * GenericOutputter.cs : Added HTML output support. Closer xmlns handling
14           to Xalan tests and MS.NET implementation (only for test convenience).
15         * XslOutput.cs : Indent holds string rathen than bool. Its default value
16           varies in the context. When method="html", then default is "yes".
17         * XslTransformProcessor.cs : Extension element prefixes should not 
18           be written as stylesheet namespaces.
19         * XsltCompiledContext.cs : Return type of generate-id() is string.
20           Implemented unparsed-entity-uri().
21
22 2003-11-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
23
24         * Compiler.cs : More complete attribute set gathering.
25           GetNamespacesToCopy() should only return Local namespaces.
26         * GenericOutputter.cs : Added support for indentation.
27           Added easy hack for html output.
28           More correct Prefix handling (considers already defined ones).
29           Namespace emmission is moved to CheckState().
30         * Emitter.cs, XmlWriterEmitter.cs, GenericOutputter.cs, Outputter.cs :
31           Added WriteFullEndElement(). (i.e. IsEmptyElement support)
32         * GenericOutputter.cs, Outputter.cs :
33           Added CanProcessAttributes property for 
34           use-attribute-sets of xsl:copy.
35         * XslStylesheet.cs : Added support for stylesheet-defined xmlns decls.
36           Added support for exclude-result-prefixes.
37         * XslTransformProcessor.cs : Added support for stylesheet-defined xmlns.
38
39 2003-10-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
40
41         * Compiler.cs : It is not important, but attribute order became closer
42           to MS.NET and Xalan (assuming from OASIS tests).
43
44 2003-10-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
45
46         * GenericOutputter.cs : Attribute wasn't overwritten its properties
47           because Attribute is struct it was let to another local variable.
48
49 2003-09-28 Ben Maurer  <bmaurer@users.sourceforge.net>
50
51         * GenericOutputter.cs: make html output a warning, because doing
52         xml will be right most of the time.
53
54 2003-09-28 Ben Maurer  <bmaurer@users.sourceforge.net>
55
56         * Debug.cs: comment out {Enter, Exit}Navigator. Haven't had bugs
57         here for a long time and it hurts thread safty and memory
58         allocation.
59
60 2003-09-21 Ben Maurer  <bmaurer@users.sourceforge.net>
61
62         * Compiler.cs: save the parser (will reduce memory allocation when
63         Jackson's jay patch is committed).
64
65 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
66
67         * Attribute.cs: Change to struct. Remove QName class.
68         * GenericOutputter.cs: use an Attribute [] rather than an
69         ArrayList. Allows us not to allocate Attributes, which is great
70         for speed. Roll our own allocation.
71
72 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
73
74         * Compiler.cs: add GetNsm to main class as well.
75
76 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
77
78         * Compiler.cs (ParseAvtAttribute): Get the attribue using our
79         internal version so we get null if the attr doesnt exist.
80
81 2003-09-17 Ben Maurer  <bmaurer@users.sourceforge.net>
82
83         * Compiler.cs (IStaticXsltContext.TryGetVariable): handle the case
84         where curVarScope == null
85
86 2003-09-16 Ben Maurer  <bmaurer@users.sourceforge.net>
87
88         * Compiler.cs: 
89         - Better handling of empty attributes (vs not being specified)
90         - Bug in handling #default
91         
92 2003-09-15 Ben Maurer  <bmaurer@users.sourceforge.net>
93
94         * Compiler.cs: Off by one when parsing localname of QName 
95         * XslAttributeSet.cs: must evaluate used attr sets *BEFORE*
96         children (so that they get overriden)
97
98 2003-09-15 Ben Maurer  <bmaurer@users.sourceforge.net>
99
100         * GenericOutputter.cs: Output attributes in order recieved; not
101         required by spec, but useful for running test cases.
102
103 2003-09-14 Oleg Tkachenko <oleg@tkachenko.com>
104
105         * GenericOutputter.cs - fix bug with outputting state.
106         * Emitter.cs, TextEmitter.cs, XmlWriterEmitter.cs, Outputter.cs, 
107         * TextOutputter.cs - get rid of WriteStartAttribute/WriteEndAttribute.  
108
109 2003-09-13 Ben Maurer  <bmaurer@users.sourceforge.net>
110
111         * Compiler.cs, XslKey.cs, XslTransformProcessor.cs: dont clone
112         exprs on use, pass to nav.
113
114 2003-09-13 Ben Maurer  <bmaurer@users.sourceforge.net>
115
116         * Compiler.cs: pass satic context to Pattern ctor.
117
118 2003-08-30 Oleg Tkachenko <oleg@tkachenko.com>
119
120         * New files: 
121         GenericOutputter.cs - generic Outputter implementation,
122         Attribute.cs - represents outputted attribute,
123         Emitter.cs - abstract output emitter,
124         TextEmitter.cs - text emitter,
125         XmlWriterEmitter.cs - emitter to XmlWriter.
126         * Checking of duplicating attributes is done in GenericOutputter.
127         * Namespace outputting logic is implemented in GenericOutputter.
128         * Outputter.cs: Writing namespace declarations is delegated to 
129         derived classes (GenericOutputter).
130         * XslOutput.cs: standalone flag is now 3-value enum (NONE, YES, NO).                    
131          
132 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
133
134         * XslTransformProcessor.cs: evaluate variables at beginning
135         when / is current node.
136
137 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
138
139         * Compiler.cs, XsltCompiledContext.cs, XslTransformProcessorcs:
140         Fix up namespace handeling
141
142 2003-08-20 Ben Maurer  <bmaurer@users.sourceforge.net>
143
144         * Compiler.cs, XslStylesheet.cs, XsltCompiledContext.cs: Stubs for
145         format-number.
146         * XslDecimalFormat.cs: Stub for decimal-format.
147
148 2003-08-20 Ben Maurer  <bmaurer@users.sourceforge.net>
149
150         * TextOutputter.cs: Add option to ignore element content (Oleg).
151
152 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
153
154         * Compiler.cs: Really give null for blank avt's
155
156 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
157
158         * Compiler.cs: Fixed lre/lre04.
159
160 2003-08-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
161
162         * Compiler.cs : Fixed XslNameUtil.FromString() so that unprefixed name
163           won't have default namespace. See http://www.w3.org/TR/xslt#qname
164
165 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
166
167         * XslTransformProcessor.cs: add support for resolving documents.
168         * XsltCompiledContext: add support for document () function.
169
170 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
171
172         * Outputter.cs, TextOutputter.cs, XmlOutputter.cs: Implement some
173         of the abstract methods in Outputter, making them call other
174         functions with default values, remove impl's in derived classes.
175
176 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
177
178         * Outputter.cs: s/Close/Done
179         * TextOutputter.cs, XmlOutputter.cs: Flush, don't close the backing.
180         * XslTransformProcessor.cs: Flush output when popping, pop at end.
181
182 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
183
184         * Outputter.cs: Add support for namespaces.
185
186 2003-08-19 Ben Maurer  <bmaurer@users.sourceforge.net>
187
188         * Compiler.cs, XslOutput.cs, XslStylesheet.cs,
189         XslTransformProcessor.cs: move output logic from XslStylesheet to
190         Compiler.
191
192 2003-08-18 Ben Maurer  <bmaurer@users.sourceforge.net>
193
194         * XslOutput.cs: add support for encoding.
195
196 2003-08-18 Ben Maurer  <bmaurer@users.sourceforge.net>
197
198         * *.cs: Support for xsl:output. (Oleg)
199
200 2003-08-17 Ben Maurer  <bmaurer@users.sourceforge.net>
201
202         * Compiler.cs: handle extension and excluded namespaces.
203
204 2003-08-17 Ben Maurer  <bmaurer@users.sourceforge.net>
205
206         * XsltCompiledContext.cs, Compiler.cs: copy the XPathNavigator
207         from the stylesheet for correct namespace resolution.
208
209 2003-08-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
210
211         * Compiler.cs : 1) Changed public .ctor() to receive Evidence argument 
212           introduced in .NET 1.1. 2) XmlResolver object is required for 'res'.
213
214 2003-08-07 Ben Maurer  <bmaurer@users.sourceforge.net>
215
216         * XslTransformProcessor.cs: Add a table to detect when an object
217         is busy.
218         * XslAttributeSet.cs: Use the above table. Dont throw nullref
219         exception when no use-attribute-sets are specified.
220
221 2003-08-04 Ben Maurer  <bmaurer@users.sourceforge.net>
222
223         * Compiler.cs: Add support for boolean attributes (yes/no).
224
225 2003-08-04 Ben Maurer  <bmaurer@users.sourceforge.net>
226
227         * Compiler.cs: Add method LocalNameOf, to get the local name of a
228         string.
229         * XslTransformProcessor.cs: Support for setting the XmlResolver.
230
231 2003-08-01 Ben Maurer  <bmaurer@users.sourceforge.net>
232
233         * Compiler.cs, XslAttributeSet.cs: Handle attribute set merging
234
235 2003-08-01 Ben Maurer  <bmaurer@users.sourceforge.net>
236
237         * XslTransformProcessor.cs: Add EvaluateNumber method.
238
239 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
240
241         * XsltCompiledContext.cs: Implement more functions.
242
243 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
244
245         * Compiler.cs: Add support for key, utility function to parse
246         QName's from the XsltContext. Store keys in the CompiledStyle, not
247         in the Stylesheet.
248         * XslKey.cs: Real implementation
249         * XslStylesheet.cs: Move the keys to CompiledStyle.
250         * XsltCompiledContext.cs: Implement the key function
251
252 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
253
254         * XsltCompiledContext.cs: Hmm, maybe I should actually *enable*
255         the functions ;-). Also wrote current ().
256
257 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
258
259         * XsltCompiledContext.cs: Remove excess conversion stuff. It is
260         done in XPath. Add stubs for XSLT functions.
261
262 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
263
264         * Compiler.cs: To resolve a variable you now need to pass the
265         processor, so that it can be passed to IsEvaluated. A local will
266         only be resolved if it has already been evaluated.
267         * XsltCompiledContext.cs: Pass along the processor.
268         
269 2003-07-30 Ben Maurer  <bmaurer@users.sourceforge.net>
270
271         * Compiler.cs, XslTemplate.cs, XslTransformProcessor.cs: Store
272         variable values in the XslTransformProcessor.
273         * XsltCompiledContext.cs: If the scope is null, don't look there!
274         * Debug.cs: New method Assert
275
276 2003-07-30 Ben Maurer  <bmaurer@users.sourceforge.net>
277
278         * Compiler.cs, XsltCompiledContext.cs: Remove verbose messages
279         * XslTransformProcessor.cs: Use strongtyped evaluation, using new
280         internal methods in XPathNavigator. Remove verbose debugging messages.
281
282 2003-07-29 Ben Maurer  <bmaurer@users.sourceforge.net>
283
284         * Initial Checkin
285