Slutsatsdragningsbegränsningar
Processen för att härleda ett DataSet schema från XML kan resultera i olika scheman beroende på XML-elementen i varje dokument. Tänk till exempel på följande XML-dokument.
Dokument 1:
<DocumentElement>
<Element1>Text1</Element1>
<Element1>Text2</Element1>
</DocumentElement>
Dokument 2:
<DocumentElement>
<Element1>Text1</Element1>
</DocumentElement>
För "Document1" skapar slutsatsdragningsprocessen en DataSet med namnet "DocumentElement" och en tabell med namnet "Element1", eftersom "Element1" är ett upprepande element.
DataSet: DocumentElement
Tabell: Element1
Element1_Text |
---|
Text 1 |
Text 2 |
För "Document2" genererar inferensprocessen dock en DataSet med namnet "NewDataSet" och en tabell med namnet "DocumentElement". "Element1" härleds som en kolumn eftersom den inte har några attribut och inga underordnade element.
DataSet: NewDataSet
Tabell: DocumentElement
Element1 |
---|
Text 1 |
Dessa två XML-dokument kan ha varit avsedda att skapa samma schema, men slutsatsdragningsprocessen ger mycket olika resultat baserat på elementen i varje dokument.
För att undvika de avvikelser som kan uppstå vid generering av schema från ett XML-dokument rekommenderar vi att du uttryckligen anger ett schema med xml-schemadefinitionsspråk (XSD) eller XML-Data Reduced (XDR) när du läser in en DataSet från XML. Mer information om hur du uttryckligen anger ett DataSet-schema med XML-schema finns i Härleda datauppsättningens relationsstruktur från XML-schema (XSD).