public void InferXmlSchema_inferringColumns1()
{
//ms-help://MS.MSDNQTR.2003FEB.1033/cpguide/html/cpconinferringcolumns.htm
// inferringColumns1
StringBuilder sb = new StringBuilder();
sb.Append("<DocumentElement>");
sb.Append("<Element1 attr1='value1' attr2='value2'/>");
sb.Append("</DocumentElement>");
var ds = new DataSet();
MemoryStream myStream = new MemoryStream(new ASCIIEncoding().GetBytes(sb.ToString()));
ds.InferXmlSchema(myStream, null);
Assert.Equal("DocumentElement", ds.DataSetName);
Assert.Equal("Element1", ds.Tables[0].TableName);
Assert.Equal(1, ds.Tables.Count);
Assert.Equal("attr1", ds.Tables[0].Columns["attr1"].ColumnName);
Assert.Equal("attr2", ds.Tables[0].Columns["attr2"].ColumnName);
Assert.Equal(MappingType.Attribute, ds.Tables[0].Columns["attr1"].ColumnMapping);
Assert.Equal(MappingType.Attribute, ds.Tables[0].Columns["attr2"].ColumnMapping);
Assert.Equal(typeof(string), ds.Tables[0].Columns["attr1"].DataType);
Assert.Equal(typeof(string), ds.Tables[0].Columns["attr2"].DataType);
}