1 2003-06-20 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
3 * XmlInputStream.cs : quick fix for public ctor() BaseURI bug.
5 2003-06-20 Ben Maurer <bmaurer@users.sourceforge.net>
6 * XmlTextReader.cs: Reduces memory allocation when the reader is
7 not queried for some values.
9 2003-06-20 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
11 * XmlUrlResolver.cs : several ResolveUri() fix. e.g. for external URIs.
13 2003-06-16 Ben Maurer <bmaurer@users.sourceforge.net>
14 * XmlUrlResolver.cs: really fixed #44231
16 2003-06-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
18 * XmlNodeReader.cs : fixed MoveToNextAttribute(). In some cases
19 this method set current node null.
20 * XmlTextReader.cs : fixed GetAttribute (name, ns), which returned
21 String.Empty instead of null (expected value).
24 XmlInputStream.cs : fixed BaseURI problem (bug #44231).
26 2003-06-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
28 * XmlNodeReader.cs : this [name] and this [name, ns] (and
29 GetAttribute() methods in turn) returns null instead of String.Empty.
30 * XmlTextWriter.cs : WriteStartAttribute() should try to use specified
31 prefix before auto-generating prefixes.
32 Implemented WriteBase64().
34 2003-06-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
36 * XmlNodeReader.cs : LookupNamespace () has refered invalid current
37 node for attributes. Modified to use private "document" property.
39 2003-06-10 Lluis Sanchez Gual <lluis@ximian.com>
41 * XmlTextWriter.cs: when adding an attribute with a namespace, a prefix must be automaticaly
42 generated, and a namespace declaration must be added.
43 * XmlWriter.cs: the namespace for the prefix xmlns must be http://www.w3.org/2000/xmlns/
45 2003-06-10 Zoltan Varga <vargaz@freemail.hu>
47 * XmlAttribute.cs: Accept a null prefix or namespaceURI.
49 2003-06-10 Duncan Mak <duncan@ximian.com>
51 * XmlDocumentNavigator.cs (GetNode): Make it implement
54 2003-06-05 Lluis Sanchez Gual <lluis@ideary.com>
56 * XmlTextWriter.cs : Fixed bug. After calling for example WriteStartElement ("pref","ln","ns");
57 a call to LookupPrefix ("pref") when still writting attributes should
58 return "ns", and it didn't.
60 2003-06-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
62 * XmlDocumentNavigator.cs : quick fix for MoveToFirstChild().
63 * XmlConvert.cs : fixed VerifyNCName() to check correctly.
65 2003-06-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
67 * XmlDocumentNavigator.cs : Compute document node one time.
68 MoveToFirstChild() should move to PIs and comments.
70 2003-05-30 Miguel de Icaza <miguel@ximian.com>
72 * XmlReader.cs (ReadStartElement): Improve error message.
74 2003-05-28 Lluis Sanchez Gual <lluis@ideary.com>
76 * XmlTextReader.cs : MoveToAttribute methods must set the enumerator to the right
77 position, since MoveToNextAttribute may be called after it.
78 SetProperties(): attributes do not "inherit" the namespace.
79 * XmlDocument.cs: ReadNode(), ReadAttributeNode(): must keep the current reader position.
81 2003-05-27 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
83 * NameTable.cs : Add() sets the given name string interned.
84 * XmlParserContext.cs : added internal PushScope() and PopScope() to
85 hold stacks of xml:base, xml:lang and xml:space.
86 * XmlTextReader.cs : implemented XmlLang and XmlSpace (only as a
87 property for stacked attributes). Renamed Initialize() to Initialize-
88 Context(). Modified to use XmlParserContext.PushScope()/PopScope().
90 2003-05-26 Lluis Sanchez Gual <lluis@ximian.com>
92 * XmlReader.cs: Little fix to WriteAttributeString()
94 2003-05-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
96 * XmlAttribute.cs, XmlCharacterData.cs, XmlComment.cs, XmlDocument.cs,
97 XmlDocumentFragment.cs, XmlElement.cs, XmlEntity.cs, XmlLinkedNode.cs,
98 XmlNode.cs, XmlNotation.cs, XmlProcessingInstruction.cs, XmlReader.cs,
99 XmlSignificantWhitespace.cs, XmlText.cs, XmlWhitespace.cs:
100 Reverted the recent accessibility mistake (5/16).
101 * XmlDocument.cs, XmlNode.cs : moved actual CreateNavigator() logic
102 from XmlNode to XmlDocument.
104 2003-05-18 Lluis Sanchez Gual <lluis@ideary.com>
106 * XmlQualifiedName.cs : Fixed bug in equality operator.
108 2003-05-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
110 * XmlTextWriter.cs : patch by Jonathan Hogg. Flush() does not close
111 any open attributes or elements. WriteWhitespace() checks state and
112 closes start tag. Fixed WriteStringInternal() to replace CR/LF chars
113 when it is called inside attribute value.
114 * XmlException.cs : added .NET 1.1 .ctor.
115 * added XmlSecureResolver.cs (only stubbing).
116 * XmlAttribute.cs : set_InnerXml() should remove children.
119 XmlDocumentFragment.cs,
120 XmlDocument.cs : removed XmlTextReader reuse (It was buggy stuff).
121 * XmlNode.cs : RemoveAll() should also remove all attributes.
122 * XmlTextRader.cs : .ctor() for attribute value reader should add
123 quotations at initialization, since it requires quote chars.
124 * XmlWriter.cs : WriteAttributeString() more correct xmlns check.
126 2003-05-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
128 * changed XPathNodeType modifier to internal *protected* override.
129 * XmlAttribute.cs : .ctor() now checks name validity e.g. xmlns.
130 * XmlAttribute.cs, XmlElement.cs : set_Prefix checks NCName validity.
131 * XmlAttributeCollection.cs : removed some incorrect TODO attributes.
132 * XmlDocument.cs ; CreateAttribute(name) now auto-completes xmlns NSURI
133 when the argument is "xmlns".
134 * XmlElement.cs : more compliant IsEmpty support. See also WriteTo().
135 * XmlNamespaceManager.cs : added initial "xml" and "xmlns" namespaces.
136 * XmlNode.cs : ser_InnerXml() throws InvalidOperationException.
137 * XmlNodeReader.cs : LookupNamespace() refactory. Fixed ReadInnerXml()
138 not to set error state for non-started XmlNodeReader.
139 * XmlTextReader.cs : fixed ReadAttributeValue() not to reset state.
140 BaseURI support. Fixed Initialize() to handle Attribute correctly.
141 SetProperty for attribute auto-completes xmlns NSURI.
142 Attribute and whitespace handling became more correct.
143 Don't parse external DTD if XmlResolver is null.
144 * XmlTextWriter.cs : implemented WriteEntityRef().
145 WriteStartAttribute() checks if ns does not equal to that of xmlns.
146 * XmlWriter.cs : trivial refactoring (WriteNode() xmldecl output).
148 2003-05-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
150 * XmlConvert.cs : IsInvalid() Now uses XmlConstructs.IsName(Start).
151 EncodeName() now correctly encodes invalid names.
152 Result string of ToString(DateTime) contains "fffffff".
154 2003-04-29 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
156 * XmlElement.cs : fixed IsEmpty (removed private field isEmpty).
157 * XmlNodeReader.cs : Fixed AttributeCount, each this[] (indexers),
159 Fixed this[] to work correctly against XmlDeclarations.
160 Fixed ReadInnerXml() and ReadOuterXml() to call Read() correctly.
161 (which may prevent validations etc.)
164 XmlTextReader.cs : Fixed ReadString() to be compliant with each
166 * XmlTextReader.cs : ReadInnerXml() now moves to next node correctly.
168 2003-04-27 Pedro MartÃnez Juliá <yoros@wanadoo.es>
170 * XmlNode.cs: ensure to get a valid Uri in BaseUri when loading the
171 source document from a file.
173 2003-04-27 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
175 * XmlAttribute.cs : fixed WriteTo() and WriteContentTo() to write
176 content EntityReference correctly.
177 * XmlNodeReader.cs : many fix for EndElement handling (AttributeCount,
178 HasAttributes, indexers, MoveTo*Attribute() and Read() ).
179 Modified Skip() to call Read () explicitly.
181 Fixed ReadInnerXml() which ignored EndElement token in certain cases.
182 Implemented MoveToAttribute (local, ns), and modified GetAttribute()
183 in relation to this change.
184 Attributes for XmlDeclaration are now correctly set.
185 * XmlTextWriter.cs : WriteRaw() is now different from WriteString().
186 Simplified WriteAttributes() for XmlDeclaration.
188 2003-04-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
190 * XmlTextReader.cs : fixed ReadInnerXml(). it was inconsistent with
193 2003-04-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
195 * XmlDocument.cs : fixed Load() to set baseURI correctly.
196 * XmlReader.cs : patch by Gonzalo. Fixed not to skip XmlDeclaration.
198 fixed Depth. When it's on StartElement, Depth was already incremented.
199 fixed private SaveProperty(), which moved away its saved properties
200 when MoveToElement was called repeatedly.
201 * XmlTextWriter.cs : fixed WriteQualifiedName() to close start tag.
203 WriteAttributes() refactory (for XMLDecl).
204 WriteNode() don't Read() when the reader is Initial state, let other
205 invokation to Read(). In case of Element, it should write entire
206 element. In case of Attribute, it shouldn't Read().
207 WriteStartDocument() should omit standalone decl. when there is no
210 2003-04-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
212 * XmlReader.cs: reverted last patch. It breaks System.Configuration
213 because 1. it considers XmlDeclaration as content and 2. always
214 returns XmlNodeType.None.
217 2003-04-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
219 * Added missing ChangeLog of 4/4/2003.
220 * XmlTextWriter.cs : patch by Erik. fixed WriteQualifiedName.
221 (write prefix instead of ns.)
222 * XmlInputStream.cs : file access mode fix (FileAccess.Read was missing)
223 * XmlTextReader.cs : modified to call Read() instead of ReadContent().
224 (It may be required for decorated reader such as XmlValidatingReader.)
225 Changed Read() error message for mismatch end tag.
226 * XmlDocument.cs : (ReadNode) friendly message for mismatch EndElement.
227 * XmlReader.cs : Corrected misinterpreted MoveToContent() method.
229 2003-04-04 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
231 * XmlDocument.cs : Load() now closes the given XmlReader.
232 Don't allow creation of XmlTextReader for Doctype. (workaround.)
233 * XmlInputStream.cs : It now closes its internal stream explicitly.
234 * XmlNode.cs : RemoveChild() bugfix for removing LastLinkedChild.
235 * XmlNodeReader.cs : GetAttribute() bugfix for not-present attribute.
236 * XmlParserInput.cs : added Close() method.
237 * XmlReader.cs : MoveToContent() should (1) not Read in case of empty
238 element, and (2) MoveToElement() in case of attribute.
239 * XmlTextReader.cs : Close() now actually closes source TextReaders.
241 2003-03-26 Duncan Mak <duncan@ximian.com>
243 * XmlTextWriter.cs (Write): A patch from Atsushi to fix
244 prematurely ending the write, or something like that. It was
245 causing us to chop off the end of the document when we're trying
246 to generate XML Schemas.
248 2003-03-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
250 * XmlTextReader.cs : implemented ReadString().
251 fixed ctor(string, XmlNodeType, XmlParserContext) - don't raise
252 null reference exception when context is null.
253 * XmlNodeReader.cs : fixed ReadString() - should ignore attributes etc.
254 fixed Read() - when positioned at EndElement, it didn't progress.
255 fixed HasAttribute - it didn't return false in all cases.
256 fixed Name and LocalName - only limited type of nodes return names.
257 fixed AttributeCount - in some cases it threw null ref exception.
259 2003-03-22 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
261 * XmlTextWriter.cs : WriteStartDocument doesn't set hasRoot=true, then
262 WriteEndDocument without root element now raises an error correctly.
263 * XmlDocumentNavigator.cs : (MoveToFirstChild) fixed bugzilla #36672.
264 implemented BaseURI, NameTable, XmlLang, GetAttributes, GetNamespace,
267 2003-03-22 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
269 * XmlElement.cs : RemoveAttribute now don't throws when specified
270 attribute does not exist.
272 2003-03-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
274 * XmlNode.cs : add descriptions for some node type error.
276 2003-03-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
278 * XmlNodeArrayList.cs, XmlNodeListChildren.cs : bugzilla #39920 fix.
280 2003-03-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
282 * XmlDeclaration.cs : quick fix, not to use regex for set_Value.
284 2003-03-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
286 * XmlTextReader.cs : Fixed wrong notationdecl SYSTEM id read.
287 * XmlInputStream.cs : Should allow versionless input stream entity.
289 2003-03-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
291 * added XmlParserInput.cs for multi xml document sources.
292 * added DTDObjectModel.cs (maybe temporary).
294 + fixed ctor to use XmlStreamReader. Allowed null XmlParserContext.
295 + Some members such as LineNumber, ReadChar now uses XmlParserInput.
296 + added support for Namespaces (namespace-ignorant parse available).
297 + added support for XmlResolver.
298 + replace SetReaderContext()/SetReaderFragment() with Initialize().
299 + use NameTable in CreateNameString.
300 + fixed ReadCData(). Now reads "]]]>" correctly.
301 + support for DTD parse.
302 + Read() now throws an error when it reached EOF while Depth > 0.
304 XmlDocumentFragment.cs,
305 XmlElement.cs : fix related to the changes of XmlTextReader.Initialize
306 * XmlDocument.cs : ReadNode() now reads DocumentType.
307 * XmlDocumentType.cs : implemented Entities, Notations, WriteTo().
309 XmlNotation.cs : added override LastLinkedChild (for doctype node).
310 * XmlNamedNodeMap.cs : Remove() raises an error if target is read only.
311 * XmlElement.cs : bugfix for node removal of set_InnerXml.
312 * XmlNode.cs : added insertBeforeIntern() derived from InsertBefore().
313 (to append child XmlEntity into XmlDocumentType correctly.)
314 * XmlInputStream.cs : fixed to access file with FileAccess.Read.
316 2003-03-15 Duncan Mak <duncan@ximian.com>
318 * XmlElement.cs (Name): Only append prefix + ':' when prefix is
319 neither String.Empty nor null. Thanks to Simon Guindon for
320 reporting the bug and Jackson for fixing this bug with me.
322 2003-03-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
324 * XmlConstructs.cs : fix "int IsXXX()" to reject negative value.
325 * XmlDocument.cs : simplify Load(string url) to use XmlTextReader.
326 fixed ReadNode(), it should call reader.Read() only on Initial state.
327 * XmlInputStream.cs : Changed namespace. Added XmlStreamReader(stream)
328 and XmlStreamReader (string). Fixed XmlInputStream(url) not to use
329 System.Net.WebClient directly.
330 * XmlParserContext.cs : baseURI never be null.
331 * XmlTextWriter.cs : use WebName for Encoding instead of HeaderName.
332 * XmlUrlResolver.cs : namespace change for XmlInputStream.
334 2003-03-12 Elan Feingold <efeingold@mn.rr.com>
336 * XmlTextReader.cs: When throwing a ReaderException, show what
337 character was the culprit
339 2003-03-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
341 * XmlDocumentFragment.cs, XmlElement.cs :
342 modified InnerXml (fragment type from Element to DocumentFragment).
344 * XmlElement.cs : fixed WriteTo() ns check.
345 * XmlNamespaceManager.cs : MS.NET allows Add() used two or more times.
346 * XmlNode.cs : fixed ConstructNamespaceManager().
348 * XmlConstructs.cs : added IsSpace, IsName, IsNameStart, IsNCName,
349 IsPubid with an int arg.
350 * XmlReader.cs : changed to use XmlChar.cs (its role is as same as
353 improved error messages with line info.
354 / checking matching start and end tags.
355 / prevents the apperance of multiple root elements. (patch by Erik)
356 fixed and refactored ReadInnerXml() and ReadOuterXml()
357 changed to use XmlChar.cs.
359 * XmlTextWriter.cs : changed to put element's xmlns at CloseStartTag ()
360 (It will help c14n implementation.)
361 / blocks multiple attribute output with element node.
363 2003-02-28 Alan Tam <Tam@SiuLung.com>
365 * XmlConvert.cs: fixed the most ToXXX(string) and ToString(XXX)
366 methods to make them compatible with the XML Schema Spec from W3C
367 ToString(TimeSpan) is still outstanding
369 2003-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
372 (Load (string)): hack to workaround some issues with Uri.Parse. Once
373 Parse is fixed, remove the hack.
375 2003-02-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
377 * XmlQualifiedName.cs : fixed GetHashCode() to avoid null reference
378 * XmlTextReader.cs : fixed ReadAttributeValue() to handle
379 entity reference, and some refactory.
381 2003-02-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
383 * XmlUrlResolver.cs : WebClient.Credentials was not implemented yet.
385 2003-02-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
387 * XmlInputStream.cs : added (also contains internal XmlStreamReader).
388 * XmlDocument.cs : Load () now can specify URL using XmlUrlResolver,
389 and can read non-UTF-8 stream.
390 * XmlTextReader.cs : related to above stream fix.
391 * XmlUrlResolver.cs : implemented GetEntity ().
393 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
395 * XmlTextWriter.cs: implemented WriteRaw (char[], int, int).
397 2003-02-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
399 * XmlTextReader.cs : implemented QuoteChar.
401 2003-01-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
403 * XmlNode.cs : implemented ReplaceChild.
404 removed DocElem checking at InsertBefore.
405 * XmlNodeReader.cs : fixed ReadString and Read for correct node info.
406 * XmlText.cs : implemented CloneNode and SplitText.
408 2003-01-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
410 * XmlCharacterData.cs: added XPathNodeType property.
412 2003-01-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
414 * XmlTextWriter.cs: throw an exception if WriteEndDocument is
415 called without a prior call to WriteStartDocument.
417 2003-01-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
419 * XmlNodeReader.cs : several fix to get more compatible with MS.NET.
421 2003-01-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
423 * XmlNamespaceManager.cs : fundamental change of LookupPrefix to return
424 null when no matching uri.
425 * XmlElement.cs : removed unnecessary xmlns output.
426 * XmlNode.cs : GetPrefixOfNamespace fix along with the change above.
427 * XmlTextWriter.cs : LookupPrefix and WriteStartElementInternal fix
428 along with the change above, and moved timing of 'xmlns' output
429 to CloseStartElement.
430 * XmlWriter.cs: modified WriteStartAttribute, same as yesterday.
432 2003-01-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
434 * XmlWriter.cs: modified WriteStartElement (see test for detail).
437 2003-01-13 Ville Palo <vi64pa@koti.soon.fi>
439 * XmlDocument.cs: Added CheckName () method to check names validity.
441 2003-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
444 (ReadOuterXml): use Depth property which return elementDepth, not depth.
446 2003-01-11 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
448 * XmlElement.cs : (by ville) XmlElement.set_InnerText event bugfix.
449 * XmlTextReader.cs : some fix for ReadOuterXml().
451 2003-01-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
453 * XmlTextReader.cs : bugfix for attributes related to creation of
456 2003-01-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
458 * XmlTextReader.cs : bugfix for attribute values which have entity
461 2002-12-28 Ville Palo <vi64pa@koti.soon.fi>
463 * XmlDocument.cs: XmlTextWriter.Formatting == Indented when
464 calling Save () -methods.
466 2002-12-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
468 * XmlNodeReader.cs : primitive reading implementation.
470 2002-12-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
472 * XmlElement.cs : quick fix for the incomplete patch of #35308 below.
474 2002-12-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
476 * XmlDocument.cs : removed inconsistent line-feed output.
477 * XmlElement.cs, XmlTextWriter.cs :
478 fixed for bugzilla 35308 (default ns output)
479 * XmlWhitespace.cs : limited output only when preserving whitespace.
481 2002-12-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
483 * XmlAttribute.cs, XmlDocument.cs, XmlTextReader.cs:
484 Implemented XmlTextReader.ReadAttributeValue().
485 Added internal ReadAttributeNodeValue().
486 Fixed XmlAttribute.InnerXml to use these methods.
488 * XmlDocument.cs, XmlDocumentFragment.cs, XmlElement.cs, XmlNode.cs:
489 Implemented XmlDocument.ReadNode() and removed ConstructDOM().
490 Other changes are replacing them.
492 2002-12-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
494 * XmlDocument.cs: patch by Ville (fixed default PreserveWhitespace)
496 2002-12-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
498 * XmlElement.cs, XmlTextWriter.cs, XmlWriter.cs:
499 patch by JD Conley <jconley@winfessor.com>.
500 (Fix for xmlns attribute output.)
502 2002-12-05 Ville Palo <vi64p@koti.soon.fi>
504 * XmlQualifiedName.cs: Little fix to ToString () -method
506 2002-12-04 Tim Haynes <thaynes@openlinksw.com>
508 * class/System.XML/System.Xml/XmlElement.cs: Made more refined
509 checks on attributeNode to fix 32262.
511 2002-12-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
513 * XmlDocument.cs (CreateNavigator(XmlNode)) : reverted
514 * XmlTextWriter.cs (WriteStartElementInternal):
515 fixed when default namespace was specified, all descendants
516 fail to omit the default namespace declarations.
519 XmlNode.cs (internal XmlLang/XmlSpace) : implemented(defined)
521 XmlDocumentFragment.cs,
522 XmlElement.cs (set_InnerXml): now uses XmlLang/XmlSpace
523 * XmlElement.cs (set_IsEmpty) : implemented
524 (WriteTo) : removed my improper indenting (Writer already done)
525 * XmlNode.cs (BaseURI) : fixed if ParentNode is null, NullPointerEx
526 (ConstructDOM) : implemented when xmlReader isn't XmlTextReader
527 ...and renamed XmlDocument.ConventionalParser to ReusableReader ;-)
529 2002-12-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
531 * XmlNode.cs (RemoveChild):
532 bugfixed when XmlNode is Document OwnerDocument is null
533 * XmlDeclaration.cs (Value):
534 bugfixed regular expression pattern.
535 * XmlDocument.cs (CreateNavigator): bugfixed access modifier.
537 2002-11-24 Duncan Mak <duncan@ximian.com>
539 * XmlImplementation.cs (HasFeature): Fixed a typo. Thanks for
540 Fabricio Barros Cabral (fx) on #mono for spotting it. This is his
541 first patch to Mono! ;-)
543 2002-11-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
546 (AppendChild): readded refChild != null condition before throwing
547 "cannot insert this node in this position" exception. There's probably
548 a better solution. Fixes #34191.
549 (RemoveAll): changed following Atsushi instructions.
552 2002-11-13 Duncan Mak <duncan@ximian.com>
554 * XmlElement.cs (IsEmpty): A temporary check-in to keep gtk-sharp
557 2002-11-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
559 * XmlDocument.cs : unified all constructors, added ConventionalParser,
560 implemented CloneNode() and CreateEntityReference(),
561 * XmlEntityReference.cs : set_Value, WriteContentTo, WriteTo
562 set BaseURI to MonoTODO
563 * XmlNode.cs : implemented PrependChild, modified ConstructDOM,
564 bugfix InsertAfter (incorrect prepending) and InsertBefore
565 (more than one DocumentElements hadn't caused errors)
566 * XmlTextReader.cs : unified all constructors,
567 added internal SetReaderContext(), SetReaderFragment()
568 bugfix (syntax check of PUBLIC / getting internal subset)
570 2002-11-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
572 XmlAttribute.cs : set_InnerText, set_InnerXml, some check for set_Prefix
573 XmlAttributeCollection.cs : (indexer) this[localName, namespaceURI]
574 XmlCharacterData.cs : exchanged Data and Value
575 (for processing events and inheritance)
576 XmlDocumentFragment.cs : set_InnerXml
577 XmlSignificantWhitespace.cs : set_Value
578 XmlTextReader.cs : ReadAttributeValue
580 2002-11-04 Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
582 XmlAttribute.cs: fixed missing internal 'OwnerElement''SetOwnerElement'
584 2002-11-03 Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
586 * XmlAttributeCollection.cs : checks owner element.
587 implemented CopyTo, InsertAfter, InsertBefore, Prepend,
588 Remove, RemoveAt, SetNamedItem.
589 removed some logics that sets 'Parent' (that should be null)
590 * XmlDocument.cs : set_InnerXml, [PreserveWhitespace(incomplete)]
591 * XmlDocumentFragment.cs : get_InnerXml, WriteContentTo, WriteTo
592 * XmlElement.cs : implemented WriteTo, set_InnerText.
593 Fixed WriteTo() to add xmlns:* attributes when
594 writer.LookupPrefix() returned mismatching.
595 * XmlNamedNodeMap.cs : compare not only name but localname and nsuri.
596 Removing different prefixes for the same uri now runs correct.
597 added SetNamedItem(XmlNode node, int position_to_insert).
598 * XmlNode.cs : ConstructDOM (logically) creates XmlEntityReference,
599 XmlWhitespace, and XmlSignificantWhitespace
601 2002-10-31 Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
603 * XmlDocument.cs : implemented CreateDocumentFragment()
604 * XmlElement.cs, XmlLinkedNode.cs :
605 moved LastLinkedChild from XmlElement to XmlLinkedNode.
606 * XmlEntityReference.cs : must throw NotImplementedException.
608 + implemented InsertBefore() and then implemented InsertAfter()
609 and modified AppendChild() to call it.
610 + added logic to check ReadOnly, parent document equivalence,
611 and inserting any 'content' before/after DocumentElement.
612 + implemented Clone() [it is equals to CloneNode() by MS doc.]
613 + added logic in RemoveChild() to check parent of oldChild.
614 + fixed ConstructNamespaceManager() to internal only.
616 2002-10-29 Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
618 * XmlAttribute.cs : add internal 'IsDefault' property
619 (equals to !Specified)
620 * XmlImplementation.cs : added 'internalNameTable' property.
622 + now allows "" for 'standalone' in CreateXmlDeclaration.
623 + implemented 'Implementation' property and constructor with it.
624 + added logic for appending name table (but still no use)
625 + implemented property 'DocumentType'
626 (but without internalSubset parsing. wait for next update.)
628 + modified AppendChild() and RemoveChild() to support fragment.
629 + modified AppendChild() to remove newChild from its parent
630 when newChild is already in the other place.
631 + modified RemoveChild() to set parentNode null.
632 + modified ConstructDOM() to create DocumentType,
633 and fixed access modifier ('internal protected' to 'internal')
634 * XmlLinkedNode.cs : fixed 'NextSibling' to return null
635 when its parent is null.
636 * XmlDocumentFragment.cs : added internal override 'LastLinkedChild'
637 property to enable AppendChild() for this class.
638 * XmlTextReader.cs : appended private publicId and systemId fields.
640 2002-10-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
642 * XmlTextReader.cs: make it work when the underlying Stream is not
645 2002-10-26 Piers Haken <piersh@friskit.com>
647 * XmlNode.cs: add virtual property XPathNodeType
652 * XmlProcessingInstruction.cs:
653 * XmlSignificantWhitespace.cs:
655 * XmlWhitespace.cs: implement XPathNodeType property
656 * XmlDocumentNavigator.cs: use XPathNodeType property instead of switch
658 2002-10-26 Piers Haken <piersh@friskit.com>
660 * XmlDocumentNavigator.cs: return invalid XPathNodeType (-1) for unknown node types.
662 2002-10-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
664 * XmlTextReader.cs: don't increment depth for entity references.
666 2002-10-22 Tim Haynes <thaynes@openlinksw.com>
668 * - Fixed the duplication of xmlns:xx = yy when serializing the
669 XML for serialization
671 Fixed the unnecessary parsing/serializing when adding assemblies
674 Avoided setting the XmlNode.InnerXml property
675 (as it's not implemented)
677 Fixed the usage/implementation of
678 XmlElement.GetElementsByTagName()
680 2002-10-21 Duncan Mak <duncan@ximian.com>
685 * XmlTextReader.cs: Implementation for XmlNode.InnerXml from
686 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>.
688 2002-10-18 Duncan Mak <duncan@ximian.com>
690 * XmlDocument.cs: Applied a patch by Atsushi Enomoto
691 <ginga@kit.hi-ho.ne.jp>.
693 2002-10-12 A.Enomoto <ginga@kit.hi-ho.ne.jp>
695 * XmlDocument.cs (ImportNode): Implemented
697 2002-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
699 * XmlDocument.cs: one more Load method implemented.
700 * XmlTextReader.cs: Depth now works.
702 2002-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
704 * XmlConvert.cs: IsInvalid is now internal.
705 * XmlNamespaceManager.cs: implemented RemoveNamespace
706 * XmlTextReader.cs: return BaseURI and Encoding from the parser.
707 * XmlTextWriter.cs: implemented WriteName and WriteNmToken.
709 2002-09-19 Matt Hunter <mahunter@tconl.com>
711 * XmlElement.cs: Implementing SetAttributeNode(localName,namespaceURI)
712 * XmlAttributeCollection.cs: Implemented Append (XmlAttribute)
714 2002-09-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
716 * XmlConvert.cs: finished implementation.
717 * XmlTextReader.cs: fixed #30239.
718 * XmlTextWriter.cs: fixed #30240.
720 2002-09-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
722 * XmlTextReader.cs: line and position begin with 1.
724 2002-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
726 * XmlException.cs: added a new internal constructor for IXmlLineInfo
727 and output line and position info in Message.
729 * XmlReader.cs: implemented missing bits.
731 2002-09-12 Piers Haken <piersh@friksit.com>
733 * XmlDocumentNavigator.cs: implement MoveToId()
735 2002-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
737 * XmlTextWriter.cs: fixed bug #29886.
739 2002-08-26 Ravi Pratap <ravi@ximian.com>
742 * XmlAttribute.cs (InnerText): Implement getting this property.
744 * XmlNode.cs (InnerText): Ensure that we append only values of
747 2002-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
749 * XmlWriter.cs: made ws and namespaceManager protected. mcs has a bug
750 that allowed compiling this.
751 [ FIXME: filed bug #29435. mcs should have failed on this ]
753 2002-08-25 Tim Coleman <tim@timcoleman.com>
755 Change CreateNavigator to not be virtual.
757 Add set_Prefix and InnerText accessors.
758 * XmlEntityReference.cs:
759 Add set_Value accessor.
761 Make objects which should be private private.
763 Remove WriteStartElementInternal abstract definition.
764 * XmlValidatingReader.cs:
767 2002-08-22 Jason Diamond <jason@injektilo.org>
769 * XmlAttributeCollection.cs, XmlElement.cs: Implementation of RemoveAll
770 and RemoveAllAttributes courtesy of Matt Hunter <xrkune@tconl.com>.
772 2002-08-22 Jason Diamond <jason@injektilo.org>
774 * XmlElement.cs: Correction to previous GetElementsByTagName patch
775 courtesy of Matt Hunter <xrkune@tconl.com>.
777 2002-08-22 Jason Diamond <jason@injektilo.org>
779 * XmlDocument.cs, XmlElement.cs: Added implementation of namepsace
780 qualified GetElementsByTagName courtesy of Matt Hunter
783 2002-08-19 Jason Diamond <jason@injektilo.org>
785 * XmlDocument.cs, XmlElement.cs: Added implementation of
786 GetElementsByTagName courtesy of Matt Hunter <xrkune@tconl.com>.
788 2002-08-16 Jason Diamond <jason@injektilo.org>
790 * XmlElement.cs: Fixed writing out qualified elements courtesy of
791 Marcus Bürgel <marcus.buergel@gmx.de>.
793 2002-08-13 Tim Coleman <tim@timcoleman.com>
795 Partial implementation of WriteQualifiedName ().
797 2002-08-07 Kral Ferch <kral_ferch@hotmail.com>
798 * XmlCharacterData.cs: Implemented AppendData(), DeleteData(),
799 InsertData(), and ReplaceData(). These methods fire the
800 NodeChanging and NodeChanged events.
802 * XmlDocument.cs: Fixed bugs in onNodeChanged() and onNodeChanging().
804 * XmlNode.cs: AppendChild() fires NodeInserting and NodeInserted events.
805 RemoveAll() and RemoveChild() fire NodeRemoving and NodeRemoved events.
807 2002-08-03 Tim Coleman <tim@timcoleman.com>
808 * XmlNamespaceManager.cs:
809 .Net allows the empty namespace to be redefined
810 at a later point, but the current implementation
811 did not. This fixes a hashtable conflict.
813 2002-07-26 Tim Coleman <tim@timcoleman.com>
815 When given a textwriter, check to see if it has a
816 null encoding. This was being done for other inputs
819 Wed Jul 24 13:16:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
821 * XmlTextReader.cs: rough line/column support.
823 2002-07-23 Duncan Mak <duncan@ximian.com>
825 * XmlConvert.cs: Implement the ToDateTime method. ToDateTime
826 (string, string []) is particularly strange.
828 * XmlException.cs: Remember to call the base serialization
831 * XmlNodeReader.cs: Keep a new variable to store the Depth.
833 2002-07-14 Jason Diamond <jason@injektilo.org>
835 * XmlAttribute.cs: Removed ownerElement field since we can reuse
838 * XmlDocumentNavigator.cs: MoveToParent now moves to the OwnerElement
839 if the current node is an attribute.
841 * XmlElement.cs: SetAttributeNode now sets the new attribute's
844 2002-07-12 Jason Diamond <jason@injektilo.org>
846 * XmlDocument.cs: If null was passed in for prefix or namespaceURI when
847 creating an element, use String.Empty instead.
849 2002-07-12 Piers Haken <piersh@friksit.com>
851 * XmlAttributeCollection.cs: implement some ItemOf indexers
852 * XmlNamedNodeMap.cs: add internal 'Nodes' accessor for the nodeList field
853 * XmlNode.cs: SelectNodes: return empty XmlNodeList, not null
855 2002-07-06 Ajay kumar Dwivedi <adwiv@yahoo.com>
858 2002-10-26 Piers Haken <piersh@friskit.com>
860 * XmlDocumentNavigator.cs: return invalid XPathNodeType (-1) for unknown node types.
862 2002-10-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
864 * XmlTextReader.cs: don't increment depth for entity references.
866 2002-10-22 Tim Haynes <thaynes@openlinksw.com>
868 * - Fixed the duplication of xmlns:xx = yy when serializing the
869 XML for serialization
871 Fixed the unnecessary parsing/serializing when adding assemblies
874 Avoided setting the XmlNode.InnerXml property
875 (as it's not implemented)
877 Fixed the usage/implementation of
878 XmlElement.GetElementsByTagName()
880 2002-10-21 Duncan Mak <duncan@ximian.com>
885 * XmlTextReader.cs: Implementation for XmlNode.InnerXml from
886 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>.
888 2002-10-18 Duncan Mak <duncan@ximian.com>
890 * XmlDocument.cs: Applied a patch by Atsushi Enomoto
891 <ginga@kit.hi-ho.ne.jp>.
893 2002-10-12 A.Enomoto <ginga@kit.hi-ho.ne.jp>
895 * XmlDocument.cs (ImportNode): Implemented
897 2002-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
899 * XmlDocument.cs: one more Load method implemented.
900 * XmlTextReader.cs: Depth now works.
902 2002-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
904 * XmlConvert.cs: IsInvalid is now internal.
905 * XmlNamespaceManager.cs: implemented RemoveNamespace
906 * XmlTextReader.cs: return BaseURI and Encoding from the parser.
907 * XmlTextWriter.cs: implemented WriteName and WriteNmToken.
909 2002-09-19 Matt Hunter <mahunter@tconl.com>
911 * XmlElement.cs: Implementing SetAttributeNode(localName,namespaceURI)
912 * XmlAttributeCollection.cs: Implemented Append (XmlAttribute)
914 2002-09-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
916 * XmlConvert.cs: finished implementation.
917 * XmlTextReader.cs: fixed #30239.
918 * XmlTextWriter.cs: fixed #30240.
920 2002-09-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
922 * XmlTextReader.cs: line and position begin with 1.
924 2002-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
926 * XmlException.cs: added a new internal constructor for IXmlLineInfo
927 and output line and position info in Message.
929 * XmlReader.cs: implemented missing bits.
931 2002-09-12 Piers Haken <piersh@friksit.com>
933 * XmlDocumentNavigator.cs: implement MoveToId()
935 2002-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
937 * XmlTextWriter.cs: fixed bug #29886.
939 2002-08-26 Ravi Pratap <ravi@ximian.com>
942 * XmlAttribute.cs (InnerText): Implement getting this property.
944 * XmlNode.cs (InnerText): Ensure that we append only values of
947 2002-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
949 * XmlWriter.cs: made ws and namespaceManager protected. mcs has a bug
950 that allowed compiling this.
951 [ FIXME: filed bug #29435. mcs should have failed on this ]
953 2002-08-25 Tim Coleman <tim@timcoleman.com>
955 Change CreateNavigator to not be virtual.
957 Add set_Prefix and InnerText accessors.
958 * XmlEntityReference.cs:
959 Add set_Value accessor.
961 Make objects which should be private private.
963 Remove WriteStartElementInternal abstract definition.
964 * XmlValidatingReader.cs:
967 2002-08-22 Jason Diamond <jason@injektilo.org>
969 * XmlAttributeCollection.cs, XmlElement.cs: Implementation of RemoveAll
970 and RemoveAllAttributes courtesy of Matt Hunter <xrkune@tconl.com>.
972 2002-08-22 Jason Diamond <jason@injektilo.org>
974 * XmlElement.cs: Correction to previous GetElementsByTagName patch
975 courtesy of Matt Hunter <xrkune@tconl.com>.
977 2002-08-22 Jason Diamond <jason@injektilo.org>
979 * XmlDocument.cs, XmlElement.cs: Added implementation of namepsace
980 qualified GetElementsByTagName courtesy of Matt Hunter
983 2002-08-19 Jason Diamond <jason@injektilo.org>
985 * XmlDocument.cs, XmlElement.cs: Added implementation of
986 GetElementsByTagName courtesy of Matt Hunter <xrkune@tconl.com>.
988 2002-08-16 Jason Diamond <jason@injektilo.org>
990 * XmlElement.cs: Fixed writing out qualified elements courtesy of
991 Marcus Bürgel <marcus.buergel@gmx.de>.
993 2002-08-13 Tim Coleman <tim@timcoleman.com>
995 Partial implementation of WriteQualifiedName ().
997 2002-08-07 Kral Ferch <kral_ferch@hotmail.com>
998 * XmlCharacterData.cs: Implemented AppendData(), DeleteData(),
999 InsertData(), and ReplaceData(). These methods fire the
1000 NodeChanging and NodeChanged events.
1002 * XmlDocument.cs: Fixed bugs in onNodeChanged() and onNodeChanging().
1004 * XmlNode.cs: AppendChild() fires NodeInserting and NodeInserted events.
1005 RemoveAll() and RemoveChild() fire NodeRemoving and NodeRemoved events.
1007 2002-08-03 Tim Coleman <tim@timcoleman.com>
1008 * XmlNamespaceManager.cs:
1009 .Net allows the empty namespace to be redefined
1010 at a later point, but the current implementation
1011 did not. This fixes a hashtable conflict.
1013 2002-07-26 Tim Coleman <tim@timcoleman.com>
1015 When given a textwriter, check to see if it has a
1016 null encoding. This was being done for other inputs
1019 Wed Jul 24 13:16:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
1021 * XmlTextReader.cs: rough line/column support.
1023 2002-07-23 Duncan Mak <duncan@ximian.com>
1025 * XmlConvert.cs: Implement the ToDateTime method. ToDateTime
1026 (string, string []) is particularly strange.
1028 * XmlException.cs: Remember to call the base serialization
1031 * XmlNodeReader.cs: Keep a new variable to store the Depth.
1033 2002-07-14 Jason Diamond <jason@injektilo.org>
1035 * XmlAttribute.cs: Removed ownerElement field since we can reuse
1038 * XmlDocumentNavigator.cs: MoveToParent now moves to the OwnerElement
1039 if the current node is an attribute.
1041 * XmlElement.cs: SetAttributeNode now sets the new attribute's
1044 2002-07-12 Jason Diamond <jason@injektilo.org>
1046 * XmlDocument.cs: If null was passed in for prefix or namespaceURI when
1047 creating an element, use String.Empty instead.
1049 2002-07-12 Piers Haken <piersh@friksit.com>
1051 * XmlAttributeCollection.cs: implement some ItemOf indexers
1052 * XmlNamedNodeMap.cs: add internal 'Nodes' accessor for the nodeList field
1053 * XmlNode.cs: SelectNodes: return empty XmlNodeList, not null
1055 2002-07-06 Ajay kumar Dwivedi <adwiv@yahoo.com>
1057 * XmlTextWriter: Fixed Indentation. IndentationOverridden should
1058 not be set when inside a attribute.
1060 2002-07-06 Ajay kumar Dwivedi <adwiv@yahoo.com>
1062 * XmlTextWriter: In WriteStartElement, if namespace is null and
1063 prefix is null|empty do not write out xmlns=""
1065 * XmlWriter: WriteStartElement calls the virtual method with null
1066 argument instead of empty string.
1068 2002-07-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1070 * XmlTextReader.cs: implemented .ctor (Stream).
1072 2002-06-26 Duncan Mak <duncan@ximian.com>
1074 * XmlNodeReader.cs: Implementation of most of the properties, and
1075 some of the related methods.
1077 2002-06-23 Piers Haken <piersh@friskit.com>
1079 * XmlDocumentNavigator.cs: implement Clone()
1080 * XmlElement.cs: remove bogus unimplemented override of InnerText
1081 * XmlNode.cs: implment SelectNodes/SelectSingleNode
1082 * XmlNodeArrayList.cs: new support class for SelectNodes
1084 2002-06-21 Ajay kumar Dwivedi <adwiv@yahoo.com>
1086 * XmlQualifiedName: Name and Namespaces are never null. If null is passed
1087 to the constructor, set them to empty strings.
1088 Fixed the Operators.
1090 2002-06-18 Ajay kumar Dwivedi <adwiv@yahoo.com>
1092 * XmlTextReader.cs: HasLineInfo returns false instead of throwing an
1095 2002-06-14 Duncan Mak <duncan@ximian.com>
1097 * XmlConvert.cs: Added CLSCompliant attributes to methods.
1099 2002-06-12 Duncan Mak <duncan@ximian.com>
1101 * XmlCharacterData.cs (Value): Throw an ArgumentException in the
1102 set block if the node is read-only.
1104 2002-06-10 Ajay kumar Dwivedi <adwiv@yahoo.com>
1105 * XmlConstruct.cs : New Internal class with Helper methods for
1106 Checking XmlConstructs
1107 * XmlConvert.cs: Implemented most of the methods
1109 2002-06-08 Duncan Mak <duncan@ximian.com>
1111 * XmlDocument.cs (Load):
1112 Added bits to Load (string) for BaseURI support.
1114 * XmlAttribute.cs (BaseURI):
1115 * XmlDocument.cs (BaseURI):
1116 * XmlEntity.cs (BaseURI): Implemented.
1118 2002-05-27 Jason Diamond <jason@injektilo.org>
1120 * XmlDocumentNavigator.cs: Added file to directory.
1122 * XmlNode.cs (CreateNavigator): Implemented.
1123 (InnerText): Implemented.
1125 * XmlDocument.cs (NamespaceURI, Prefix): Return String.Empty instead of
1127 (Load(XmlReader)): Allow for namespace qualified attributes.
1129 * XmlElement.cs: Implemented GetAttribute(string, string) and both
1130 GetAttributeNode overloads.
1131 (SetAttributeNode(XmlAttribute)): Implemented.
1133 * XmlNamedNodeMap.cs: Fixed copy/paste bugs in GetNamedItem(string, string)
1134 and RemoveNamedItem(string, string).
1136 * XmlLinkedNode.cs (PreviousSibling): Implemented.
1138 * XmlTextReader.cs: Added code to maintain the order of attributes as
1139 they're parsed. XML doesn't require this but Microsoft's parser does it and
1140 matching them makes testing easier so now we have it, too.
1142 2002-05-26 Miguel de Icaza <miguel@ximian.com>
1144 * XmlDocument.cs: Implement the Save methods.
1146 2002-05-08 Mike Kestner <mkestner@speakeasy.net>
1148 * XmlNamedNodeMap.cs (SetNamedItem): Fixed a copy/paste bug.
1150 2002-04-28 Duncan Mak <duncan@ximian.com>
1152 * XmlSignificantWhitespace.cs (Value):
1153 * XmlWhitespace.cs (Value): Added MonoTODO to the 'set'
1154 block. Added new private method, IsValidWhitespaceChar, for
1157 2002-04-16 Duncan Mak <duncan@ximian.com>
1159 * XmlParserContext.cs (NameTable): Fixed a typo in the set block.
1161 2002-04-12 Duncan Mak <duncan@ximian.com>
1163 * XmlAttribute.cs (Prefix): Added preliminary code for set block,
1164 added comment on work that needs to be done here. A new MonoTODO item.
1166 * XmlDocument.cs (ctor): Corrected constructor signature, changed
1167 parameter from 'NameTable' to 'XmlNameTable'.
1169 * XmlDocumentFragment.cs (InnerXml): Added missing set block.
1171 * XmlCaseOrder.cs: Moved to System.Xml.XPath.
1173 2002-04-10 Duncan Mak <duncan@ximian.com>
1175 * XmlNodeReader.cs: Initial stubs for the class.
1177 2002-04-08 Kral Ferch <kral_ferch@hotmail.com>
1179 * XmlAttributes.cs: InnerXml getter, WriteContentTo, and WriteTo
1182 * XmlDeclaration.cs: WriteTo implementation.
1184 * XmlDocument.cs: InnerXml getter implementation.
1186 * XmlElement.cs: InnerXml getter implementation.
1188 * XmlNode.cs: Removed MonoTODO attrib on OuterXml.
1190 * XmlSignificantWhitespace.cs: WriteTo implementation.
1192 * XmlText.cs: WriteContentTo and WriteTo implementation.
1194 * XmlTextWriter.cs: WriteRaw implementation.
1196 * XmlWhitespace.cs: WriteContentTo and WriteTo implementations.
1198 2002-04-05 Kral Ferch <kral_ferch@hotmail.com>
1200 * XmlAttributes.cs: Added reminder MonoTODO to set NamespaceURI
1201 if prefix in constructor is one of the default ones.
1203 * XmlCharacterData.cs: Returns String.Empty for Value and Data
1204 even when constructed with null.
1206 * XmlDeclaration.cs: Value doesn't put encoding or standalone
1207 in if they are empty.
1209 * XmlDocument.cs: Implemented CreateNode methods and this caused
1210 the changes in the other files in this checkin.
1212 * XmlProcessingInstruction.cs: Returns String.Empty for Value and Data
1213 even when constructed with null.
1215 * XmlWhitespace.cs: Changed Value 'get' to return Data.
1217 2002-04-01 Kral Ferch <kral_ferch@hotmail.com>
1219 * XmlTextWriter.cs: Impls for WriteEndDocument and WriteFullEndElement.
1221 2002-03-31 Kral Ferch <kral_ferch@hotmail.com>
1223 * XmlTextWriter.cs: Impls for LookupPrefix, WriteBase64,
1224 and WriteCharEntity.
1226 * XmlWrite.cs: Fixed bug where attribute namespace decl
1227 was pushing a scope onto the namespace manager when it shouldn't
1230 2002-03-31 Kral Ferch <kral_ferch@hotmail.com>
1232 * XmlTextWriter.cs: Some tweaks for WriteAttibuteString
1233 in different states (no open start element, in WriteState.Content mode).
1235 2002-03-29 Kral Ferch <kral_ferch@hotmail.com>
1237 * XmlTextWriter.cs: XmlLang and XmlSpace properties
1238 and WriteWhitespace.
1240 * XmlTextWriterOpenElement.cs: scope support for XmlLang
1243 2002-03-29 Kral Ferch <kral_ferch@hotmail.com>
1245 * XmlTextWriter.cs: Working on Attribute methods.
1247 * XmlWriter.cs: Working on Attribute methods.
1249 2002-03-28 Duncan Mak <duncan@ximian.com>
1251 * XmlDocument.cs (CreateWhitespace):
1252 (CreateSignificantWhitespace): Removed extraneous call to the ToCharArray
1255 * XmlSignificantWhitespace.cs (Value): Removed MonoTODO attribute.
1257 2002-03-26 Duncan Mak <duncan@ximian.com>
1259 * XmlDocument.cs (CreateDocumentType): Implemented.
1261 * XmlNode.cs (Value): Implemented.
1263 * XmlProcessingInstruction.cs (InnerText): Implemented. It works just
1264 like XmlCharacterData.
1266 * XmlDeclaration.cs (CloneNode):
1267 * XmlDocument.cs (CreateXmlDeclaration): Added missing constructor
1270 * XmlCharacterData.cs (InnerText): Implemented. Funny that the
1271 docs say it is the "The concatenated values of the node and all
1272 the children of the node.". I wrote some test programs and
1273 couldn't get any of the derived nodes to AppendChild. For now,
1274 InnerText == Data == Value.
1275 (Substring): Fixed typo.
1277 * XmlDeclaration.cs (XmlDeclaration): Fixed the constructor parameter signature.
1279 * XmlImplementation.cs (CreateDocument): Implemented.
1281 2002-03-25 Duncan Mak <duncan@ximian.com>
1283 * XmlDeclaration.cs: Rewrote the class, fixed formatting, added
1284 missing properties (InnerText, Value).
1286 * XmlDocument.cs (CreateXmlDeclaration): Implemented.
1288 2002-03-23 Kral Ferch <kral_ferch@hotmail.com>
1290 * XmlTextWriter.cs: Impls for BaseStream and
1291 Namespaces and WriteState.
1293 * XmlWriter.cs: WriteState and WriteStartElementInternal.
1295 2002-03-23 Kral Ferch <kral_ferch@hotmail.com>
1297 * XmlNodeListChildren.cs: made class internal
1298 instead of public. Shouldn't be visible outside
1301 * XmlTextWriter.cs: Implementations for Formatting,
1302 IndentChar, Indenting, QuoteChar, WriteStartDocument(standalone).
1303 Suppresses encoding on xml declaration if null stream passed in.
1304 Formats output including suppressing indentation for elements in
1307 * XmlTextWriterOpenElement.cs: Initial checkin.
1308 XmlTextWriter uses stack of these objects to track
1311 2002-03-22 Mike Kestner <mkestner@speakeasy.net>
1313 * XmlElement.cs: impl HasAttribute(string name).
1315 2002-03-22 Duncan Mak <duncan@ximian.com>
1317 * XmlElement.cs: Reformatted.
1318 (CloneNode) Corrected.
1320 * XmlDocument.cs (CreateWhitespace):
1321 (CreateSignificantWhitespace): Implemented.
1323 * XmlAttribute.cs (CloneNode): Changed the child's CloneNode to
1324 true, because Attributes have ChildNodes.
1326 2002-03-21 Kral Ferch <kral_ferch@hotmail.com>
1328 * XmlTextWriter.cs: WriteStartDocument tracks state, writes out
1329 xml declaration along with encoding. WriteEndElement throws
1330 exception if no WriteStartElement exists.
1332 2002-03-20 Duncan Mak <duncan@ximian.com>
1334 * XmlEntityReference.cs (CloneNode): Implemented.
1336 * XmlException.cs (Message): Implemented. We need to cache the
1337 message string because SystemException doesn't expose 'message'
1340 * XmlText.cs (Value): Added in the missing Value property.
1342 2002-03-20 Duncan Mak <duncan@ximian.com>
1344 * XmlAttribute.cs (CloneNode): Implemented.
1346 * XmlDocumentFragment.cs (CloneNode): Implemented.
1348 * XmlElement.cs (CloneNode): Implemented.
1350 2002-03-19 Duncan Mak <duncan@ximian.com>
1352 * XmlNotation.cs: Added to CVS.
1354 * XmlAttribute.cs (CloneNode): First crack at the CloneNode method.
1356 * XmlCDataSection.cs (CloneNode): Implemented.
1358 * XmlDocumentFragment.cs: Reformatted and added the missing properties
1359 (InnerXml, OwnerDocument, ParentNode).
1360 (CloneNode): Implemented.
1362 * XmlSignificantWhitespace.cs (CloneNode): Implemented.
1363 (Value) Implemented the 'get' property.
1365 * XmlWhitespace.cs (Module): implemented.
1367 2002-03-19 Jason Diamond <jason@injektilo.org>
1369 * XmlDocument.cs: Fixed typo in Load that was duplicating the LocalName
1372 2002-03-18 Jason Diamond <jason@injektilo.org>
1374 * XmlTextReader.cs: Don't restore properties after reading last
1375 attribute on an element.
1377 * XmlDocument.cs: Move back to element after reading attributes
1378 so that IsEmptyElement test succeeds.
1380 2002-03-18 Kral Ferch <kral_ferch@hotmail.com>
1382 * XmlNamespaceManager.cs: Implemented LookupPrefix.
1384 * XmlTextWriter.cs: Implemented namespace and prefix support.
1386 2002-03-18 Kral Ferch <kral_ferch@hotmail.com>
1388 * XmlTextReader.cs: Restores properties after
1389 reading last attribute on an element.
1391 * XmlNode.cs: AppendChild sets the parent
1394 2002-03-17 Kral Ferch <kral_ferch@hotmail.com>
1396 * XmlCDataSection.cs: Formatting, Implementation for WriteTo.
1398 * XmlComment.cs: Implementations for WriteTo and WriteContentTo.
1400 * XmlElement.cs: Fixed bug in WriteTo.
1402 * XmlProcessingInstruction.cs: Formatting.
1404 * XmlTextWriter.cs: Implementations for Close, WriteCData, WriteComment,
1405 fixes for WriteEndElement, WriteProcessingInstruction.
1407 2002-03-17 Kral Ferch <kral_ferch@hotmail.com>
1409 * XmlDocument.cs: Implementations for WriteTo() and WriteContentTo(),
1410 had Load() add PIs to the document, moved onXXX methods to alphabetical
1413 * XmlElement.cs: Implementations for WriteTo() and WriteContentTo().
1415 * XmlNode.cs: Implementations for InnerXml Get and OuterXml.
1417 * XmlProcessingInstruction.cs: Implementations for WriteTo() and
1420 * XmlTextWriter.cs: Implementations for WriteEndElement,
1421 WriteProcessingInstruction, WriteStartElement, and WriteString.
1423 * XmlWriter.cs: Implemented WriteStartElement() methods.
1425 2002-03-15 Duncan Mak <duncan@ximian.com>
1427 * XmlEntity.cs: Added to CVS. Need to implement BaseURI and
1428 InnerText once I know what they do.
1430 * XmlDocumentType.cs (XmlDocumentType): Fix the constructor now
1431 that we can properly chain constructors.
1432 (CloneNode): implemented.
1433 (WriteContentTo): Removed MonoTODO attribute as this method has no
1434 effect in this class.
1436 * XmlProcessingInstruction.cs (Value): Added the missing Set
1438 (InnerText): Added in, but not implemented.
1440 2002-03-14 Kral Ferch <kral_ferch@hotmail.com>
1442 * XmlTextWriter.cs: implemented constructors and
1443 WriteCData and WriteComment.
1445 2002-03-14 Duncan Mak <duncan@ximian.com>
1447 * XmlDocument.cs: Moved the NodeChanged EventHandler to its own
1448 file, and updated the callbacks to reflect the change.
1449 (XmlDocument): Added the NameTable constructor.
1450 (NameTable): Also the NameTable property.
1452 * XmlNodeChangedEventHandler.cs: Added, replacing the version that
1453 was in XmlDocument.cs. It has two arguments now (object,
1454 EventArgs) , instead of one (object).
1456 2002-03-14 Kral Ferch <kral_ferch@hotmail.com>
1458 * XmlWriter.cs: Formatting.
1460 * XmlTextWriter.cs: Initial checkin.
1462 2002-03-14 Duncan Mak <duncan@ximian.com>
1464 * Validation.cs: Removed, replaced by ValidationType.cs.
1466 * ValidationType.cs: Added.
1468 2002-03-13 Duncan Mak <duncan@ximian.com>
1470 * XmlException.cs: Made it [Serializable], implemented good ol'
1471 GetObjectData, and the serialization constructor.
1473 * XmlNamedNodeMap.cs (SetNamedItem): Check for the Name property.
1474 (SetNamedItem): Reverted (added back in) the patch with the
1475 ReadOnly checks. "Don't doubt yourself, my son... you were right!"
1477 * XmlNamedNodeMap.cs (GetEnumerator): piggyback on the ArrayList implementation.
1478 (GetNamedItem (string, string)): implemented.
1479 (RemoveNamedItem): implemented.
1480 (SetNamedItem): implemented.
1482 2002-03-12 Kral Ferch <kral_ferch@hotmail.com>
1484 * XmlAttribute.cs: Moved a method from amongst properties down to
1485 it's alphabetical position in the methods section.
1487 * XmlNode.cs: Passes in 'this' to XmlNodeList constructor instead of
1488 last linked child. Set XmlNode base class to return false for IsReadOnly().
1489 Implemented GetEnumerator() and RemoveChild().
1491 * XmlNodeListChildren.cs: Now stores the parent instead of the last child.
1492 This is to support the behavior that the Enumerator doesn't become invalid
1493 when changes to the children occur. Flushed out rest of implementation for
1494 MoveNext, Current, and Reset.
1496 2002-03-12 Duncan Mak <duncan@ximian.com>
1498 * XmlCharacterData.cs: Reformatted the properties for better readability.
1500 * XmlLinkedNode.cs: Removed the awful boxy comments.
1502 * XmlNamedNodeMap.cs (Count):
1503 (Item): Implemented. Tests will be coming.
1505 * XmlEntityReference.cs:
1506 * XmlSignificantWhitespace.cs: Implemented these classes except for
1507 the Clone, WriteContentTo and WriteTo methods. Will have to
1508 investigate into these later.
1510 2002-03-11 Duncan Mak <duncan@ximian.com>
1512 * IHasXmlNode.cs: Added to CVS.
1514 2002-03-08 Jason Diamond <jason@injektilo.org>
1516 * XmlParserContext.cs: Added missing constructors and missing Encoding
1519 * XmlTextReader.cs: Start using the XmlParserContext class.
1521 2002-03-08 Jason Diamond <jason@injektilo.org>
1523 * XmlTextReader.cs: Implemented MoveToElement and MoveToFirstAttribute.
1525 2002-03-08 Mike Kestner <mkestner@speakeasy.net>
1527 * XmlNode.cs (Item): Implemented both indexers.
1529 2002-03-08 Jason Diamond <jason@injektilo.org>
1531 * DomEncodingType.cs, TreePosition.cs, XPathNodeType.cs, XmlDataType.cs,
1532 XmlExceptionCode.cs, XmlSortOrder.cs, XmlUtil.cs: Removed files.
1534 2002-03-08 Jason Diamond <jason@injektilo.org>
1536 * XmlAttribute.cs: Attribute nodes are supposed to store their values
1537 as child nodes so updated to reflect that.
1539 * XmlDocument.cs, XmlElement.cs, XmlNode.cs: Moved code that was
1540 duplicated in XmlDocument and XmlElement into XmlNode so that it
1541 wouldn't have to be duplicated in XmlAttribute, too.
1543 2002-03-08 Kral Ferch <kral_ferch@hotmail.com>
1545 * XmlNodeList.cs, XmlDocument.cs, XmlLinkedNode.cs,
1546 XmlNode.cs: Formatting.
1548 * XmlNodeListChildren.cs: Implementation of XmlNodeList
1549 for XmlNode.ChildNodes property.
1551 * XmlNodeListAsArrayList.cs: Removed file. Using different
1552 data structure (circular list) in XmlNode so this file
1555 * XmlDocument.cs, XmlElement.cs: New ChildNodes tests found
1556 bug in setter property of LastLinkedChild so fixed it.
1558 2002-03-06 Jason Diamond <jason@injektilo.org>
1560 * XmlInputSource.cs, XmlNames_1_0.cs, XmlParse.cs: Removed files.
1561 We already have a parser in XmlTextReader.
1563 * XmlException.cs: Removed constructor accepting XmlInputSource.
1565 2002-03-06 Kral Ferch <kral_ferch@hotmail.com>
1567 * XmlNode.cs: Rewrote this class from scratch with
1568 MonoToDo attribs and NotImplementedExceptions. Now defines an
1569 internal LastLinkedNode property to aid the new implementation.
1570 XmlNodes only have ref to owner doc and parent nodes now.
1572 * XmlLinkedNode.cs: Added NextLinkedSibling internal property
1573 and ref to next sibling to support walking our circular child
1576 * XmlDocument.cs: Added ref to last child node and overrides
1577 XmlNode's internal LastLinkedChild property to support walking
1578 our circular child node list.
1580 2002-03-02 Kral Ferch <kral_ferch@hotmail.com>
1582 * XmlProcessingInstructions.cs: Class was empty. Implemented
1583 constructor, properties, and CloneNode() method. Put in
1584 MonoToDo attrib for remaining methods.
1586 * XmlComment.cs: Reformatted and put in MonoToDo attribs.
1587 Got rid of helper methods and fields since they were no
1590 * XmlLinkedNode.cs: Reformatted and put in MonoToDo attribs.
1592 * XmlDocument.cs: Added code to Load(XmlReader) to create XmlComment,
1593 XmlCDataSection, and XmlProcessingInstruction nodes. Implemented
1594 Createxxx() methods for those three node types.
1596 2002-03-02 Jason Diamond <jason@injektilo.org>
1598 * XmlDocument.cs: Implemented the remaining CreateElement and
1599 CreateAttribute methods.
1601 * XmlAttribute.cs: Re-implemented.
1603 * XmlElement.cs: Set owner element on attributes. Reformatted.
1605 2002-03-02 Jason Diamond <jason@injektilo.org>
1607 * XmlTextReader.cs: Implemented MoveToNextAttribute().
1609 * XmlDocument.cs: Reformatted. Adding missing methods and MonoTODO
1610 attributes. Create attribute nodes while loading. Implemented
1611 Load(string) and CreateTextNode().
1613 * XmlCharacterData.cs, XmlText.cs: Re-implemented.
1615 * XmlCDataSection.cs, XmlComment.cs: Call correct constructor in
1618 * XmlNamedNodeMap.cs, XmlAttributeCollection.cs: Stubbed out.
1620 2002-03-02 Mike Kestner <mkestner@speakeasy.net>
1622 * XmlAttribute.cs : Using fix.
1623 * XmlDocument.cs (CreateAttribute(String)): Implement.
1625 2002-03-02 Jason Diamond <jason@injektilo.org>
1627 * XmlNamespaceManager.cs: Atomize prefixes and namespaces strings in
1630 2002-02-28 Jason Diamond <jason@injektilo.org>
1632 * XmlDocument.cs, XmlNode.cs: Initial implementation of LoadXml
1633 courtesy of Kral Ferch <kral.ferch@hotmail.com>.
1635 2002-02-28 Jason Diamond <jason@injektilo.org>
1637 * XmlException.cs, XmlReader.cs, XmlTextReader.cs: Reformatted,
1638 added missing members and MonoTODO attributes.
1640 * XmlTextReader.cs: Throw XmlException instead of System.Exception.
1642 2002-02-27 Jason Diamond <jason@injektilo.org>
1644 * XmlElement.cs: Reformatted, added missing members and MonoTODO
1647 2002-02-26 Duncan Mak <duncan@ximian.com>
1649 * XmlCDataSection.cs: Initial implementation.
1651 * NameTable.cs: Fixed the whole thing. Wrote a NUnit test to test
1652 it out. This should (hopefully) be correct.
1654 2002-02-26 Jason Diamond <jason@injektilo.org>
1656 * XmlTextReader.cs: Apparently Microsoft's implementation treats
1657 namespace declarations as attributes so we do now, too.
1659 * XmlNamespaceManager.cs: HasNamespace fixed so that it only
1660 checks the current scope.
1662 2002-02-26 Duncan Mak <duncan@ximian.com>
1664 * XmlDocumentType.cs: Added a few hacks here and there to
1665 temporarily fix the "I broke the build issue".
1667 2002-02-25 Jason Diamond <jason@injektilo.org>
1669 * XmlDocument.cs, XmlElement.cs, XmlNode.xs, XmlNodeList.cs,
1670 XmlNodeListAsArrayList.cs: Multiple fixes necessary to get
1671 simple test to pass. The existing code is really shitty so I'll
1672 probably start writing tests and refactoring before much else
1675 2002-02-25 Duncan Mak <duncan@ximian.com>
1677 * NameTable.cs: Implemented.
1679 * XmlDeclaration.cs: It should inherit from XmlLinkedNode, not XmlNode.
1681 2002-02-24 Duncan Mak <duncan@ximian.com>
1683 * XmlNodeOrder.cs: Added to CVS.
1685 * XmlQualifiedName.cs: Fixed a warning from Equals ().
1687 * XmlTokenizedType.cs: Added to CVS.
1689 * XmlUrlResolver.cs: Added to CVS with one TODO task.
1691 2002-02-23 Duncan Mak <duncan@ximian.com>
1693 * XmlQualifiedName.cs: Fixed ToString () and added the operators
1696 2002-02-23 Jason Diamond <jason@injektilo.org>
1698 * XmlTextReader.cs: Added support for qualified attributes.
1700 2002-02-23 Jason Diamond <jason@injektilo.org>
1702 * XmlNamespaceManager.cs: Initial implementation.
1704 * XmlTextReader.cs: Added support for NamespaceURI property on
1707 2002-02-23 Nick Drochak <ndrochak@gol.com>
1709 * ChangeLog: Add the change log to this directory
1711 * XmlQualifiedName.cs: Fixed compile errors so it would build. Still has