[XML/MSSQL] problemen met root element voor import

Pagina: 1
Acties:
  • 103 views sinds 30-01-2008
  • Reageer

  • Klitse
  • Registratie: Oktober 2004
  • Niet online
Goedemorgen medetweakers,

Omdat Robiii een slotje op mijn vorige topic heeft geplaatst (terecht) zal ik het nogmaals proberen.

Ik zit met een klein probleempje en misschien dat jullie mij kunnen helpen:

Ik probeer een xml met meer dan 1 record te importeren in een database. Het probleem is de xml file.

Ik heb een XML file met daarin de volgende:

code:
1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="UTF-8"?>
<fr xmlns:sql="urn:schemas-microsoft-com:mapping-schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="C:\***********\*******\*********\**********\SchemaFRa.xml">

<ForetagKod>1</ForetagKod>
<FtgNamn>KPN</FtgNamn>
<FtgNr>123456</FtgNr>

</fr>


Deze is gekoppeld aan een schema file:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sql="urn:schemas-microsoft-com:mapping-schema" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:element name="fr" sql:relation="fr" sql:key-fields="ForetagKod">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="ForetagKod" default="0" sql:relation="fr" sql:field="ForetagKod" sql:datatype="smallint">
                    <xs:simpleType>
                        <xs:restriction base="xs:integer">
                            <xs:maxInclusive value="32767"/>
                            <xs:minInclusive value="-32768"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:element>
                <xs:element name="FtgNamn" nillable="true" sql:relation="fr" sql:field="FtgNamn" sql:datatype="varchar">

Enz


Deze xml kan ik doormiddel van een vb script importeren in de database tabel fr. Dit werkt prima en het vb script hoeft denk ik ook niet verder aangepast te worden.

Nu wil ik graag een xml maken met daarin meer dan 1 bedrijf.

Het moet er dus zo uit komen te zien:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?xml version="1.0" encoding="UTF-8"?>
<1 xmlns:sql="urn:schemas-microsoft-com:mapping-schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="C:\***********\*******\*********\**********\SchemaFRa.xml">

    <2>
     <ForetagKod>1</ForetagKod>
     <FtgNamn>KPN</FtgNamn>
     <FtgNr>123456</FtgNr>
    </2>
    <2>
     <ForetagKod>1</ForetagKod>
     <FtgNamn>PTT</FtgNamn>
     <FtgNr>654321</FtgNr>
    </2>
</1>


Deze moet worden gekoppeld aan dezelfde schema file.

Op de plaats van de 2 moet nu dus de fr tabel staan.
Maar nu is mijn vraag: Wat zou ik nu op de plaats van de 1 neer moeten zetten. Er is namenlijk geen bovenliggende tabel.

Ik heb geprobeerd om een ROOT element in de schema file aan te maken maar dit werkte niet.

Iemand een idee wat er op de plaats van de 1 moet staan (of waar ik zelf dit element aan moet maken)?

Bij voorbaat dank.