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