Compartilhar via


Limitações de inferência

O processo de inferir um esquema DataSet de XML pode resultar em esquemas diferentes, dependendo dos elementos XML em cada documento. Por exemplo, considere os seguintes documentos XML.

Document1:

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

Document2:

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

Para "Document1", o processo de inferência produz um Conjunto de Dados chamado "DocumentElement" e uma tabela chamada "Element1", porque "Element1" é um elemento repetido.

DataSet: DocumentElement

Tabela: Element1

Element1_Text
Text1
Text2

No entanto, para "Document2", o processo de inferência produz um Conjunto de Dados chamado "NewDataSet" e uma tabela chamada "DocumentElement". "Element1" é inferido como uma coluna porque não tem atributos nem elementos filho.

DataSet: NewDataSet

Tabela: DocumentElement

Element1
Text1

Esses dois documentos XML podem ter sido destinados a produzir o mesmo esquema, mas o processo de inferência produz resultados muito diferentes com base nos elementos contidos em cada documento.

Para evitar as discrepâncias que podem ocorrer ao gerar esquema de um documento XML, recomendamos que você especifique explicitamente um esquema usando XSD (linguagem de definição de esquema XML) ou XDR (Dados XML reduzidos) ao carregar um Conjunto de Dados de XML. Para obter mais informações sobre como especificar explicitamente um esquema Conjunto de dados com esquema XML, consulte Derivação da estrutura relacional do conjunto de dados a partir do esquema XML (XSD).

Confira também