public void TestAnnotatedRelation1()
{
var ds = new DataSet();
ds.ReadXmlSchema(new StringReader(
@"<xs:schema xmlns="""" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:msdata=""urn:schemas-microsoft-com:xml-msdata"">
<xs:element name=""root"" msdata:IsDataSet=""true"">
<xs:complexType>
<xs:choice maxOccurs=""unbounded"">
<xs:element name=""p"">
<xs:complexType>
<xs:sequence>
<xs:element name=""pk"" type=""xs:string"" />
<xs:element name=""name"" type=""xs:string"" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name=""c"">
<xs:complexType>
<xs:sequence>
<xs:element name=""fk"" type=""xs:string"" />
<xs:element name=""count"" type=""xs:int"" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:annotation>
<xs:appinfo>
<msdata:Relationship name=""rel""
msdata:parent=""p""
msdata:child=""c""
msdata:parentkey=""pk""
msdata:childkey=""fk""/>
</xs:appinfo>
</xs:annotation>
</xs:schema>"));
AssertDataSet("101", ds, "root", 2, 1);
DataTable dt = ds.Tables[0];
AssertDataTable("parent_table", dt, "p", 2, 0, 0, 1, 0, 0);
AssertDataColumn("pk", dt.Columns[0], "pk", false, false, 0, 1, "pk", MappingType.Element, typeof(string), DBNull.Value, string.Empty, -1, string.Empty, 0, string.Empty, false, false);
dt = ds.Tables[1];
AssertDataTable("child_table", dt, "c", 2, 0, 1, 0, 0, 0);
AssertDataColumn("fk", dt.Columns[0], "fk", false, false, 0, 1, "fk", MappingType.Element, typeof(string), DBNull.Value, string.Empty, -1, string.Empty, 0, string.Empty, false, false);
AssertDataRelation("rel", ds.Relations[0], "rel", false, new string[] { "pk" }, new string[] { "fk" }, false, false);
}