Inférence des tables
Lors de l'inférence du schéma d'un DataSet à partir d'un document XML, ADO.NET identifie d'abord les éléments XML qui représentent des tables. Les structures XML suivantes donneront une table pour le schéma du DataSet.
Éléments avec attributs
Les éléments contenant des attributs spécifiés donneront des tables déduites. Examinons, par exemple, le code XML suivant :
<DocumentElement>
<Element1 attr1="value1"/>
<Element1 attr1="value2">Text1</Element1>
</DocumentElement>
Le processus d'inférence produira une table nommée « Element1 ».
DataSet : DocumentElement
Table : Element1
attr1 | Element1_Text |
---|---|
value1 | |
value2 | Text1 |
Éléments avec éléments enfants
Les éléments possédant des éléments enfants donneront des tables déduites. Examinons, par exemple, le code XML suivant :
<DocumentElement>
<Element1>
<ChildElement1>Text1</ChildElement1>
</Element1>
</DocumentElement>
Le processus d'inférence produira une table nommée « Element1 ».
DataSet : DocumentElement
Table : Element1
ChildElement1 |
---|
Text1 |
L'élément document, ou racine, donnera une table déduite s'il comporte des attributs ou des éléments enfants qui seront déduits en tant que colonnes. Si l'élément document ne comporte pas d'attributs et pas d'éléments enfants qui seraient déduits en tant que colonnes, il sera déduit en tant que DataSet. Examinons, par exemple, le code XML suivant :
<DocumentElement>
<Element1>Text1</Element1>
<Element2>Text2</Element2>
</DocumentElement>
Le processus d'inférence produira une table nommée « DocumentElement ».
DataSet : NewDataSet
Table : DocumentElement
Element1 | Element1 |
---|---|
Text1 | Text2 |
Examinons également le code XML suivant :
<DocumentElement>
<Element1 attr1="value1" attr2="value2"/>
</DocumentElement>
Le processus d'inférence produira un DataSet nommé « DocumentElement » contenant une table nommée « Element1 ».
DataSet : DocumentElement
Table : Element1
attr1 | attr2 |
---|---|
value1 | value2 |
Éléments qui se répètent
Les éléments qui se répètent donneront une seule table déduite. Examinons, par exemple, le code XML suivant :
<DocumentElement>
<Element1>Text1</Element1>
<Element1>Text2</Element1>
</DocumentElement>
Le processus d'inférence produira une table nommée « Element1 ».
DataSet : DocumentElement
Table : Element1
Element1_Text |
---|
Text1 |
Text2 |
Voir aussi
Inférence de la structure relationnelle d'un DataSet à partir de XML | Chargement d'un DataSet à partir de XML | Chargement des informations de schéma d'un DataSet à partir de XML | XML et le DataSet | Création et utilisation de DataSets