XmlTextWriter formatting, indenting, xml declaration stuff.
[mono.git] / mcs / class / System.XML / System.Xml / ChangeLog
1 2002-03-23  Kral Ferch <kral_ferch@hotmail.com>
2
3         * XmlNodeListChildren.cs: made class internal
4         instead of public.  Shouldn't be visible outside
5         of System.Xml.
6         
7         * XmlTextWriter.cs: Implementations for Formatting,
8         IndentChar, Indenting, QuoteChar, WriteStartDocument(standalone).
9         Suppresses encoding on xml declaration if null stream passed in.
10         Formats output including suppressing indentation for elements in
11         mixed content mode.
12         
13         * XmlTextWriterOpenElement.cs: Initial checkin.
14         XmlTextWriter uses stack of these objects to track
15         state.
16         
17 2002-03-22  Mike Kestner  <mkestner@speakeasy.net>
18
19         * XmlElement.cs: impl HasAttribute(string name).
20
21 2002-03-22  Duncan Mak  <duncan@ximian.com>
22
23         * XmlElement.cs: Reformatted.
24         (CloneNode) Corrected.
25
26         * XmlDocument.cs (CreateWhitespace):
27         (CreateSignificantWhitespace): Implemented.
28
29         * XmlAttribute.cs (CloneNode): Changed the child's CloneNode to
30         true, because Attributes have ChildNodes.
31
32 2002-03-21  Kral Ferch <kral_ferch@hotmail.com>
33
34         * XmlTextWriter.cs: WriteStartDocument tracks state, writes out
35         xml declaration along with encoding.  WriteEndElement throws
36         exception if no WriteStartElement exists.
37
38 2002-03-20  Duncan Mak  <duncan@ximian.com>
39
40         * XmlEntityReference.cs (CloneNode): Implemented.
41
42         * XmlException.cs (Message): Implemented. We need to cache the
43         message string because SystemException doesn't expose 'message'
44         from Exception.
45
46         * XmlText.cs (Value): Added in the missing Value property.
47
48 2002-03-20  Duncan Mak  <duncan@ximian.com>     
49
50         * XmlAttribute.cs (CloneNode): Implemented.
51
52         * XmlDocumentFragment.cs (CloneNode): Implemented.
53
54         * XmlElement.cs (CloneNode): Implemented.
55
56 2002-03-19  Duncan Mak  <duncan@ximian.com>
57
58         * XmlNotation.cs: Added to CVS.
59
60         * XmlAttribute.cs (CloneNode): First crack at the CloneNode method.
61
62         * XmlCDataSection.cs (CloneNode): Implemented.
63
64         * XmlDocumentFragment.cs: Reformatted and added the missing properties
65         (InnerXml, OwnerDocument, ParentNode).
66         (CloneNode): Implemented.
67
68         * XmlSignificantWhitespace.cs (CloneNode): Implemented.
69         (Value) Implemented the 'get' property.
70
71         * XmlWhitespace.cs (Module): implemented.
72
73 2002-03-19  Jason Diamond <jason@injektilo.org>
74
75         * XmlDocument.cs: Fixed typo in Load that was duplicating the LocalName
76         in the prefix.
77
78 2002-03-18  Jason Diamond <jason@injektilo.org>
79
80         * XmlTextReader.cs: Don't restore properties after reading last
81         attribute on an element.
82
83         * XmlDocument.cs: Move back to element after reading attributes
84         so that IsEmptyElement test succeeds.
85
86 2002-03-18  Kral Ferch <kral_ferch@hotmail.com>
87
88         * XmlNamespaceManager.cs: Implemented LookupPrefix.
89         
90         * XmlTextWriter.cs: Implemented namespace and prefix support.
91
92 2002-03-18  Kral Ferch <kral_ferch@hotmail.com>
93
94         * XmlTextReader.cs: Restores properties after
95         reading last attribute on an element.
96         
97         * XmlNode.cs: AppendChild sets the parent
98         on the child.
99
100 2002-03-17  Kral Ferch  <kral_ferch@hotmail.com>
101
102         * XmlCDataSection.cs: Formatting, Implementation for WriteTo.
103
104         * XmlComment.cs: Implementations for WriteTo and WriteContentTo.
105         
106         * XmlElement.cs: Fixed bug in WriteTo.
107         
108         * XmlProcessingInstruction.cs: Formatting.
109         
110         * XmlTextWriter.cs: Implementations for Close, WriteCData, WriteComment,
111         fixes for WriteEndElement, WriteProcessingInstruction.
112
113 2002-03-17  Kral Ferch  <kral_ferch@hotmail.com>
114
115         * XmlDocument.cs: Implementations for WriteTo() and WriteContentTo(),
116         had Load() add PIs to the document, moved onXXX methods to alphabetical
117         order in the file.
118         
119         * XmlElement.cs: Implementations for WriteTo() and WriteContentTo().
120         
121         * XmlNode.cs: Implementations for InnerXml Get and OuterXml.
122         
123         * XmlProcessingInstruction.cs: Implementations for WriteTo() and
124         WriteContentTo().
125         
126         * XmlTextWriter.cs: Implementations for WriteEndElement,
127         WriteProcessingInstruction, WriteStartElement, and WriteString.
128         
129         * XmlWriter.cs: Implemented WriteStartElement() methods.
130
131 2002-03-15  Duncan Mak  <duncan@ximian.com>
132
133         * XmlEntity.cs: Added to CVS. Need to implement BaseURI and
134         InnerText once I know what they do.
135
136         * XmlDocumentType.cs (XmlDocumentType): Fix the constructor now
137         that we can properly chain constructors.
138         (CloneNode): implemented.
139         (WriteContentTo): Removed MonoTODO attribute as this method has no
140         effect in this class.
141
142         * XmlProcessingInstruction.cs (Value): Added the missing Set
143         block.
144         (InnerText): Added in, but not implemented.
145
146 2002-03-14  Kral Ferch  <kral_ferch@hotmail.com>
147
148         * XmlTextWriter.cs: implemented constructors and 
149         WriteCData and WriteComment.
150
151 2002-03-14  Duncan Mak  <duncan@ximian.com>
152
153         * XmlDocument.cs: Moved the NodeChanged EventHandler to its own
154         file, and updated the callbacks to reflect the change.
155         (XmlDocument): Added the NameTable constructor.
156         (NameTable): Also the NameTable property.
157
158         * XmlNodeChangedEventHandler.cs: Added, replacing the version that
159         was in XmlDocument.cs. It has two arguments now (object,
160         EventArgs) , instead of one (object).
161
162 2002-03-14  Kral Ferch  <kral_ferch@hotmail.com>
163
164         * XmlWriter.cs: Formatting.
165         
166         * XmlTextWriter.cs: Initial checkin.
167         
168 2002-03-14  Duncan Mak  <duncan@ximian.com>
169
170         * Validation.cs: Removed, replaced by ValidationType.cs.
171
172         * ValidationType.cs: Added.
173
174 2002-03-13  Duncan Mak  <duncan@ximian.com>
175
176         * XmlException.cs: Made it [Serializable], implemented good ol'
177         GetObjectData, and the serialization constructor.
178
179         * XmlNamedNodeMap.cs (SetNamedItem): Check for the Name property.
180         (SetNamedItem): Reverted (added back in) the patch with the
181         ReadOnly checks. "Don't doubt yourself, my son... you were right!"
182
183         * XmlNamedNodeMap.cs (GetEnumerator): piggyback on the ArrayList implementation.
184         (GetNamedItem (string, string)): implemented.
185         (RemoveNamedItem): implemented.
186         (SetNamedItem): implemented.
187
188 2002-03-12  Kral Ferch  <kral_ferch@hotmail.com>
189
190         * XmlAttribute.cs: Moved a method from amongst properties down to
191         it's alphabetical position in the methods section.
192         
193         * XmlNode.cs: Passes in 'this' to XmlNodeList constructor instead of
194         last linked child.  Set XmlNode base class to return false for IsReadOnly().
195         Implemented GetEnumerator() and RemoveChild().
196         
197         * XmlNodeListChildren.cs: Now stores the parent instead of the last child.
198         This is to support the behavior that the Enumerator doesn't become invalid
199         when changes to the children occur.  Flushed out rest of implementation for
200         MoveNext, Current, and Reset.
201
202 2002-03-12  Duncan Mak  <duncan@ximian.com>
203
204         * XmlCharacterData.cs: Reformatted the properties for better readability.
205
206         * XmlLinkedNode.cs: Removed the awful boxy comments.
207
208         * XmlNamedNodeMap.cs (Count):
209         (Item): Implemented. Tests will be coming.
210
211         * XmlEntityReference.cs: 
212         * XmlSignificantWhitespace.cs: Implemented these classes except for
213         the Clone, WriteContentTo and WriteTo methods. Will have to
214         investigate into these later.
215
216 2002-03-11  Duncan Mak  <duncan@ximian.com>
217
218         * IHasXmlNode.cs: Added to CVS.
219
220 2002-03-08  Jason Diamond <jason@injektilo.org>
221
222         * XmlParserContext.cs: Added missing constructors and missing Encoding 
223         property.
224
225         * XmlTextReader.cs: Start using the XmlParserContext class.
226
227 2002-03-08  Jason Diamond <jason@injektilo.org>
228
229         * XmlTextReader.cs: Implemented MoveToElement and MoveToFirstAttribute.
230
231 2002-03-08  Mike Kestner  <mkestner@speakeasy.net>
232
233         * XmlNode.cs (Item): Implemented both indexers.
234
235 2002-03-08  Jason Diamond  <jason@injektilo.org>
236
237         * DomEncodingType.cs, TreePosition.cs, XPathNodeType.cs, XmlDataType.cs,
238         XmlExceptionCode.cs, XmlSortOrder.cs, XmlUtil.cs: Removed files.
239
240 2002-03-08  Jason Diamond  <jason@injektilo.org>
241
242         * XmlAttribute.cs: Attribute nodes are supposed to store their values
243         as child nodes so updated to reflect that.
244
245         * XmlDocument.cs, XmlElement.cs, XmlNode.cs: Moved code that was
246         duplicated in XmlDocument and XmlElement into XmlNode so that it
247         wouldn't have to be duplicated in XmlAttribute, too.
248
249 2002-03-08  Kral Ferch <kral_ferch@hotmail.com>
250
251         * XmlNodeList.cs, XmlDocument.cs, XmlLinkedNode.cs,
252         XmlNode.cs: Formatting.
253         
254         * XmlNodeListChildren.cs: Implementation of XmlNodeList
255         for XmlNode.ChildNodes property.
256         
257         * XmlNodeListAsArrayList.cs: Removed file.  Using different
258         data structure (circular list) in XmlNode so this file
259         is no longer valid.
260         
261         * XmlDocument.cs, XmlElement.cs: New ChildNodes tests found
262         bug in setter property of LastLinkedChild so fixed it.
263         
264 2002-03-06  Jason Diamond  <jason@injektilo.org>
265
266         * XmlInputSource.cs, XmlNames_1_0.cs, XmlParse.cs: Removed files.
267         We already have a parser in XmlTextReader.
268
269         * XmlException.cs: Removed constructor accepting XmlInputSource.
270
271 2002-03-06  Kral Ferch <kral_ferch@hotmail.com>
272
273         * XmlNode.cs: Rewrote this class from scratch with
274         MonoToDo attribs and NotImplementedExceptions.  Now defines an
275         internal LastLinkedNode property to aid the new implementation.
276         XmlNodes only have ref to owner doc and parent nodes now.
277         
278         * XmlLinkedNode.cs: Added NextLinkedSibling internal property
279         and ref to next sibling to support walking our circular child
280         node list.
281         
282         * XmlDocument.cs: Added ref to last child node and overrides
283         XmlNode's internal LastLinkedChild property to support walking
284         our circular child node list.
285         
286 2002-03-02  Kral Ferch <kral_ferch@hotmail.com>
287
288         * XmlProcessingInstructions.cs: Class was empty.  Implemented
289         constructor, properties, and CloneNode() method.  Put in
290         MonoToDo attrib for remaining methods.
291
292         * XmlComment.cs: Reformatted and put in MonoToDo attribs.
293         Got rid of helper methods and fields since they were no
294         longer needed.
295
296         * XmlLinkedNode.cs: Reformatted and put in MonoToDo attribs.
297
298         * XmlDocument.cs: Added code to Load(XmlReader) to create XmlComment,
299         XmlCDataSection, and XmlProcessingInstruction nodes. Implemented
300         Createxxx() methods for those three node types.
301
302 2002-03-02  Jason Diamond <jason@injektilo.org>
303
304         * XmlDocument.cs: Implemented the remaining CreateElement and
305         CreateAttribute methods.
306
307         * XmlAttribute.cs: Re-implemented.
308
309         * XmlElement.cs: Set owner element on attributes. Reformatted.
310
311 2002-03-02  Jason Diamond <jason@injektilo.org>
312
313         * XmlTextReader.cs: Implemented MoveToNextAttribute().
314
315         * XmlDocument.cs: Reformatted. Adding missing methods and MonoTODO
316         attributes. Create attribute nodes while loading. Implemented
317         Load(string) and CreateTextNode().
318
319         * XmlCharacterData.cs, XmlText.cs: Re-implemented.
320
321         * XmlCDataSection.cs, XmlComment.cs: Call correct constructor in 
322         XmlCharacterData.
323
324         * XmlNamedNodeMap.cs, XmlAttributeCollection.cs: Stubbed out.
325
326 2002-03-02  Mike Kestner <mkestner@speakeasy.net>
327
328         * XmlAttribute.cs : Using fix.
329         * XmlDocument.cs (CreateAttribute(String)): Implement.
330
331 2002-03-02  Jason Diamond <jason@injektilo.org>
332
333         * XmlNamespaceManager.cs: Atomize prefixes and namespaces strings in 
334         the name table.
335
336 2002-02-28  Jason Diamond <jason@injektilo.org>
337
338         * XmlDocument.cs, XmlNode.cs: Initial implementation of LoadXml 
339         courtesy of Kral Ferch <kral.ferch@hotmail.com>.
340
341 2002-02-28  Jason Diamond <jason@injektilo.org>
342
343         * XmlException.cs, XmlReader.cs, XmlTextReader.cs: Reformatted, 
344         added missing members and MonoTODO attributes.
345         
346         * XmlTextReader.cs: Throw XmlException instead of System.Exception.
347
348 2002-02-27  Jason Diamond <jason@injektilo.org>
349
350         * XmlElement.cs: Reformatted, added missing members and MonoTODO 
351         attributes.
352
353 2002-02-26  Duncan Mak  <duncan@ximian.com>
354
355         * XmlCDataSection.cs: Initial implementation.
356
357         * NameTable.cs: Fixed the whole thing. Wrote a NUnit test to test
358         it out. This should (hopefully) be correct.
359
360 2002-02-26  Jason Diamond <jason@injektilo.org>
361
362         * XmlTextReader.cs: Apparently Microsoft's implementation treats
363         namespace declarations as attributes so we do now, too.
364
365         * XmlNamespaceManager.cs: HasNamespace fixed so that it only
366         checks the current scope.
367
368 2002-02-26  Duncan Mak  <duncan@ximian.com>
369
370         * XmlDocumentType.cs: Added a few hacks here and there to
371         temporarily fix the "I broke the build issue".
372
373 2002-02-25  Jason Diamond <jason@injektilo.org>
374
375         * XmlDocument.cs, XmlElement.cs, XmlNode.xs, XmlNodeList.cs,
376         XmlNodeListAsArrayList.cs: Multiple fixes necessary to get
377         simple test to pass. The existing code is really shitty so I'll
378         probably start writing tests and refactoring before much else 
379         can get done.
380
381 2002-02-25  Duncan Mak  <duncan@ximian.com>
382
383         * NameTable.cs: Implemented.
384
385         * XmlDeclaration.cs: It should inherit from XmlLinkedNode, not XmlNode.
386
387 2002-02-24  Duncan Mak  <duncan@ximian.com>
388         
389         * XmlNodeOrder.cs: Added to CVS.
390
391         * XmlQualifiedName.cs: Fixed a warning from Equals ().
392
393         * XmlTokenizedType.cs: Added to CVS.
394
395         * XmlUrlResolver.cs: Added to CVS with one TODO task.
396
397 2002-02-23  Duncan Mak  <duncan@ximian.com>
398
399         * XmlQualifiedName.cs: Fixed ToString () and added the operators
400         (== and !=).
401
402 2002-02-23  Jason Diamond <jason@injektilo.org>
403
404         * XmlTextReader.cs: Added support for qualified attributes.
405
406 2002-02-23  Jason Diamond <jason@injektilo.org>
407
408         * XmlNamespaceManager.cs: Initial implementation.
409         
410         * XmlTextReader.cs: Added support for NamespaceURI property on
411         elements.
412
413 2002-02-23  Nick Drochak <ndrochak@gol.com>
414
415         * ChangeLog: Add the change log to this directory
416
417         * XmlQualifiedName.cs: Fixed compile errors so it would build. Still has
418         MonoTODO's
419