2003-07-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
[mono.git] / mcs / class / System.XML / System.Xml / ChangeLog
1 2003-07-12  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
2
3         * XmlAttribute.cs,
4           XmlElement.cs : Fixed CloneNode() for bug #46129.
5         * XmlDocument.cs : Fixed MakeReaderErrorMessage that specified invalid
6           String.Format arguments, and basically XmlException.ctor(
7           IXmlLineInfo, message) seems good idea to use.
8         * XmlTextReader.cs :
9           - Fixed .ctor(Stream, XmlNodeType, XmlParserContext) which had
10             required non-null context which don't have to exist.
11           - Added state check. Introduced 'currentState' and 'maybeTextDecl' 
12             (for external entity) and removed hasEnteredDocument. Added 
13             state-check logic to ReadStartTag(), ReadEndTag(), ReadText(),
14             ReadCData(), ReadDoctypeDecl() and ReadWhitespace().
15           - Replaced throw ReaderError() with throw new XmlException() and
16             fixed that some error hadn't thrown, only created.
17           - ResetState() should re-initialize existing private members other 
18             than some specified fields.
19           - Private AddAttribute() should check if the same-named attribute 
20             already exists.
21         * DTDObjectModel.cs : Additive declaration for ATTLIST is availabe now.
22
23 2003-07-09  Lluis Sanchez Gual <lluis@ximian.com>
24
25         * XmlTextReader.cs : Implemented ResetState() method.
26
27 2003-07-06  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
28
29         * XmlElement.cs : IsEmpty has removed attributes since it incorrectly
30           used RemoveAll().
31
32 2003-07-06  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
33
34         * XmlDocument.cs : Load(string filename) should close its stream.
35           Small change for the latest DTDObjectModel change.
36         * XmlTextReader.cs : Changed for the latest DTDObjectModel change (all
37           changed methods are only related to DTD stuff).
38           Now uses XmlSchemaDatatype for attribute type definition.
39         * XmlValidatingReader : initial (limited) support for DTD validation.
40           It can handle only XmlTextReader.
41         * DTDObjectModel.cs : changed radically for initial validation support.
42         * added DTDAutomata.cs and DTDValidatingReader.cs.
43
44 2003-07-06  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
45
46         * XmlElement.cs : Removed extraneous xmlns output support (it should
47           be done by XmlTextWriter).
48         * XmlNode.cs : InsertBefore() now checks validity of the newChild (and
49           most of the changes are in fact indentation changes).
50         * XmlWriter.cs : WriteAttributes() now can write entity references.
51           WriteNode() now writes xmldecl attributes correctly.
52           Removed namespaceManager and xmlns check logic, since it should be 
53           done by individual XmlTextWriter.
54         * XmlTextWriter.cs : Patch by Jerome. AddMissingElementXmlns () has
55           written multiple xmlns declarations.
56           Moved namespaceManager from abstract XmlWriter.
57           Write{Start|End}Attribute() and WriteString() now checks xmlns 
58           attribute value. (MS.NET holds value only with this write method).
59
60 2003-07-04  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
61
62         * XmlDocument.cs : removed xmlReader.Close() from Load(XmlReader).
63
64 2003-06-30  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
65
66         * XmlDocumentNavigator.cs : Implemented MoveTo*Namespace() and 
67           essentially changed most of the property handling (e.g. removed attribute 
68           enumerator and it now became really cloneable).
69         * XmlNodeReader.cs : ReadInnerXml() changes its state as error
70           when the method is called at Initial state.
71
72 2003-06-25  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
73
74         * XmlDocumentNavigator.cs : Fixed IsEmptyElement. It treats <foo></foo>
75           as non-empty, and XmlElement's IsEmpty is designed as such.
76           Fixed MoveToFirst() and MoveToNext() not to move to xmldecl nor 
77           doctype node. 
78         * XmlNode.cs : Fixed XPathNodeType. It should throw an exception
79           instead of returning undefined enum value.
80           Modified some code comments.
81         * XmlWriter.cs : Fixed WriteNode () to use WriteFullEndElement() 
82           when XmlReader's node is not at empty element or at EndElement. 
83           Fixed XmlDeclaration's standalone check.
84
85 2003-06-21  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
86
87         * XmlTextReader.cs : removed CRLFs. Fixed private InitializeContext()
88           to use known Uri way (used in XmlUrlResolver) instead of UriBuilder.
89
90 2003-06-20  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
91
92         * XmlInputStream.cs : quick fix for public ctor() BaseURI bug.
93
94 2003-06-20  Ben Maurer <bmaurer@users.sourceforge.net>
95         
96         * XmlTextReader.cs: Reduces memory allocation when the reader is
97         not queried for some values.
98         * NameTable.cs: Now uses a custom hashtable to implement. As a
99         result, when Get (char[], int, int) is called, a string is only
100         allocated if it is actually a new entry.
101         (StrEqArray) Compares a string and a char[]
102         (AddEntry) Adds a new entry to the hashtable
103         (Entry) Represents a hashtable entry.
104
105 2003-06-20  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
106
107         * XmlUrlResolver.cs : several ResolveUri() fix. e.g. for external URIs.
108
109 2003-06-16  Ben Maurer <bmaurer@users.sourceforge.net>
110         * XmlUrlResolver.cs: really fixed #44231
111
112 2003-06-16  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
113
114         * XmlNodeReader.cs : fixed MoveToNextAttribute(). In some cases 
115           this method set current node null.
116         * XmlTextReader.cs : fixed GetAttribute (name, ns), which returned
117           String.Empty instead of null (expected value).
118         * XmlTextReader.cs,
119           XmlUrlResolver.cs,
120           XmlInputStream.cs : fixed BaseURI problem (bug #44231).
121
122 2003-06-15  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
123
124         * XmlNodeReader.cs : this [name] and this [name, ns] (and
125           GetAttribute() methods in turn) returns null instead of String.Empty.
126         * XmlTextWriter.cs : WriteStartAttribute() should try to use specified
127           prefix before auto-generating prefixes.
128           Implemented WriteBase64().
129
130 2003-06-13  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
131
132         * XmlNodeReader.cs : LookupNamespace () has refered invalid current
133           node for attributes. Modified to use private "document" property.
134
135 2003-06-10  Lluis Sanchez Gual <lluis@ximian.com>
136
137         * XmlTextWriter.cs: when adding an attribute with a namespace, a prefix must be automaticaly
138           generated, and a namespace declaration must be added. 
139         * XmlWriter.cs: the namespace for the prefix xmlns must be http://www.w3.org/2000/xmlns/
140
141 2003-06-10  Zoltan Varga  <vargaz@freemail.hu>
142
143         * XmlAttribute.cs: Accept a null prefix or namespaceURI.
144
145 2003-06-10  Duncan Mak  <duncan@ximian.com>
146
147         * XmlDocumentNavigator.cs (GetNode): Make it implement
148         IHasXmlNode.
149
150 2003-06-05  Lluis Sanchez Gual <lluis@ideary.com>
151
152         * XmlTextWriter.cs : Fixed bug. After calling for example WriteStartElement ("pref","ln","ns");
153           a call to LookupPrefix ("pref") when still writting attributes should 
154           return "ns", and it didn't.
155
156 2003-06-02  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
157
158         * XmlDocumentNavigator.cs : quick fix for MoveToFirstChild().
159         * XmlConvert.cs : fixed VerifyNCName() to check correctly.
160
161 2003-06-01  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
162
163         * XmlDocumentNavigator.cs : Compute document node one time.
164           MoveToFirstChild() should move to PIs and comments.
165
166 2003-05-30  Miguel de Icaza  <miguel@ximian.com>
167
168         * XmlReader.cs (ReadStartElement): Improve error message.  
169
170 2003-05-28  Lluis Sanchez Gual <lluis@ideary.com>
171
172         * XmlTextReader.cs : MoveToAttribute methods must set the enumerator to the right
173           position, since MoveToNextAttribute may be called after it. 
174           SetProperties(): attributes do not "inherit" the namespace.
175         * XmlDocument.cs: ReadNode(), ReadAttributeNode(): must keep the current reader position.
176
177 2003-05-27  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
178
179         * NameTable.cs : Add() sets the given name string interned.
180         * XmlParserContext.cs : added internal PushScope() and PopScope() to
181           hold stacks of xml:base, xml:lang and xml:space.
182         * XmlTextReader.cs : implemented XmlLang and XmlSpace (only as a
183           property for stacked attributes). Renamed Initialize() to Initialize-
184           Context(). Modified to use XmlParserContext.PushScope()/PopScope().
185
186 2003-05-26  Lluis Sanchez Gual <lluis@ximian.com>
187
188         * XmlReader.cs: Little fix to WriteAttributeString()
189
190 2003-05-24  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
191
192         * XmlAttribute.cs, XmlCharacterData.cs, XmlComment.cs, XmlDocument.cs,
193           XmlDocumentFragment.cs, XmlElement.cs, XmlEntity.cs, XmlLinkedNode.cs,
194           XmlNode.cs, XmlNotation.cs, XmlProcessingInstruction.cs, XmlReader.cs,
195           XmlSignificantWhitespace.cs, XmlText.cs, XmlWhitespace.cs:
196           Reverted the recent accessibility mistake (5/16).
197         * XmlDocument.cs, XmlNode.cs : moved actual CreateNavigator() logic 
198           from XmlNode to XmlDocument.
199
200 2003-05-18  Lluis Sanchez Gual <lluis@ideary.com>
201
202         * XmlQualifiedName.cs : Fixed bug in equality operator.
203
204 2003-05-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
205
206         * XmlTextWriter.cs : patch by Jonathan Hogg. Flush() does not close
207           any open attributes or elements. WriteWhitespace() checks state and
208           closes start tag.  Fixed WriteStringInternal() to replace CR/LF chars
209           when it is called inside attribute value.
210         * XmlException.cs : added .NET 1.1 .ctor.
211         * added XmlSecureResolver.cs (only stubbing).
212         * XmlAttribute.cs : set_InnerXml() should remove children.
213         * XmlAttribute.cs,
214           XmlElement.cs,
215           XmlDocumentFragment.cs,
216           XmlDocument.cs : removed XmlTextReader reuse (It was buggy stuff).
217         * XmlNode.cs : RemoveAll() should also remove all attributes.
218         * XmlTextRader.cs : .ctor() for attribute value reader should add
219           quotations at initialization, since it requires quote chars.
220         * XmlWriter.cs : WriteAttributeString() more correct xmlns check.
221
222 2003-05-16  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
223
224         * changed XPathNodeType modifier to internal *protected* override.
225         * XmlAttribute.cs : .ctor() now checks name validity e.g. xmlns.
226         * XmlAttribute.cs, XmlElement.cs : set_Prefix checks NCName validity.
227         * XmlAttributeCollection.cs : removed some incorrect TODO attributes.
228         * XmlDocument.cs ; CreateAttribute(name) now auto-completes xmlns NSURI
229           when the argument is "xmlns".
230         * XmlElement.cs : more compliant IsEmpty support. See also WriteTo().
231         * XmlNamespaceManager.cs : added initial "xml" and "xmlns" namespaces.
232         * XmlNode.cs : ser_InnerXml() throws InvalidOperationException.
233         * XmlNodeReader.cs : LookupNamespace() refactory. Fixed ReadInnerXml()
234           not to set error state for non-started XmlNodeReader.
235         * XmlTextReader.cs : fixed ReadAttributeValue() not to reset state.
236           BaseURI support. Fixed Initialize() to handle Attribute correctly.
237           SetProperty for attribute auto-completes xmlns NSURI.
238           Attribute and whitespace handling became more correct.
239           Don't parse external DTD if XmlResolver is null.
240         * XmlTextWriter.cs : implemented WriteEntityRef().
241           WriteStartAttribute() checks if ns does not equal to that of xmlns.
242         * XmlWriter.cs : trivial refactoring (WriteNode() xmldecl output).
243
244 2003-05-05  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
245
246         * XmlConvert.cs : IsInvalid() Now uses XmlConstructs.IsName(Start).
247           EncodeName() now correctly encodes invalid names.
248           Result string of ToString(DateTime) contains "fffffff".
249
250 2003-04-29  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
251
252         * XmlElement.cs : fixed IsEmpty (removed private field isEmpty).
253         * XmlNodeReader.cs : Fixed AttributeCount, each this[] (indexers),
254           MoveTo*Attribute(),
255           Fixed this[] to work correctly against XmlDeclarations.
256           Fixed ReadInnerXml() and ReadOuterXml() to call Read() correctly.
257           (which may prevent validations etc.)
258         * XmlReader.cs,
259           XmlNodeReader.cs,
260           XmlTextReader.cs : Fixed ReadString() to be compliant with each
261           other.
262         * XmlTextReader.cs : ReadInnerXml() now moves to next node correctly.
263
264 2003-04-27  Pedro Martínez Juliá  <yoros@wanadoo.es>
265
266         * XmlNode.cs: ensure to get a valid Uri in BaseUri when loading the
267         source document from a file.
268
269 2003-04-27  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
270
271         * XmlAttribute.cs : fixed WriteTo() and WriteContentTo() to write
272           content EntityReference correctly.
273         * XmlNodeReader.cs : many fix for EndElement handling (AttributeCount,
274           HasAttributes, indexers, MoveTo*Attribute() and Read() ).
275           Modified Skip() to call Read () explicitly.
276         * XmlTextReader.cs :
277           Fixed ReadInnerXml() which ignored EndElement token in certain cases.
278           Implemented MoveToAttribute (local, ns), and modified GetAttribute()
279           in relation to this change.
280           Attributes for XmlDeclaration are now correctly set.
281         * XmlTextWriter.cs : WriteRaw() is now different from WriteString().
282           Simplified WriteAttributes() for XmlDeclaration.
283
284 2003-04-26  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
285
286         * XmlTextReader.cs : fixed ReadInnerXml(). it was inconsistent with
287           Depth property fix.
288
289 2003-04-25  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
290
291         * XmlDocument.cs : fixed Load() to set baseURI correctly.
292         * XmlReader.cs : patch by Gonzalo. Fixed not to skip XmlDeclaration.
293         * XmlTextReader.cs :
294           fixed Depth. When it's on StartElement, Depth was already incremented.
295           fixed private SaveProperty(), which moved away its saved properties
296           when MoveToElement was called repeatedly.
297         * XmlTextWriter.cs : fixed WriteQualifiedName() to close start tag.
298         * XmlWriter.cs :
299           WriteAttributes() refactory (for XMLDecl).
300           WriteNode() don't Read() when the reader is Initial state, let other
301           invokation to Read(). In case of Element, it should write entire
302           element. In case of Attribute, it shouldn't Read().
303           WriteStartDocument() should omit standalone decl. when there is no
304           explicit value.
305
306 2003-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
307
308         * XmlReader.cs: reverted last patch. It breaks System.Configuration 
309         because 1. it considers XmlDeclaration as content and 2. always
310         returns XmlNodeType.None.
311         
312
313 2003-04-23  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
314
315         * Added missing ChangeLog of 4/4/2003.
316         * XmlTextWriter.cs : patch by Erik. fixed WriteQualifiedName.
317           (write prefix instead of ns.)
318         * XmlInputStream.cs : file access mode fix (FileAccess.Read was missing)
319         * XmlTextReader.cs : modified to call Read() instead of ReadContent().
320           (It may be required for decorated reader such as XmlValidatingReader.)
321           Changed Read() error message for mismatch end tag.
322         * XmlDocument.cs : (ReadNode) friendly message for mismatch EndElement.
323         * XmlReader.cs : Corrected misinterpreted MoveToContent() method.
324
325 2003-04-04  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
326
327         * XmlDocument.cs : Load() now closes the given XmlReader.
328           Don't allow creation of XmlTextReader for Doctype. (workaround.)
329         * XmlInputStream.cs : It now closes its internal stream explicitly.
330         * XmlNode.cs : RemoveChild() bugfix for removing LastLinkedChild.
331         * XmlNodeReader.cs : GetAttribute() bugfix for not-present attribute.
332         * XmlParserInput.cs : added Close() method.
333         * XmlReader.cs : MoveToContent() should (1) not Read in case of empty
334           element, and (2) MoveToElement() in case of attribute.
335         * XmlTextReader.cs : Close() now actually closes source TextReaders.
336
337 2003-03-26  Duncan Mak  <duncan@ximian.com>
338
339         * XmlTextWriter.cs (Write): A patch from Atsushi to fix
340         prematurely ending the write, or something like that. It was
341         causing us to chop off the end of the document when we're trying
342         to generate XML Schemas.
343
344 2003-03-23  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
345
346         * XmlTextReader.cs : implemented ReadString().
347           fixed ctor(string, XmlNodeType, XmlParserContext) - don't raise
348           null reference exception when context is null.
349         * XmlNodeReader.cs : fixed ReadString() - should ignore attributes etc.
350           fixed Read() - when positioned at EndElement, it didn't progress.
351           fixed HasAttribute - it didn't return false in all cases.
352           fixed Name and LocalName - only limited type of nodes return names.
353           fixed AttributeCount - in some cases it threw null ref exception.
354
355 2003-03-22  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
356
357         * XmlTextWriter.cs : WriteStartDocument doesn't set hasRoot=true, then
358           WriteEndDocument without root element now raises an error correctly.
359         * XmlDocumentNavigator.cs : (MoveToFirstChild) fixed bugzilla #36672.
360           implemented BaseURI, NameTable, XmlLang, GetAttributes, GetNamespace,
361           MoveToAttribute.
362
363 2003-03-22  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
364
365         * XmlElement.cs : RemoveAttribute now don't throws when specified
366           attribute does not exist.
367
368 2003-03-21  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
369
370         * XmlNode.cs : add descriptions for some node type error.
371
372 2003-03-21  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
373
374         * XmlNodeArrayList.cs, XmlNodeListChildren.cs : bugzilla #39920 fix.
375
376 2003-03-19  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
377
378         * XmlDeclaration.cs : quick fix, not to use regex for set_Value.
379
380 2003-03-19  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
381
382         * XmlTextReader.cs : Fixed wrong notationdecl SYSTEM id read.
383         * XmlInputStream.cs : Should allow versionless input stream entity.
384
385 2003-03-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
386
387         * added XmlParserInput.cs for multi xml document sources.
388         * added DTDObjectModel.cs (maybe temporary).
389         * XmlTextReader.cs :
390           + fixed ctor to use XmlStreamReader. Allowed null XmlParserContext.
391           + Some members such as LineNumber, ReadChar now uses XmlParserInput.
392           + added support for Namespaces (namespace-ignorant parse available).
393           + added support for XmlResolver.
394           + replace SetReaderContext()/SetReaderFragment() with Initialize().
395           + use NameTable in CreateNameString.
396           + fixed ReadCData(). Now reads "]]]>" correctly.
397           + support for DTD parse.
398           + Read() now throws an error when it reached EOF while Depth > 0.
399         * XmlAttribute.cs,
400           XmlDocumentFragment.cs,
401           XmlElement.cs : fix related to the changes of XmlTextReader.Initialize
402         * XmlDocument.cs : ReadNode() now reads DocumentType.
403         * XmlDocumentType.cs : implemented Entities, Notations, WriteTo().
404         * XmlEntity.cs,
405           XmlNotation.cs : added override LastLinkedChild (for doctype node).
406         * XmlNamedNodeMap.cs : Remove() raises an error if target is read only.
407         * XmlElement.cs : bugfix for node removal of set_InnerXml.
408         * XmlNode.cs : added insertBeforeIntern() derived from InsertBefore().
409           (to append child XmlEntity into XmlDocumentType correctly.)
410         * XmlInputStream.cs : fixed to access file with FileAccess.Read.
411
412 2003-03-15  Duncan Mak  <duncan@ximian.com>
413
414         * XmlElement.cs (Name): Only append prefix + ':' when prefix is
415         neither String.Empty nor null. Thanks to Simon Guindon for
416         reporting the bug and Jackson for fixing this bug with me.
417
418 2003-03-15  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
419
420         * XmlConstructs.cs : fix "int IsXXX()" to reject negative value.
421         * XmlDocument.cs : simplify Load(string url) to use XmlTextReader.
422           fixed ReadNode(), it should call reader.Read() only on Initial state.
423         * XmlInputStream.cs : Changed namespace. Added XmlStreamReader(stream)
424           and XmlStreamReader (string). Fixed XmlInputStream(url) not to use
425           System.Net.WebClient directly.
426         * XmlParserContext.cs : baseURI never be null.
427         * XmlTextWriter.cs : use WebName for Encoding instead of HeaderName.
428         * XmlUrlResolver.cs : namespace change for XmlInputStream.
429
430 2003-03-12  Elan Feingold <efeingold@mn.rr.com>
431
432         * XmlTextReader.cs: When throwing a ReaderException, show what
433         character was the culprit
434
435 2003-03-05  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
436
437         * XmlDocumentFragment.cs, XmlElement.cs :
438           modified InnerXml (fragment type from Element to DocumentFragment).
439
440         * XmlElement.cs : fixed WriteTo() ns check.
441         * XmlNamespaceManager.cs : MS.NET allows Add() used two or more times.
442         * XmlNode.cs : fixed ConstructNamespaceManager().
443
444         * XmlConstructs.cs : added IsSpace, IsName, IsNameStart, IsNCName,
445           IsPubid with an int arg.
446         * XmlReader.cs : changed to use XmlChar.cs (its role is as same as
447           XmlConstructs.cs).
448         * XmlTextReader.cs :
449           improved error messages with line info.
450           / checking matching start and end tags.
451           / prevents the apperance of multiple root elements. (patch by Erik)
452           fixed and refactored ReadInnerXml() and ReadOuterXml()
453           changed to use XmlChar.cs.
454
455         * XmlTextWriter.cs : changed to put element's xmlns at CloseStartTag ()
456           (It will help c14n implementation.)
457           / blocks multiple attribute output with element node.
458
459 2003-02-28  Alan Tam <Tam@SiuLung.com>
460
461         * XmlConvert.cs: fixed the most ToXXX(string) and ToString(XXX)
462         methods to make them compatible with the XML Schema Spec from W3C
463         ToString(TimeSpan) is still outstanding
464
465 2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
466
467         * XmlDocument.cs:
468         (Load (string)): hack to workaround some issues with Uri.Parse. Once
469         Parse is fixed, remove the hack.
470
471 2003-02-16  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
472
473         * XmlQualifiedName.cs : fixed GetHashCode() to avoid null reference
474         * XmlTextReader.cs : fixed ReadAttributeValue() to handle 
475                 entity reference, and some refactory.
476
477 2003-02-16  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
478
479         * XmlUrlResolver.cs : WebClient.Credentials was not implemented yet.
480
481 2003-02-16  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
482
483         * XmlInputStream.cs : added (also contains internal XmlStreamReader).
484         * XmlDocument.cs : Load () now can specify URL using XmlUrlResolver,
485                 and can read non-UTF-8 stream.
486         * XmlTextReader.cs : related to above stream fix.
487         * XmlUrlResolver.cs : implemented GetEntity ().
488
489 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
490
491         * XmlTextWriter.cs: implemented WriteRaw (char[], int, int).
492
493 2003-02-02  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
494
495         * XmlTextReader.cs : implemented QuoteChar.
496
497 2003-01-26  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
498
499         * XmlNode.cs : implemented ReplaceChild.
500           removed DocElem checking at InsertBefore.
501         * XmlNodeReader.cs : fixed ReadString and Read for correct node info.
502         * XmlText.cs : implemented CloneNode and SplitText.
503
504 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
505
506         * XmlCharacterData.cs: added XPathNodeType property.
507
508 2003-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
509
510         * XmlTextWriter.cs: throw an exception if WriteEndDocument is
511         called without a prior call to WriteStartDocument.
512
513 2003-01-21  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
514
515         * XmlNodeReader.cs : several fix to get more compatible with MS.NET.
516
517 2003-01-19  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
518
519         * XmlNamespaceManager.cs : fundamental change of LookupPrefix to return
520                 null when no matching uri.
521         * XmlElement.cs : removed unnecessary xmlns output.
522         * XmlNode.cs : GetPrefixOfNamespace fix along with the change above.
523         * XmlTextWriter.cs : LookupPrefix and WriteStartElementInternal fix 
524                 along with the change above, and moved timing of 'xmlns' output 
525                 to CloseStartElement.
526         * XmlWriter.cs: modified WriteStartAttribute, same as yesterday.
527
528 2003-01-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
529
530         * XmlWriter.cs: modified WriteStartElement (see test for detail).
531         Added WriteNode.
532
533 2003-01-13  Ville Palo <vi64pa@koti.soon.fi>
534
535         * XmlDocument.cs: Added CheckName () method to check names validity.
536         
537 2003-01-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
538
539         * XmlTextReader.cs:
540         (ReadOuterXml): use Depth property which return elementDepth, not depth.
541
542 2003-01-11  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
543
544         * XmlElement.cs : (by ville) XmlElement.set_InnerText event bugfix.
545         * XmlTextReader.cs : some fix for ReadOuterXml().
546
547 2003-01-08  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
548
549         * XmlTextReader.cs : bugfix for attributes related to creation of 
550           XmlAttribute *node*.
551
552 2003-01-08  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
553
554         * XmlTextReader.cs : bugfix for attribute values which have entity
555           references.
556
557 2002-12-28  Ville Palo <vi64pa@koti.soon.fi>
558
559         * XmlDocument.cs: XmlTextWriter.Formatting == Indented when 
560         calling Save () -methods.
561         
562 2002-12-28  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
563
564         * XmlNodeReader.cs : primitive reading implementation.
565
566 2002-12-28  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
567
568         * XmlElement.cs : quick fix for the incomplete patch of #35308 below.
569
570 2002-12-28  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
571
572         * XmlDocument.cs : removed inconsistent line-feed output.
573         * XmlElement.cs, XmlTextWriter.cs :
574                 fixed for bugzilla 35308 (default ns output)
575         * XmlWhitespace.cs : limited output only when preserving whitespace.
576
577 2002-12-24  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
578
579         * XmlAttribute.cs, XmlDocument.cs, XmlTextReader.cs:
580                 Implemented XmlTextReader.ReadAttributeValue().
581                 Added internal ReadAttributeNodeValue().
582                 Fixed XmlAttribute.InnerXml to use these methods.
583         
584         * XmlDocument.cs, XmlDocumentFragment.cs, XmlElement.cs, XmlNode.cs:
585                 Implemented XmlDocument.ReadNode() and removed ConstructDOM().
586                 Other changes are replacing them.
587
588 2002-12-24  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
589
590         * XmlDocument.cs: patch by Ville (fixed default PreserveWhitespace)
591
592 2002-12-21  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
593
594         * XmlElement.cs, XmlTextWriter.cs, XmlWriter.cs:
595                 patch by JD Conley <jconley@winfessor.com>.
596                 (Fix for xmlns attribute output.)
597
598 2002-12-05  Ville Palo <vi64p@koti.soon.fi>
599
600         * XmlQualifiedName.cs: Little fix to ToString () -method
601
602 2002-12-04  Tim Haynes  <thaynes@openlinksw.com>
603
604         * class/System.XML/System.Xml/XmlElement.cs: Made more refined
605         checks on attributeNode to fix 32262.
606
607 2002-12-03  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
608
609         * XmlDocument.cs (CreateNavigator(XmlNode)) : reverted
610         * XmlTextWriter.cs (WriteStartElementInternal):
611           fixed when default namespace was specified, all descendants
612           fail to omit the default namespace declarations.
613         * XmlAttribute.cs,
614           XmlDocument.cs,
615           XmlNode.cs (internal XmlLang/XmlSpace) : implemented(defined)
616         * XmlAttribute.cs,
617           XmlDocumentFragment.cs,
618           XmlElement.cs (set_InnerXml): now uses XmlLang/XmlSpace
619         * XmlElement.cs (set_IsEmpty) : implemented
620           (WriteTo) : removed my improper indenting (Writer already done)
621         * XmlNode.cs (BaseURI) : fixed if ParentNode is null, NullPointerEx
622           (ConstructDOM) : implemented when xmlReader isn't XmlTextReader
623         ...and renamed XmlDocument.ConventionalParser to ReusableReader ;-)
624
625 2002-12-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
626
627         * XmlNode.cs (RemoveChild):
628                 bugfixed when XmlNode is Document OwnerDocument is null
629         * XmlDeclaration.cs (Value):
630                 bugfixed regular expression pattern.
631         * XmlDocument.cs (CreateNavigator): bugfixed access modifier.
632
633 2002-11-24  Duncan Mak  <duncan@ximian.com>
634
635         * XmlImplementation.cs (HasFeature): Fixed a typo. Thanks for
636         Fabricio Barros Cabral (fx) on #mono for spotting it. This is his
637         first patch to Mono! ;-)
638
639 2002-11-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
640
641         * XmlNode.cs:
642         (AppendChild): readded refChild != null condition before throwing
643         "cannot insert this node in this position" exception. There's probably
644         a better solution. Fixes #34191.
645         (RemoveAll): changed following Atsushi instructions.
646         
647
648 2002-11-13  Duncan Mak  <duncan@ximian.com>
649
650         * XmlElement.cs (IsEmpty): A temporary check-in to keep gtk-sharp
651         compiling.
652
653 2002-11-14  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
654
655         * XmlDocument.cs : unified all constructors, added ConventionalParser,
656                 implemented CloneNode() and CreateEntityReference(),
657         * XmlEntityReference.cs : set_Value, WriteContentTo, WriteTo
658                 set BaseURI to MonoTODO
659         * XmlNode.cs : implemented PrependChild, modified ConstructDOM,
660                 bugfix InsertAfter (incorrect prepending) and InsertBefore
661                 (more than one DocumentElements hadn't caused errors)
662         * XmlTextReader.cs : unified all constructors,
663                 added internal SetReaderContext(), SetReaderFragment()
664                 bugfix (syntax check of PUBLIC / getting internal subset)
665
666 2002-11-13  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
667
668         XmlAttribute.cs : set_InnerText, set_InnerXml, some check for set_Prefix
669         XmlAttributeCollection.cs : (indexer) this[localName, namespaceURI]
670         XmlCharacterData.cs : exchanged Data and Value
671                 (for processing events and inheritance)
672         XmlDocumentFragment.cs : set_InnerXml
673         XmlSignificantWhitespace.cs : set_Value
674         XmlTextReader.cs : ReadAttributeValue
675
676 2002-11-04  Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
677
678         XmlAttribute.cs: fixed missing internal 'OwnerElement''SetOwnerElement'
679
680 2002-11-03  Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
681
682         * XmlAttributeCollection.cs : checks owner element.
683                 implemented CopyTo, InsertAfter, InsertBefore, Prepend,
684                 Remove, RemoveAt, SetNamedItem.
685                 removed some logics that sets 'Parent' (that should be null)
686         * XmlDocument.cs : set_InnerXml, [PreserveWhitespace(incomplete)]
687         * XmlDocumentFragment.cs : get_InnerXml, WriteContentTo, WriteTo
688         * XmlElement.cs : implemented WriteTo, set_InnerText.
689                 Fixed WriteTo() to add xmlns:* attributes when
690                 writer.LookupPrefix() returned mismatching.
691         * XmlNamedNodeMap.cs : compare not only name but localname and nsuri.
692                 Removing different prefixes for the same uri now runs correct.
693                 added SetNamedItem(XmlNode node, int position_to_insert).
694         * XmlNode.cs : ConstructDOM (logically) creates XmlEntityReference,
695                 XmlWhitespace, and XmlSignificantWhitespace
696
697 2002-10-31  Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
698
699         * XmlDocument.cs : implemented CreateDocumentFragment()
700         * XmlElement.cs, XmlLinkedNode.cs :
701                 moved LastLinkedChild from XmlElement to XmlLinkedNode.
702         * XmlEntityReference.cs : must throw NotImplementedException.
703         * XmlNode.cs :
704               + implemented InsertBefore() and then implemented InsertAfter()
705                 and modified AppendChild() to call it.
706               + added logic to check ReadOnly, parent document equivalence,
707                 and inserting any 'content' before/after DocumentElement.
708               + implemented Clone() [it is equals to CloneNode() by MS doc.]
709               + added logic in RemoveChild() to check parent of oldChild.
710               + fixed ConstructNamespaceManager() to internal only.
711
712 2002-10-29  Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
713
714         * XmlAttribute.cs : add internal 'IsDefault' property
715                             (equals to !Specified)
716         * XmlImplementation.cs : added 'internalNameTable' property.
717         * XmlDocument.cs :
718             + now allows "" for 'standalone' in CreateXmlDeclaration.
719             + implemented 'Implementation' property and constructor with it.
720             + added logic for appending name table (but still no use)
721             + implemented property 'DocumentType'
722               (but without internalSubset parsing. wait for next update.)
723         * XmlNode.cs :
724             + modified AppendChild() and RemoveChild() to support fragment.
725             + modified AppendChild() to remove newChild from its parent
726               when newChild is already in the other place.
727             + modified RemoveChild() to set parentNode null.
728             + modified ConstructDOM() to create DocumentType,
729               and fixed access modifier ('internal protected' to 'internal')
730         * XmlLinkedNode.cs : fixed 'NextSibling' to return null
731                 when its parent is null.
732         * XmlDocumentFragment.cs : added internal override 'LastLinkedChild'
733                 property to enable AppendChild() for this class.
734         * XmlTextReader.cs : appended private publicId and systemId fields.
735
736 2002-10-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
737
738         * XmlTextReader.cs: make it work when the underlying Stream is not
739         'seekable'.
740
741 2002-10-26  Piers Haken <piersh@friskit.com>
742
743         * XmlNode.cs: add virtual property XPathNodeType
744         * XmlAttribute.cs:
745         * XmlComment.cs:
746         * XmlDocument.cs:
747         * XmlElement.cs::
748         * XmlProcessingInstruction.cs:
749         * XmlSignificantWhitespace.cs:
750         * XmlText.cs:
751         * XmlWhitespace.cs: implement XPathNodeType property
752         * XmlDocumentNavigator.cs: use XPathNodeType property instead of switch
753
754 2002-10-26  Piers Haken <piersh@friskit.com>
755
756         * XmlDocumentNavigator.cs: return invalid XPathNodeType (-1) for unknown node types.
757
758 2002-10-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
759
760         * XmlTextReader.cs: don't increment depth for entity references.
761
762 2002-10-22  Tim Haynes <thaynes@openlinksw.com>
763
764         * - Fixed the duplication of xmlns:xx = yy when serializing the
765         XML for serialization
766         
767         Fixed the unnecessary parsing/serializing when adding assemblies
768         for serialization 
769
770         Avoided setting the XmlNode.InnerXml property
771         (as it's not implemented) 
772
773         Fixed the usage/implementation of
774         XmlElement.GetElementsByTagName()
775         
776 2002-10-21  Duncan Mak  <duncan@ximian.com>
777
778         * XmlDocument.cs:
779         * XmlElement.cs:
780         * XmlNode.cs:
781         * XmlTextReader.cs: Implementation for XmlNode.InnerXml from
782         Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>.
783
784 2002-10-18  Duncan Mak  <duncan@ximian.com>
785
786         * XmlDocument.cs: Applied a patch by Atsushi Enomoto
787         <ginga@kit.hi-ho.ne.jp>.
788
789 2002-10-12  A.Enomoto <ginga@kit.hi-ho.ne.jp>
790
791         * XmlDocument.cs (ImportNode): Implemented
792
793 2002-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
794
795         * XmlDocument.cs: one more Load method implemented.
796         * XmlTextReader.cs: Depth now works.
797
798 2002-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
799
800         * XmlConvert.cs: IsInvalid is now internal.
801         * XmlNamespaceManager.cs: implemented RemoveNamespace
802         * XmlTextReader.cs: return BaseURI and Encoding from the parser.
803         * XmlTextWriter.cs: implemented WriteName and WriteNmToken.
804
805 2002-09-19  Matt Hunter <mahunter@tconl.com>
806
807         * XmlElement.cs: Implementing SetAttributeNode(localName,namespaceURI)
808         * XmlAttributeCollection.cs: Implemented Append (XmlAttribute) 
809           
810 2002-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
811
812         * XmlConvert.cs: finished implementation.
813         * XmlTextReader.cs: fixed #30239.
814         * XmlTextWriter.cs: fixed #30240.
815
816 2002-09-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
817
818         * XmlTextReader.cs: line and position begin with 1.
819
820 2002-09-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
821
822         * XmlException.cs: added a new internal constructor for IXmlLineInfo
823         and output line and position info in Message.
824
825         * XmlReader.cs: implemented missing bits.
826
827 2002-09-12      Piers Haken <piersh@friksit.com>
828
829         * XmlDocumentNavigator.cs: implement MoveToId()
830
831 2002-09-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
832
833         * XmlTextWriter.cs: fixed bug #29886.
834
835 2002-08-26  Ravi Pratap  <ravi@ximian.com>
836
837
838         * XmlAttribute.cs (InnerText): Implement getting this property.
839
840         * XmlNode.cs (InnerText): Ensure that we append only values of
841         text nodes.
842
843 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
844
845         * XmlWriter.cs: made ws and namespaceManager protected. mcs has a bug
846         that allowed compiling this.
847         [ FIXME: filed bug #29435. mcs should have failed on this ]
848
849 2002-08-25  Tim Coleman <tim@timcoleman.com>
850         * XmlNode.cs:
851                 Change CreateNavigator to not be virtual.
852         * XmlElement.cs:
853                 Add set_Prefix and InnerText accessors.
854         * XmlEntityReference.cs:
855                 Add set_Value accessor.
856         * XmlTextWriter.cs:
857                 Make objects which should be private private.
858         * XmlWriter.cs:
859                 Remove WriteStartElementInternal abstract definition.
860         * XmlValidatingReader.cs:
861                 New stubs added.
862
863 2002-08-22  Jason Diamond <jason@injektilo.org>
864
865         * XmlAttributeCollection.cs, XmlElement.cs: Implementation of RemoveAll
866         and RemoveAllAttributes courtesy of Matt Hunter <xrkune@tconl.com>.
867
868 2002-08-22  Jason Diamond <jason@injektilo.org>
869
870         * XmlElement.cs: Correction to previous GetElementsByTagName patch
871         courtesy of Matt Hunter <xrkune@tconl.com>.
872
873 2002-08-22  Jason Diamond <jason@injektilo.org>
874
875         * XmlDocument.cs, XmlElement.cs: Added implementation of namepsace
876         qualified GetElementsByTagName courtesy of Matt Hunter 
877         <xrkune@tconl.com>.
878
879 2002-08-19  Jason Diamond <jason@injektilo.org>
880
881         * XmlDocument.cs, XmlElement.cs: Added implementation of 
882         GetElementsByTagName courtesy of Matt Hunter <xrkune@tconl.com>.
883
884 2002-08-16  Jason Diamond <jason@injektilo.org>
885
886         * XmlElement.cs: Fixed writing out qualified elements courtesy of
887         Marcus Bürgel <marcus.buergel@gmx.de>.
888
889 2002-08-13  Tim Coleman <tim@timcoleman.com>
890         * XmlTextWriter.cs:
891                 Partial implementation of WriteQualifiedName ().
892
893 2002-08-07  Kral Ferch <kral_ferch@hotmail.com>
894         * XmlCharacterData.cs:  Implemented AppendData(), DeleteData(),
895                 InsertData(), and ReplaceData().  These methods fire the
896                 NodeChanging and NodeChanged events.
897                 
898         * XmlDocument.cs:  Fixed bugs in onNodeChanged() and onNodeChanging().
899         
900         * XmlNode.cs:  AppendChild() fires NodeInserting and NodeInserted events.
901                 RemoveAll() and RemoveChild() fire NodeRemoving and NodeRemoved events.
902         
903 2002-08-03  Tim Coleman <tim@timcoleman.com>
904         * XmlNamespaceManager.cs:
905                 .Net allows the empty namespace to be redefined
906                 at a later point, but the current implementation
907                 did not.  This fixes a hashtable conflict.
908
909 2002-07-26  Tim Coleman <tim@timcoleman.com>
910         * XmlTextWriter.cs:
911                 When given a textwriter, check to see if it has a
912                 null encoding. This was being done for other inputs
913                 than a textwriter.
914
915 Wed Jul 24 13:16:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
916
917         * XmlTextReader.cs: rough line/column support.
918
919 2002-07-23  Duncan Mak  <duncan@ximian.com>
920
921         * XmlConvert.cs: Implement the ToDateTime method. ToDateTime
922         (string, string []) is particularly strange.
923
924         * XmlException.cs: Remember to call the base serialization
925         constructor.
926
927         * XmlNodeReader.cs: Keep a new variable to store the Depth. 
928
929 2002-07-14  Jason Diamond  <jason@injektilo.org>
930
931         * XmlAttribute.cs: Removed ownerElement field since we can reuse 
932         parentNode field.
933
934         * XmlDocumentNavigator.cs: MoveToParent now moves to the OwnerElement
935         if the current node is an attribute.
936
937         * XmlElement.cs: SetAttributeNode now sets the new attribute's
938         owner element.
939
940 2002-07-12  Jason Diamond  <jason@injektilo.org>
941
942         * XmlDocument.cs: If null was passed in for prefix or namespaceURI when
943         creating an element, use String.Empty instead.
944
945 2002-07-12      Piers Haken <piersh@friksit.com>
946
947         * XmlAttributeCollection.cs: implement some ItemOf indexers
948         * XmlNamedNodeMap.cs: add internal 'Nodes' accessor for the nodeList field
949         * XmlNode.cs: SelectNodes: return empty XmlNodeList, not null
950
951 2002-07-06  Ajay kumar Dwivedi <adwiv@yahoo.com>
952
953
954 2002-10-26  Piers Haken <piersh@friskit.com>
955
956         * XmlDocumentNavigator.cs: return invalid XPathNodeType (-1) for unknown node types.
957
958 2002-10-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
959
960         * XmlTextReader.cs: don't increment depth for entity references.
961
962 2002-10-22  Tim Haynes <thaynes@openlinksw.com>
963
964         * - Fixed the duplication of xmlns:xx = yy when serializing the
965         XML for serialization
966         
967         Fixed the unnecessary parsing/serializing when adding assemblies
968         for serialization 
969
970         Avoided setting the XmlNode.InnerXml property
971         (as it's not implemented) 
972
973         Fixed the usage/implementation of
974         XmlElement.GetElementsByTagName()
975         
976 2002-10-21  Duncan Mak  <duncan@ximian.com>
977
978         * XmlDocument.cs:
979         * XmlElement.cs:
980         * XmlNode.cs:
981         * XmlTextReader.cs: Implementation for XmlNode.InnerXml from
982         Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>.
983
984 2002-10-18  Duncan Mak  <duncan@ximian.com>
985
986         * XmlDocument.cs: Applied a patch by Atsushi Enomoto
987         <ginga@kit.hi-ho.ne.jp>.
988
989 2002-10-12  A.Enomoto <ginga@kit.hi-ho.ne.jp>
990
991         * XmlDocument.cs (ImportNode): Implemented
992
993 2002-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
994
995         * XmlDocument.cs: one more Load method implemented.
996         * XmlTextReader.cs: Depth now works.
997
998 2002-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
999
1000         * XmlConvert.cs: IsInvalid is now internal.
1001         * XmlNamespaceManager.cs: implemented RemoveNamespace
1002         * XmlTextReader.cs: return BaseURI and Encoding from the parser.
1003         * XmlTextWriter.cs: implemented WriteName and WriteNmToken.
1004
1005 2002-09-19  Matt Hunter <mahunter@tconl.com>
1006
1007         * XmlElement.cs: Implementing SetAttributeNode(localName,namespaceURI)
1008         * XmlAttributeCollection.cs: Implemented Append (XmlAttribute) 
1009           
1010 2002-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1011
1012         * XmlConvert.cs: finished implementation.
1013         * XmlTextReader.cs: fixed #30239.
1014         * XmlTextWriter.cs: fixed #30240.
1015
1016 2002-09-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1017
1018         * XmlTextReader.cs: line and position begin with 1.
1019
1020 2002-09-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1021
1022         * XmlException.cs: added a new internal constructor for IXmlLineInfo
1023         and output line and position info in Message.
1024
1025         * XmlReader.cs: implemented missing bits.
1026
1027 2002-09-12      Piers Haken <piersh@friksit.com>
1028
1029         * XmlDocumentNavigator.cs: implement MoveToId()
1030
1031 2002-09-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1032
1033         * XmlTextWriter.cs: fixed bug #29886.
1034
1035 2002-08-26  Ravi Pratap  <ravi@ximian.com>
1036
1037
1038         * XmlAttribute.cs (InnerText): Implement getting this property.
1039
1040         * XmlNode.cs (InnerText): Ensure that we append only values of
1041         text nodes.
1042
1043 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1044
1045         * XmlWriter.cs: made ws and namespaceManager protected. mcs has a bug
1046         that allowed compiling this.
1047         [ FIXME: filed bug #29435. mcs should have failed on this ]
1048
1049 2002-08-25  Tim Coleman <tim@timcoleman.com>
1050         * XmlNode.cs:
1051                 Change CreateNavigator to not be virtual.
1052         * XmlElement.cs:
1053                 Add set_Prefix and InnerText accessors.
1054         * XmlEntityReference.cs:
1055                 Add set_Value accessor.
1056         * XmlTextWriter.cs:
1057                 Make objects which should be private private.
1058         * XmlWriter.cs:
1059                 Remove WriteStartElementInternal abstract definition.
1060         * XmlValidatingReader.cs:
1061                 New stubs added.
1062
1063 2002-08-22  Jason Diamond <jason@injektilo.org>
1064
1065         * XmlAttributeCollection.cs, XmlElement.cs: Implementation of RemoveAll
1066         and RemoveAllAttributes courtesy of Matt Hunter <xrkune@tconl.com>.
1067
1068 2002-08-22  Jason Diamond <jason@injektilo.org>
1069
1070         * XmlElement.cs: Correction to previous GetElementsByTagName patch
1071         courtesy of Matt Hunter <xrkune@tconl.com>.
1072
1073 2002-08-22  Jason Diamond <jason@injektilo.org>
1074
1075         * XmlDocument.cs, XmlElement.cs: Added implementation of namepsace
1076         qualified GetElementsByTagName courtesy of Matt Hunter 
1077         <xrkune@tconl.com>.
1078
1079 2002-08-19  Jason Diamond <jason@injektilo.org>
1080
1081         * XmlDocument.cs, XmlElement.cs: Added implementation of 
1082         GetElementsByTagName courtesy of Matt Hunter <xrkune@tconl.com>.
1083
1084 2002-08-16  Jason Diamond <jason@injektilo.org>
1085
1086         * XmlElement.cs: Fixed writing out qualified elements courtesy of
1087         Marcus Bürgel <marcus.buergel@gmx.de>.
1088
1089 2002-08-13  Tim Coleman <tim@timcoleman.com>
1090         * XmlTextWriter.cs:
1091                 Partial implementation of WriteQualifiedName ().
1092
1093 2002-08-07  Kral Ferch <kral_ferch@hotmail.com>
1094         * XmlCharacterData.cs:  Implemented AppendData(), DeleteData(),
1095                 InsertData(), and ReplaceData().  These methods fire the
1096                 NodeChanging and NodeChanged events.
1097                 
1098         * XmlDocument.cs:  Fixed bugs in onNodeChanged() and onNodeChanging().
1099         
1100         * XmlNode.cs:  AppendChild() fires NodeInserting and NodeInserted events.
1101                 RemoveAll() and RemoveChild() fire NodeRemoving and NodeRemoved events.
1102         
1103 2002-08-03  Tim Coleman <tim@timcoleman.com>
1104         * XmlNamespaceManager.cs:
1105                 .Net allows the empty namespace to be redefined
1106                 at a later point, but the current implementation
1107                 did not.  This fixes a hashtable conflict.
1108
1109 2002-07-26  Tim Coleman <tim@timcoleman.com>
1110         * XmlTextWriter.cs:
1111                 When given a textwriter, check to see if it has a
1112                 null encoding. This was being done for other inputs
1113                 than a textwriter.
1114
1115 Wed Jul 24 13:16:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
1116
1117         * XmlTextReader.cs: rough line/column support.
1118
1119 2002-07-23  Duncan Mak  <duncan@ximian.com>
1120
1121         * XmlConvert.cs: Implement the ToDateTime method. ToDateTime
1122         (string, string []) is particularly strange.
1123
1124         * XmlException.cs: Remember to call the base serialization
1125         constructor.
1126
1127         * XmlNodeReader.cs: Keep a new variable to store the Depth. 
1128
1129 2002-07-14  Jason Diamond  <jason@injektilo.org>
1130
1131         * XmlAttribute.cs: Removed ownerElement field since we can reuse 
1132         parentNode field.
1133
1134         * XmlDocumentNavigator.cs: MoveToParent now moves to the OwnerElement
1135         if the current node is an attribute.
1136
1137         * XmlElement.cs: SetAttributeNode now sets the new attribute's
1138         owner element.
1139
1140 2002-07-12  Jason Diamond  <jason@injektilo.org>
1141
1142         * XmlDocument.cs: If null was passed in for prefix or namespaceURI when
1143         creating an element, use String.Empty instead.
1144
1145 2002-07-12      Piers Haken <piersh@friksit.com>
1146
1147         * XmlAttributeCollection.cs: implement some ItemOf indexers
1148         * XmlNamedNodeMap.cs: add internal 'Nodes' accessor for the nodeList field
1149         * XmlNode.cs: SelectNodes: return empty XmlNodeList, not null
1150
1151 2002-07-06  Ajay kumar Dwivedi <adwiv@yahoo.com>
1152
1153         * XmlTextWriter: Fixed Indentation. IndentationOverridden should
1154                 not be set when inside a attribute.
1155
1156 2002-07-06  Ajay kumar Dwivedi <adwiv@yahoo.com>
1157
1158         * XmlTextWriter: In WriteStartElement, if namespace is null and 
1159                 prefix is null|empty do not write out xmlns=""
1160         
1161         * XmlWriter: WriteStartElement calls the virtual method with null
1162                 argument instead of empty string.
1163
1164 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1165
1166         * XmlTextReader.cs: implemented .ctor (Stream).
1167
1168 2002-06-26  Duncan Mak  <duncan@ximian.com>
1169
1170         * XmlNodeReader.cs: Implementation of most of the properties, and
1171         some of the related methods. 
1172
1173 2002-06-23  Piers Haken <piersh@friskit.com>
1174         
1175         * XmlDocumentNavigator.cs: implement Clone()
1176         * XmlElement.cs: remove bogus unimplemented override of InnerText
1177         * XmlNode.cs: implment SelectNodes/SelectSingleNode
1178         * XmlNodeArrayList.cs: new support class for SelectNodes
1179
1180 2002-06-21  Ajay kumar Dwivedi <adwiv@yahoo.com>
1181         
1182         * XmlQualifiedName: Name and Namespaces are never null. If null is passed
1183                 to the constructor, set them to empty strings.
1184                 Fixed the Operators.
1185         
1186 2002-06-18  Ajay kumar Dwivedi <adwiv@yahoo.com>
1187         
1188         * XmlTextReader.cs: HasLineInfo returns false instead of throwing an
1189         Exception.
1190
1191 2002-06-14  Duncan Mak  <duncan@ximian.com>
1192
1193         * XmlConvert.cs: Added CLSCompliant attributes to methods.
1194         
1195 2002-06-12  Duncan Mak  <duncan@ximian.com>
1196
1197         * XmlCharacterData.cs (Value): Throw an ArgumentException in the
1198         set block if the node is read-only.
1199
1200 2002-06-10  Ajay kumar Dwivedi <adwiv@yahoo.com>
1201         * XmlConstruct.cs : New Internal class with Helper methods for
1202         Checking XmlConstructs
1203         * XmlConvert.cs: Implemented most of the methods
1204
1205 2002-06-08  Duncan Mak  <duncan@ximian.com>     
1206
1207         * XmlDocument.cs (Load):
1208         Added bits to Load (string) for BaseURI support.
1209
1210         * XmlAttribute.cs (BaseURI): 
1211         * XmlDocument.cs (BaseURI): 
1212         * XmlEntity.cs (BaseURI): Implemented.
1213
1214 2002-05-27  Jason Diamond  <jason@injektilo.org>
1215
1216         * XmlDocumentNavigator.cs: Added file to directory.
1217
1218         * XmlNode.cs (CreateNavigator): Implemented.
1219         (InnerText): Implemented.
1220
1221         * XmlDocument.cs (NamespaceURI, Prefix): Return String.Empty instead of
1222         throwing exception.
1223         (Load(XmlReader)): Allow for namespace qualified attributes.
1224
1225         * XmlElement.cs: Implemented GetAttribute(string, string) and both 
1226         GetAttributeNode overloads.
1227         (SetAttributeNode(XmlAttribute)): Implemented.
1228
1229         * XmlNamedNodeMap.cs: Fixed copy/paste bugs in GetNamedItem(string, string)
1230         and RemoveNamedItem(string, string).
1231
1232         * XmlLinkedNode.cs (PreviousSibling): Implemented.
1233
1234         * XmlTextReader.cs: Added code to maintain the order of attributes as 
1235         they're parsed. XML doesn't require this but Microsoft's parser does it and
1236         matching them makes testing easier so now we have it, too.
1237
1238 2002-05-26  Miguel de Icaza  <miguel@ximian.com>
1239
1240         * XmlDocument.cs: Implement the Save methods.
1241
1242 2002-05-08  Mike Kestner  <mkestner@speakeasy.net>
1243
1244         * XmlNamedNodeMap.cs (SetNamedItem): Fixed a copy/paste bug.
1245
1246 2002-04-28  Duncan Mak  <duncan@ximian.com>
1247
1248         * XmlSignificantWhitespace.cs (Value):
1249         * XmlWhitespace.cs (Value): Added MonoTODO to the 'set'
1250         block. Added new private method, IsValidWhitespaceChar, for
1251         checking.
1252
1253 2002-04-16  Duncan Mak  <duncan@ximian.com>
1254
1255         * XmlParserContext.cs (NameTable): Fixed a typo in the set block.
1256
1257 2002-04-12  Duncan Mak  <duncan@ximian.com>
1258
1259         * XmlAttribute.cs (Prefix): Added preliminary code for set block,
1260         added comment on work that needs to be done here. A new MonoTODO item. 
1261
1262         * XmlDocument.cs (ctor): Corrected constructor signature, changed
1263         parameter from 'NameTable' to 'XmlNameTable'.
1264
1265         * XmlDocumentFragment.cs (InnerXml): Added missing set block.
1266
1267         * XmlCaseOrder.cs: Moved to System.Xml.XPath.
1268
1269 2002-04-10  Duncan Mak  <duncan@ximian.com>
1270
1271         * XmlNodeReader.cs: Initial stubs for the class.
1272
1273 2002-04-08  Kral Ferch  <kral_ferch@hotmail.com>
1274
1275         * XmlAttributes.cs: InnerXml getter, WriteContentTo, and WriteTo
1276         implementations.
1277         
1278         * XmlDeclaration.cs: WriteTo implementation.
1279         
1280         * XmlDocument.cs: InnerXml getter implementation.
1281         
1282         * XmlElement.cs: InnerXml getter implementation.
1283
1284         * XmlNode.cs: Removed MonoTODO attrib on OuterXml.
1285         
1286         * XmlSignificantWhitespace.cs: WriteTo implementation.
1287         
1288         * XmlText.cs: WriteContentTo and WriteTo implementation.
1289         
1290         * XmlTextWriter.cs: WriteRaw implementation.
1291         
1292         * XmlWhitespace.cs: WriteContentTo and WriteTo implementations.
1293
1294 2002-04-05  Kral Ferch  <kral_ferch@hotmail.com>
1295
1296         * XmlAttributes.cs: Added reminder MonoTODO to set NamespaceURI
1297         if prefix in constructor is one of the default ones.
1298         
1299         * XmlCharacterData.cs: Returns String.Empty for Value and Data
1300         even when constructed with null.
1301         
1302         * XmlDeclaration.cs: Value doesn't put encoding or standalone
1303         in if they are empty.
1304         
1305         * XmlDocument.cs: Implemented CreateNode methods and this caused
1306         the changes in the other files in this checkin.
1307         
1308         * XmlProcessingInstruction.cs: Returns String.Empty for Value and Data
1309         even when constructed with null.
1310         
1311         * XmlWhitespace.cs: Changed Value 'get' to return Data.
1312
1313 2002-04-01  Kral Ferch  <kral_ferch@hotmail.com>
1314
1315         * XmlTextWriter.cs: Impls for WriteEndDocument and WriteFullEndElement.
1316         
1317 2002-03-31  Kral Ferch  <kral_ferch@hotmail.com>
1318
1319         * XmlTextWriter.cs: Impls for LookupPrefix, WriteBase64,
1320         and WriteCharEntity.
1321         
1322         * XmlWrite.cs:  Fixed bug where attribute namespace decl
1323         was pushing a scope onto the namespace manager when it shouldn't
1324         have been.
1325         
1326 2002-03-31  Kral Ferch  <kral_ferch@hotmail.com>
1327
1328         * XmlTextWriter.cs: Some tweaks for WriteAttibuteString
1329         in different states (no open start element, in WriteState.Content mode).
1330         
1331 2002-03-29  Kral Ferch  <kral_ferch@hotmail.com>
1332
1333         * XmlTextWriter.cs: XmlLang and XmlSpace properties
1334         and WriteWhitespace.
1335         
1336         * XmlTextWriterOpenElement.cs: scope support for XmlLang
1337         and XmlSpace.
1338
1339 2002-03-29  Kral Ferch  <kral_ferch@hotmail.com>
1340
1341         * XmlTextWriter.cs: Working on Attribute methods.
1342         
1343         * XmlWriter.cs: Working on Attribute methods.
1344
1345 2002-03-28  Duncan Mak  <duncan@ximian.com>
1346
1347         * XmlDocument.cs (CreateWhitespace):
1348         (CreateSignificantWhitespace): Removed extraneous call to the ToCharArray
1349         method.
1350
1351         * XmlSignificantWhitespace.cs (Value): Removed MonoTODO attribute.
1352
1353 2002-03-26  Duncan Mak  <duncan@ximian.com>
1354
1355         * XmlDocument.cs (CreateDocumentType): Implemented.
1356
1357         * XmlNode.cs (Value): Implemented.
1358
1359         * XmlProcessingInstruction.cs (InnerText): Implemented. It works just
1360         like XmlCharacterData.
1361
1362         * XmlDeclaration.cs (CloneNode): 
1363         * XmlDocument.cs (CreateXmlDeclaration): Added missing constructor
1364         arguments.
1365
1366         * XmlCharacterData.cs (InnerText): Implemented. Funny that the
1367         docs say it is the "The concatenated values of the node and all
1368         the children of the node.". I wrote some test programs and
1369         couldn't get any of the derived nodes to AppendChild. For now,
1370         InnerText == Data == Value.
1371         (Substring): Fixed typo.
1372
1373         * XmlDeclaration.cs (XmlDeclaration): Fixed the constructor parameter signature.
1374
1375         * XmlImplementation.cs (CreateDocument): Implemented.
1376
1377 2002-03-25  Duncan Mak  <duncan@ximian.com>
1378
1379         * XmlDeclaration.cs: Rewrote the class, fixed formatting, added
1380         missing properties (InnerText, Value).
1381         
1382         * XmlDocument.cs (CreateXmlDeclaration): Implemented.
1383
1384 2002-03-23  Kral Ferch <kral_ferch@hotmail.com>
1385
1386         * XmlTextWriter.cs: Impls for BaseStream and
1387         Namespaces and WriteState.
1388         
1389         * XmlWriter.cs: WriteState and WriteStartElementInternal.
1390
1391 2002-03-23  Kral Ferch <kral_ferch@hotmail.com>
1392
1393         * XmlNodeListChildren.cs: made class internal
1394         instead of public.  Shouldn't be visible outside
1395         of System.Xml.
1396         
1397         * XmlTextWriter.cs: Implementations for Formatting,
1398         IndentChar, Indenting, QuoteChar, WriteStartDocument(standalone).
1399         Suppresses encoding on xml declaration if null stream passed in.
1400         Formats output including suppressing indentation for elements in
1401         mixed content mode.
1402         
1403         * XmlTextWriterOpenElement.cs: Initial checkin.
1404         XmlTextWriter uses stack of these objects to track
1405         state.
1406         
1407 2002-03-22  Mike Kestner  <mkestner@speakeasy.net>
1408
1409         * XmlElement.cs: impl HasAttribute(string name).
1410
1411 2002-03-22  Duncan Mak  <duncan@ximian.com>
1412
1413         * XmlElement.cs: Reformatted.
1414         (CloneNode) Corrected.
1415
1416         * XmlDocument.cs (CreateWhitespace):
1417         (CreateSignificantWhitespace): Implemented.
1418
1419         * XmlAttribute.cs (CloneNode): Changed the child's CloneNode to
1420         true, because Attributes have ChildNodes.
1421
1422 2002-03-21  Kral Ferch <kral_ferch@hotmail.com>
1423
1424         * XmlTextWriter.cs: WriteStartDocument tracks state, writes out
1425         xml declaration along with encoding.  WriteEndElement throws
1426         exception if no WriteStartElement exists.
1427
1428 2002-03-20  Duncan Mak  <duncan@ximian.com>
1429
1430         * XmlEntityReference.cs (CloneNode): Implemented.
1431
1432         * XmlException.cs (Message): Implemented. We need to cache the
1433         message string because SystemException doesn't expose 'message'
1434         from Exception.
1435
1436         * XmlText.cs (Value): Added in the missing Value property.
1437
1438 2002-03-20  Duncan Mak  <duncan@ximian.com>     
1439
1440         * XmlAttribute.cs (CloneNode): Implemented.
1441
1442         * XmlDocumentFragment.cs (CloneNode): Implemented.
1443
1444         * XmlElement.cs (CloneNode): Implemented.
1445
1446 2002-03-19  Duncan Mak  <duncan@ximian.com>
1447
1448         * XmlNotation.cs: Added to CVS.
1449
1450         * XmlAttribute.cs (CloneNode): First crack at the CloneNode method.
1451
1452         * XmlCDataSection.cs (CloneNode): Implemented.
1453
1454         * XmlDocumentFragment.cs: Reformatted and added the missing properties
1455         (InnerXml, OwnerDocument, ParentNode).
1456         (CloneNode): Implemented.
1457
1458         * XmlSignificantWhitespace.cs (CloneNode): Implemented.
1459         (Value) Implemented the 'get' property.
1460
1461         * XmlWhitespace.cs (Module): implemented.
1462
1463 2002-03-19  Jason Diamond <jason@injektilo.org>
1464
1465         * XmlDocument.cs: Fixed typo in Load that was duplicating the LocalName
1466         in the prefix.
1467
1468 2002-03-18  Jason Diamond <jason@injektilo.org>
1469
1470         * XmlTextReader.cs: Don't restore properties after reading last
1471         attribute on an element.
1472
1473         * XmlDocument.cs: Move back to element after reading attributes
1474         so that IsEmptyElement test succeeds.
1475
1476 2002-03-18  Kral Ferch <kral_ferch@hotmail.com>
1477
1478         * XmlNamespaceManager.cs: Implemented LookupPrefix.
1479         
1480         * XmlTextWriter.cs: Implemented namespace and prefix support.
1481
1482 2002-03-18  Kral Ferch <kral_ferch@hotmail.com>
1483
1484         * XmlTextReader.cs: Restores properties after
1485         reading last attribute on an element.
1486         
1487         * XmlNode.cs: AppendChild sets the parent
1488         on the child.
1489
1490 2002-03-17  Kral Ferch  <kral_ferch@hotmail.com>
1491
1492         * XmlCDataSection.cs: Formatting, Implementation for WriteTo.
1493
1494         * XmlComment.cs: Implementations for WriteTo and WriteContentTo.
1495         
1496         * XmlElement.cs: Fixed bug in WriteTo.
1497         
1498         * XmlProcessingInstruction.cs: Formatting.
1499         
1500         * XmlTextWriter.cs: Implementations for Close, WriteCData, WriteComment,
1501         fixes for WriteEndElement, WriteProcessingInstruction.
1502
1503 2002-03-17  Kral Ferch  <kral_ferch@hotmail.com>
1504
1505         * XmlDocument.cs: Implementations for WriteTo() and WriteContentTo(),
1506         had Load() add PIs to the document, moved onXXX methods to alphabetical
1507         order in the file.
1508         
1509         * XmlElement.cs: Implementations for WriteTo() and WriteContentTo().
1510         
1511         * XmlNode.cs: Implementations for InnerXml Get and OuterXml.
1512         
1513         * XmlProcessingInstruction.cs: Implementations for WriteTo() and
1514         WriteContentTo().
1515         
1516         * XmlTextWriter.cs: Implementations for WriteEndElement,
1517         WriteProcessingInstruction, WriteStartElement, and WriteString.
1518         
1519         * XmlWriter.cs: Implemented WriteStartElement() methods.
1520
1521 2002-03-15  Duncan Mak  <duncan@ximian.com>
1522
1523         * XmlEntity.cs: Added to CVS. Need to implement BaseURI and
1524         InnerText once I know what they do.
1525
1526         * XmlDocumentType.cs (XmlDocumentType): Fix the constructor now
1527         that we can properly chain constructors.
1528         (CloneNode): implemented.
1529         (WriteContentTo): Removed MonoTODO attribute as this method has no
1530         effect in this class.
1531
1532         * XmlProcessingInstruction.cs (Value): Added the missing Set
1533         block.
1534         (InnerText): Added in, but not implemented.
1535
1536 2002-03-14  Kral Ferch  <kral_ferch@hotmail.com>
1537
1538         * XmlTextWriter.cs: implemented constructors and 
1539         WriteCData and WriteComment.
1540
1541 2002-03-14  Duncan Mak  <duncan@ximian.com>
1542
1543         * XmlDocument.cs: Moved the NodeChanged EventHandler to its own
1544         file, and updated the callbacks to reflect the change.
1545         (XmlDocument): Added the NameTable constructor.
1546         (NameTable): Also the NameTable property.
1547
1548         * XmlNodeChangedEventHandler.cs: Added, replacing the version that
1549         was in XmlDocument.cs. It has two arguments now (object,
1550         EventArgs) , instead of one (object).
1551
1552 2002-03-14  Kral Ferch  <kral_ferch@hotmail.com>
1553
1554         * XmlWriter.cs: Formatting.
1555         
1556         * XmlTextWriter.cs: Initial checkin.
1557         
1558 2002-03-14  Duncan Mak  <duncan@ximian.com>
1559
1560         * Validation.cs: Removed, replaced by ValidationType.cs.
1561
1562         * ValidationType.cs: Added.
1563
1564 2002-03-13  Duncan Mak  <duncan@ximian.com>
1565
1566         * XmlException.cs: Made it [Serializable], implemented good ol'
1567         GetObjectData, and the serialization constructor.
1568
1569         * XmlNamedNodeMap.cs (SetNamedItem): Check for the Name property.
1570         (SetNamedItem): Reverted (added back in) the patch with the
1571         ReadOnly checks. "Don't doubt yourself, my son... you were right!"
1572
1573         * XmlNamedNodeMap.cs (GetEnumerator): piggyback on the ArrayList implementation.
1574         (GetNamedItem (string, string)): implemented.
1575         (RemoveNamedItem): implemented.
1576         (SetNamedItem): implemented.
1577
1578 2002-03-12  Kral Ferch  <kral_ferch@hotmail.com>
1579
1580         * XmlAttribute.cs: Moved a method from amongst properties down to
1581         it's alphabetical position in the methods section.
1582         
1583         * XmlNode.cs: Passes in 'this' to XmlNodeList constructor instead of
1584         last linked child.  Set XmlNode base class to return false for IsReadOnly().
1585         Implemented GetEnumerator() and RemoveChild().
1586         
1587         * XmlNodeListChildren.cs: Now stores the parent instead of the last child.
1588         This is to support the behavior that the Enumerator doesn't become invalid
1589         when changes to the children occur.  Flushed out rest of implementation for
1590         MoveNext, Current, and Reset.
1591
1592 2002-03-12  Duncan Mak  <duncan@ximian.com>
1593
1594         * XmlCharacterData.cs: Reformatted the properties for better readability.
1595
1596         * XmlLinkedNode.cs: Removed the awful boxy comments.
1597
1598         * XmlNamedNodeMap.cs (Count):
1599         (Item): Implemented. Tests will be coming.
1600
1601         * XmlEntityReference.cs: 
1602         * XmlSignificantWhitespace.cs: Implemented these classes except for
1603         the Clone, WriteContentTo and WriteTo methods. Will have to
1604         investigate into these later.
1605
1606 2002-03-11  Duncan Mak  <duncan@ximian.com>
1607
1608         * IHasXmlNode.cs: Added to CVS.
1609
1610 2002-03-08  Jason Diamond <jason@injektilo.org>
1611
1612         * XmlParserContext.cs: Added missing constructors and missing Encoding 
1613         property.
1614
1615         * XmlTextReader.cs: Start using the XmlParserContext class.
1616
1617 2002-03-08  Jason Diamond <jason@injektilo.org>
1618
1619         * XmlTextReader.cs: Implemented MoveToElement and MoveToFirstAttribute.
1620
1621 2002-03-08  Mike Kestner  <mkestner@speakeasy.net>
1622
1623         * XmlNode.cs (Item): Implemented both indexers.
1624
1625 2002-03-08  Jason Diamond  <jason@injektilo.org>
1626
1627         * DomEncodingType.cs, TreePosition.cs, XPathNodeType.cs, XmlDataType.cs,
1628         XmlExceptionCode.cs, XmlSortOrder.cs, XmlUtil.cs: Removed files.
1629
1630 2002-03-08  Jason Diamond  <jason@injektilo.org>
1631
1632         * XmlAttribute.cs: Attribute nodes are supposed to store their values
1633         as child nodes so updated to reflect that.
1634
1635         * XmlDocument.cs, XmlElement.cs, XmlNode.cs: Moved code that was
1636         duplicated in XmlDocument and XmlElement into XmlNode so that it
1637         wouldn't have to be duplicated in XmlAttribute, too.
1638
1639 2002-03-08  Kral Ferch <kral_ferch@hotmail.com>
1640
1641         * XmlNodeList.cs, XmlDocument.cs, XmlLinkedNode.cs,
1642         XmlNode.cs: Formatting.
1643         
1644         * XmlNodeListChildren.cs: Implementation of XmlNodeList
1645         for XmlNode.ChildNodes property.
1646         
1647         * XmlNodeListAsArrayList.cs: Removed file.  Using different
1648         data structure (circular list) in XmlNode so this file
1649         is no longer valid.
1650         
1651         * XmlDocument.cs, XmlElement.cs: New ChildNodes tests found
1652         bug in setter property of LastLinkedChild so fixed it.
1653         
1654 2002-03-06  Jason Diamond  <jason@injektilo.org>
1655
1656         * XmlInputSource.cs, XmlNames_1_0.cs, XmlParse.cs: Removed files.
1657         We already have a parser in XmlTextReader.
1658
1659         * XmlException.cs: Removed constructor accepting XmlInputSource.
1660
1661 2002-03-06  Kral Ferch <kral_ferch@hotmail.com>
1662
1663         * XmlNode.cs: Rewrote this class from scratch with
1664         MonoToDo attribs and NotImplementedExceptions.  Now defines an
1665         internal LastLinkedNode property to aid the new implementation.
1666         XmlNodes only have ref to owner doc and parent nodes now.
1667         
1668         * XmlLinkedNode.cs: Added NextLinkedSibling internal property
1669         and ref to next sibling to support walking our circular child
1670         node list.
1671         
1672         * XmlDocument.cs: Added ref to last child node and overrides
1673         XmlNode's internal LastLinkedChild property to support walking
1674         our circular child node list.
1675         
1676 2002-03-02  Kral Ferch <kral_ferch@hotmail.com>
1677
1678         * XmlProcessingInstructions.cs: Class was empty.  Implemented
1679         constructor, properties, and CloneNode() method.  Put in
1680         MonoToDo attrib for remaining methods.
1681
1682         * XmlComment.cs: Reformatted and put in MonoToDo attribs.
1683         Got rid of helper methods and fields since they were no
1684         longer needed.
1685
1686         * XmlLinkedNode.cs: Reformatted and put in MonoToDo attribs.
1687
1688         * XmlDocument.cs: Added code to Load(XmlReader) to create XmlComment,
1689         XmlCDataSection, and XmlProcessingInstruction nodes. Implemented
1690         Createxxx() methods for those three node types.
1691
1692 2002-03-02  Jason Diamond <jason@injektilo.org>
1693
1694         * XmlDocument.cs: Implemented the remaining CreateElement and
1695         CreateAttribute methods.
1696
1697         * XmlAttribute.cs: Re-implemented.
1698
1699         * XmlElement.cs: Set owner element on attributes. Reformatted.
1700
1701 2002-03-02  Jason Diamond <jason@injektilo.org>
1702
1703         * XmlTextReader.cs: Implemented MoveToNextAttribute().
1704
1705         * XmlDocument.cs: Reformatted. Adding missing methods and MonoTODO
1706         attributes. Create attribute nodes while loading. Implemented
1707         Load(string) and CreateTextNode().
1708
1709         * XmlCharacterData.cs, XmlText.cs: Re-implemented.
1710
1711         * XmlCDataSection.cs, XmlComment.cs: Call correct constructor in 
1712         XmlCharacterData.
1713
1714         * XmlNamedNodeMap.cs, XmlAttributeCollection.cs: Stubbed out.
1715
1716 2002-03-02  Mike Kestner <mkestner@speakeasy.net>
1717
1718         * XmlAttribute.cs : Using fix.
1719         * XmlDocument.cs (CreateAttribute(String)): Implement.
1720
1721 2002-03-02  Jason Diamond <jason@injektilo.org>
1722
1723         * XmlNamespaceManager.cs: Atomize prefixes and namespaces strings in 
1724         the name table.
1725
1726 2002-02-28  Jason Diamond <jason@injektilo.org>
1727
1728         * XmlDocument.cs, XmlNode.cs: Initial implementation of LoadXml 
1729         courtesy of Kral Ferch <kral.ferch@hotmail.com>.
1730
1731 2002-02-28  Jason Diamond <jason@injektilo.org>
1732
1733         * XmlException.cs, XmlReader.cs, XmlTextReader.cs: Reformatted, 
1734         added missing members and MonoTODO attributes.
1735         
1736         * XmlTextReader.cs: Throw XmlException instead of System.Exception.
1737
1738 2002-02-27  Jason Diamond <jason@injektilo.org>
1739
1740         * XmlElement.cs: Reformatted, added missing members and MonoTODO 
1741         attributes.
1742
1743 2002-02-26  Duncan Mak  <duncan@ximian.com>
1744
1745         * XmlCDataSection.cs: Initial implementation.
1746
1747         * NameTable.cs: Fixed the whole thing. Wrote a NUnit test to test
1748         it out. This should (hopefully) be correct.
1749
1750 2002-02-26  Jason Diamond <jason@injektilo.org>
1751
1752         * XmlTextReader.cs: Apparently Microsoft's implementation treats
1753         namespace declarations as attributes so we do now, too.
1754
1755         * XmlNamespaceManager.cs: HasNamespace fixed so that it only
1756         checks the current scope.
1757
1758 2002-02-26  Duncan Mak  <duncan@ximian.com>
1759
1760         * XmlDocumentType.cs: Added a few hacks here and there to
1761         temporarily fix the "I broke the build issue".
1762
1763 2002-02-25  Jason Diamond <jason@injektilo.org>
1764
1765         * XmlDocument.cs, XmlElement.cs, XmlNode.xs, XmlNodeList.cs,
1766         XmlNodeListAsArrayList.cs: Multiple fixes necessary to get
1767         simple test to pass. The existing code is really shitty so I'll
1768         probably start writing tests and refactoring before much else 
1769         can get done.
1770
1771 2002-02-25  Duncan Mak  <duncan@ximian.com>
1772
1773         * NameTable.cs: Implemented.
1774
1775         * XmlDeclaration.cs: It should inherit from XmlLinkedNode, not XmlNode.
1776
1777 2002-02-24  Duncan Mak  <duncan@ximian.com>
1778         
1779         * XmlNodeOrder.cs: Added to CVS.
1780
1781         * XmlQualifiedName.cs: Fixed a warning from Equals ().
1782
1783         * XmlTokenizedType.cs: Added to CVS.
1784
1785         * XmlUrlResolver.cs: Added to CVS with one TODO task.
1786
1787 2002-02-23  Duncan Mak  <duncan@ximian.com>
1788
1789         * XmlQualifiedName.cs: Fixed ToString () and added the operators
1790         (== and !=).
1791
1792 2002-02-23  Jason Diamond <jason@injektilo.org>
1793
1794         * XmlTextReader.cs: Added support for qualified attributes.
1795
1796 2002-02-23  Jason Diamond <jason@injektilo.org>
1797
1798         * XmlNamespaceManager.cs: Initial implementation.
1799         
1800         * XmlTextReader.cs: Added support for NamespaceURI property on
1801         elements.
1802
1803 2002-02-23  Nick Drochak <ndrochak@gol.com>
1804
1805         * ChangeLog: Add the change log to this directory
1806
1807         * XmlQualifiedName.cs: Fixed compile errors so it would build. Still has
1808         MonoTODO's
1809