Compartir a través de


Resumen del proceso de inferencia de esquemas de DataSet

El proceso de inferencia determina en primer lugar, a partir del documento XML, qué elementos se inferirán como tablas. A partir del XML restante, el proceso de inferencia determina las columnas para dichas tablas. En el caso de las tablas anidadas, el proceso de inferencia genera objetos DataRelation y ForeignKeyConstraint anidados.

A continuación se resumen brevemente las reglas de inferencia:

  • Los elementos que tienen atributos se deducen como tablas.
  • Los elementos que tienen elementos secundarios se deducen como tablas.
  • Los elementos que se repiten se deducen como una única tabla.
  • Si el elemento de documento, o raíz, no tiene atributos y ningún elemento secundario se inferiría como una columna, se deducirá como un DataSet. De lo contrario, el elemento de documento se deducirá como una tabla.
  • Los atributos se deducen como columnas.
  • Los elementos que no tienen atributos o elementos secundarios, y que no se repiten, se deducen como columnas.
  • Para los elementos que se deducen como tablas y que están anidados dentro de otros elementos que también se deducen como tablas, se crea una DataRelation anidada entre las dos tablas. Se agrega a ambas tablas una nueva columna de clave principal denominada "TableName_Id", que la DataRelation utiliza. Se crea una ForeignKeyConstraint entre las dos tablas mediante la columna "TableName_Id".
  • Para los elementos que se deducen como tablas y que contienen texto pero que no tienen elementos secundarios, se crea una columna nueva denominada "TableName_Text" para el texto de cada uno de los elementos. Si un elemento se deduce como una tabla y tiene texto, pero también tiene elementos secundarios, se pasa por alto el texto.

Vea también

Deducir la estructura relacional de DataSet de XML | Cargar DataSet desde XML | Cargar la información de esquema de DataSet desde XML | XML y DataSet | Crear y utilizar DataSets