次の方法で共有


テーブルの推論 (ADO.NET)

XML ドキュメントから DataSet のスキーマを推論するときには、ADO.NET では、テーブルを表す XML 要素を最初に決定します。 次に示すいくつかの XML 構造は、DataSet スキーマのテーブルとして推論されます。

  • 属性を持つ要素

  • 子要素を持つ要素

  • 繰り返し出現する要素

属性を持つ要素

要素に属性が指定されている場合は、それらの要素はテーブルとして推論されます。 たとえば、次のような XML があるとします。

<DocumentElement>
  <Element1 attr1="value1"/>
  <Element1 attr1="value2">Text1</Element1>
</DocumentElement>

推論プロセスにより、"Element1" という名前のテーブルが生成されます。

DataSet: DocumentElement

Table: Element1

attr1

Element1_Text

value1

   

value2

Text1

子要素を持つ要素

子要素を持つ要素は、テーブルとして推論されます。 たとえば、次のような XML があるとします。

<DocumentElement>
  <Element1>
    <ChildElement1>Text1</ChildElement1>
  </Element1>
</DocumentElement>

推論プロセスにより、"Element1" という名前のテーブルが生成されます。

DataSet: DocumentElement

Table: Element1

ChildElement1

Text1

ドキュメント (ルート) 要素に属性または子要素があり、それらが列として推論される場合には、そのドキュメント要素はテーブルとして推論されます。 ドキュメント要素の属性や子要素が列として推論されない場合には、そのドキュメント要素は DataSet として推論されます。 たとえば、次のような XML があるとします。

<DocumentElement>
  <Element1>Text1</Element1>
  <Element2>Text2</Element2>
</DocumentElement>

推論プロセスにより、"DocumentElement" という名前のテーブルが生成されます。

DataSet: NewDataSet

Table: DocumentElement

Element1

Element2

Text1

Text2

または、次のような XML があるとします。

<DocumentElement>
  <Element1 attr1="value1" attr2="value2"/>
</DocumentElement>

推論プロセスにより、"Element1" という名前のテーブルを含む "DocumentElement" という名前の DataSet が生成されます。

DataSet: DocumentElement

Table: Element1

attr1

attr2

value1

value2

繰り返し出現する要素

繰り返し出現する要素は、単一のテーブルとして推論されます。 たとえば、次のような XML があるとします。

<DocumentElement>
  <Element1>Text1</Element1>
  <Element1>Text2</Element1>
</DocumentElement>

推論プロセスにより、"Element1" という名前のテーブルが生成されます。

DataSet: DocumentElement

Table: Element1

Element1_Text

Text1

Text2

参照

概念

XML からの DataSet の読み込み (ADO.NET)

XML の DataSet スキーマ情報の読み込み (ADO.NET)

その他の技術情報

XML からの DataSet リレーショナル構造の推論 (ADO.NET)

DataSet での XML の使用 (ADO.NET)

DataSets、DataTables、および DataViews (ADO.NET)