1 2003-10-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
3 * DTDValidatingReader.cs : Now it handles whitespace entity as
5 * XmlConvert.cs : As to NIST testcases, exponential support on single
6 and double floating point numbers.
7 * XmlValidatingReader.cs : If it IsDefault, then line number and line
10 2003-10-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
15 XmlWriter.cs : Fixed incorrect access modifier.
16 * XmlTextWriter.cs : Imported state variable from XmlWriter.
17 * DTDValidatingReader.cs : Removed extraneous MonoTODO.
18 * XmlConvert.cs : Implemented ToTimeSpan().
19 Modified ToDateTime() to reuse the same array.
21 2003-10-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
23 * XmlAttributeCollection.cs : Fixed synchronization stuff.
24 * XmlConvert.cs : Added two FromBinHexString() methods.
25 * XmlTextReader.cs : Modified to use one of the above method.
26 * XmlValidatingReader.cs : XsdValidatingReader.XmlResolver will be
27 disabled (in the next commit), so resolver won' be set to it.
28 Attempt to validate against XDR now throws NotSupportedException.
30 2003-10-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
32 * XmlChar.cs : added WhitespaceChars, used in common.
37 XmlTextWriter.cs : String.Trim()
38 * XmlConvert.cs : shifted XmlConstructs to XmlChar.
39 * XmlTextReader.cs : Implemented Normalization.
41 2003-10-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
43 * XmlNode.cs : GetPrefixOfNamespace() also contained a bug similar to
44 GetNamespaceOfPrefix() fixed at 2003-10-13.
45 * XmlTextReader.cs : ReadBase64() should keep incomplete base64 block
46 which remained by previous call of this method.
47 * XmlUrlResolver.cs : Added assertion for file Uri path's absoluteness.
48 * XmlValidatingReader.cs : Notice about intention of XDR won't be
49 supported (at least in Mono 1.0).
51 2003-10-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
53 * XmlDocument.cs : CloneNode() does not copy PreserveWhitespace.
54 * XmlWriter.cs : Calling WriteNode() with XmlReader whose state is
55 XmlDeclaration now calls WriteProcessingInstruction(). This fixes
56 testcase XmlWriterTests.WriteNodeFullDocument().
57 * XmlTextWriter.cs : Added LAMESPEC comments related to above.
59 2003-10-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
61 * XmlDocument.cs : Fixed bugzilla #49607. Save() outputs XML
62 declaration even though there is no XmlDeclaration child.
63 * XmlTextReader.cs : Fixed Init() so that ResetState() should work.
65 2003-10-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
67 * XmlTextWriter.cs : Implemented WriteSurrogateCharEntity().
68 Reverted my recent extraneous check in WriteStartAttribute().
70 2003-10-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
72 * XmlNode.cs : GetNamespaceOfPrefix() should check Attributes existence.
73 And it should throw ArgumentNullException.
75 2003-10-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
77 * XmlAttribute.cs : Fixed InnerText that did not removed its content
78 if there is two or more children.
79 * XmlNode.cs : XmlNode.cs : Fixed bugzilla #49580 (1)to return "",
80 (2)not to compare NodeType for detached nodes, (3)optimization to
81 compare element's prefix.
82 * XmlSecureResolver.cs : Removed extraneous members.
84 2003-10-09 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
86 * Added DTDReader.cs. It is almost importation of XmlTextReader.
88 - More .NET-ism. Properties took place of fields.
89 - Imported PE set from XmlTextReader. Added location info.
90 - Added DTDEntityBase common to PE and GE.
91 - More correct text declaration handling with new XmlTextReader.
92 * DTDValidatingReader.cs :
93 - Now uses entity resolving XmlTextReader to validate attributes
94 correctly. Implemented standalone
95 - Standalone and default related validity constraints check.
96 * XmlImplementation.cs: Implemented HasFeature().
97 * XmlNode.cs : Implemented Supports().
98 * XmlNodeReader.cs : Modified to use XmlTextReader.SkipTextDeclaration()
99 * XmlParserInput.cs : Removed extraneous members.
101 - All DTD related functionality now goes to DTDReader.cs
102 - It became old simple TextReader input style.
103 - Implemented GetRemainder().
104 - Implemented ReadBase64(), ReadBinHex() and ReadChars(), using
105 additional new private method ReadUntilEndTag().
106 - Removed incomplete MaybeTextDecl and added SkipTextDeclaration().
107 ReadXmlDeclaration() now became simple.
108 - More strict entity reference check at SetEntityReferenceProperty()
109 - Removed extraneous members.
110 * XmlWriter.cs : WriteNode(XmlNodeType.None) does not raise error.
112 2003-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
114 * XmlTextReader.cs: when we get an unexpected EOF in ReadContent, set
115 the state before throwing the exception if depth > 0.
117 2003-10-04 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
119 * XmlAttribute.cs : Removed extraneous MonoTODO.
120 * XmlTextWriter.cs : Implemented WriteBinHex() and WriteChars().
121 WriteStartElement() and WriteStartAttribute() should ignore Prefix
122 if namespace uri is not specified.
124 2003-10-04 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
126 * XmlDocumentFragment.cs,
128 XmlEntityReference.cs : Removed extraneous MonoTODO.
129 * XmlNode.cs : Implemented Normalize().
131 - AttributeCount and HasAttributes should return its owner element's
132 value, to be consistent with XmlTextReader.
133 - Fixed Depth to reflect correct attribute/attribute-value iteration.
134 - simplified ownerElement and HasValue.
135 - Prefix won't return null.
136 - MoveToElement() should also work against attribute value nodes.
137 * XmlTextReader.cs : MoveToElement() should return false if it is
138 positioned at element itself.
140 2003-10-04 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
142 * XmlTextReader.cs : Improved SignificantWhitespace handling.
144 2003-10-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
146 * XmlSecureResolver.cs : Implemented basic feature.
148 2003-10-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
150 * XmlUrlResolver.cs : Should work with null type argument.
152 2003-10-01 Lluis Sanchez Gual <lluis@ximian.com>
154 * XmlTextWriter.cs : An attribute can require a prefix for the default
155 namespace, so we need to store the prefix as well as the namespace.
157 2003-09-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
159 * DTDValidatingReader.cs : Simplified to use
160 XmlSchemaUtil.GetParserContext().
161 * XmlValidatingReader.cs : ValidationType.Auto should always use
162 XsdValidatingReader because xsi:schemaLocation might be used.
164 2003-09-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
166 * XmlTextReader.cs : Attribute value token properties were incorrectly
167 set by the linked node.
169 2003-09-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
171 * XmlDocumentNavigator.cs : Fix for bugzilla #48931. MoveToRoot() now
172 considers such case that target node was not adapted to the document.
173 * XmlNamespaceManager.cs : GetEnumerator() missed the last pair.
174 * XmlTextWriter.cs : use 'as' instead of 'try..catch'.
176 2003-09-25 Ben Maurer <bmaurer@users.sourceforge.net>
178 * XmlNode.cs (XPathNodeType): Give more useful debugging message.
179 * XmlDocumentNavigator.cs (MoveToPrevious): Needs same checks as
182 2003-09-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
184 * XmlNamespaceManager.cs: Rewrote PopScope() because its namespace
185 recovery was still not enough. Fixed GrowScopes() (incorrect index).
187 2003-09-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
190 - Fix for bugzilla #48337 (containing Ben's advice on that).
191 - Added internal XmlTokenInfo classes. Nodes are now handled as token
192 objects (linked node, attributes and attribute values). Most of the
193 node state properties and iterating methods are changed to refer to
194 the token classes (except for value builder availability). Removed
195 fields which are never used. CompileDTDSubset() is changed in
196 reflection to nodeType field removal.
197 - Fixed Depth that should vary in moving between attributes and/or
198 reading attribute values.
199 - LineNumber and LinePosition now returns more correct location.
200 - Fixed Value that should still return true if its value is an empty
201 attribute value string.
202 - EntityValue is checked WFC constraints even thoug it is not used.
203 - All .ctor() now initializes ReadState as Initial.
204 - Read() should be available for attribute value constructor.
205 * XmlAttribute.cs : set_InnerXml() now calls reader's Read().
207 2003-09-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
209 * XmlNamespaceManager.cs: PopScope() must retain those namespaces which
210 are added in the scope before PushScope() was called.
212 2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
214 * XmlNamespaceManager.cs: Rewrote. Uses arrays, rather than linked
215 lists and removes uses of Hashtable. Results in huge speed gains.
217 2003-09-19 Ben Maurer <bmaurer@users.sourceforge.net>
219 * XmlConvert.cs: NaN.ToString () != INF.
221 2003-09-14 Lluis Sanchez Gual <lluis@ximian.com>
223 * XmlTextWriter.cs: Attributes that have a namespace must be always
226 2003-09-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
228 * XmlTextWriterOpenElement.cs : Changed to receive prefix and localName
230 * XmlTextWriter.cs : Changed to use above XmlTextWriterOpenElement.
231 Changed xmlns adding scheme. In detail, 1) WriteStartElement does not
232 add Namespaces immediately, but adds at AddMissingElementXmlns so
233 that we don't have to have extra check than namespaceManager's
234 LookupPrefix(). 2) Removed writtenAttributes for performance reason
235 since it is no more required.
237 2003-09-10 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
239 * XmlDocument.cs : patch by Jonathan Hogg. Fixed CreateAttribute()
240 that handled xmlns attributes inproperly.
242 2003-09-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
244 * XmlNamespaceManager.cs : GetEnumerator() should return all of the
245 available pairs (of prefix and namespace).
246 * XmlQualifiedName.cs : Quick fix for NullReferenceException in case
247 of name (or ns) is null. (The description of the immediate previous
248 changes will be inserted below.)
249 * XmlTextWriter.cs : Fixed WriteDocType(). Removed CheckValidName().
250 * XmlUrlResolver.cs : Changed not to call WebClient.Dispose() which
251 will release resources it had allocated.
253 2003-09-01 Ben Maurer <bmaurer@users.sourceforge.net>
255 * XmlDocument.cs (Save): use the encoding of the document, if
258 2003-08-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
260 * XmlValidatingReader.cs : Implemented SchemaType. Added support for
261 ValidationType.Schema. Added support for XmlResolver. Fixed
262 ReadTypedValue() not to consume EndElement.
264 2003-08-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
266 * XmlDocumentNavigator.cs : Fixed MoveToFirstNamespace() that arose
268 * XmlNamespaceManager.cs : Renamed AtomStrEq to AtomicStringEquals.
269 Commented out Console.Error.WriteLine().
270 * XmlUrlResolver.cs : Fixed ResolveUri() and GetEntity() to support
271 escape and unescape for relative URI string.
273 2003-08-19 Ben Maurer <bmaurer@users.sourceforge.net>
275 * XmlParserContext.cs: Make each context inherit next.
277 2003-08-18 Ben Maurer <bmaurer@users.sourceforge.net>
279 * XmlChar.cs (IsWhitespace): Spare enumerator allocation.
280 * XmlTextWriter.cs (WriteWhitespace): Enumerators are very high in
281 fat, use low-fat loops instead. Even better, call the function
282 inside XmlChar for code reuse.
283 * HighWaterStack.cs (added): New class that acts like a Stack, but
284 helps with memory allocation.
285 * XmlNamespaceManager.cs, XmlParserContext.cs: Rewrote to use
287 * XmlTextReader.cs: Remove orderedAttributesEnumerator variable,
288 use a variable that stores the position in the ArrayList.
290 2003-08-18 Ben Maurer <bmaurer@users.sourceforge.net>
292 * XmlTextWriter.cs: Begin diet. String.Format has too much
293 saturated fat, lets replace with the fat-free .Write ()
294 calls. Effects best seen when Paolo's StreamWriter patch is
297 2003-08-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
299 * XmlNodeReader.cs : Fixed ReadAttributeValue() that might result in
300 vanishing current node.
302 2003-08-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
304 * DTDValidatingReader.cs : Added SchemaType.
305 Read() Assures to return to element.
306 * DTDObjectModel.cs : Removed DTDEntityDeclaration.BaseURI.
307 * XmlReader.cs : ReadString() should be virtual in NET_1_1.
308 * XmlTextReader.cs : 1) Depth should consider Attribute and its values.
309 Introduced insideAttribute field to support them.
310 2) ReadAttributeValue() should consider empty string.
311 * XmlValidatingReader.cs :
312 Fixed several properties which premised as if it was already read.
313 Encoding and Namespaces now throws NotSupportedException for other
315 Implemented ReadTypedValue() based on IHasXmlSchemaInfo.SchemaType.
317 2003-08-10 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
319 * XmlInputStream.cs : Reverted CanSeek as to return false anyway.
321 2003-08-10 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
323 * DTDObjectModel.cs : added XmlResolver related members. Added
324 invalid entity recursion logic. Added encodingdecl check on textdecl.
325 * DTDValidatingReader.cs : It now implements IHasXmlParserContext.
326 * XmlChar.cs : IsPubidChar() should not allow TAB(	).
327 * XmlDocumentType.cs : 1) internal CreateDocumentType() was now changed
328 to receive DTDObjectModel to support other than XmlTextReader.
329 2) Most of its public member is now based on DTDObjectModel.
330 * XmlDocument.cs : 1) Synchronous change with XmlDocumentType.
331 2) ReadNode() now considers XmlParserContext's DTDObjectModel for
332 other than XmlTextReader (such as XmlValidatingReader).
333 * XmlNode.cs : code cleanup only.
334 * XmlParserInput.cs : added HasPEBuffer, used to check illegal nesting.
335 * XmlTextReader.cs : 1) Illegal entity reference check logic was moved
336 from ReadContent() to SetEntityReferenceProperties(). 2) Indentation
337 change on ReadEntityReference(). 3) ReadAttribute() now checks
338 reference to external entity reference. 4) Added textdecl encoding
339 check. 5) DTDObjectModel fields are now set correctly. 6) added
340 PERef markup nest check. 7) If PEDecl was not found, it might be WFC
341 violation, not only be VC violation. 8) ReadEntityDecl() now receives
342 its declared entity itself, and this method checks IsInternalSubset.
343 * XmlValidatingReader.cs : 1) Added GetInternalPerserContext().
344 2) ValidationType.None should be the same as Auto, not DTD (in the
345 future it should keep xml schema's default values).
347 Pending Stuff in XmlTextReader which breaks some NUnit tests;
348 1) SetEntityReferenceProperies() has check for illegal references.
349 2) ReadAttribute(bool) has similar check for illegal references.
351 2003-08-09 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
353 * DTDAutomata.cs : Fixed (modified or added) TryEndElement() of choice,
354 sequence and oneOrMore. Fixed DTDChoiceAutomata.TryStartElement().
356 2003-08-09 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
358 * XmlTextReader.cs : Checked and fixed all TryExpandPERef() invokation
359 and supplied SkipWhitespace() as they needed. It broke monodoc.
360 Fixed ReadEntityValueDecl() to get correct value.
362 2003-08-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
364 * XmlInputStream.cs :
365 Fixed Initialize() that might result in incorrect buffer.
366 CanRead and Position should consider buffer (especially when the
368 CanSeek should use stream's CanSeek.
370 * XmlChar.cs : added GetPredefinedEntity().
371 * DTDObjectModel.cs :
372 - Modified ComputeDefaultValue() to use it.
373 - Fixed NormalizedDefaultValue not to expect parsed value as string.
374 - ResolveExternalEntity now detects invalid standalone specification.
375 - DTDParameterEntityDeclaration.Value is now changed to property and
376 keep its resolved value of literal value of external value using
377 new Resolve (XmlResolver) method (called only by XmlTextReader).
378 * DTDValidatingReader.cs :
379 - It now handles entity-expanded Whitespace and SignificantWhitespace
380 correctly. Does not raise unexpected text not allowed error.
381 - Fixed MoveToAttribute()s to move internal reader correctly, and
382 should be able to move in other cases than on element node.
383 - On Read()ing document type and ResolveEntity(), it now sets
384 XmlResolver on text reader.
385 - On ID constraints check and type verification, it now uses
386 normalized attribute or its tokenized value(s).
387 - Fixed ValidateAttributes() to add default values when
388 ValidationType is Auto.
389 * XmlParserContext.cs : added internal Dtd setter.
390 * XmlParserInput.cs :
391 InsertParameterEntityBuffer() should add surrounding whitespaces.
392 Removed unused code block.
394 - Modified ReadReference(), ReadAttribute() and Dereference() to use
395 XmlChar.GetPredefinedEntity().
396 - When returning entity reference, it checks extity declaration
397 existence in certain conditions.
398 - ReadAttribute() now skips general entity replacement on reading
400 - ReadText() now handles whitespace texts as XmlNodeType.Whitespace.
401 - ReadXmlDeclaration() holds isStandalone, which might be used in
402 entity reference's well-formedness check.
403 - internal 'DTD' now uses XmlParserContext.Dtd.
404 - isInternalSubset was meaningless. Now uses input stack's Count.
405 - Added some required SkipWhitespace().
406 - Several parameter entity handling changes. Added GetPEValue(name).
407 TryExpandPERef() now uses ImportAsPERef(). ReadParameterEntityDecl()
408 now uses its Resolve() when it was external PE. Now it uses value
409 buffer instead of currentTag, to efficiently read (included) PE.
410 CompileDeclaration() now uses ImportAsPERef instead of ExpandPERef().
411 ImportAsPERef() simply inserts the value to currentInput.
412 ReadEntityDecl() also uses value buffer. Removed non-used methods.
413 - Default attributes are now stored in normalized form.
414 - Dereference() now considers non-expanding predefined entities.
415 * XmlValidatingReader.cs : now holds Schemas, and ValidationType.Auto
416 is more correctly supported.
418 * XmlAttributeCollection.cs :
419 When removing default attribute, it immediately inserts the attribute.
420 RemoveAll() should consider default (not-removable) attributes.
422 Should have its default XmlResolver. Added Internal Resolver.
423 Some Load() should use its XmlResolver.
424 ImportNode() should copy its children in node level, not value level.
425 It also have to consider not to copy default attribute on importing
427 * XmlDocumentType.cs : Now uses document's XmlResolver to read DTD.
429 XmlDocumentFragment.cs.
430 XmlElement.cs : use XmlResolver on InnerXml. Removed some MonoTODO.
431 * XmlNodeReader.cs : GetInternalParserConext() should provide its DTD.
432 ResolveEntity() uses XmlResolver on entityReader.
434 2003-08-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
436 * DTDObjectModel.cs :
437 - Added validation error check (and AddError(), Errors).
438 - Fixed ComputeDefaultValue() to handle various references correctly.
439 - DTDEntityDeclaration.EntityValue became property, and added
440 LiteralEntityValue. The new one holds resolved value.
441 Added ResolveExternalEntity(). It now required root in .ctor().
442 * DTDValidatingReader.cs :
443 - Now it handles namespaced attributes (as input to xsd validator).
444 - Added XmlResolver property as usual XmlReader.
445 - Added currentEntityHandling field so that it can stand changing
446 XmlValidatingReader's EntityHandling dynamically.
447 - FilterNormalization() now requires name for getting datatypes and
448 can stand for non-current attribute normalization.
449 - Splitted ReadContent() from Read() that can be called recursively
450 when expanding entities.
451 - Now handles Entity not found error *after* resolution of entities,
453 - Read()ing DTD checks its Errors and raises validation error events.
454 In some situations, DTD parsing may detect VC error, not WFC error.
455 It also strictly checks NData existence.
456 - Handling of entity-resolved text is a bit changed and Read()ing
457 element, endElement, cdata now changed to switch collecting text
459 - content type ANY should allow texts.
460 - Added enumerated attribute validity check.
461 - Added Name/Names creation rule check for ID/IDREF/IDREFS.
462 - Added entity existence check for ENTITY/ENTITIES attributes.
463 - Added NMTOKEN creation rule check for NMTOKEN/NMTOKENS.
464 - Fixed to remove extraneous #REQUIRED check.
465 - Contributing default attribute is now only applied to the case
466 ValidationType is DTD or None.
467 - ResolveEntity() now handles external entities.
468 Added Mono.Xml.IXmlParserContext interface support.
469 * XmlDocumentType.cs : Fixed to use BaseURI to build DTD model.
471 - Fixed ReadAttributeValue() to reset returnEntityReference.
472 - Added bool MaybeTextDecl only for ResolveEntity().
473 - Fixed ReadWhitespace(). In fact its value is considered even if it
474 is in the end of the XML.
475 - Fixed ReadXmlDeclaration(). Now skips text declaration.
476 - CompileDTDSubset() now checks IGNORE/INCLUDE section end balances.
477 - ReadContentSpec() should set OrderType = OR for mixed model.
478 Fixed to set content element name correctly.
479 - ImportAsPERef() now skips Text declaration.
480 - Type of enumerated default attributes shold be string.
481 - Undeclared PE error is now handled as DTD's VC error, not
482 XmlTextReader's WFC error.
483 * XmlValidatingReader.cs : BaseURI should provide that of
484 original XmlReader's when read was not started yet.
485 Fixed XmlResolver to delegate to DTDValidatingReader.
487 * XmlAttributeCollection.cs : Acquiring attList declaration is
488 insufficient especially in case of lack of elementdecl.
489 * XmlChar.cs : (Maybe this is compact than XmlConstructs.)
490 added IsWhitespace(),IsNCNameChar(),IsName(),IsNCName(),IsNmToken(),
491 IsPubid(). Copies IsValidIANAEncoding() from XmlConstructs.
493 * XmlInputStream.cs : Removed "version" declaration check. It should
494 be done by XmlTextReader.
496 * XmlNodeReader.cs : added internal GetInternalParserContext() and now
497 it can be used in XmlValidatingReader.ResolveEntity().
498 ResolveEntity() sets XmlTextReader.MaybeTextDecl.
500 2003-08-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
502 * DTDValidatingReader.cs :
503 Added full ExpandEntities support for text node and entity reference
504 node (although require many usage tests). Almost all methods and
505 properties now have currentTextValue != null check, that field means
506 that there are cached (entity-resolved) text.
507 Implemented default attribute aware XmlLang and XmlSpace.
508 * XmlNodeReader.cs : ResolveEntity() should not require DTD.
510 2003-08-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
512 * DTDValidatingReader.cs,
516 XmlValidatingReader.cs : fixed pragma USE_VERSION_1_0 to NET_1_0.
518 2003-08-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
520 * DTDObjectModel.cs : Added BaseURI (but not used yet).
521 DTDAttListDeclaration.ctro() now requires root dtd object model.
522 * DTDValidatingReader.cs : Read() now expands EntityReference if
523 entity handling of validating reader is ExpandEntities.
527 XmlValidatingReader.cs : Implemented "virtual" ReadInnerXml and
528 ReadOuterXml which are modified in MS.NET 1.1.
529 * XmlConstructs.cs : added int version of IsValid, IsInvalid,
530 IsContent, IsMarkup and IsNCNameStart.
531 Fixed int version of IsXXX() to check array index range.
532 Added IsValidName (string).
534 - Read() handles document with non document element as an error.
535 - ReadText() and ReadCharacterReference() checkes illegal characters.
536 - ReadEntityReference() checks name validity.
537 - ReadProcessingInstruction() rejects such name that starts with
538 "xml" ignoring case, and checks attributes more strictly.
539 - ReadDeclaration() rejects unrecognized kind of declaration.
540 - In many places, added "required whitespace" check in DTD markup.
541 - DTD content model now disallows mixing use of '|' and ','.
543 2003-08-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
545 * XmlDocumentFragment.cs : I missed to add it in relation to the
546 previous XmlParserContext patch. Similar to XmlAttribute/XmlElement.
547 * XmlNodeReader.cs : removed some TODO attributes.
548 * DTDValidatingReader.cs,
549 XmlValidatingReader.cs : Implemented ResolveEntity().
551 2003-07-31 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
553 * XmlParserContext.cs,
555 XmlElement.cs : Added internal Dtd and new internal XmlParserContext
556 .ctor() that takes DTDObjectModel. And then rewrote classes which
557 uses DTD information. Changed DocTypeName, InternalSubset, PublicId
558 and SystemId to use DTDObjectModel.
559 * DTDObjectModel.cs :
560 Added DTDObjectModel.InternalSubsetHasPEReference.
561 Added DTDEntityDeclaration.IsInternalSubset.
563 Added internal GetInternalParserContext (to build entity reader).
564 Added private isIntSubset to check if the DTD subset is internal or
565 external, which might affect well-formedness constraints.
566 Changed GenerateDTDObjectModel to return the resulting DTD model.
568 * XmlEntityReference.cs : implemented BaseURI.
570 - Implemented ResolveEntity() and CanResolveEntity(). In fact
571 it leads too many changes on almost all methods and properties,
572 since they now must be aware of entityReader.
573 - fixed ownerElement that might be used to return from attribute
574 value to the element through parent attribtues.
575 - Now changed indexer to call GetAttribute() and moved actual logic
576 to the matching GetAttribute() methods.
578 2003-07-29 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
580 * XmlNode.cs : fixed internal ConstructNamespaceManager() for InnerXml
581 not to create extraneous xmlns="".
583 2003-07-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
585 * DTDValidatingReader.cs : (Read,ValidateAttributes,ReadAttributeValue)
586 attribute declaration should be got independently of elementdecl.
588 Added internal SetDefault() to mark as default.
589 Removed InnerText implementation that is just the same as XmlNode.
590 * XmlDocument.cs : id shouldn't be removed from table at 'trying' to
591 get matching elements. ReadAttributeNode() now sets default mark.
592 * XmlElement.cs : WriteTo() should ignore default attributes.
593 * XmlTextWriter.cs : shuold allow valid name char such as digits.
595 2003-07-27 Piers Haken <piersh@friskit.com>
597 * XmlQualifiedName.cs : fields should never be null
599 2003-07-27 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
601 * XmlDocumentFragment.cs : added XPathNodeType indicating Root.
603 2003-07-27 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
605 * XmlDocument.cs (GetIdenticalAttribute): restored OwnerElement.IsRooted
607 2003-07-27 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
609 * XmlLinkedNode.cs : added internal IsRooted.
611 2003-07-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
613 * DTDValidatingReader.cs :
614 - Added ID support in ValidateAttributes().
615 - More refined ReadAttributeValue() support for non-expanding entity
617 - It should handle LocalName, Name, Prefix, NamespaceURI and Value
618 correctly when the reader is on each of the value nodes of an
619 attribute. Now XmlDocument.ReadNode() should work well.
621 - added idTable, AddIdenticalAttribute(), GetIdenticalAttribute() and
622 RemoveIdenticalAttribute()
623 - Implemented GetElementById().
624 * XmlAttributeCollection.cs :
625 - added private ownerDocument property and replaced
626 ownerElement.OwnerDocument with it.
627 - Added AdjustIdenticalAttribute() and it is used in SetNamedItem().
628 It calls XmlDocument.{Add|Remove}IdenticalAttribute().
629 - Added RemoveIdenticalAttribute() and it is used in Remove().
630 (I also added AddIdenticalAttribute() but is not used.)
632 2003-07-26 Duncan Mak <duncan@ximian.com>
634 * XmlDocument.cs (GetIdenticalAttribute): Temporarily remove test
635 for OwnerElement.IsRooted to fix the build..
637 2003-07-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
639 * XmlDocumentType.cs :
640 modified private DTD to dtd and added internal DTD (the same thing).
642 Fixed SetAttributeNode() to check if specified attribute is already
643 set to the other element. In fact it is W3C DOM's specification but
644 MS.NET 1.0 failed to catch it.
646 ReadAttributeValue() should check if the value of the attribute is
647 already read when the whole value is entity reference.
648 Also, Name of text nodes should be "", not "#text"
650 2003-07-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
652 * XmlAttribute.cs : .ctor() shouldallow localName "xml" (not prefix)
653 with http://www.w3.org/XML/1998/namespace.
654 * XmlEntity.cs : patch by Aleksey Sanin. InnerText is now supported.
655 * XmlNode.cs : InnerText should handle CDATA and whitespaces.
656 * XmlTextReader.cs : Should allow " (#PCDATA)* " in ReadContentSpec().
657 * XmlTextWriter.cs : Quick fix for accepting (and writing) same-named
658 attributes (as MS.NET does). It isn't good way and I may change it.
660 2003-07-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
662 * DTDObjectModel.cs : Added DTDEntityDeclarationCollection and
663 DTDNotationDeclarationCollection and replaced Hashtables with them.
664 Added NormalizedDefaultValue property for DTDAttributeDefinition.
665 * DTDValidatingReader.cs :
666 - It now reads attribute values into value collection.
667 - Renamed consumedDefaultAttribute to consumedAttribute, and
668 inContent to insideContent.
669 - GetAttribute() should allow reader's other node state than element.
670 - MoveToNextAttribute() should move when reader is placed other than
672 - HandleError() now supports ValidationType.None (i.e. does nothing).
673 - ValidateAttribute() now collects and resolves attribute value
674 entity references. (On the other hand, it doesn't support
675 EntityHandling.ExpandCharEntity.)
676 - NodeType shouldn't return Attribute after ReadAttributeValue().
677 Now only Text is supported, but must also support EntityReference.
678 - Add FilterNormalization() and partially support Normalization.
680 2003-07-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
683 Read() now handles parser context stuff (BaseURI, XmlLang and
684 XmlSpace) correctly for an empty element.
685 Normalization property now doesn't throw an error. Will be used soon.
686 * XmlValidatingReader.cs : added ValidationType.None support (wait for
687 the next DTDValidatingReader update for "not firing event handler).
688 * XmlNodeReader.cs : jun. 30th commit seems wrong. It keeps its state.
690 2003-07-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
692 * DTDValidatingReader.cs :
693 changed base class to XmlReader and implemented IXmlLineInfo members.
694 changed .ctor() argument from event handler to validating reader.
695 Removed some #if ... #else ... #endif blocks.
696 Added validation event support for Read() using HandleError().
697 * XmlValidatingReader.cs : added internal OnValidationEvent().
698 * XmlDocument.cs : ReadNode() now checks reader's state more strictly.
700 2003-07-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
702 * XmlUrlResolver.cs : applied BenM's patch for file uri problem
705 2003-07-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
707 * DTDValidatingReader.cs :
708 added DTDObjectModel support for non-XmlTextReader XmlReader
709 e.g. XmlNodeReader (Read() method).
711 added internal CreateDocumentType(XmlTextReader) and moved
712 ReadDoctypeNode() to XmlDocumentType.ImportFromDTD().
713 * XmlDocumentType.cs :
714 added internal .ctor(XmlTextReader, document) and ImportFromDTD().
716 Renamed useSbForVal (valueBuilderAvailable), valSb (valueBuilder)
717 and currentSubset (DTD).
718 Added GenerateDTDObjectModel() (for independent doctype parsing).
720 2003-07-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
723 .ctor() should reject xml- or xmlns-prefixed node.
724 * XmlNamespaceManager.cs :
725 added some xmlns validity check.
727 optimized GetNamespaceOfPrefix() and GetPrefixOfNamespace() by
728 avoiding XmlNamespaceManager creation.
730 doctype node should return PUBLIC and SYSTEM for its indexer,
731 and Value should be internal subset,
733 2003-07-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
736 DTDValidatingReader.cs : Completely rewrote attribute handling.
738 2003-07-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
741 XmlElement.cs : Fixed CloneNode() for bug #46129.
742 * XmlDocument.cs : Fixed MakeReaderErrorMessage that specified invalid
743 String.Format arguments, and basically XmlException.ctor(
744 IXmlLineInfo, message) seems good idea to use.
746 - Fixed .ctor(Stream, XmlNodeType, XmlParserContext) which had
747 required non-null context which don't have to exist.
748 - Added state check. Introduced 'currentState' and 'maybeTextDecl'
749 (for external entity) and removed hasEnteredDocument. Added
750 state-check logic to ReadStartTag(), ReadEndTag(), ReadText(),
751 ReadCData(), ReadDoctypeDecl() and ReadWhitespace().
752 - Replaced throw ReaderError() with throw new XmlException() and
753 fixed that some error hadn't thrown, only created.
754 - ResetState() should re-initialize existing private members other
755 than some specified fields.
756 - Private AddAttribute() should check if the same-named attribute
758 * DTDObjectModel.cs : Additive declaration for ATTLIST is availabe now.
760 2003-07-09 Lluis Sanchez Gual <lluis@ximian.com>
762 * XmlTextReader.cs : Implemented ResetState() method.
764 2003-07-06 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
766 * XmlElement.cs : IsEmpty has removed attributes since it incorrectly
769 2003-07-06 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
771 * XmlDocument.cs : Load(string filename) should close its stream.
772 Small change for the latest DTDObjectModel change.
773 * XmlTextReader.cs : Changed for the latest DTDObjectModel change (all
774 changed methods are only related to DTD stuff).
775 Now uses XmlSchemaDatatype for attribute type definition.
776 * XmlValidatingReader : initial (limited) support for DTD validation.
777 It can handle only XmlTextReader.
778 * DTDObjectModel.cs : changed radically for initial validation support.
779 * added DTDAutomata.cs and DTDValidatingReader.cs.
781 2003-07-06 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
783 * XmlElement.cs : Removed extraneous xmlns output support (it should
784 be done by XmlTextWriter).
785 * XmlNode.cs : InsertBefore() now checks validity of the newChild (and
786 most of the changes are in fact indentation changes).
787 * XmlWriter.cs : WriteAttributes() now can write entity references.
788 WriteNode() now writes xmldecl attributes correctly.
789 Removed namespaceManager and xmlns check logic, since it should be
790 done by individual XmlTextWriter.
791 * XmlTextWriter.cs : Patch by Jerome. AddMissingElementXmlns () has
792 written multiple xmlns declarations.
793 Moved namespaceManager from abstract XmlWriter.
794 Write{Start|End}Attribute() and WriteString() now checks xmlns
795 attribute value. (MS.NET holds value only with this write method).
797 2003-07-04 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
799 * XmlDocument.cs : removed xmlReader.Close() from Load(XmlReader).
801 2003-06-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
803 * XmlDocumentNavigator.cs : Implemented MoveTo*Namespace() and
804 essentially changed most of the property handling (e.g. removed attribute
805 enumerator and it now became really cloneable).
806 * XmlNodeReader.cs : ReadInnerXml() changes its state as error
807 when the method is called at Initial state.
809 2003-06-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
811 * XmlDocumentNavigator.cs : Fixed IsEmptyElement. It treats <foo></foo>
812 as non-empty, and XmlElement's IsEmpty is designed as such.
813 Fixed MoveToFirst() and MoveToNext() not to move to xmldecl nor
815 * XmlNode.cs : Fixed XPathNodeType. It should throw an exception
816 instead of returning undefined enum value.
817 Modified some code comments.
818 * XmlWriter.cs : Fixed WriteNode () to use WriteFullEndElement()
819 when XmlReader's node is not at empty element or at EndElement.
820 Fixed XmlDeclaration's standalone check.
822 2003-06-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
824 * XmlTextReader.cs : removed CRLFs. Fixed private InitializeContext()
825 to use known Uri way (used in XmlUrlResolver) instead of UriBuilder.
827 2003-06-20 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
829 * XmlInputStream.cs : quick fix for public ctor() BaseURI bug.
831 2003-06-20 Ben Maurer <bmaurer@users.sourceforge.net>
833 * XmlTextReader.cs: Reduces memory allocation when the reader is
834 not queried for some values.
835 * NameTable.cs: Now uses a custom hashtable to implement. As a
836 result, when Get (char[], int, int) is called, a string is only
837 allocated if it is actually a new entry.
838 (StrEqArray) Compares a string and a char[]
839 (AddEntry) Adds a new entry to the hashtable
840 (Entry) Represents a hashtable entry.
842 2003-06-20 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
844 * XmlUrlResolver.cs : several ResolveUri() fix. e.g. for external URIs.
846 2003-06-16 Ben Maurer <bmaurer@users.sourceforge.net>
847 * XmlUrlResolver.cs: really fixed #44231
849 2003-06-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
851 * XmlNodeReader.cs : fixed MoveToNextAttribute(). In some cases
852 this method set current node null.
853 * XmlTextReader.cs : fixed GetAttribute (name, ns), which returned
854 String.Empty instead of null (expected value).
857 XmlInputStream.cs : fixed BaseURI problem (bug #44231).
859 2003-06-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
861 * XmlNodeReader.cs : this [name] and this [name, ns] (and
862 GetAttribute() methods in turn) returns null instead of String.Empty.
863 * XmlTextWriter.cs : WriteStartAttribute() should try to use specified
864 prefix before auto-generating prefixes.
865 Implemented WriteBase64().
867 2003-06-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
869 * XmlNodeReader.cs : LookupNamespace () has refered invalid current
870 node for attributes. Modified to use private "document" property.
872 2003-06-10 Lluis Sanchez Gual <lluis@ximian.com>
874 * XmlTextWriter.cs: when adding an attribute with a namespace, a prefix must be automaticaly
875 generated, and a namespace declaration must be added.
876 * XmlWriter.cs: the namespace for the prefix xmlns must be http://www.w3.org/2000/xmlns/
878 2003-06-10 Zoltan Varga <vargaz@freemail.hu>
880 * XmlAttribute.cs: Accept a null prefix or namespaceURI.
882 2003-06-10 Duncan Mak <duncan@ximian.com>
884 * XmlDocumentNavigator.cs (GetNode): Make it implement
887 2003-06-05 Lluis Sanchez Gual <lluis@ideary.com>
889 * XmlTextWriter.cs : Fixed bug. After calling for example WriteStartElement ("pref","ln","ns");
890 a call to LookupPrefix ("pref") when still writting attributes should
891 return "ns", and it didn't.
893 2003-06-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
895 * XmlDocumentNavigator.cs : quick fix for MoveToFirstChild().
896 * XmlConvert.cs : fixed VerifyNCName() to check correctly.
898 2003-06-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
900 * XmlDocumentNavigator.cs : Compute document node one time.
901 MoveToFirstChild() should move to PIs and comments.
903 2003-05-30 Miguel de Icaza <miguel@ximian.com>
905 * XmlReader.cs (ReadStartElement): Improve error message.
907 2003-05-28 Lluis Sanchez Gual <lluis@ideary.com>
909 * XmlTextReader.cs : MoveToAttribute methods must set the enumerator to the right
910 position, since MoveToNextAttribute may be called after it.
911 SetProperties(): attributes do not "inherit" the namespace.
912 * XmlDocument.cs: ReadNode(), ReadAttributeNode(): must keep the current reader position.
914 2003-05-27 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
916 * NameTable.cs : Add() sets the given name string interned.
917 * XmlParserContext.cs : added internal PushScope() and PopScope() to
918 hold stacks of xml:base, xml:lang and xml:space.
919 * XmlTextReader.cs : implemented XmlLang and XmlSpace (only as a
920 property for stacked attributes). Renamed Initialize() to Initialize-
921 Context(). Modified to use XmlParserContext.PushScope()/PopScope().
923 2003-05-26 Lluis Sanchez Gual <lluis@ximian.com>
925 * XmlReader.cs: Little fix to WriteAttributeString()
927 2003-05-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
929 * XmlAttribute.cs, XmlCharacterData.cs, XmlComment.cs, XmlDocument.cs,
930 XmlDocumentFragment.cs, XmlElement.cs, XmlEntity.cs, XmlLinkedNode.cs,
931 XmlNode.cs, XmlNotation.cs, XmlProcessingInstruction.cs, XmlReader.cs,
932 XmlSignificantWhitespace.cs, XmlText.cs, XmlWhitespace.cs:
933 Reverted the recent accessibility mistake (5/16).
934 * XmlDocument.cs, XmlNode.cs : moved actual CreateNavigator() logic
935 from XmlNode to XmlDocument.
937 2003-05-18 Lluis Sanchez Gual <lluis@ideary.com>
939 * XmlQualifiedName.cs : Fixed bug in equality operator.
941 2003-05-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
943 * XmlTextWriter.cs : patch by Jonathan Hogg. Flush() does not close
944 any open attributes or elements. WriteWhitespace() checks state and
945 closes start tag. Fixed WriteStringInternal() to replace CR/LF chars
946 when it is called inside attribute value.
947 * XmlException.cs : added .NET 1.1 .ctor.
948 * added XmlSecureResolver.cs (only stubbing).
949 * XmlAttribute.cs : set_InnerXml() should remove children.
952 XmlDocumentFragment.cs,
953 XmlDocument.cs : removed XmlTextReader reuse (It was buggy stuff).
954 * XmlNode.cs : RemoveAll() should also remove all attributes.
955 * XmlTextRader.cs : .ctor() for attribute value reader should add
956 quotations at initialization, since it requires quote chars.
957 * XmlWriter.cs : WriteAttributeString() more correct xmlns check.
959 2003-05-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
961 * changed XPathNodeType modifier to internal *protected* override.
962 * XmlAttribute.cs : .ctor() now checks name validity e.g. xmlns.
963 * XmlAttribute.cs, XmlElement.cs : set_Prefix checks NCName validity.
964 * XmlAttributeCollection.cs : removed some incorrect TODO attributes.
965 * XmlDocument.cs ; CreateAttribute(name) now auto-completes xmlns NSURI
966 when the argument is "xmlns".
967 * XmlElement.cs : more compliant IsEmpty support. See also WriteTo().
968 * XmlNamespaceManager.cs : added initial "xml" and "xmlns" namespaces.
969 * XmlNode.cs : ser_InnerXml() throws InvalidOperationException.
970 * XmlNodeReader.cs : LookupNamespace() refactory. Fixed ReadInnerXml()
971 not to set error state for non-started XmlNodeReader.
972 * XmlTextReader.cs : fixed ReadAttributeValue() not to reset state.
973 BaseURI support. Fixed Initialize() to handle Attribute correctly.
974 SetProperty for attribute auto-completes xmlns NSURI.
975 Attribute and whitespace handling became more correct.
976 Don't parse external DTD if XmlResolver is null.
977 * XmlTextWriter.cs : implemented WriteEntityRef().
978 WriteStartAttribute() checks if ns does not equal to that of xmlns.
979 * XmlWriter.cs : trivial refactoring (WriteNode() xmldecl output).
981 2003-05-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
983 * XmlConvert.cs : IsInvalid() Now uses XmlConstructs.IsName(Start).
984 EncodeName() now correctly encodes invalid names.
985 Result string of ToString(DateTime) contains "fffffff".
987 2003-04-29 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
989 * XmlElement.cs : fixed IsEmpty (removed private field isEmpty).
990 * XmlNodeReader.cs : Fixed AttributeCount, each this[] (indexers),
992 Fixed this[] to work correctly against XmlDeclarations.
993 Fixed ReadInnerXml() and ReadOuterXml() to call Read() correctly.
994 (which may prevent validations etc.)
997 XmlTextReader.cs : Fixed ReadString() to be compliant with each
999 * XmlTextReader.cs : ReadInnerXml() now moves to next node correctly.
1001 2003-04-27 Pedro MartÃnez Juliá <yoros@wanadoo.es>
1003 * XmlNode.cs: ensure to get a valid Uri in BaseUri when loading the
1004 source document from a file.
1006 2003-04-27 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1008 * XmlAttribute.cs : fixed WriteTo() and WriteContentTo() to write
1009 content EntityReference correctly.
1010 * XmlNodeReader.cs : many fix for EndElement handling (AttributeCount,
1011 HasAttributes, indexers, MoveTo*Attribute() and Read() ).
1012 Modified Skip() to call Read () explicitly.
1013 * XmlTextReader.cs :
1014 Fixed ReadInnerXml() which ignored EndElement token in certain cases.
1015 Implemented MoveToAttribute (local, ns), and modified GetAttribute()
1016 in relation to this change.
1017 Attributes for XmlDeclaration are now correctly set.
1018 * XmlTextWriter.cs : WriteRaw() is now different from WriteString().
1019 Simplified WriteAttributes() for XmlDeclaration.
1021 2003-04-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1023 * XmlTextReader.cs : fixed ReadInnerXml(). it was inconsistent with
1026 2003-04-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1028 * XmlDocument.cs : fixed Load() to set baseURI correctly.
1029 * XmlReader.cs : patch by Gonzalo. Fixed not to skip XmlDeclaration.
1030 * XmlTextReader.cs :
1031 fixed Depth. When it's on StartElement, Depth was already incremented.
1032 fixed private SaveProperty(), which moved away its saved properties
1033 when MoveToElement was called repeatedly.
1034 * XmlTextWriter.cs : fixed WriteQualifiedName() to close start tag.
1036 WriteAttributes() refactory (for XMLDecl).
1037 WriteNode() don't Read() when the reader is Initial state, let other
1038 invokation to Read(). In case of Element, it should write entire
1039 element. In case of Attribute, it shouldn't Read().
1040 WriteStartDocument() should omit standalone decl. when there is no
1043 2003-04-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1045 * XmlReader.cs: reverted last patch. It breaks System.Configuration
1046 because 1. it considers XmlDeclaration as content and 2. always
1047 returns XmlNodeType.None.
1050 2003-04-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1052 * Added missing ChangeLog of 4/4/2003.
1053 * XmlTextWriter.cs : patch by Erik. fixed WriteQualifiedName.
1054 (write prefix instead of ns.)
1055 * XmlInputStream.cs : file access mode fix (FileAccess.Read was missing)
1056 * XmlTextReader.cs : modified to call Read() instead of ReadContent().
1057 (It may be required for decorated reader such as XmlValidatingReader.)
1058 Changed Read() error message for mismatch end tag.
1059 * XmlDocument.cs : (ReadNode) friendly message for mismatch EndElement.
1060 * XmlReader.cs : Corrected misinterpreted MoveToContent() method.
1062 2003-04-04 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1064 * XmlDocument.cs : Load() now closes the given XmlReader.
1065 Don't allow creation of XmlTextReader for Doctype. (workaround.)
1066 * XmlInputStream.cs : It now closes its internal stream explicitly.
1067 * XmlNode.cs : RemoveChild() bugfix for removing LastLinkedChild.
1068 * XmlNodeReader.cs : GetAttribute() bugfix for not-present attribute.
1069 * XmlParserInput.cs : added Close() method.
1070 * XmlReader.cs : MoveToContent() should (1) not Read in case of empty
1071 element, and (2) MoveToElement() in case of attribute.
1072 * XmlTextReader.cs : Close() now actually closes source TextReaders.
1074 2003-03-26 Duncan Mak <duncan@ximian.com>
1076 * XmlTextWriter.cs (Write): A patch from Atsushi to fix
1077 prematurely ending the write, or something like that. It was
1078 causing us to chop off the end of the document when we're trying
1079 to generate XML Schemas.
1081 2003-03-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1083 * XmlTextReader.cs : implemented ReadString().
1084 fixed ctor(string, XmlNodeType, XmlParserContext) - don't raise
1085 null reference exception when context is null.
1086 * XmlNodeReader.cs : fixed ReadString() - should ignore attributes etc.
1087 fixed Read() - when positioned at EndElement, it didn't progress.
1088 fixed HasAttribute - it didn't return false in all cases.
1089 fixed Name and LocalName - only limited type of nodes return names.
1090 fixed AttributeCount - in some cases it threw null ref exception.
1092 2003-03-22 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1094 * XmlTextWriter.cs : WriteStartDocument doesn't set hasRoot=true, then
1095 WriteEndDocument without root element now raises an error correctly.
1096 * XmlDocumentNavigator.cs : (MoveToFirstChild) fixed bugzilla #36672.
1097 implemented BaseURI, NameTable, XmlLang, GetAttributes, GetNamespace,
1100 2003-03-22 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1102 * XmlElement.cs : RemoveAttribute now don't throws when specified
1103 attribute does not exist.
1105 2003-03-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1107 * XmlNode.cs : add descriptions for some node type error.
1109 2003-03-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1111 * XmlNodeArrayList.cs, XmlNodeListChildren.cs : bugzilla #39920 fix.
1113 2003-03-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1115 * XmlDeclaration.cs : quick fix, not to use regex for set_Value.
1117 2003-03-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1119 * XmlTextReader.cs : Fixed wrong notationdecl SYSTEM id read.
1120 * XmlInputStream.cs : Should allow versionless input stream entity.
1122 2003-03-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1124 * added XmlParserInput.cs for multi xml document sources.
1125 * added DTDObjectModel.cs (maybe temporary).
1126 * XmlTextReader.cs :
1127 + fixed ctor to use XmlStreamReader. Allowed null XmlParserContext.
1128 + Some members such as LineNumber, ReadChar now uses XmlParserInput.
1129 + added support for Namespaces (namespace-ignorant parse available).
1130 + added support for XmlResolver.
1131 + replace SetReaderContext()/SetReaderFragment() with Initialize().
1132 + use NameTable in CreateNameString.
1133 + fixed ReadCData(). Now reads "]]]>" correctly.
1134 + support for DTD parse.
1135 + Read() now throws an error when it reached EOF while Depth > 0.
1137 XmlDocumentFragment.cs,
1138 XmlElement.cs : fix related to the changes of XmlTextReader.Initialize
1139 * XmlDocument.cs : ReadNode() now reads DocumentType.
1140 * XmlDocumentType.cs : implemented Entities, Notations, WriteTo().
1142 XmlNotation.cs : added override LastLinkedChild (for doctype node).
1143 * XmlNamedNodeMap.cs : Remove() raises an error if target is read only.
1144 * XmlElement.cs : bugfix for node removal of set_InnerXml.
1145 * XmlNode.cs : added insertBeforeIntern() derived from InsertBefore().
1146 (to append child XmlEntity into XmlDocumentType correctly.)
1147 * XmlInputStream.cs : fixed to access file with FileAccess.Read.
1149 2003-03-15 Duncan Mak <duncan@ximian.com>
1151 * XmlElement.cs (Name): Only append prefix + ':' when prefix is
1152 neither String.Empty nor null. Thanks to Simon Guindon for
1153 reporting the bug and Jackson for fixing this bug with me.
1155 2003-03-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1157 * XmlConstructs.cs : fix "int IsXXX()" to reject negative value.
1158 * XmlDocument.cs : simplify Load(string url) to use XmlTextReader.
1159 fixed ReadNode(), it should call reader.Read() only on Initial state.
1160 * XmlInputStream.cs : Changed namespace. Added XmlStreamReader(stream)
1161 and XmlStreamReader (string). Fixed XmlInputStream(url) not to use
1162 System.Net.WebClient directly.
1163 * XmlParserContext.cs : baseURI never be null.
1164 * XmlTextWriter.cs : use WebName for Encoding instead of HeaderName.
1165 * XmlUrlResolver.cs : namespace change for XmlInputStream.
1167 2003-03-12 Elan Feingold <efeingold@mn.rr.com>
1169 * XmlTextReader.cs: When throwing a ReaderException, show what
1170 character was the culprit
1172 2003-03-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1174 * XmlDocumentFragment.cs, XmlElement.cs :
1175 modified InnerXml (fragment type from Element to DocumentFragment).
1177 * XmlElement.cs : fixed WriteTo() ns check.
1178 * XmlNamespaceManager.cs : MS.NET allows Add() used two or more times.
1179 * XmlNode.cs : fixed ConstructNamespaceManager().
1181 * XmlConstructs.cs : added IsSpace, IsName, IsNameStart, IsNCName,
1182 IsPubid with an int arg.
1183 * XmlReader.cs : changed to use XmlChar.cs (its role is as same as
1185 * XmlTextReader.cs :
1186 improved error messages with line info.
1187 / checking matching start and end tags.
1188 / prevents the apperance of multiple root elements. (patch by Erik)
1189 fixed and refactored ReadInnerXml() and ReadOuterXml()
1190 changed to use XmlChar.cs.
1192 * XmlTextWriter.cs : changed to put element's xmlns at CloseStartTag ()
1193 (It will help c14n implementation.)
1194 / blocks multiple attribute output with element node.
1196 2003-02-28 Alan Tam <Tam@SiuLung.com>
1198 * XmlConvert.cs: fixed the most ToXXX(string) and ToString(XXX)
1199 methods to make them compatible with the XML Schema Spec from W3C
1200 ToString(TimeSpan) is still outstanding
1202 2003-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1205 (Load (string)): hack to workaround some issues with Uri.Parse. Once
1206 Parse is fixed, remove the hack.
1208 2003-02-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1210 * XmlQualifiedName.cs : fixed GetHashCode() to avoid null reference
1211 * XmlTextReader.cs : fixed ReadAttributeValue() to handle
1212 entity reference, and some refactory.
1214 2003-02-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1216 * XmlUrlResolver.cs : WebClient.Credentials was not implemented yet.
1218 2003-02-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1220 * XmlInputStream.cs : added (also contains internal XmlStreamReader).
1221 * XmlDocument.cs : Load () now can specify URL using XmlUrlResolver,
1222 and can read non-UTF-8 stream.
1223 * XmlTextReader.cs : related to above stream fix.
1224 * XmlUrlResolver.cs : implemented GetEntity ().
1226 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1228 * XmlTextWriter.cs: implemented WriteRaw (char[], int, int).
1230 2003-02-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1232 * XmlTextReader.cs : implemented QuoteChar.
1234 2003-01-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1236 * XmlNode.cs : implemented ReplaceChild.
1237 removed DocElem checking at InsertBefore.
1238 * XmlNodeReader.cs : fixed ReadString and Read for correct node info.
1239 * XmlText.cs : implemented CloneNode and SplitText.
1241 2003-01-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1243 * XmlCharacterData.cs: added XPathNodeType property.
1245 2003-01-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1247 * XmlTextWriter.cs: throw an exception if WriteEndDocument is
1248 called without a prior call to WriteStartDocument.
1250 2003-01-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1252 * XmlNodeReader.cs : several fix to get more compatible with MS.NET.
1254 2003-01-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1256 * XmlNamespaceManager.cs : fundamental change of LookupPrefix to return
1257 null when no matching uri.
1258 * XmlElement.cs : removed unnecessary xmlns output.
1259 * XmlNode.cs : GetPrefixOfNamespace fix along with the change above.
1260 * XmlTextWriter.cs : LookupPrefix and WriteStartElementInternal fix
1261 along with the change above, and moved timing of 'xmlns' output
1262 to CloseStartElement.
1263 * XmlWriter.cs: modified WriteStartAttribute, same as yesterday.
1265 2003-01-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1267 * XmlWriter.cs: modified WriteStartElement (see test for detail).
1270 2003-01-13 Ville Palo <vi64pa@koti.soon.fi>
1272 * XmlDocument.cs: Added CheckName () method to check names validity.
1274 2003-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1277 (ReadOuterXml): use Depth property which return elementDepth, not depth.
1279 2003-01-11 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1281 * XmlElement.cs : (by ville) XmlElement.set_InnerText event bugfix.
1282 * XmlTextReader.cs : some fix for ReadOuterXml().
1284 2003-01-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1286 * XmlTextReader.cs : bugfix for attributes related to creation of
1287 XmlAttribute *node*.
1289 2003-01-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1291 * XmlTextReader.cs : bugfix for attribute values which have entity
1294 2002-12-28 Ville Palo <vi64pa@koti.soon.fi>
1296 * XmlDocument.cs: XmlTextWriter.Formatting == Indented when
1297 calling Save () -methods.
1299 2002-12-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1301 * XmlNodeReader.cs : primitive reading implementation.
1303 2002-12-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1305 * XmlElement.cs : quick fix for the incomplete patch of #35308 below.
1307 2002-12-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1309 * XmlDocument.cs : removed inconsistent line-feed output.
1310 * XmlElement.cs, XmlTextWriter.cs :
1311 fixed for bugzilla 35308 (default ns output)
1312 * XmlWhitespace.cs : limited output only when preserving whitespace.
1314 2002-12-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1316 * XmlAttribute.cs, XmlDocument.cs, XmlTextReader.cs:
1317 Implemented XmlTextReader.ReadAttributeValue().
1318 Added internal ReadAttributeNodeValue().
1319 Fixed XmlAttribute.InnerXml to use these methods.
1321 * XmlDocument.cs, XmlDocumentFragment.cs, XmlElement.cs, XmlNode.cs:
1322 Implemented XmlDocument.ReadNode() and removed ConstructDOM().
1323 Other changes are replacing them.
1325 2002-12-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1327 * XmlDocument.cs: patch by Ville (fixed default PreserveWhitespace)
1329 2002-12-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1331 * XmlElement.cs, XmlTextWriter.cs, XmlWriter.cs:
1332 patch by JD Conley <jconley@winfessor.com>.
1333 (Fix for xmlns attribute output.)
1335 2002-12-05 Ville Palo <vi64p@koti.soon.fi>
1337 * XmlQualifiedName.cs: Little fix to ToString () -method
1339 2002-12-04 Tim Haynes <thaynes@openlinksw.com>
1341 * class/System.XML/System.Xml/XmlElement.cs: Made more refined
1342 checks on attributeNode to fix 32262.
1344 2002-12-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1346 * XmlDocument.cs (CreateNavigator(XmlNode)) : reverted
1347 * XmlTextWriter.cs (WriteStartElementInternal):
1348 fixed when default namespace was specified, all descendants
1349 fail to omit the default namespace declarations.
1352 XmlNode.cs (internal XmlLang/XmlSpace) : implemented(defined)
1354 XmlDocumentFragment.cs,
1355 XmlElement.cs (set_InnerXml): now uses XmlLang/XmlSpace
1356 * XmlElement.cs (set_IsEmpty) : implemented
1357 (WriteTo) : removed my improper indenting (Writer already done)
1358 * XmlNode.cs (BaseURI) : fixed if ParentNode is null, NullPointerEx
1359 (ConstructDOM) : implemented when xmlReader isn't XmlTextReader
1360 ...and renamed XmlDocument.ConventionalParser to ReusableReader ;-)
1362 2002-12-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1364 * XmlNode.cs (RemoveChild):
1365 bugfixed when XmlNode is Document OwnerDocument is null
1366 * XmlDeclaration.cs (Value):
1367 bugfixed regular expression pattern.
1368 * XmlDocument.cs (CreateNavigator): bugfixed access modifier.
1370 2002-11-24 Duncan Mak <duncan@ximian.com>
1372 * XmlImplementation.cs (HasFeature): Fixed a typo. Thanks for
1373 Fabricio Barros Cabral (fx) on #mono for spotting it. This is his
1374 first patch to Mono! ;-)
1376 2002-11-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1379 (AppendChild): readded refChild != null condition before throwing
1380 "cannot insert this node in this position" exception. There's probably
1381 a better solution. Fixes #34191.
1382 (RemoveAll): changed following Atsushi instructions.
1385 2002-11-13 Duncan Mak <duncan@ximian.com>
1387 * XmlElement.cs (IsEmpty): A temporary check-in to keep gtk-sharp
1390 2002-11-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1392 * XmlDocument.cs : unified all constructors, added ConventionalParser,
1393 implemented CloneNode() and CreateEntityReference(),
1394 * XmlEntityReference.cs : set_Value, WriteContentTo, WriteTo
1395 set BaseURI to MonoTODO
1396 * XmlNode.cs : implemented PrependChild, modified ConstructDOM,
1397 bugfix InsertAfter (incorrect prepending) and InsertBefore
1398 (more than one DocumentElements hadn't caused errors)
1399 * XmlTextReader.cs : unified all constructors,
1400 added internal SetReaderContext(), SetReaderFragment()
1401 bugfix (syntax check of PUBLIC / getting internal subset)
1403 2002-11-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1405 XmlAttribute.cs : set_InnerText, set_InnerXml, some check for set_Prefix
1406 XmlAttributeCollection.cs : (indexer) this[localName, namespaceURI]
1407 XmlCharacterData.cs : exchanged Data and Value
1408 (for processing events and inheritance)
1409 XmlDocumentFragment.cs : set_InnerXml
1410 XmlSignificantWhitespace.cs : set_Value
1411 XmlTextReader.cs : ReadAttributeValue
1413 2002-11-04 Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
1415 XmlAttribute.cs: fixed missing internal 'OwnerElement''SetOwnerElement'
1417 2002-11-03 Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
1419 * XmlAttributeCollection.cs : checks owner element.
1420 implemented CopyTo, InsertAfter, InsertBefore, Prepend,
1421 Remove, RemoveAt, SetNamedItem.
1422 removed some logics that sets 'Parent' (that should be null)
1423 * XmlDocument.cs : set_InnerXml, [PreserveWhitespace(incomplete)]
1424 * XmlDocumentFragment.cs : get_InnerXml, WriteContentTo, WriteTo
1425 * XmlElement.cs : implemented WriteTo, set_InnerText.
1426 Fixed WriteTo() to add xmlns:* attributes when
1427 writer.LookupPrefix() returned mismatching.
1428 * XmlNamedNodeMap.cs : compare not only name but localname and nsuri.
1429 Removing different prefixes for the same uri now runs correct.
1430 added SetNamedItem(XmlNode node, int position_to_insert).
1431 * XmlNode.cs : ConstructDOM (logically) creates XmlEntityReference,
1432 XmlWhitespace, and XmlSignificantWhitespace
1434 2002-10-31 Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
1436 * XmlDocument.cs : implemented CreateDocumentFragment()
1437 * XmlElement.cs, XmlLinkedNode.cs :
1438 moved LastLinkedChild from XmlElement to XmlLinkedNode.
1439 * XmlEntityReference.cs : must throw NotImplementedException.
1441 + implemented InsertBefore() and then implemented InsertAfter()
1442 and modified AppendChild() to call it.
1443 + added logic to check ReadOnly, parent document equivalence,
1444 and inserting any 'content' before/after DocumentElement.
1445 + implemented Clone() [it is equals to CloneNode() by MS doc.]
1446 + added logic in RemoveChild() to check parent of oldChild.
1447 + fixed ConstructNamespaceManager() to internal only.
1449 2002-10-29 Atsushi Enomoto <gigna@kit.hi-ho.ne.jp>
1451 * XmlAttribute.cs : add internal 'IsDefault' property
1452 (equals to !Specified)
1453 * XmlImplementation.cs : added 'internalNameTable' property.
1455 + now allows "" for 'standalone' in CreateXmlDeclaration.
1456 + implemented 'Implementation' property and constructor with it.
1457 + added logic for appending name table (but still no use)
1458 + implemented property 'DocumentType'
1459 (but without internalSubset parsing. wait for next update.)
1461 + modified AppendChild() and RemoveChild() to support fragment.
1462 + modified AppendChild() to remove newChild from its parent
1463 when newChild is already in the other place.
1464 + modified RemoveChild() to set parentNode null.
1465 + modified ConstructDOM() to create DocumentType,
1466 and fixed access modifier ('internal protected' to 'internal')
1467 * XmlLinkedNode.cs : fixed 'NextSibling' to return null
1468 when its parent is null.
1469 * XmlDocumentFragment.cs : added internal override 'LastLinkedChild'
1470 property to enable AppendChild() for this class.
1471 * XmlTextReader.cs : appended private publicId and systemId fields.
1473 2002-10-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1475 * XmlTextReader.cs: make it work when the underlying Stream is not
1478 2002-10-26 Piers Haken <piersh@friskit.com>
1480 * XmlNode.cs: add virtual property XPathNodeType
1485 * XmlProcessingInstruction.cs:
1486 * XmlSignificantWhitespace.cs:
1488 * XmlWhitespace.cs: implement XPathNodeType property
1489 * XmlDocumentNavigator.cs: use XPathNodeType property instead of switch
1491 2002-10-26 Piers Haken <piersh@friskit.com>
1493 * XmlDocumentNavigator.cs: return invalid XPathNodeType (-1) for unknown node types.
1495 2002-10-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1497 * XmlTextReader.cs: don't increment depth for entity references.
1499 2002-10-22 Tim Haynes <thaynes@openlinksw.com>
1501 * - Fixed the duplication of xmlns:xx = yy when serializing the
1502 XML for serialization
1504 Fixed the unnecessary parsing/serializing when adding assemblies
1507 Avoided setting the XmlNode.InnerXml property
1508 (as it's not implemented)
1510 Fixed the usage/implementation of
1511 XmlElement.GetElementsByTagName()
1513 2002-10-21 Duncan Mak <duncan@ximian.com>
1518 * XmlTextReader.cs: Implementation for XmlNode.InnerXml from
1519 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>.
1521 2002-10-18 Duncan Mak <duncan@ximian.com>
1523 * XmlDocument.cs: Applied a patch by Atsushi Enomoto
1524 <ginga@kit.hi-ho.ne.jp>.
1526 2002-10-12 A.Enomoto <ginga@kit.hi-ho.ne.jp>
1528 * XmlDocument.cs (ImportNode): Implemented
1530 2002-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1532 * XmlDocument.cs: one more Load method implemented.
1533 * XmlTextReader.cs: Depth now works.
1535 2002-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1537 * XmlConvert.cs: IsInvalid is now internal.
1538 * XmlNamespaceManager.cs: implemented RemoveNamespace
1539 * XmlTextReader.cs: return BaseURI and Encoding from the parser.
1540 * XmlTextWriter.cs: implemented WriteName and WriteNmToken.
1542 2002-09-19 Matt Hunter <mahunter@tconl.com>
1544 * XmlElement.cs: Implementing SetAttributeNode(localName,namespaceURI)
1545 * XmlAttributeCollection.cs: Implemented Append (XmlAttribute)
1547 2002-09-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1549 * XmlConvert.cs: finished implementation.
1550 * XmlTextReader.cs: fixed #30239.
1551 * XmlTextWriter.cs: fixed #30240.
1553 2002-09-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1555 * XmlTextReader.cs: line and position begin with 1.
1557 2002-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1559 * XmlException.cs: added a new internal constructor for IXmlLineInfo
1560 and output line and position info in Message.
1562 * XmlReader.cs: implemented missing bits.
1564 2002-09-12 Piers Haken <piersh@friksit.com>
1566 * XmlDocumentNavigator.cs: implement MoveToId()
1568 2002-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1570 * XmlTextWriter.cs: fixed bug #29886.
1572 2002-08-26 Ravi Pratap <ravi@ximian.com>
1575 * XmlAttribute.cs (InnerText): Implement getting this property.
1577 * XmlNode.cs (InnerText): Ensure that we append only values of
1580 2002-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1582 * XmlWriter.cs: made ws and namespaceManager protected. mcs has a bug
1583 that allowed compiling this.
1584 [ FIXME: filed bug #29435. mcs should have failed on this ]
1586 2002-08-25 Tim Coleman <tim@timcoleman.com>
1588 Change CreateNavigator to not be virtual.
1590 Add set_Prefix and InnerText accessors.
1591 * XmlEntityReference.cs:
1592 Add set_Value accessor.
1594 Make objects which should be private private.
1596 Remove WriteStartElementInternal abstract definition.
1597 * XmlValidatingReader.cs:
1600 2002-08-22 Jason Diamond <jason@injektilo.org>
1602 * XmlAttributeCollection.cs, XmlElement.cs: Implementation of RemoveAll
1603 and RemoveAllAttributes courtesy of Matt Hunter <xrkune@tconl.com>.
1605 2002-08-22 Jason Diamond <jason@injektilo.org>
1607 * XmlElement.cs: Correction to previous GetElementsByTagName patch
1608 courtesy of Matt Hunter <xrkune@tconl.com>.
1610 2002-08-22 Jason Diamond <jason@injektilo.org>
1612 * XmlDocument.cs, XmlElement.cs: Added implementation of namepsace
1613 qualified GetElementsByTagName courtesy of Matt Hunter
1616 2002-08-19 Jason Diamond <jason@injektilo.org>
1618 * XmlDocument.cs, XmlElement.cs: Added implementation of
1619 GetElementsByTagName courtesy of Matt Hunter <xrkune@tconl.com>.
1621 2002-08-16 Jason Diamond <jason@injektilo.org>
1623 * XmlElement.cs: Fixed writing out qualified elements courtesy of
1624 Marcus Bürgel <marcus.buergel@gmx.de>.
1626 2002-08-13 Tim Coleman <tim@timcoleman.com>
1628 Partial implementation of WriteQualifiedName ().
1630 2002-08-07 Kral Ferch <kral_ferch@hotmail.com>
1631 * XmlCharacterData.cs: Implemented AppendData(), DeleteData(),
1632 InsertData(), and ReplaceData(). These methods fire the
1633 NodeChanging and NodeChanged events.
1635 * XmlDocument.cs: Fixed bugs in onNodeChanged() and onNodeChanging().
1637 * XmlNode.cs: AppendChild() fires NodeInserting and NodeInserted events.
1638 RemoveAll() and RemoveChild() fire NodeRemoving and NodeRemoved events.
1640 2002-08-03 Tim Coleman <tim@timcoleman.com>
1641 * XmlNamespaceManager.cs:
1642 .Net allows the empty namespace to be redefined
1643 at a later point, but the current implementation
1644 did not. This fixes a hashtable conflict.
1646 2002-07-26 Tim Coleman <tim@timcoleman.com>
1648 When given a textwriter, check to see if it has a
1649 null encoding. This was being done for other inputs
1652 Wed Jul 24 13:16:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
1654 * XmlTextReader.cs: rough line/column support.
1656 2002-07-23 Duncan Mak <duncan@ximian.com>
1658 * XmlConvert.cs: Implement the ToDateTime method. ToDateTime
1659 (string, string []) is particularly strange.
1661 * XmlException.cs: Remember to call the base serialization
1664 * XmlNodeReader.cs: Keep a new variable to store the Depth.
1666 2002-07-14 Jason Diamond <jason@injektilo.org>
1668 * XmlAttribute.cs: Removed ownerElement field since we can reuse
1671 * XmlDocumentNavigator.cs: MoveToParent now moves to the OwnerElement
1672 if the current node is an attribute.
1674 * XmlElement.cs: SetAttributeNode now sets the new attribute's
1677 2002-07-12 Jason Diamond <jason@injektilo.org>
1679 * XmlDocument.cs: If null was passed in for prefix or namespaceURI when
1680 creating an element, use String.Empty instead.
1682 2002-07-12 Piers Haken <piersh@friksit.com>
1684 * XmlAttributeCollection.cs: implement some ItemOf indexers
1685 * XmlNamedNodeMap.cs: add internal 'Nodes' accessor for the nodeList field
1686 * XmlNode.cs: SelectNodes: return empty XmlNodeList, not null
1688 2002-07-06 Ajay kumar Dwivedi <adwiv@yahoo.com>
1691 2002-10-26 Piers Haken <piersh@friskit.com>
1693 * XmlDocumentNavigator.cs: return invalid XPathNodeType (-1) for unknown node types.
1695 2002-10-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1697 * XmlTextReader.cs: don't increment depth for entity references.
1699 2002-10-22 Tim Haynes <thaynes@openlinksw.com>
1701 * - Fixed the duplication of xmlns:xx = yy when serializing the
1702 XML for serialization
1704 Fixed the unnecessary parsing/serializing when adding assemblies
1707 Avoided setting the XmlNode.InnerXml property
1708 (as it's not implemented)
1710 Fixed the usage/implementation of
1711 XmlElement.GetElementsByTagName()
1713 2002-10-21 Duncan Mak <duncan@ximian.com>
1718 * XmlTextReader.cs: Implementation for XmlNode.InnerXml from
1719 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>.
1721 2002-10-18 Duncan Mak <duncan@ximian.com>
1723 * XmlDocument.cs: Applied a patch by Atsushi Enomoto
1724 <ginga@kit.hi-ho.ne.jp>.
1726 2002-10-12 A.Enomoto <ginga@kit.hi-ho.ne.jp>
1728 * XmlDocument.cs (ImportNode): Implemented
1730 2002-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1732 * XmlDocument.cs: one more Load method implemented.
1733 * XmlTextReader.cs: Depth now works.
1735 2002-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1737 * XmlConvert.cs: IsInvalid is now internal.
1738 * XmlNamespaceManager.cs: implemented RemoveNamespace
1739 * XmlTextReader.cs: return BaseURI and Encoding from the parser.
1740 * XmlTextWriter.cs: implemented WriteName and WriteNmToken.
1742 2002-09-19 Matt Hunter <mahunter@tconl.com>
1744 * XmlElement.cs: Implementing SetAttributeNode(localName,namespaceURI)
1745 * XmlAttributeCollection.cs: Implemented Append (XmlAttribute)
1747 2002-09-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1749 * XmlConvert.cs: finished implementation.
1750 * XmlTextReader.cs: fixed #30239.
1751 * XmlTextWriter.cs: fixed #30240.
1753 2002-09-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1755 * XmlTextReader.cs: line and position begin with 1.
1757 2002-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1759 * XmlException.cs: added a new internal constructor for IXmlLineInfo
1760 and output line and position info in Message.
1762 * XmlReader.cs: implemented missing bits.
1764 2002-09-12 Piers Haken <piersh@friksit.com>
1766 * XmlDocumentNavigator.cs: implement MoveToId()
1768 2002-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1770 * XmlTextWriter.cs: fixed bug #29886.
1772 2002-08-26 Ravi Pratap <ravi@ximian.com>
1775 * XmlAttribute.cs (InnerText): Implement getting this property.
1777 * XmlNode.cs (InnerText): Ensure that we append only values of
1780 2002-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1782 * XmlWriter.cs: made ws and namespaceManager protected. mcs has a bug
1783 that allowed compiling this.
1784 [ FIXME: filed bug #29435. mcs should have failed on this ]
1786 2002-08-25 Tim Coleman <tim@timcoleman.com>
1788 Change CreateNavigator to not be virtual.
1790 Add set_Prefix and InnerText accessors.
1791 * XmlEntityReference.cs:
1792 Add set_Value accessor.
1794 Make objects which should be private private.
1796 Remove WriteStartElementInternal abstract definition.
1797 * XmlValidatingReader.cs:
1800 2002-08-22 Jason Diamond <jason@injektilo.org>
1802 * XmlAttributeCollection.cs, XmlElement.cs: Implementation of RemoveAll
1803 and RemoveAllAttributes courtesy of Matt Hunter <xrkune@tconl.com>.
1805 2002-08-22 Jason Diamond <jason@injektilo.org>
1807 * XmlElement.cs: Correction to previous GetElementsByTagName patch
1808 courtesy of Matt Hunter <xrkune@tconl.com>.
1810 2002-08-22 Jason Diamond <jason@injektilo.org>
1812 * XmlDocument.cs, XmlElement.cs: Added implementation of namepsace
1813 qualified GetElementsByTagName courtesy of Matt Hunter
1816 2002-08-19 Jason Diamond <jason@injektilo.org>
1818 * XmlDocument.cs, XmlElement.cs: Added implementation of
1819 GetElementsByTagName courtesy of Matt Hunter <xrkune@tconl.com>.
1821 2002-08-16 Jason Diamond <jason@injektilo.org>
1823 * XmlElement.cs: Fixed writing out qualified elements courtesy of
1824 Marcus Bürgel <marcus.buergel@gmx.de>.
1826 2002-08-13 Tim Coleman <tim@timcoleman.com>
1828 Partial implementation of WriteQualifiedName ().
1830 2002-08-07 Kral Ferch <kral_ferch@hotmail.com>
1831 * XmlCharacterData.cs: Implemented AppendData(), DeleteData(),
1832 InsertData(), and ReplaceData(). These methods fire the
1833 NodeChanging and NodeChanged events.
1835 * XmlDocument.cs: Fixed bugs in onNodeChanged() and onNodeChanging().
1837 * XmlNode.cs: AppendChild() fires NodeInserting and NodeInserted events.
1838 RemoveAll() and RemoveChild() fire NodeRemoving and NodeRemoved events.
1840 2002-08-03 Tim Coleman <tim@timcoleman.com>
1841 * XmlNamespaceManager.cs:
1842 .Net allows the empty namespace to be redefined
1843 at a later point, but the current implementation
1844 did not. This fixes a hashtable conflict.
1846 2002-07-26 Tim Coleman <tim@timcoleman.com>
1848 When given a textwriter, check to see if it has a
1849 null encoding. This was being done for other inputs
1852 Wed Jul 24 13:16:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
1854 * XmlTextReader.cs: rough line/column support.
1856 2002-07-23 Duncan Mak <duncan@ximian.com>
1858 * XmlConvert.cs: Implement the ToDateTime method. ToDateTime
1859 (string, string []) is particularly strange.
1861 * XmlException.cs: Remember to call the base serialization
1864 * XmlNodeReader.cs: Keep a new variable to store the Depth.
1866 2002-07-14 Jason Diamond <jason@injektilo.org>
1868 * XmlAttribute.cs: Removed ownerElement field since we can reuse
1871 * XmlDocumentNavigator.cs: MoveToParent now moves to the OwnerElement
1872 if the current node is an attribute.
1874 * XmlElement.cs: SetAttributeNode now sets the new attribute's
1877 2002-07-12 Jason Diamond <jason@injektilo.org>
1879 * XmlDocument.cs: If null was passed in for prefix or namespaceURI when
1880 creating an element, use String.Empty instead.
1882 2002-07-12 Piers Haken <piersh@friksit.com>
1884 * XmlAttributeCollection.cs: implement some ItemOf indexers
1885 * XmlNamedNodeMap.cs: add internal 'Nodes' accessor for the nodeList field
1886 * XmlNode.cs: SelectNodes: return empty XmlNodeList, not null
1888 2002-07-06 Ajay kumar Dwivedi <adwiv@yahoo.com>
1890 * XmlTextWriter: Fixed Indentation. IndentationOverridden should
1891 not be set when inside a attribute.
1893 2002-07-06 Ajay kumar Dwivedi <adwiv@yahoo.com>
1895 * XmlTextWriter: In WriteStartElement, if namespace is null and
1896 prefix is null|empty do not write out xmlns=""
1898 * XmlWriter: WriteStartElement calls the virtual method with null
1899 argument instead of empty string.
1901 2002-07-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1903 * XmlTextReader.cs: implemented .ctor (Stream).
1905 2002-06-26 Duncan Mak <duncan@ximian.com>
1907 * XmlNodeReader.cs: Implementation of most of the properties, and
1908 some of the related methods.
1910 2002-06-23 Piers Haken <piersh@friskit.com>
1912 * XmlDocumentNavigator.cs: implement Clone()
1913 * XmlElement.cs: remove bogus unimplemented override of InnerText
1914 * XmlNode.cs: implment SelectNodes/SelectSingleNode
1915 * XmlNodeArrayList.cs: new support class for SelectNodes
1917 2002-06-21 Ajay kumar Dwivedi <adwiv@yahoo.com>
1919 * XmlQualifiedName: Name and Namespaces are never null. If null is passed
1920 to the constructor, set them to empty strings.
1921 Fixed the Operators.
1923 2002-06-18 Ajay kumar Dwivedi <adwiv@yahoo.com>
1925 * XmlTextReader.cs: HasLineInfo returns false instead of throwing an
1928 2002-06-14 Duncan Mak <duncan@ximian.com>
1930 * XmlConvert.cs: Added CLSCompliant attributes to methods.
1932 2002-06-12 Duncan Mak <duncan@ximian.com>
1934 * XmlCharacterData.cs (Value): Throw an ArgumentException in the
1935 set block if the node is read-only.
1937 2002-06-10 Ajay kumar Dwivedi <adwiv@yahoo.com>
1938 * XmlConstruct.cs : New Internal class with Helper methods for
1939 Checking XmlConstructs
1940 * XmlConvert.cs: Implemented most of the methods
1942 2002-06-08 Duncan Mak <duncan@ximian.com>
1944 * XmlDocument.cs (Load):
1945 Added bits to Load (string) for BaseURI support.
1947 * XmlAttribute.cs (BaseURI):
1948 * XmlDocument.cs (BaseURI):
1949 * XmlEntity.cs (BaseURI): Implemented.
1951 2002-05-27 Jason Diamond <jason@injektilo.org>
1953 * XmlDocumentNavigator.cs: Added file to directory.
1955 * XmlNode.cs (CreateNavigator): Implemented.
1956 (InnerText): Implemented.
1958 * XmlDocument.cs (NamespaceURI, Prefix): Return String.Empty instead of
1960 (Load(XmlReader)): Allow for namespace qualified attributes.
1962 * XmlElement.cs: Implemented GetAttribute(string, string) and both
1963 GetAttributeNode overloads.
1964 (SetAttributeNode(XmlAttribute)): Implemented.
1966 * XmlNamedNodeMap.cs: Fixed copy/paste bugs in GetNamedItem(string, string)
1967 and RemoveNamedItem(string, string).
1969 * XmlLinkedNode.cs (PreviousSibling): Implemented.
1971 * XmlTextReader.cs: Added code to maintain the order of attributes as
1972 they're parsed. XML doesn't require this but Microsoft's parser does it and
1973 matching them makes testing easier so now we have it, too.
1975 2002-05-26 Miguel de Icaza <miguel@ximian.com>
1977 * XmlDocument.cs: Implement the Save methods.
1979 2002-05-08 Mike Kestner <mkestner@speakeasy.net>
1981 * XmlNamedNodeMap.cs (SetNamedItem): Fixed a copy/paste bug.
1983 2002-04-28 Duncan Mak <duncan@ximian.com>
1985 * XmlSignificantWhitespace.cs (Value):
1986 * XmlWhitespace.cs (Value): Added MonoTODO to the 'set'
1987 block. Added new private method, IsValidWhitespaceChar, for
1990 2002-04-16 Duncan Mak <duncan@ximian.com>
1992 * XmlParserContext.cs (NameTable): Fixed a typo in the set block.
1994 2002-04-12 Duncan Mak <duncan@ximian.com>
1996 * XmlAttribute.cs (Prefix): Added preliminary code for set block,
1997 added comment on work that needs to be done here. A new MonoTODO item.
1999 * XmlDocument.cs (ctor): Corrected constructor signature, changed
2000 parameter from 'NameTable' to 'XmlNameTable'.
2002 * XmlDocumentFragment.cs (InnerXml): Added missing set block.
2004 * XmlCaseOrder.cs: Moved to System.Xml.XPath.
2006 2002-04-10 Duncan Mak <duncan@ximian.com>
2008 * XmlNodeReader.cs: Initial stubs for the class.
2010 2002-04-08 Kral Ferch <kral_ferch@hotmail.com>
2012 * XmlAttributes.cs: InnerXml getter, WriteContentTo, and WriteTo
2015 * XmlDeclaration.cs: WriteTo implementation.
2017 * XmlDocument.cs: InnerXml getter implementation.
2019 * XmlElement.cs: InnerXml getter implementation.
2021 * XmlNode.cs: Removed MonoTODO attrib on OuterXml.
2023 * XmlSignificantWhitespace.cs: WriteTo implementation.
2025 * XmlText.cs: WriteContentTo and WriteTo implementation.
2027 * XmlTextWriter.cs: WriteRaw implementation.
2029 * XmlWhitespace.cs: WriteContentTo and WriteTo implementations.
2031 2002-04-05 Kral Ferch <kral_ferch@hotmail.com>
2033 * XmlAttributes.cs: Added reminder MonoTODO to set NamespaceURI
2034 if prefix in constructor is one of the default ones.
2036 * XmlCharacterData.cs: Returns String.Empty for Value and Data
2037 even when constructed with null.
2039 * XmlDeclaration.cs: Value doesn't put encoding or standalone
2040 in if they are empty.
2042 * XmlDocument.cs: Implemented CreateNode methods and this caused
2043 the changes in the other files in this checkin.
2045 * XmlProcessingInstruction.cs: Returns String.Empty for Value and Data
2046 even when constructed with null.
2048 * XmlWhitespace.cs: Changed Value 'get' to return Data.
2050 2002-04-01 Kral Ferch <kral_ferch@hotmail.com>
2052 * XmlTextWriter.cs: Impls for WriteEndDocument and WriteFullEndElement.
2054 2002-03-31 Kral Ferch <kral_ferch@hotmail.com>
2056 * XmlTextWriter.cs: Impls for LookupPrefix, WriteBase64,
2057 and WriteCharEntity.
2059 * XmlWrite.cs: Fixed bug where attribute namespace decl
2060 was pushing a scope onto the namespace manager when it shouldn't
2063 2002-03-31 Kral Ferch <kral_ferch@hotmail.com>
2065 * XmlTextWriter.cs: Some tweaks for WriteAttibuteString
2066 in different states (no open start element, in WriteState.Content mode).
2068 2002-03-29 Kral Ferch <kral_ferch@hotmail.com>
2070 * XmlTextWriter.cs: XmlLang and XmlSpace properties
2071 and WriteWhitespace.
2073 * XmlTextWriterOpenElement.cs: scope support for XmlLang
2076 2002-03-29 Kral Ferch <kral_ferch@hotmail.com>
2078 * XmlTextWriter.cs: Working on Attribute methods.
2080 * XmlWriter.cs: Working on Attribute methods.
2082 2002-03-28 Duncan Mak <duncan@ximian.com>
2084 * XmlDocument.cs (CreateWhitespace):
2085 (CreateSignificantWhitespace): Removed extraneous call to the ToCharArray
2088 * XmlSignificantWhitespace.cs (Value): Removed MonoTODO attribute.
2090 2002-03-26 Duncan Mak <duncan@ximian.com>
2092 * XmlDocument.cs (CreateDocumentType): Implemented.
2094 * XmlNode.cs (Value): Implemented.
2096 * XmlProcessingInstruction.cs (InnerText): Implemented. It works just
2097 like XmlCharacterData.
2099 * XmlDeclaration.cs (CloneNode):
2100 * XmlDocument.cs (CreateXmlDeclaration): Added missing constructor
2103 * XmlCharacterData.cs (InnerText): Implemented. Funny that the
2104 docs say it is the "The concatenated values of the node and all
2105 the children of the node.". I wrote some test programs and
2106 couldn't get any of the derived nodes to AppendChild. For now,
2107 InnerText == Data == Value.
2108 (Substring): Fixed typo.
2110 * XmlDeclaration.cs (XmlDeclaration): Fixed the constructor parameter signature.
2112 * XmlImplementation.cs (CreateDocument): Implemented.
2114 2002-03-25 Duncan Mak <duncan@ximian.com>
2116 * XmlDeclaration.cs: Rewrote the class, fixed formatting, added
2117 missing properties (InnerText, Value).
2119 * XmlDocument.cs (CreateXmlDeclaration): Implemented.
2121 2002-03-23 Kral Ferch <kral_ferch@hotmail.com>
2123 * XmlTextWriter.cs: Impls for BaseStream and
2124 Namespaces and WriteState.
2126 * XmlWriter.cs: WriteState and WriteStartElementInternal.
2128 2002-03-23 Kral Ferch <kral_ferch@hotmail.com>
2130 * XmlNodeListChildren.cs: made class internal
2131 instead of public. Shouldn't be visible outside
2134 * XmlTextWriter.cs: Implementations for Formatting,
2135 IndentChar, Indenting, QuoteChar, WriteStartDocument(standalone).
2136 Suppresses encoding on xml declaration if null stream passed in.
2137 Formats output including suppressing indentation for elements in
2140 * XmlTextWriterOpenElement.cs: Initial checkin.
2141 XmlTextWriter uses stack of these objects to track
2144 2002-03-22 Mike Kestner <mkestner@speakeasy.net>
2146 * XmlElement.cs: impl HasAttribute(string name).
2148 2002-03-22 Duncan Mak <duncan@ximian.com>
2150 * XmlElement.cs: Reformatted.
2151 (CloneNode) Corrected.
2153 * XmlDocument.cs (CreateWhitespace):
2154 (CreateSignificantWhitespace): Implemented.
2156 * XmlAttribute.cs (CloneNode): Changed the child's CloneNode to
2157 true, because Attributes have ChildNodes.
2159 2002-03-21 Kral Ferch <kral_ferch@hotmail.com>
2161 * XmlTextWriter.cs: WriteStartDocument tracks state, writes out
2162 xml declaration along with encoding. WriteEndElement throws
2163 exception if no WriteStartElement exists.
2165 2002-03-20 Duncan Mak <duncan@ximian.com>
2167 * XmlEntityReference.cs (CloneNode): Implemented.
2169 * XmlException.cs (Message): Implemented. We need to cache the
2170 message string because SystemException doesn't expose 'message'
2173 * XmlText.cs (Value): Added in the missing Value property.
2175 2002-03-20 Duncan Mak <duncan@ximian.com>
2177 * XmlAttribute.cs (CloneNode): Implemented.
2179 * XmlDocumentFragment.cs (CloneNode): Implemented.
2181 * XmlElement.cs (CloneNode): Implemented.
2183 2002-03-19 Duncan Mak <duncan@ximian.com>
2185 * XmlNotation.cs: Added to CVS.
2187 * XmlAttribute.cs (CloneNode): First crack at the CloneNode method.
2189 * XmlCDataSection.cs (CloneNode): Implemented.
2191 * XmlDocumentFragment.cs: Reformatted and added the missing properties
2192 (InnerXml, OwnerDocument, ParentNode).
2193 (CloneNode): Implemented.
2195 * XmlSignificantWhitespace.cs (CloneNode): Implemented.
2196 (Value) Implemented the 'get' property.
2198 * XmlWhitespace.cs (Module): implemented.
2200 2002-03-19 Jason Diamond <jason@injektilo.org>
2202 * XmlDocument.cs: Fixed typo in Load that was duplicating the LocalName
2205 2002-03-18 Jason Diamond <jason@injektilo.org>
2207 * XmlTextReader.cs: Don't restore properties after reading last
2208 attribute on an element.
2210 * XmlDocument.cs: Move back to element after reading attributes
2211 so that IsEmptyElement test succeeds.
2213 2002-03-18 Kral Ferch <kral_ferch@hotmail.com>
2215 * XmlNamespaceManager.cs: Implemented LookupPrefix.
2217 * XmlTextWriter.cs: Implemented namespace and prefix support.
2219 2002-03-18 Kral Ferch <kral_ferch@hotmail.com>
2221 * XmlTextReader.cs: Restores properties after
2222 reading last attribute on an element.
2224 * XmlNode.cs: AppendChild sets the parent
2227 2002-03-17 Kral Ferch <kral_ferch@hotmail.com>
2229 * XmlCDataSection.cs: Formatting, Implementation for WriteTo.
2231 * XmlComment.cs: Implementations for WriteTo and WriteContentTo.
2233 * XmlElement.cs: Fixed bug in WriteTo.
2235 * XmlProcessingInstruction.cs: Formatting.
2237 * XmlTextWriter.cs: Implementations for Close, WriteCData, WriteComment,
2238 fixes for WriteEndElement, WriteProcessingInstruction.
2240 2002-03-17 Kral Ferch <kral_ferch@hotmail.com>
2242 * XmlDocument.cs: Implementations for WriteTo() and WriteContentTo(),
2243 had Load() add PIs to the document, moved onXXX methods to alphabetical
2246 * XmlElement.cs: Implementations for WriteTo() and WriteContentTo().
2248 * XmlNode.cs: Implementations for InnerXml Get and OuterXml.
2250 * XmlProcessingInstruction.cs: Implementations for WriteTo() and
2253 * XmlTextWriter.cs: Implementations for WriteEndElement,
2254 WriteProcessingInstruction, WriteStartElement, and WriteString.
2256 * XmlWriter.cs: Implemented WriteStartElement() methods.
2258 2002-03-15 Duncan Mak <duncan@ximian.com>
2260 * XmlEntity.cs: Added to CVS. Need to implement BaseURI and
2261 InnerText once I know what they do.
2263 * XmlDocumentType.cs (XmlDocumentType): Fix the constructor now
2264 that we can properly chain constructors.
2265 (CloneNode): implemented.
2266 (WriteContentTo): Removed MonoTODO attribute as this method has no
2267 effect in this class.
2269 * XmlProcessingInstruction.cs (Value): Added the missing Set
2271 (InnerText): Added in, but not implemented.
2273 2002-03-14 Kral Ferch <kral_ferch@hotmail.com>
2275 * XmlTextWriter.cs: implemented constructors and
2276 WriteCData and WriteComment.
2278 2002-03-14 Duncan Mak <duncan@ximian.com>
2280 * XmlDocument.cs: Moved the NodeChanged EventHandler to its own
2281 file, and updated the callbacks to reflect the change.
2282 (XmlDocument): Added the NameTable constructor.
2283 (NameTable): Also the NameTable property.
2285 * XmlNodeChangedEventHandler.cs: Added, replacing the version that
2286 was in XmlDocument.cs. It has two arguments now (object,
2287 EventArgs) , instead of one (object).
2289 2002-03-14 Kral Ferch <kral_ferch@hotmail.com>
2291 * XmlWriter.cs: Formatting.
2293 * XmlTextWriter.cs: Initial checkin.
2295 2002-03-14 Duncan Mak <duncan@ximian.com>
2297 * Validation.cs: Removed, replaced by ValidationType.cs.
2299 * ValidationType.cs: Added.
2301 2002-03-13 Duncan Mak <duncan@ximian.com>
2303 * XmlException.cs: Made it [Serializable], implemented good ol'
2304 GetObjectData, and the serialization constructor.
2306 * XmlNamedNodeMap.cs (SetNamedItem): Check for the Name property.
2307 (SetNamedItem): Reverted (added back in) the patch with the
2308 ReadOnly checks. "Don't doubt yourself, my son... you were right!"
2310 * XmlNamedNodeMap.cs (GetEnumerator): piggyback on the ArrayList implementation.
2311 (GetNamedItem (string, string)): implemented.
2312 (RemoveNamedItem): implemented.
2313 (SetNamedItem): implemented.
2315 2002-03-12 Kral Ferch <kral_ferch@hotmail.com>
2317 * XmlAttribute.cs: Moved a method from amongst properties down to
2318 it's alphabetical position in the methods section.
2320 * XmlNode.cs: Passes in 'this' to XmlNodeList constructor instead of
2321 last linked child. Set XmlNode base class to return false for IsReadOnly().
2322 Implemented GetEnumerator() and RemoveChild().
2324 * XmlNodeListChildren.cs: Now stores the parent instead of the last child.
2325 This is to support the behavior that the Enumerator doesn't become invalid
2326 when changes to the children occur. Flushed out rest of implementation for
2327 MoveNext, Current, and Reset.
2329 2002-03-12 Duncan Mak <duncan@ximian.com>
2331 * XmlCharacterData.cs: Reformatted the properties for better readability.
2333 * XmlLinkedNode.cs: Removed the awful boxy comments.
2335 * XmlNamedNodeMap.cs (Count):
2336 (Item): Implemented. Tests will be coming.
2338 * XmlEntityReference.cs:
2339 * XmlSignificantWhitespace.cs: Implemented these classes except for
2340 the Clone, WriteContentTo and WriteTo methods. Will have to
2341 investigate into these later.
2343 2002-03-11 Duncan Mak <duncan@ximian.com>
2345 * IHasXmlNode.cs: Added to CVS.
2347 2002-03-08 Jason Diamond <jason@injektilo.org>
2349 * XmlParserContext.cs: Added missing constructors and missing Encoding
2352 * XmlTextReader.cs: Start using the XmlParserContext class.
2354 2002-03-08 Jason Diamond <jason@injektilo.org>
2356 * XmlTextReader.cs: Implemented MoveToElement and MoveToFirstAttribute.
2358 2002-03-08 Mike Kestner <mkestner@speakeasy.net>
2360 * XmlNode.cs (Item): Implemented both indexers.
2362 2002-03-08 Jason Diamond <jason@injektilo.org>
2364 * DomEncodingType.cs, TreePosition.cs, XPathNodeType.cs, XmlDataType.cs,
2365 XmlExceptionCode.cs, XmlSortOrder.cs, XmlUtil.cs: Removed files.
2367 2002-03-08 Jason Diamond <jason@injektilo.org>
2369 * XmlAttribute.cs: Attribute nodes are supposed to store their values
2370 as child nodes so updated to reflect that.
2372 * XmlDocument.cs, XmlElement.cs, XmlNode.cs: Moved code that was
2373 duplicated in XmlDocument and XmlElement into XmlNode so that it
2374 wouldn't have to be duplicated in XmlAttribute, too.
2376 2002-03-08 Kral Ferch <kral_ferch@hotmail.com>
2378 * XmlNodeList.cs, XmlDocument.cs, XmlLinkedNode.cs,
2379 XmlNode.cs: Formatting.
2381 * XmlNodeListChildren.cs: Implementation of XmlNodeList
2382 for XmlNode.ChildNodes property.
2384 * XmlNodeListAsArrayList.cs: Removed file. Using different
2385 data structure (circular list) in XmlNode so this file
2388 * XmlDocument.cs, XmlElement.cs: New ChildNodes tests found
2389 bug in setter property of LastLinkedChild so fixed it.
2391 2002-03-06 Jason Diamond <jason@injektilo.org>
2393 * XmlInputSource.cs, XmlNames_1_0.cs, XmlParse.cs: Removed files.
2394 We already have a parser in XmlTextReader.
2396 * XmlException.cs: Removed constructor accepting XmlInputSource.
2398 2002-03-06 Kral Ferch <kral_ferch@hotmail.com>
2400 * XmlNode.cs: Rewrote this class from scratch with
2401 MonoToDo attribs and NotImplementedExceptions. Now defines an
2402 internal LastLinkedNode property to aid the new implementation.
2403 XmlNodes only have ref to owner doc and parent nodes now.
2405 * XmlLinkedNode.cs: Added NextLinkedSibling internal property
2406 and ref to next sibling to support walking our circular child
2409 * XmlDocument.cs: Added ref to last child node and overrides
2410 XmlNode's internal LastLinkedChild property to support walking
2411 our circular child node list.
2413 2002-03-02 Kral Ferch <kral_ferch@hotmail.com>
2415 * XmlProcessingInstructions.cs: Class was empty. Implemented
2416 constructor, properties, and CloneNode() method. Put in
2417 MonoToDo attrib for remaining methods.
2419 * XmlComment.cs: Reformatted and put in MonoToDo attribs.
2420 Got rid of helper methods and fields since they were no
2423 * XmlLinkedNode.cs: Reformatted and put in MonoToDo attribs.
2425 * XmlDocument.cs: Added code to Load(XmlReader) to create XmlComment,
2426 XmlCDataSection, and XmlProcessingInstruction nodes. Implemented
2427 Createxxx() methods for those three node types.
2429 2002-03-02 Jason Diamond <jason@injektilo.org>
2431 * XmlDocument.cs: Implemented the remaining CreateElement and
2432 CreateAttribute methods.
2434 * XmlAttribute.cs: Re-implemented.
2436 * XmlElement.cs: Set owner element on attributes. Reformatted.
2438 2002-03-02 Jason Diamond <jason@injektilo.org>
2440 * XmlTextReader.cs: Implemented MoveToNextAttribute().
2442 * XmlDocument.cs: Reformatted. Adding missing methods and MonoTODO
2443 attributes. Create attribute nodes while loading. Implemented
2444 Load(string) and CreateTextNode().
2446 * XmlCharacterData.cs, XmlText.cs: Re-implemented.
2448 * XmlCDataSection.cs, XmlComment.cs: Call correct constructor in
2451 * XmlNamedNodeMap.cs, XmlAttributeCollection.cs: Stubbed out.
2453 2002-03-02 Mike Kestner <mkestner@speakeasy.net>
2455 * XmlAttribute.cs : Using fix.
2456 * XmlDocument.cs (CreateAttribute(String)): Implement.
2458 2002-03-02 Jason Diamond <jason@injektilo.org>
2460 * XmlNamespaceManager.cs: Atomize prefixes and namespaces strings in
2463 2002-02-28 Jason Diamond <jason@injektilo.org>
2465 * XmlDocument.cs, XmlNode.cs: Initial implementation of LoadXml
2466 courtesy of Kral Ferch <kral.ferch@hotmail.com>.
2468 2002-02-28 Jason Diamond <jason@injektilo.org>
2470 * XmlException.cs, XmlReader.cs, XmlTextReader.cs: Reformatted,
2471 added missing members and MonoTODO attributes.
2473 * XmlTextReader.cs: Throw XmlException instead of System.Exception.
2475 2002-02-27 Jason Diamond <jason@injektilo.org>
2477 * XmlElement.cs: Reformatted, added missing members and MonoTODO
2480 2002-02-26 Duncan Mak <duncan@ximian.com>
2482 * XmlCDataSection.cs: Initial implementation.
2484 * NameTable.cs: Fixed the whole thing. Wrote a NUnit test to test
2485 it out. This should (hopefully) be correct.
2487 2002-02-26 Jason Diamond <jason@injektilo.org>
2489 * XmlTextReader.cs: Apparently Microsoft's implementation treats
2490 namespace declarations as attributes so we do now, too.
2492 * XmlNamespaceManager.cs: HasNamespace fixed so that it only
2493 checks the current scope.
2495 2002-02-26 Duncan Mak <duncan@ximian.com>
2497 * XmlDocumentType.cs: Added a few hacks here and there to
2498 temporarily fix the "I broke the build issue".
2500 2002-02-25 Jason Diamond <jason@injektilo.org>
2502 * XmlDocument.cs, XmlElement.cs, XmlNode.xs, XmlNodeList.cs,
2503 XmlNodeListAsArrayList.cs: Multiple fixes necessary to get
2504 simple test to pass. The existing code is really shitty so I'll
2505 probably start writing tests and refactoring before much else
2508 2002-02-25 Duncan Mak <duncan@ximian.com>
2510 * NameTable.cs: Implemented.
2512 * XmlDeclaration.cs: It should inherit from XmlLinkedNode, not XmlNode.
2514 2002-02-24 Duncan Mak <duncan@ximian.com>
2516 * XmlNodeOrder.cs: Added to CVS.
2518 * XmlQualifiedName.cs: Fixed a warning from Equals ().
2520 * XmlTokenizedType.cs: Added to CVS.
2522 * XmlUrlResolver.cs: Added to CVS with one TODO task.
2524 2002-02-23 Duncan Mak <duncan@ximian.com>
2526 * XmlQualifiedName.cs: Fixed ToString () and added the operators
2529 2002-02-23 Jason Diamond <jason@injektilo.org>
2531 * XmlTextReader.cs: Added support for qualified attributes.
2533 2002-02-23 Jason Diamond <jason@injektilo.org>
2535 * XmlNamespaceManager.cs: Initial implementation.
2537 * XmlTextReader.cs: Added support for NamespaceURI property on
2540 2002-02-23 Nick Drochak <ndrochak@gol.com>
2542 * ChangeLog: Add the change log to this directory
2544 * XmlQualifiedName.cs: Fixed compile errors so it would build. Still has