Compartir a través de


Resumen del proceso de inferencia del esquema 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.

El siguiente es un breve resumen de 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 no se deduciría ningún elemento secundario como una columna, se deduce 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 anidadas 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.

Consulte también