Ограничения инференции

Процесс вывода DataSet схемы из XML может привести к различным схемам в зависимости от XML-элементов в каждом документе. Например, рассмотрим следующие XML-документы.

Документ1:

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

Документ2:

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

Для "Document1" процесс вывода создает DataSet, названный "DocumentElement", и таблицу, названную "Element1", так как "Element1" является повторяющимся элементом.

Набор данных: DocumentElement

Таблица: Элемент1

Элемент1_Текст
Текст1
Текст2

Однако для "Document2" процесс интерпретации создает DataSet с именем "NewDataSet" и таблицу с именем "DocumentElement." "Element1" выводится как столбец, так как у него нет атрибутов и дочерних элементов.

Набор данных: NewDataSet

Таблица: DocumentElement

Элемент1
Текст1

Эти два XML-документа, возможно, предназначены для создания одной схемы, но процесс вывода создает очень разные результаты на основе элементов, содержащихся в каждом документе.

Чтобы избежать несоответствий, которые могут возникнуть при создании схемы из XML-документа, рекомендуется явно указать схему с использованием языка XML Schema Definition (XSD) или XML-Data Reduced (XDR) при загрузке DataSet из XML. Дополнительные сведения о явном указании схемы с xml-схемой см. в разделе DataSet

См. также