+2004-08-18 Umadevi S <sumadevi@novell.com>
+ * DataView.cs - Completed most of the event handling.
+ Thanks to Punit Todi <punit_todi@da-iict.org> for implementing most of it.
+ Thanks to Boris Kirzner <borisk@mainsoft.com> for commenting and suggesting changes to the implementation.
+ * DataTable.cs - Changed Access modifiers of class/methods since it was used by DataView.
+
+2004-08-06 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : DataSet's ExtendedProperties were not XmlConverted.
+
+2004-08-05 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlConstants.cs : Added constants for "msprop" support.
+ * DataSet.cs : ExtendedProperties should be written in the schema.
+ This fixes bug #61233.
+
+2004-07-27 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : on serialization to XmlWriter, XmlConvert should be
+ used. There were also some culture dependency problems to write int.
+
+2004-06-27 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataInferenceLoader.cs : It was not always filling relation
+ child table information correctly. This fixes bug #60742.
+
+2004-06-23 Umadevi S <sumadevi@novell.com>
+ * UniqueConstraint.cs :changed a ifdef true to ifdef NET_1_1
+
+2004-06-22 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : Fixed ReadXml(). When ReadMode is ReadSchema and the
+ schema is inside the document element (as created in XmlWriteMode
+ .WriteSchema), it should read schema from that non-document element.
+ This fixes one case reported in bug #60470.
+
+2004-06-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataInferenceLoader.cs : Kindly reject xml schema document as a
+ inference target. For bug #60470. (MS does not support schema
+ document inference and results in unconsistent dataset structure.)
+
+2004-06-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataTableCollection.cs : reset the table's DataSet to null when
+ removing a table from this collection.
+ * DataTable.cs : When Namespace is not specified explicitly, its
+ Namespace property reflects DataSet's Namespace if exist.
+ This fixes bug #60469.
+
+2004-06-18 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * DBConcurrentcyException.cs: CRLF to LF
+ * DataViewSetting.cs: CRLF to LF
+
+2004-06-18 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * DataViewSetting.cs: renamed fields to match MS.NET
+
+2004-06-18 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * DBConcurrencyException.cs: fixed serialization compatibility with
+ MS.NET
+
+2004-06-17 Boris Kirzner <borisk@mainsoft.com>
+
+ * ChangeLog : Fix for misspelled words.
+
+2004-06-17 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataRowCollection.cs : Removed onColumnRemoved since it is not in use.
+
+2004-06-17 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataTable.cs :
+ - Table stores default values for columns in special default values row.
+ It is allocated once (in NewRow).
+ - DataTable.Copy rewrited. It works with uninitialized rows for better perfomance.
+ - OnRemoveColumn has nothing to perform by now.
+
+2004-06-17 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataRow.cs :
+ - Changed access of original, current and proposed indexes to internal.
+ - ColumnErrors reviewed : now column errors stored in ArrayList and allocated on demand only.
+ - Added new DataRow constructor that creates uninitialized DataRow (used in DataTable.Copy).
+ - Use DataContainer.CopyValue and default values row for faster set of default values in row.
+ - SetColumnValue become CheckValue. Now it does not changes the value, but only checks for its correctness.
+ Care about Null and DBNull values is now in DataContainer.
+ - Use DataColumn.AutoIncrementValue and GetInt64 for faster set of autoincrement value.
+ - Use Datacontainer.CopyValue and default values row to speed up CheckChildRows.
+ - Fix in CopyState : clone column errors.
+ - Removed CollectionChanged and onColumnRemoved since we are not using both of them anymore.
+
+2004-06-17 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataColumnCollection.cs :
+ - Fix : Add() now delegates to Add(DataColumn).
+ - autoIncrement list holds DataColumn objects, and not just column names.
+
+2004-06-17 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataColumn.cs :
+ - AutoIncrementValue fixes. Now AutoIncrement uses DataContainer.GetInt64 to avoid boxing.
+ - DefaultValue fixes. Default value from now on is also stored in special record in
+ DataTable, so we're able to set default value for the column faster (typed).
+
+
+2004-06-15 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : children of non-root rows were not properly written.
+ Fixed bug #53959.
+
+2004-06-10 Umadevi S <sumadevi@novell.com>
+ * DataRelation.cs - Constructor
+ - The datatypes of the parentcolumn(s) and the childcolumn(s) should match
+
+2004-06-06 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs : We should fill Namespace for DataTable.
+
+2004-06-04 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * Constraint.cs: marked methods internal to fix public API
+ * ConstraintCollection.cs: to fix public API, use
+ DataTable.fInitInProgress to check whether initialization
+ of DataTable is in progress
+ * DataColumn.cs: added stubs for missing methods
+ * DataRowBuilder.cs: marked Table property internal to
+ fix public API
+ * DataSet.cs: removed extra empty destructor, marked
+ OnMergeFailed internal to fix public API
+ * DataTable.cs: use fInitInProgress field to hold init
+ status, to match MS.NET
+ * DataView.cs: added missing attributes on IsOpen
+
+2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : Use NameTable.Get() before calling LookupNamespace()
+ in XmlNamespaceManager.
+
+2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : complex table content child was not properly added
+ when it is the only one child in the parent table. Fixed bug #53959.
+
+2004-06-02 Gert Driesen <drieseng@users.sourceforge.net>
+ * DataTableTypeConverter.cs: added
+ * DataView.cs: added missing attribute on Table property
+ * DataViewManager.cs: moved attribute to correct property
+ * UniqueConstraint.cs: removed extra ReadOnly attribute from
+ IsPrimaryKey property
+
+2004-06-01 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataRow.cs : ColumnsChanged event is not required in .ctor().
+
+2004-06-01 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataReader.cs : type change is required before setting value
+ string to row item.
+
+2004-05-31 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : Loop-break of the last fix was incorrect.
+
+2004-05-31 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : When a row has no parent row but the table has parent
+ relation(s), that row had been always ignored.
+
+2004-05-31 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataInferenceLoader.cs : Fixed GetMappedTable() that incorrectly
+ rejected same-named tables in different hierarchy. Thanks to Boris.
+
+2004-05-31 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDiffLoader.cs : Added some Skip() that is required not to go to
+ infinite loop. Thanks to Boris for this fix.
+
+2004-05-31 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataInferenceLoader.cs : XmlSchema elements should not be infered.
+ Thanks to Boris for this fix.
+
+2004-05-30 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataTable.cs : serialization .ctor() should use XmlReadMode.DiffGram
+ for ReadXml(). Thanks to Boris.
+
+2004-05-27 Boris Kirzner <borisk@mainsoft.com>
+ * DataRow.cs :
+ - CheckReadOnlyStatus : use typed (and faster comparing).
+ - EndEdit : bug fix - do not dispose record if it holds original version.
+ - SetValuesFromDataRecord : Take care about autoincrement columns.
+
+
+2004-05-27 Atsushi Enomoto <atsushi@ximian.com>
+
+ * MergeManager.cs : don't output debug message to Console.
+
+2004-05-27 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataInferenceLoader.cs : Namespace are not imported to the table
+ structure. Thanks to Boris Kirzner for the fix.
+
+2004-05-27 Umadevi S <sumadevi@novell.com>
+ * DataRelationCollection.cs - fixed nunit test errors
+
+2004-05-27 Umadevi S <sumadevi@novell.com>
+ * DataTableCollection.cs - fixed nunit test errors
+
+2004-05-21 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataColumnCollection.cs : NullReferenceException was thrown when
+ the table was not found.
+ * DataRowCollection.cs :
+ Find() just returns null for null value under MS.NET 1.1.
+ RemoveAt() should also avoid to call AcceptChanges() like Remove().
+ * UniqueConstraint.cs : in AssertConstraint() throw ConstraintException
+ directly under MS.NET (for nunit test).
+
+2004-05-21 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs : Setting startindex in LastIndexOf()
+ caused problem on qualified name to get schema Field name.
+
+2004-05-21 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataReader.cs : Now data reader is namespace aware in all places.
+ When table's namespace is different, it entered to infinite loop.
+
+2004-05-19 Boris Kirzner <borisk@mainsoft.com>
+ * MergeManager.cs : AdjustSchema now updates by reference new created table,
+ so in Merge you do not need to lookup for it (were unable to do this for unnamed tables).
+ Code styling.
+
+2004-05-19 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataColumn.cs : In set_Item[int] - if autoincrement, adjust next autoincrement value.
+ * DataColumnCollection.cs : fixed parantethes.
+ * DataRow.cs :
+ - AcceptChanges : do nothing if row state is unchanged.
+ - GetChildRows, GetParentRows : bug fix (use correct index).
+ * DataRowCollection.cs : bug fix (compare all row's values).
+ * DataTable.cs : bug fix (use correct row version).
+
+2004-05-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs : xs:positiveInteger is mapped to ulong.
+ When content type is Mixed, text column is not required (it is
+ required only when the complex type has no particle).
+ "Repeated element" column is also created (considering maxOccurs=0
+ and complex content extension).
+
+2004-05-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs : XmlSchemaGroupBase was not handled
+ properly.
+
+2004-05-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs : Removed unused code and extra MonoTODO.
+ Fixed relation inference to consider attribute XPath.
+
+2004-05-19 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataColumn.cs : Fixed set_Item[int]. Convert.ToInt64(DBNull.Value)
+ always fails.
+
+2004-05-19 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataColumn.cs - removed default member attribute.
+
+2004-05-19 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataColumn.cs,
+ DataColumnChangeEventArgs.cs,
+ DataColumnCollection.cs,
+ DataRow.cs,
+ DataRowCollection.cs,
+ DataTable.cs,
+ Index.cs : Data storage in the row is redesigned. Now data is stored in
+ typed containers inside DataColumn. Row holds its versions as indexes inside
+ each of data container, accessed through the row that holds it.
+
+2004-05-19 Boris Kirzner <borisk@mainsoft.com>
+
+ * UniqueConstraint.cs - added comment.
+
+2004-05-19 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataInferenceLoader.cs : Don't add already-existing DataTable to
+ DataSet.
+
+2004-05-17 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs,
+ XmlDataInferenceLoader.cs,
+ XmlDataReader.cs,
+ XmlSchemaDataImporter.cs : XmlDecode every local name to read and
+ XmlEncode every local name to write. This should fix bug #58268.
+
+2004-05-17 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : Implemented ignored namespaces in InferXmlSchema().
+ Supported repeated elements. Removed MonoTODOs.
+ * XmlDataInferenceLoader.cs : Design change to support ignored
+ namespace and repeated elements.
+ * XmlSchemaDataImporter.cs : Added mapping support classes.
+
+2004-05-15 Atsushi Enomoto <atsushi@ximian.com>
+
+ * CustomDataClassGenerator.cs :
+ Added property parent "[foo]Row" and children "Get[foo]Row" support
+ for custom DataRow classes.
+ Fixed DataColumn property accessibility (public --> internal).
+
+2004-05-14 Atsushi Enomoto <atsushi@ximian.com>
+
+ * CustomDataClassGenerator.cs :
+ - Put classes inside custom DataSet class.
+ - Added automatic DataRelation creation support.
+ - Added Constraints creation support. That is done separate from
+ relations, since they might be independently created.
+ - Added non-MS public DataRelation fields.
+ - Removed extraneous "DataRelation type generation" code.
+ - Fixed custom_dataset.Initialize() not to create "c" field that
+ was created more than once.
+ - Implemented AddxxxRow() that takes parameters for every column.
+
+2004-05-14 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs : When primary key is used more than once,
+ DataRelation borked because of empty parent column name.
+
+2004-05-14 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs : When Creating constraints with related
+ to DataRelation creation, also set PrimaryKey to the parent table.
+
+2004-05-14 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs :
+ Design change to add indirect table and relation structures.
+ Support for "relation" annotation for local element.
+ Support for repeatable simple element column (maxOccurs > 1).
+ Fixed handling of Nested property on DataRelation (for globally
+ annotated relation, Nested is false).
+
+2004-05-13 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataRow.cs : Added DataElement property to avoid storing every row-
+ element mapping. It stored even for nodes that should be removed.
+
+2004-05-13 Umadevi S <sumadevi@novell.com>
+
+ * RelationshipConverter.cs - Stubbed this class
+ * DataRelation.cs - added TypeConveterAttribute
+
+2004-05-13 Umadevi S <sumadevi@novell.com>
+
+ * DataColumnCollection.cs - Added ResDescriptionAttribute
+ * DataRelation.cs - Added TypeConverterAttribute
+ * DataRelationCollection.cs - Added DefaultPropertyAttribute
+ * DataRowView.cs - Added GetHashCode method with a TODO tag
+ * DataSet.cs - Added DesignerAttribute
+ * DataView.cs - Added DesignerAttribute
+ * DataViewManager.cs - Added DesignerAttribute
+ * DataViewSetting.cs - Added TypeConverterAttribute
+
+2004-05-12 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataRow.cs : Added XmlDataElement initialization code.
+
+2004-05-11 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataInferenceLoader.cs :
+ It now requires XmlDocument as input. Improved identification of
+ DataSet element. Removed extra lines.
+ Moved boresome design notes to bottom of the source and
+ added standalone runnable driver (not included on build).
+ * DataSet.cs :
+ Update with related to the change above.
+ WriteXml() should call Flush() after writing. This fixes bug #58327.
+ * XmlSchemaDataImporter.cs :
+ Improved indentification of DataSet element.
+
+2004-05-11 Gert Driesen (drieseng@users.sourceforge.net)
+ * DataTable: marked initStatus enum internal
+
+2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
+ * DataTable.cs: removed TypeConverterAttribute, marked RowsExist
+ methods internal
+ * DataRowView.cs: removed extra Error property
+ * DataRow.cs: reduced accessibility of CollectionChanged method
+ to private
+ * DataColumnPropertyDescriptor.cs: made class internal
+ * DataColumn.cs: removed extra TypeConvertorAttribute
+ * ConstrainCollection.cs: marked PostEndInit method internal
+
+2004-05-07 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs :
+ In WriteXmlSchema(), when complex type contains simple type content
+ attributes must not added to XmlSchemaComplexType directly. It
+ causes schema compilation error.
+ DataRelation should not be output when related columns are hidden.
+
+2004-05-07 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataInferenceReader.cs : Added. It does InferXmlSchema() (it is
+ also expected to do ReadXml(), but I will remove that feature and
+ support column reordering).
+ * XmlSchemaDataImporter.cs : Always initialize dataset name.
+ Always set Nested and primary key for parent table.
+ * XmlDataReader.cs : Now it is used.
+ Top level element might not match to dataset name nor any table
+ name, but still possible to read content tables.
+ Handle empty element correctly in some places.
+ Handle Fragment mode (read up XmlReader to the end).
+ * DataSet.cs : Modified InferXmlSchema() and ReadXml() to use
+ XmlDataInferenceLoader and XmlDataReader.
+
+2004-05-06 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs :
+ Eliminated CRLF injection.
+ More clear message in Clear().
+ Updates reflecting XmlSchemaDataImporter change.
+ Added duplicate check for XmlSerializerNamespaces in BuildSchema().
+ Don't use xmlns attribute for UnhandledAttributes (its not mandatory
+ but that depends on different behavior from ms.net).
+ Set locale also for DataTable.
+ Add xs:element only when target namespace matches to the
+ element's namespace. Otherwise, add xs:import for external namespace.
+ Put xs:sequence for dataset element's particle _only when_ actual
+ contents exist.
+
+2004-05-06 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlDataReader.cs : Added. This class will work better when our
+ schema inference and schema read engine gets improved. (It contains
+ standalone testable Driver class.)
+
+2004-05-06 Atsushi Enomoto <atsushi@ximian.com>
+
+ * ForeignKeyConstraint.cs : Check step change. Existence then column
+ validity. just for tests.
+ * XmlSchemaDataImporter.cs : code simplification. reduced extraneous
+ fields.
+
+2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DataSet.cs : Ignore empty content only when output type is diffgram.
+
+2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
+
+ * CustomDataClassGenerator.cs : Modified that DataSet contains each
+ DataTable field so that each table property can access them directly.
+ (plus, modified standalone code driver code: shouldn't affect)
+
+2004-05-05 Boris Kirzner <borisk@mainsoft.com>
+
+ * DataView.cs , DataRowView.cs : Added implementation to basic methods and properties.
+
+2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaDataImporter.cs :
+ SimpleContent column support.
+ Annotated relation support.
+ Top-level element is counted only when its type is complex.
+ xs:anyType is no longer treated as complex type.
+ dataset existence is mandatory now.
+ Improved DataType and DefaultValue support.
+ Attribute namespace is properly handled now.
+ Prohibited attribute is now treated as hidden column.
+ Reject list or union simple type.
+
+ Still incomplete 1) to read relationship in some cases, 2) to
+ determine whether an element is dataset or table, 3) thus to
+ exclude extraneous column, 4) to remove extraneous *_Id column.
+
2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
* DataTable.cs :