37258a739ecec4c40e335a04c0bccdfb165681a0
[mono.git] / mcs / class / System.XML / System.Xml / ChangeLog
1 2002-11-14  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
2
3         * XmlDocument.cs : unified all constructors, added ConventionalParser,
4                 implemented CloneNode() and CreateEntityReference(),
5         * XmlEntityReference.cs : set_Value, WriteContentTo, WriteTo
6                 set BaseURI to MonoTODO
7         * XmlNode.cs : implemented PrependChild, modified ConstructDOM,
8                 bugfix InsertAfter (incorrect prepending) and InsertBefore
9                 (more than one DocumentElements hadn't caused errors)
10         * XmlTextReader.cs : unified all constructors,
11                 added internal SetReaderContext(), SetReaderFragment()
12                 bugfix (syntax check of PUBLIC / getting internal subset)
13
14 2002-11-13  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
15
16         XmlAttribute.cs : set_InnerText, set_InnerXml, some check for set_Prefix
17         XmlAttributeCollection.cs : (indexer) this[localName, namespaceURI]
18         XmlCharacterData.cs : exchanged Data and Value
19                 (for processing events and inheritance)
20         XmlDocumentFragment.cs : set_InnerXml
21         XmlSignificantWhitespace.cs : set_Value
22         XmlTextReader.cs : ReadAttributeValue
23
24 2002-11-04  Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
25
26         XmlAttribute.cs: fixed missing internal 'OwnerElement''SetOwnerElement'
27
28 2002-11-03  Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
29
30         * XmlAttributeCollection.cs : checks owner element.
31                 implemented CopyTo, InsertAfter, InsertBefore, Prepend,
32                 Remove, RemoveAt, SetNamedItem.
33                 removed some logics that sets 'Parent' (that should be null)
34         * XmlDocument.cs : set_InnerXml, [PreserveWhitespace(incomplete)]
35         * XmlDocumentFragment.cs : get_InnerXml, WriteContentTo, WriteTo
36         * XmlElement.cs : implemented WriteTo, set_InnerText.
37                 Fixed WriteTo() to add xmlns:* attributes when
38                 writer.LookupPrefix() returned mismatching.
39         * XmlNamedNodeMap.cs : compare not only name but localname and nsuri.
40                 Removing different prefixes for the same uri now runs correct.
41                 added SetNamedItem(XmlNode node, int position_to_insert).
42         * XmlNode.cs : ConstructDOM (logically) creates XmlEntityReference,
43                 XmlWhitespace, and XmlSignificantWhitespace
44
45 2002-10-31  Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
46
47         * XmlDocument.cs : implemented CreateDocumentFragment()
48         * XmlElement.cs, XmlLinkedNode.cs :
49                 moved LastLinkedChild from XmlElement to XmlLinkedNode.
50         * XmlEntityReference.cs : must throw NotImplementedException.
51         * XmlNode.cs :
52               + implemented InsertBefore() and then implemented InsertAfter()
53                 and modified AppendChild() to call it.
54               + added logic to check ReadOnly, parent document equivalence,
55                 and inserting any 'content' before/after DocumentElement.
56               + implemented Clone() [it is equals to CloneNode() by MS doc.]
57               + added logic in RemoveChild() to check parent of oldChild.
58               + fixed ConstructNamespaceManager() to internal only.
59
60 2002-10-29  Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
61
62         * XmlAttribute.cs : add internal 'IsDefault' property
63                             (equals to !Specified)
64         * XmlImplementation.cs : added 'internalNameTable' property.
65         * XmlDocument.cs :
66             + now allows "" for 'standalone' in CreateXmlDeclaration.
67             + implemented 'Implementation' property and constructor with it.
68             + added logic for appending name table (but still no use)
69             + implemented property 'DocumentType'
70               (but without internalSubset parsing. wait for next update.)
71         * XmlNode.cs :
72             + modified AppendChild() and RemoveChild() to support fragment.
73             + modified AppendChild() to remove newChild from its parent
74               when newChild is already in the other place.
75             + modified RemoveChild() to set parentNode null.
76             + modified ConstructDOM() to create DocumentType,
77               and fixed access modifier ('internal protected' to 'internal')
78         * XmlLinkedNode.cs : fixed 'NextSibling' to return null
79                 when its parent is null.
80         * XmlDocumentFragment.cs : added internal override 'LastLinkedChild'
81                 property to enable AppendChild() for this class.
82         * XmlTextReader.cs : appended private publicId and systemId fields.
83
84 2002-10-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
85
86         * XmlTextReader.cs: make it work when the underlying Stream is not
87         'seekable'.
88
89 2002-10-26  Piers Haken <piersh@friskit.com>
90
91         * XmlNode.cs: add virtual property XPathNodeType
92         * XmlAttribute.cs:
93         * XmlComment.cs:
94         * XmlDocument.cs:
95         * XmlElement.cs::
96         * XmlProcessingInstruction.cs:
97         * XmlSignificantWhitespace.cs:
98         * XmlText.cs:
99         * XmlWhitespace.cs: implement XPathNodeType property
100         * XmlDocumentNavigator.cs: use XPathNodeType property instead of switch
101
102 2002-10-26  Piers Haken <piersh@friskit.com>
103
104         * XmlDocumentNavigator.cs: return invalid XPathNodeType (-1) for unknown node types.
105
106 2002-10-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
107
108         * XmlTextReader.cs: don't increment depth for entity references.
109
110 2002-10-22  Tim Haynes <thaynes@openlinksw.com>
111
112         * - Fixed the duplication of xmlns:xx = yy when serializing the
113         XML for serialization
114         
115         Fixed the unnecessary parsing/serializing when adding assemblies
116         for serialization 
117
118         Avoided setting the XmlNode.InnerXml property
119         (as it's not implemented) 
120
121         Fixed the usage/implementation of
122         XmlElement.GetElementsByTagName()
123         
124 2002-10-21  Duncan Mak  <duncan@ximian.com>
125
126         * XmlDocument.cs:
127         * XmlElement.cs:
128         * XmlNode.cs:
129         * XmlTextReader.cs: Implementation for XmlNode.InnerXml from
130         Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>.
131
132 2002-10-18  Duncan Mak  <duncan@ximian.com>
133
134         * XmlDocument.cs: Applied a patch by Atsushi Enomoto
135         <ginga@kit.hi-ho.ne.jp>.
136
137 2002-10-12  A.Enomoto <ginga@kit.hi-ho.ne.jp>
138
139         * XmlDocument.cs (ImportNode): Implemented
140
141 2002-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
142
143         * XmlDocument.cs: one more Load method implemented.
144         * XmlTextReader.cs: Depth now works.
145
146 2002-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
147
148         * XmlConvert.cs: IsInvalid is now internal.
149         * XmlNamespaceManager.cs: implemented RemoveNamespace
150         * XmlTextReader.cs: return BaseURI and Encoding from the parser.
151         * XmlTextWriter.cs: implemented WriteName and WriteNmToken.
152
153 2002-09-19  Matt Hunter <mahunter@tconl.com>
154
155         * XmlElement.cs: Implementing SetAttributeNode(localName,namespaceURI)
156         * XmlAttributeCollection.cs: Implemented Append (XmlAttribute) 
157           
158 2002-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
159
160         * XmlConvert.cs: finished implementation.
161         * XmlTextReader.cs: fixed #30239.
162         * XmlTextWriter.cs: fixed #30240.
163
164 2002-09-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
165
166         * XmlTextReader.cs: line and position begin with 1.
167
168 2002-09-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
169
170         * XmlException.cs: added a new internal constructor for IXmlLineInfo
171         and output line and position info in Message.
172
173         * XmlReader.cs: implemented missing bits.
174
175 2002-09-12      Piers Haken <piersh@friksit.com>
176
177         * XmlDocumentNavigator.cs: implement MoveToId()
178
179 2002-09-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
180
181         * XmlTextWriter.cs: fixed bug #29886.
182
183 2002-08-26  Ravi Pratap  <ravi@ximian.com>
184
185
186         * XmlAttribute.cs (InnerText): Implement getting this property.
187
188         * XmlNode.cs (InnerText): Ensure that we append only values of
189         text nodes.
190
191 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
192
193         * XmlWriter.cs: made ws and namespaceManager protected. mcs has a bug
194         that allowed compiling this.
195         [ FIXME: filed bug #29435. mcs should have failed on this ]
196
197 2002-08-25  Tim Coleman <tim@timcoleman.com>
198         * XmlNode.cs:
199                 Change CreateNavigator to not be virtual.
200         * XmlElement.cs:
201                 Add set_Prefix and InnerText accessors.
202         * XmlEntityReference.cs:
203                 Add set_Value accessor.
204         * XmlTextWriter.cs:
205                 Make objects which should be private private.
206         * XmlWriter.cs:
207                 Remove WriteStartElementInternal abstract definition.
208         * XmlValidatingReader.cs:
209                 New stubs added.
210
211 2002-08-22  Jason Diamond <jason@injektilo.org>
212
213         * XmlAttributeCollection.cs, XmlElement.cs: Implementation of RemoveAll
214         and RemoveAllAttributes courtesy of Matt Hunter <xrkune@tconl.com>.
215
216 2002-08-22  Jason Diamond <jason@injektilo.org>
217
218         * XmlElement.cs: Correction to previous GetElementsByTagName patch
219         courtesy of Matt Hunter <xrkune@tconl.com>.
220
221 2002-08-22  Jason Diamond <jason@injektilo.org>
222
223         * XmlDocument.cs, XmlElement.cs: Added implementation of namepsace
224         qualified GetElementsByTagName courtesy of Matt Hunter 
225         <xrkune@tconl.com>.
226
227 2002-08-19  Jason Diamond <jason@injektilo.org>
228
229         * XmlDocument.cs, XmlElement.cs: Added implementation of 
230         GetElementsByTagName courtesy of Matt Hunter <xrkune@tconl.com>.
231
232 2002-08-16  Jason Diamond <jason@injektilo.org>
233
234         * XmlElement.cs: Fixed writing out qualified elements courtesy of
235         Marcus Bürgel <marcus.buergel@gmx.de>.
236
237 2002-08-13  Tim Coleman <tim@timcoleman.com>
238         * XmlTextWriter.cs:
239                 Partial implementation of WriteQualifiedName ().
240
241 2002-08-07  Kral Ferch <kral_ferch@hotmail.com>
242         * XmlCharacterData.cs:  Implemented AppendData(), DeleteData(),
243                 InsertData(), and ReplaceData().  These methods fire the
244                 NodeChanging and NodeChanged events.
245                 
246         * XmlDocument.cs:  Fixed bugs in onNodeChanged() and onNodeChanging().
247         
248         * XmlNode.cs:  AppendChild() fires NodeInserting and NodeInserted events.
249                 RemoveAll() and RemoveChild() fire NodeRemoving and NodeRemoved events.
250         
251 2002-08-03  Tim Coleman <tim@timcoleman.com>
252         * XmlNamespaceManager.cs:
253                 .Net allows the empty namespace to be redefined
254                 at a later point, but the current implementation
255                 did not.  This fixes a hashtable conflict.
256
257 2002-07-26  Tim Coleman <tim@timcoleman.com>
258         * XmlTextWriter.cs:
259                 When given a textwriter, check to see if it has a
260                 null encoding. This was being done for other inputs
261                 than a textwriter.
262
263 Wed Jul 24 13:16:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
264
265         * XmlTextReader.cs: rough line/column support.
266
267 2002-07-23  Duncan Mak  <duncan@ximian.com>
268
269         * XmlConvert.cs: Implement the ToDateTime method. ToDateTime
270         (string, string []) is particularly strange.
271
272         * XmlException.cs: Remember to call the base serialization
273         constructor.
274
275         * XmlNodeReader.cs: Keep a new variable to store the Depth. 
276
277 2002-07-14  Jason Diamond  <jason@injektilo.org>
278
279         * XmlAttribute.cs: Removed ownerElement field since we can reuse 
280         parentNode field.
281
282         * XmlDocumentNavigator.cs: MoveToParent now moves to the OwnerElement
283         if the current node is an attribute.
284
285         * XmlElement.cs: SetAttributeNode now sets the new attribute's
286         owner element.
287
288 2002-07-12  Jason Diamond  <jason@injektilo.org>
289
290         * XmlDocument.cs: If null was passed in for prefix or namespaceURI when
291         creating an element, use String.Empty instead.
292
293 2002-07-12      Piers Haken <piersh@friksit.com>
294
295         * XmlAttributeCollection.cs: implement some ItemOf indexers
296         * XmlNamedNodeMap.cs: add internal 'Nodes' accessor for the nodeList field
297         * XmlNode.cs: SelectNodes: return empty XmlNodeList, not null
298
299 2002-07-06  Ajay kumar Dwivedi <adwiv@yahoo.com>
300
301
302 2002-10-26  Piers Haken <piersh@friskit.com>
303
304         * XmlDocumentNavigator.cs: return invalid XPathNodeType (-1) for unknown node types.
305
306 2002-10-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
307
308         * XmlTextReader.cs: don't increment depth for entity references.
309
310 2002-10-22  Tim Haynes <thaynes@openlinksw.com>
311
312         * - Fixed the duplication of xmlns:xx = yy when serializing the
313         XML for serialization
314         
315         Fixed the unnecessary parsing/serializing when adding assemblies
316         for serialization 
317
318         Avoided setting the XmlNode.InnerXml property
319         (as it's not implemented) 
320
321         Fixed the usage/implementation of
322         XmlElement.GetElementsByTagName()
323         
324 2002-10-21  Duncan Mak  <duncan@ximian.com>
325
326         * XmlDocument.cs:
327         * XmlElement.cs:
328         * XmlNode.cs:
329         * XmlTextReader.cs: Implementation for XmlNode.InnerXml from
330         Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>.
331
332 2002-10-18  Duncan Mak  <duncan@ximian.com>
333
334         * XmlDocument.cs: Applied a patch by Atsushi Enomoto
335         <ginga@kit.hi-ho.ne.jp>.
336
337 2002-10-12  A.Enomoto <ginga@kit.hi-ho.ne.jp>
338
339         * XmlDocument.cs (ImportNode): Implemented
340
341 2002-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
342
343         * XmlDocument.cs: one more Load method implemented.
344         * XmlTextReader.cs: Depth now works.
345
346 2002-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
347
348         * XmlConvert.cs: IsInvalid is now internal.
349         * XmlNamespaceManager.cs: implemented RemoveNamespace
350         * XmlTextReader.cs: return BaseURI and Encoding from the parser.
351         * XmlTextWriter.cs: implemented WriteName and WriteNmToken.
352
353 2002-09-19  Matt Hunter <mahunter@tconl.com>
354
355         * XmlElement.cs: Implementing SetAttributeNode(localName,namespaceURI)
356         * XmlAttributeCollection.cs: Implemented Append (XmlAttribute) 
357           
358 2002-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
359
360         * XmlConvert.cs: finished implementation.
361         * XmlTextReader.cs: fixed #30239.
362         * XmlTextWriter.cs: fixed #30240.
363
364 2002-09-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
365
366         * XmlTextReader.cs: line and position begin with 1.
367
368 2002-09-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
369
370         * XmlException.cs: added a new internal constructor for IXmlLineInfo
371         and output line and position info in Message.
372
373         * XmlReader.cs: implemented missing bits.
374
375 2002-09-12      Piers Haken <piersh@friksit.com>
376
377         * XmlDocumentNavigator.cs: implement MoveToId()
378
379 2002-09-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
380
381         * XmlTextWriter.cs: fixed bug #29886.
382
383 2002-08-26  Ravi Pratap  <ravi@ximian.com>
384
385
386         * XmlAttribute.cs (InnerText): Implement getting this property.
387
388         * XmlNode.cs (InnerText): Ensure that we append only values of
389         text nodes.
390
391 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
392
393         * XmlWriter.cs: made ws and namespaceManager protected. mcs has a bug
394         that allowed compiling this.
395         [ FIXME: filed bug #29435. mcs should have failed on this ]
396
397 2002-08-25  Tim Coleman <tim@timcoleman.com>
398         * XmlNode.cs:
399                 Change CreateNavigator to not be virtual.
400         * XmlElement.cs:
401                 Add set_Prefix and InnerText accessors.
402         * XmlEntityReference.cs:
403                 Add set_Value accessor.
404         * XmlTextWriter.cs:
405                 Make objects which should be private private.
406         * XmlWriter.cs:
407                 Remove WriteStartElementInternal abstract definition.
408         * XmlValidatingReader.cs:
409                 New stubs added.
410
411 2002-08-22  Jason Diamond <jason@injektilo.org>
412
413         * XmlAttributeCollection.cs, XmlElement.cs: Implementation of RemoveAll
414         and RemoveAllAttributes courtesy of Matt Hunter <xrkune@tconl.com>.
415
416 2002-08-22  Jason Diamond <jason@injektilo.org>
417
418         * XmlElement.cs: Correction to previous GetElementsByTagName patch
419         courtesy of Matt Hunter <xrkune@tconl.com>.
420
421 2002-08-22  Jason Diamond <jason@injektilo.org>
422
423         * XmlDocument.cs, XmlElement.cs: Added implementation of namepsace
424         qualified GetElementsByTagName courtesy of Matt Hunter 
425         <xrkune@tconl.com>.
426
427 2002-08-19  Jason Diamond <jason@injektilo.org>
428
429         * XmlDocument.cs, XmlElement.cs: Added implementation of 
430         GetElementsByTagName courtesy of Matt Hunter <xrkune@tconl.com>.
431
432 2002-08-16  Jason Diamond <jason@injektilo.org>
433
434         * XmlElement.cs: Fixed writing out qualified elements courtesy of
435         Marcus Bürgel <marcus.buergel@gmx.de>.
436
437 2002-08-13  Tim Coleman <tim@timcoleman.com>
438         * XmlTextWriter.cs:
439                 Partial implementation of WriteQualifiedName ().
440
441 2002-08-07  Kral Ferch <kral_ferch@hotmail.com>
442         * XmlCharacterData.cs:  Implemented AppendData(), DeleteData(),
443                 InsertData(), and ReplaceData().  These methods fire the
444                 NodeChanging and NodeChanged events.
445                 
446         * XmlDocument.cs:  Fixed bugs in onNodeChanged() and onNodeChanging().
447         
448         * XmlNode.cs:  AppendChild() fires NodeInserting and NodeInserted events.
449                 RemoveAll() and RemoveChild() fire NodeRemoving and NodeRemoved events.
450         
451 2002-08-03  Tim Coleman <tim@timcoleman.com>
452         * XmlNamespaceManager.cs:
453                 .Net allows the empty namespace to be redefined
454                 at a later point, but the current implementation
455                 did not.  This fixes a hashtable conflict.
456
457 2002-07-26  Tim Coleman <tim@timcoleman.com>
458         * XmlTextWriter.cs:
459                 When given a textwriter, check to see if it has a
460                 null encoding. This was being done for other inputs
461                 than a textwriter.
462
463 Wed Jul 24 13:16:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
464
465         * XmlTextReader.cs: rough line/column support.
466
467 2002-07-23  Duncan Mak  <duncan@ximian.com>
468
469         * XmlConvert.cs: Implement the ToDateTime method. ToDateTime
470         (string, string []) is particularly strange.
471
472         * XmlException.cs: Remember to call the base serialization
473         constructor.
474
475         * XmlNodeReader.cs: Keep a new variable to store the Depth. 
476
477 2002-07-14  Jason Diamond  <jason@injektilo.org>
478
479         * XmlAttribute.cs: Removed ownerElement field since we can reuse 
480         parentNode field.
481
482         * XmlDocumentNavigator.cs: MoveToParent now moves to the OwnerElement
483         if the current node is an attribute.
484
485         * XmlElement.cs: SetAttributeNode now sets the new attribute's
486         owner element.
487
488 2002-07-12  Jason Diamond  <jason@injektilo.org>
489
490         * XmlDocument.cs: If null was passed in for prefix or namespaceURI when
491         creating an element, use String.Empty instead.
492
493 2002-07-12      Piers Haken <piersh@friksit.com>
494
495         * XmlAttributeCollection.cs: implement some ItemOf indexers
496         * XmlNamedNodeMap.cs: add internal 'Nodes' accessor for the nodeList field
497         * XmlNode.cs: SelectNodes: return empty XmlNodeList, not null
498
499 2002-07-06  Ajay kumar Dwivedi <adwiv@yahoo.com>
500
501         * XmlTextWriter: Fixed Indentation. IndentationOverridden should
502                 not be set when inside a attribute.
503
504 2002-07-06  Ajay kumar Dwivedi <adwiv@yahoo.com>
505
506         * XmlTextWriter: In WriteStartElement, if namespace is null and 
507                 prefix is null|empty do not write out xmlns=""
508         
509         * XmlWriter: WriteStartElement calls the virtual method with null
510                 argument instead of empty string.
511
512 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
513
514         * XmlTextReader.cs: implemented .ctor (Stream).
515
516 2002-06-26  Duncan Mak  <duncan@ximian.com>
517
518         * XmlNodeReader.cs: Implementation of most of the properties, and
519         some of the related methods. 
520
521 2002-06-23  Piers Haken <piersh@friskit.com>
522         
523         * XmlDocumentNavigator.cs: implement Clone()
524         * XmlElement.cs: remove bogus unimplemented override of InnerText
525         * XmlNode.cs: implment SelectNodes/SelectSingleNode
526         * XmlNodeArrayList.cs: new support class for SelectNodes
527
528 2002-06-21  Ajay kumar Dwivedi <adwiv@yahoo.com>
529         
530         * XmlQualifiedName: Name and Namespaces are never null. If null is passed
531                 to the constructor, set them to empty strings.
532                 Fixed the Operators.
533         
534 2002-06-18  Ajay kumar Dwivedi <adwiv@yahoo.com>
535         
536         * XmlTextReader.cs: HasLineInfo returns false instead of throwing an
537         Exception.
538
539 2002-06-14  Duncan Mak  <duncan@ximian.com>
540
541         * XmlConvert.cs: Added CLSCompliant attributes to methods.
542         
543 2002-06-12  Duncan Mak  <duncan@ximian.com>
544
545         * XmlCharacterData.cs (Value): Throw an ArgumentException in the
546         set block if the node is read-only.
547
548 2002-06-10  Ajay kumar Dwivedi <adwiv@yahoo.com>
549         * XmlConstruct.cs : New Internal class with Helper methods for
550         Checking XmlConstructs
551         * XmlConvert.cs: Implemented most of the methods
552
553 2002-06-08  Duncan Mak  <duncan@ximian.com>     
554
555         * XmlDocument.cs (Load):
556         Added bits to Load (string) for BaseURI support.
557
558         * XmlAttribute.cs (BaseURI): 
559         * XmlDocument.cs (BaseURI): 
560         * XmlEntity.cs (BaseURI): Implemented.
561
562 2002-05-27  Jason Diamond  <jason@injektilo.org>
563
564         * XmlDocumentNavigator.cs: Added file to directory.
565
566         * XmlNode.cs (CreateNavigator): Implemented.
567         (InnerText): Implemented.
568
569         * XmlDocument.cs (NamespaceURI, Prefix): Return String.Empty instead of
570         throwing exception.
571         (Load(XmlReader)): Allow for namespace qualified attributes.
572
573         * XmlElement.cs: Implemented GetAttribute(string, string) and both 
574         GetAttributeNode overloads.
575         (SetAttributeNode(XmlAttribute)): Implemented.
576
577         * XmlNamedNodeMap.cs: Fixed copy/paste bugs in GetNamedItem(string, string)
578         and RemoveNamedItem(string, string).
579
580         * XmlLinkedNode.cs (PreviousSibling): Implemented.
581
582         * XmlTextReader.cs: Added code to maintain the order of attributes as 
583         they're parsed. XML doesn't require this but Microsoft's parser does it and
584         matching them makes testing easier so now we have it, too.
585
586 2002-05-26  Miguel de Icaza  <miguel@ximian.com>
587
588         * XmlDocument.cs: Implement the Save methods.
589
590 2002-05-08  Mike Kestner  <mkestner@speakeasy.net>
591
592         * XmlNamedNodeMap.cs (SetNamedItem): Fixed a copy/paste bug.
593
594 2002-04-28  Duncan Mak  <duncan@ximian.com>
595
596         * XmlSignificantWhitespace.cs (Value):
597         * XmlWhitespace.cs (Value): Added MonoTODO to the 'set'
598         block. Added new private method, IsValidWhitespaceChar, for
599         checking.
600
601 2002-04-16  Duncan Mak  <duncan@ximian.com>
602
603         * XmlParserContext.cs (NameTable): Fixed a typo in the set block.
604
605 2002-04-12  Duncan Mak  <duncan@ximian.com>
606
607         * XmlAttribute.cs (Prefix): Added preliminary code for set block,
608         added comment on work that needs to be done here. A new MonoTODO item. 
609
610         * XmlDocument.cs (ctor): Corrected constructor signature, changed
611         parameter from 'NameTable' to 'XmlNameTable'.
612
613         * XmlDocumentFragment.cs (InnerXml): Added missing set block.
614
615         * XmlCaseOrder.cs: Moved to System.Xml.XPath.
616
617 2002-04-10  Duncan Mak  <duncan@ximian.com>
618
619         * XmlNodeReader.cs: Initial stubs for the class.
620
621 2002-04-08  Kral Ferch  <kral_ferch@hotmail.com>
622
623         * XmlAttributes.cs: InnerXml getter, WriteContentTo, and WriteTo
624         implementations.
625         
626         * XmlDeclaration.cs: WriteTo implementation.
627         
628         * XmlDocument.cs: InnerXml getter implementation.
629         
630         * XmlElement.cs: InnerXml getter implementation.
631
632         * XmlNode.cs: Removed MonoTODO attrib on OuterXml.
633         
634         * XmlSignificantWhitespace.cs: WriteTo implementation.
635         
636         * XmlText.cs: WriteContentTo and WriteTo implementation.
637         
638         * XmlTextWriter.cs: WriteRaw implementation.
639         
640         * XmlWhitespace.cs: WriteContentTo and WriteTo implementations.
641
642 2002-04-05  Kral Ferch  <kral_ferch@hotmail.com>
643
644         * XmlAttributes.cs: Added reminder MonoTODO to set NamespaceURI
645         if prefix in constructor is one of the default ones.
646         
647         * XmlCharacterData.cs: Returns String.Empty for Value and Data
648         even when constructed with null.
649         
650         * XmlDeclaration.cs: Value doesn't put encoding or standalone
651         in if they are empty.
652         
653         * XmlDocument.cs: Implemented CreateNode methods and this caused
654         the changes in the other files in this checkin.
655         
656         * XmlProcessingInstruction.cs: Returns String.Empty for Value and Data
657         even when constructed with null.
658         
659         * XmlWhitespace.cs: Changed Value 'get' to return Data.
660
661 2002-04-01  Kral Ferch  <kral_ferch@hotmail.com>
662
663         * XmlTextWriter.cs: Impls for WriteEndDocument and WriteFullEndElement.
664         
665 2002-03-31  Kral Ferch  <kral_ferch@hotmail.com>
666
667         * XmlTextWriter.cs: Impls for LookupPrefix, WriteBase64,
668         and WriteCharEntity.
669         
670         * XmlWrite.cs:  Fixed bug where attribute namespace decl
671         was pushing a scope onto the namespace manager when it shouldn't
672         have been.
673         
674 2002-03-31  Kral Ferch  <kral_ferch@hotmail.com>
675
676         * XmlTextWriter.cs: Some tweaks for WriteAttibuteString
677         in different states (no open start element, in WriteState.Content mode).
678         
679 2002-03-29  Kral Ferch  <kral_ferch@hotmail.com>
680
681         * XmlTextWriter.cs: XmlLang and XmlSpace properties
682         and WriteWhitespace.
683         
684         * XmlTextWriterOpenElement.cs: scope support for XmlLang
685         and XmlSpace.
686
687 2002-03-29  Kral Ferch  <kral_ferch@hotmail.com>
688
689         * XmlTextWriter.cs: Working on Attribute methods.
690         
691         * XmlWriter.cs: Working on Attribute methods.
692
693 2002-03-28  Duncan Mak  <duncan@ximian.com>
694
695         * XmlDocument.cs (CreateWhitespace):
696         (CreateSignificantWhitespace): Removed extraneous call to the ToCharArray
697         method.
698
699         * XmlSignificantWhitespace.cs (Value): Removed MonoTODO attribute.
700
701 2002-03-26  Duncan Mak  <duncan@ximian.com>
702
703         * XmlDocument.cs (CreateDocumentType): Implemented.
704
705         * XmlNode.cs (Value): Implemented.
706
707         * XmlProcessingInstruction.cs (InnerText): Implemented. It works just
708         like XmlCharacterData.
709
710         * XmlDeclaration.cs (CloneNode): 
711         * XmlDocument.cs (CreateXmlDeclaration): Added missing constructor
712         arguments.
713
714         * XmlCharacterData.cs (InnerText): Implemented. Funny that the
715         docs say it is the "The concatenated values of the node and all
716         the children of the node.". I wrote some test programs and
717         couldn't get any of the derived nodes to AppendChild. For now,
718         InnerText == Data == Value.
719         (Substring): Fixed typo.
720
721         * XmlDeclaration.cs (XmlDeclaration): Fixed the constructor parameter signature.
722
723         * XmlImplementation.cs (CreateDocument): Implemented.
724
725 2002-03-25  Duncan Mak  <duncan@ximian.com>
726
727         * XmlDeclaration.cs: Rewrote the class, fixed formatting, added
728         missing properties (InnerText, Value).
729         
730         * XmlDocument.cs (CreateXmlDeclaration): Implemented.
731
732 2002-03-23  Kral Ferch <kral_ferch@hotmail.com>
733
734         * XmlTextWriter.cs: Impls for BaseStream and
735         Namespaces and WriteState.
736         
737         * XmlWriter.cs: WriteState and WriteStartElementInternal.
738
739 2002-03-23  Kral Ferch <kral_ferch@hotmail.com>
740
741         * XmlNodeListChildren.cs: made class internal
742         instead of public.  Shouldn't be visible outside
743         of System.Xml.
744         
745         * XmlTextWriter.cs: Implementations for Formatting,
746         IndentChar, Indenting, QuoteChar, WriteStartDocument(standalone).
747         Suppresses encoding on xml declaration if null stream passed in.
748         Formats output including suppressing indentation for elements in
749         mixed content mode.
750         
751         * XmlTextWriterOpenElement.cs: Initial checkin.
752         XmlTextWriter uses stack of these objects to track
753         state.
754         
755 2002-03-22  Mike Kestner  <mkestner@speakeasy.net>
756
757         * XmlElement.cs: impl HasAttribute(string name).
758
759 2002-03-22  Duncan Mak  <duncan@ximian.com>
760
761         * XmlElement.cs: Reformatted.
762         (CloneNode) Corrected.
763
764         * XmlDocument.cs (CreateWhitespace):
765         (CreateSignificantWhitespace): Implemented.
766
767         * XmlAttribute.cs (CloneNode): Changed the child's CloneNode to
768         true, because Attributes have ChildNodes.
769
770 2002-03-21  Kral Ferch <kral_ferch@hotmail.com>
771
772         * XmlTextWriter.cs: WriteStartDocument tracks state, writes out
773         xml declaration along with encoding.  WriteEndElement throws
774         exception if no WriteStartElement exists.
775
776 2002-03-20  Duncan Mak  <duncan@ximian.com>
777
778         * XmlEntityReference.cs (CloneNode): Implemented.
779
780         * XmlException.cs (Message): Implemented. We need to cache the
781         message string because SystemException doesn't expose 'message'
782         from Exception.
783
784         * XmlText.cs (Value): Added in the missing Value property.
785
786 2002-03-20  Duncan Mak  <duncan@ximian.com>     
787
788         * XmlAttribute.cs (CloneNode): Implemented.
789
790         * XmlDocumentFragment.cs (CloneNode): Implemented.
791
792         * XmlElement.cs (CloneNode): Implemented.
793
794 2002-03-19  Duncan Mak  <duncan@ximian.com>
795
796         * XmlNotation.cs: Added to CVS.
797
798         * XmlAttribute.cs (CloneNode): First crack at the CloneNode method.
799
800         * XmlCDataSection.cs (CloneNode): Implemented.
801
802         * XmlDocumentFragment.cs: Reformatted and added the missing properties
803         (InnerXml, OwnerDocument, ParentNode).
804         (CloneNode): Implemented.
805
806         * XmlSignificantWhitespace.cs (CloneNode): Implemented.
807         (Value) Implemented the 'get' property.
808
809         * XmlWhitespace.cs (Module): implemented.
810
811 2002-03-19  Jason Diamond <jason@injektilo.org>
812
813         * XmlDocument.cs: Fixed typo in Load that was duplicating the LocalName
814         in the prefix.
815
816 2002-03-18  Jason Diamond <jason@injektilo.org>
817
818         * XmlTextReader.cs: Don't restore properties after reading last
819         attribute on an element.
820
821         * XmlDocument.cs: Move back to element after reading attributes
822         so that IsEmptyElement test succeeds.
823
824 2002-03-18  Kral Ferch <kral_ferch@hotmail.com>
825
826         * XmlNamespaceManager.cs: Implemented LookupPrefix.
827         
828         * XmlTextWriter.cs: Implemented namespace and prefix support.
829
830 2002-03-18  Kral Ferch <kral_ferch@hotmail.com>
831
832         * XmlTextReader.cs: Restores properties after
833         reading last attribute on an element.
834         
835         * XmlNode.cs: AppendChild sets the parent
836         on the child.
837
838 2002-03-17  Kral Ferch  <kral_ferch@hotmail.com>
839
840         * XmlCDataSection.cs: Formatting, Implementation for WriteTo.
841
842         * XmlComment.cs: Implementations for WriteTo and WriteContentTo.
843         
844         * XmlElement.cs: Fixed bug in WriteTo.
845         
846         * XmlProcessingInstruction.cs: Formatting.
847         
848         * XmlTextWriter.cs: Implementations for Close, WriteCData, WriteComment,
849         fixes for WriteEndElement, WriteProcessingInstruction.
850
851 2002-03-17  Kral Ferch  <kral_ferch@hotmail.com>
852
853         * XmlDocument.cs: Implementations for WriteTo() and WriteContentTo(),
854         had Load() add PIs to the document, moved onXXX methods to alphabetical
855         order in the file.
856         
857         * XmlElement.cs: Implementations for WriteTo() and WriteContentTo().
858         
859         * XmlNode.cs: Implementations for InnerXml Get and OuterXml.
860         
861         * XmlProcessingInstruction.cs: Implementations for WriteTo() and
862         WriteContentTo().
863         
864         * XmlTextWriter.cs: Implementations for WriteEndElement,
865         WriteProcessingInstruction, WriteStartElement, and WriteString.
866         
867         * XmlWriter.cs: Implemented WriteStartElement() methods.
868
869 2002-03-15  Duncan Mak  <duncan@ximian.com>
870
871         * XmlEntity.cs: Added to CVS. Need to implement BaseURI and
872         InnerText once I know what they do.
873
874         * XmlDocumentType.cs (XmlDocumentType): Fix the constructor now
875         that we can properly chain constructors.
876         (CloneNode): implemented.
877         (WriteContentTo): Removed MonoTODO attribute as this method has no
878         effect in this class.
879
880         * XmlProcessingInstruction.cs (Value): Added the missing Set
881         block.
882         (InnerText): Added in, but not implemented.
883
884 2002-03-14  Kral Ferch  <kral_ferch@hotmail.com>
885
886         * XmlTextWriter.cs: implemented constructors and 
887         WriteCData and WriteComment.
888
889 2002-03-14  Duncan Mak  <duncan@ximian.com>
890
891         * XmlDocument.cs: Moved the NodeChanged EventHandler to its own
892         file, and updated the callbacks to reflect the change.
893         (XmlDocument): Added the NameTable constructor.
894         (NameTable): Also the NameTable property.
895
896         * XmlNodeChangedEventHandler.cs: Added, replacing the version that
897         was in XmlDocument.cs. It has two arguments now (object,
898         EventArgs) , instead of one (object).
899
900 2002-03-14  Kral Ferch  <kral_ferch@hotmail.com>
901
902         * XmlWriter.cs: Formatting.
903         
904         * XmlTextWriter.cs: Initial checkin.
905         
906 2002-03-14  Duncan Mak  <duncan@ximian.com>
907
908         * Validation.cs: Removed, replaced by ValidationType.cs.
909
910         * ValidationType.cs: Added.
911
912 2002-03-13  Duncan Mak  <duncan@ximian.com>
913
914         * XmlException.cs: Made it [Serializable], implemented good ol'
915         GetObjectData, and the serialization constructor.
916
917         * XmlNamedNodeMap.cs (SetNamedItem): Check for the Name property.
918         (SetNamedItem): Reverted (added back in) the patch with the
919         ReadOnly checks. "Don't doubt yourself, my son... you were right!"
920
921         * XmlNamedNodeMap.cs (GetEnumerator): piggyback on the ArrayList implementation.
922         (GetNamedItem (string, string)): implemented.
923         (RemoveNamedItem): implemented.
924         (SetNamedItem): implemented.
925
926 2002-03-12  Kral Ferch  <kral_ferch@hotmail.com>
927
928         * XmlAttribute.cs: Moved a method from amongst properties down to
929         it's alphabetical position in the methods section.
930         
931         * XmlNode.cs: Passes in 'this' to XmlNodeList constructor instead of
932         last linked child.  Set XmlNode base class to return false for IsReadOnly().
933         Implemented GetEnumerator() and RemoveChild().
934         
935         * XmlNodeListChildren.cs: Now stores the parent instead of the last child.
936         This is to support the behavior that the Enumerator doesn't become invalid
937         when changes to the children occur.  Flushed out rest of implementation for
938         MoveNext, Current, and Reset.
939
940 2002-03-12  Duncan Mak  <duncan@ximian.com>
941
942         * XmlCharacterData.cs: Reformatted the properties for better readability.
943
944         * XmlLinkedNode.cs: Removed the awful boxy comments.
945
946         * XmlNamedNodeMap.cs (Count):
947         (Item): Implemented. Tests will be coming.
948
949         * XmlEntityReference.cs: 
950         * XmlSignificantWhitespace.cs: Implemented these classes except for
951         the Clone, WriteContentTo and WriteTo methods. Will have to
952         investigate into these later.
953
954 2002-03-11  Duncan Mak  <duncan@ximian.com>
955
956         * IHasXmlNode.cs: Added to CVS.
957
958 2002-03-08  Jason Diamond <jason@injektilo.org>
959
960         * XmlParserContext.cs: Added missing constructors and missing Encoding 
961         property.
962
963         * XmlTextReader.cs: Start using the XmlParserContext class.
964
965 2002-03-08  Jason Diamond <jason@injektilo.org>
966
967         * XmlTextReader.cs: Implemented MoveToElement and MoveToFirstAttribute.
968
969 2002-03-08  Mike Kestner  <mkestner@speakeasy.net>
970
971         * XmlNode.cs (Item): Implemented both indexers.
972
973 2002-03-08  Jason Diamond  <jason@injektilo.org>
974
975         * DomEncodingType.cs, TreePosition.cs, XPathNodeType.cs, XmlDataType.cs,
976         XmlExceptionCode.cs, XmlSortOrder.cs, XmlUtil.cs: Removed files.
977
978 2002-03-08  Jason Diamond  <jason@injektilo.org>
979
980         * XmlAttribute.cs: Attribute nodes are supposed to store their values
981         as child nodes so updated to reflect that.
982
983         * XmlDocument.cs, XmlElement.cs, XmlNode.cs: Moved code that was
984         duplicated in XmlDocument and XmlElement into XmlNode so that it
985         wouldn't have to be duplicated in XmlAttribute, too.
986
987 2002-03-08  Kral Ferch <kral_ferch@hotmail.com>
988
989         * XmlNodeList.cs, XmlDocument.cs, XmlLinkedNode.cs,
990         XmlNode.cs: Formatting.
991         
992         * XmlNodeListChildren.cs: Implementation of XmlNodeList
993         for XmlNode.ChildNodes property.
994         
995         * XmlNodeListAsArrayList.cs: Removed file.  Using different
996         data structure (circular list) in XmlNode so this file
997         is no longer valid.
998         
999         * XmlDocument.cs, XmlElement.cs: New ChildNodes tests found
1000         bug in setter property of LastLinkedChild so fixed it.
1001         
1002 2002-03-06  Jason Diamond  <jason@injektilo.org>
1003
1004         * XmlInputSource.cs, XmlNames_1_0.cs, XmlParse.cs: Removed files.
1005         We already have a parser in XmlTextReader.
1006
1007         * XmlException.cs: Removed constructor accepting XmlInputSource.
1008
1009 2002-03-06  Kral Ferch <kral_ferch@hotmail.com>
1010
1011         * XmlNode.cs: Rewrote this class from scratch with
1012         MonoToDo attribs and NotImplementedExceptions.  Now defines an
1013         internal LastLinkedNode property to aid the new implementation.
1014         XmlNodes only have ref to owner doc and parent nodes now.
1015         
1016         * XmlLinkedNode.cs: Added NextLinkedSibling internal property
1017         and ref to next sibling to support walking our circular child
1018         node list.
1019         
1020         * XmlDocument.cs: Added ref to last child node and overrides
1021         XmlNode's internal LastLinkedChild property to support walking
1022         our circular child node list.
1023         
1024 2002-03-02  Kral Ferch <kral_ferch@hotmail.com>
1025
1026         * XmlProcessingInstructions.cs: Class was empty.  Implemented
1027         constructor, properties, and CloneNode() method.  Put in
1028         MonoToDo attrib for remaining methods.
1029
1030         * XmlComment.cs: Reformatted and put in MonoToDo attribs.
1031         Got rid of helper methods and fields since they were no
1032         longer needed.
1033
1034         * XmlLinkedNode.cs: Reformatted and put in MonoToDo attribs.
1035
1036         * XmlDocument.cs: Added code to Load(XmlReader) to create XmlComment,
1037         XmlCDataSection, and XmlProcessingInstruction nodes. Implemented
1038         Createxxx() methods for those three node types.
1039
1040 2002-03-02  Jason Diamond <jason@injektilo.org>
1041
1042         * XmlDocument.cs: Implemented the remaining CreateElement and
1043         CreateAttribute methods.
1044
1045         * XmlAttribute.cs: Re-implemented.
1046
1047         * XmlElement.cs: Set owner element on attributes. Reformatted.
1048
1049 2002-03-02  Jason Diamond <jason@injektilo.org>
1050
1051         * XmlTextReader.cs: Implemented MoveToNextAttribute().
1052
1053         * XmlDocument.cs: Reformatted. Adding missing methods and MonoTODO
1054         attributes. Create attribute nodes while loading. Implemented
1055         Load(string) and CreateTextNode().
1056
1057         * XmlCharacterData.cs, XmlText.cs: Re-implemented.
1058
1059         * XmlCDataSection.cs, XmlComment.cs: Call correct constructor in 
1060         XmlCharacterData.
1061
1062         * XmlNamedNodeMap.cs, XmlAttributeCollection.cs: Stubbed out.
1063
1064 2002-03-02  Mike Kestner <mkestner@speakeasy.net>
1065
1066         * XmlAttribute.cs : Using fix.
1067         * XmlDocument.cs (CreateAttribute(String)): Implement.
1068
1069 2002-03-02  Jason Diamond <jason@injektilo.org>
1070
1071         * XmlNamespaceManager.cs: Atomize prefixes and namespaces strings in 
1072         the name table.
1073
1074 2002-02-28  Jason Diamond <jason@injektilo.org>
1075
1076         * XmlDocument.cs, XmlNode.cs: Initial implementation of LoadXml 
1077         courtesy of Kral Ferch <kral.ferch@hotmail.com>.
1078
1079 2002-02-28  Jason Diamond <jason@injektilo.org>
1080
1081         * XmlException.cs, XmlReader.cs, XmlTextReader.cs: Reformatted, 
1082         added missing members and MonoTODO attributes.
1083         
1084         * XmlTextReader.cs: Throw XmlException instead of System.Exception.
1085
1086 2002-02-27  Jason Diamond <jason@injektilo.org>
1087
1088         * XmlElement.cs: Reformatted, added missing members and MonoTODO 
1089         attributes.
1090
1091 2002-02-26  Duncan Mak  <duncan@ximian.com>
1092
1093         * XmlCDataSection.cs: Initial implementation.
1094
1095         * NameTable.cs: Fixed the whole thing. Wrote a NUnit test to test
1096         it out. This should (hopefully) be correct.
1097
1098 2002-02-26  Jason Diamond <jason@injektilo.org>
1099
1100         * XmlTextReader.cs: Apparently Microsoft's implementation treats
1101         namespace declarations as attributes so we do now, too.
1102
1103         * XmlNamespaceManager.cs: HasNamespace fixed so that it only
1104         checks the current scope.
1105
1106 2002-02-26  Duncan Mak  <duncan@ximian.com>
1107
1108         * XmlDocumentType.cs: Added a few hacks here and there to
1109         temporarily fix the "I broke the build issue".
1110
1111 2002-02-25  Jason Diamond <jason@injektilo.org>
1112
1113         * XmlDocument.cs, XmlElement.cs, XmlNode.xs, XmlNodeList.cs,
1114         XmlNodeListAsArrayList.cs: Multiple fixes necessary to get
1115         simple test to pass. The existing code is really shitty so I'll
1116         probably start writing tests and refactoring before much else 
1117         can get done.
1118
1119 2002-02-25  Duncan Mak  <duncan@ximian.com>
1120
1121         * NameTable.cs: Implemented.
1122
1123         * XmlDeclaration.cs: It should inherit from XmlLinkedNode, not XmlNode.
1124
1125 2002-02-24  Duncan Mak  <duncan@ximian.com>
1126         
1127         * XmlNodeOrder.cs: Added to CVS.
1128
1129         * XmlQualifiedName.cs: Fixed a warning from Equals ().
1130
1131         * XmlTokenizedType.cs: Added to CVS.
1132
1133         * XmlUrlResolver.cs: Added to CVS with one TODO task.
1134
1135 2002-02-23  Duncan Mak  <duncan@ximian.com>
1136
1137         * XmlQualifiedName.cs: Fixed ToString () and added the operators
1138         (== and !=).
1139
1140 2002-02-23  Jason Diamond <jason@injektilo.org>
1141
1142         * XmlTextReader.cs: Added support for qualified attributes.
1143
1144 2002-02-23  Jason Diamond <jason@injektilo.org>
1145
1146         * XmlNamespaceManager.cs: Initial implementation.
1147         
1148         * XmlTextReader.cs: Added support for NamespaceURI property on
1149         elements.
1150
1151 2002-02-23  Nick Drochak <ndrochak@gol.com>
1152
1153         * ChangeLog: Add the change log to this directory
1154
1155         * XmlQualifiedName.cs: Fixed compile errors so it would build. Still has
1156         MonoTODO's
1157