Delen via


XML-bron

van toepassing op:SQL Server SSIS Integration Runtime in Azure Data Factory

De XML-bron leest een XML-gegevensbestand en vult de kolommen in de bronuitvoer met de gegevens.

De gegevens in XML-bestanden bevatten vaak hiërarchische relaties. Een XML-gegevensbestand kan bijvoorbeeld catalogi en items in catalogi vertegenwoordigen. Voordat de gegevens de gegevensstroom kunnen invoeren, moet de relatie van de elementen in het XML-gegevensbestand worden bepaald en moet er een uitvoer worden gegenereerd voor elk element in het bestand.

Schemas

De XML-bron maakt gebruik van een schema om de XML-gegevens te interpreteren. De XML-bron ondersteunt het gebruik van een XSD-bestand (XML Schema Definition) of inlineschema's om de XML-gegevens te vertalen in een tabelindeling. Als u de XML-bron configureert met behulp van de XML-broneditor dialoogvenster, kan de gebruikersinterface een XSD genereren op basis van het opgegeven XML-gegevensbestand.

Notitie

DTD's worden niet ondersteund.

De schema's kunnen alleen één naamruimte ondersteunen; ze bieden geen ondersteuning voor schemaverzamelingen.

Notitie

De XML-bron valideert de gegevens in het XML-bestand niet op basis van de XSD.

XML-broneditor

De gegevens in de XML-bestanden bevatten vaak hiërarchische relaties. In het dialoogvenster XML-broneditor wordt het opgegeven schema gebruikt om de XML-bronuitvoer te genereren. U kunt een XSD-bestand opgeven, een inlineschema gebruiken of een XSD genereren op basis van het opgegeven XML-gegevensbestand. Het schema moet beschikbaar zijn op het ontwerptijd.

De XML-bron genereert tabellaire structuren van de XML-gegevens door een uitvoer te maken voor elk element dat andere elementen in de XML-bestanden bevat. Als de XML-gegevens bijvoorbeeld catalogi en items in catalogi vertegenwoordigen, maakt de XML-bron een uitvoer voor catalogi en een uitvoer voor elk type item dat de catalogi bevatten. De uitvoer van elk item bevat uitvoerkolommen voor de kenmerken van dat item.

Voor informatie over de hiërarchische relatie van de gegevens in de uitvoer voegt de XML-bron een kolom toe in de uitvoer die het bovenliggende element voor elk onderliggend element identificeert. Met behulp van het voorbeeld van catalogi met verschillende typen items heeft elk item een kolomwaarde die de catalogus identificeert waartoe het behoort.

De XML-bron maakt een uitvoer voor elk element, maar is niet vereist dat u alle uitvoer gebruikt. U kunt alle uitvoer die u niet wilt gebruiken, verwijderen of alleen geen verbinding maken met een downstreamonderdeel.

De XML-bron genereert ook de uitvoernamen om ervoor te zorgen dat de namen ondubbelzinnig zijn. Deze namen kunnen lang zijn en kunnen de uitvoer niet identificeren op een manier die nuttig is voor u. U kunt de naam van de uitvoer wijzigen, zolang de namen uniek blijven. U kunt ook het gegevenstype en de lengte van de uitvoerkolommen wijzigen.

Voor elke uitvoer voegt de XML-bron een foutuitvoer toe. Standaard hebben de kolommen in foutuitvoer unicode-tekenreeksgegevenstype (DT_WSTR) met een lengte van 255, maar u kunt de kolommen in de foutuitvoer configureren door het gegevenstype en de lengte ervan te wijzigen.

Als het XML-gegevensbestand elementen bevat die zich niet in de XSD bevinden, worden deze elementen genegeerd en wordt er geen uitvoer gegenereerd. Als het XML-gegevensbestand echter elementen mist die worden weergegeven in de XSD, bevat de uitvoer kolommen met null-waarden.

Wanneer de gegevens uit het XML-gegevensbestand worden geëxtraheerd, worden deze geconverteerd naar een gegevenstype Integration Services. De XML-bron kan de XML-gegevens echter niet converteren naar de DT_TIME2 of DT_DBTIMESTAMP2 gegevenstypen omdat de bron deze gegevenstypen niet ondersteunt. Zie Integration Services-gegevenstypenvoor meer informatie.

Het XSD- of inlineschema kan het gegevenstype voor elementen opgeven, maar als dat niet het geval is, wijst de XML-broneditor dialoogvenster het gegevenstype Unicode-tekenreeks (DT_WSTR) toe aan de kolom in de uitvoer die het element bevat en stelt de kolomlengte in op 255 tekens.

Als het schema de maximumlengte van een element aangeeft, wordt de lengte van de uitvoerkolom ingesteld op deze waarde. Als de maximale lengte groter is dan de lengte die wordt ondersteund door het gegevenstype Integration Services waarnaar het element wordt geconverteerd, worden de gegevens afgekapt tot de maximale lengte van het gegevenstype. Als een tekenreeks bijvoorbeeld een lengte van 5000 heeft, wordt deze afgekapt tot 4000 tekens, omdat de maximale lengte van het gegevenstype DT_WSTR 4000 tekens is; bytegegevens worden eveneens afgekapt tot 8000 tekens, de maximale lengte van het DT_BYTES gegevenstype. Als het schema geen maximale lengte aangeeft, wordt de standaardlengte van kolommen met een van beide gegevenstypen ingesteld op 255. Afkapping van gegevens in de XML-bron wordt op dezelfde manier verwerkt als afkapping in andere onderdelen van de gegevensstroom. Zie Foutafhandeling in Gegevensvoor meer informatie.

U kunt het gegevenstype en de kolomlengte wijzigen. Zie Integration Services-gegevenstypenvoor meer informatie.

Configuratie van de XML-bron

De XML-bron ondersteunt drie verschillende modi voor gegevenstoegang. U kunt de bestandslocatie opgeven van het XML-gegevensbestand, de variabele die de bestandslocatie bevat of de variabele die de XML-gegevens bevat.

De XML-bron bevat de XMLData en XMLSchemaDefinition aangepaste eigenschappen die kunnen worden bijgewerkt door eigenschapsexpressies wanneer het pakket wordt geladen. Voor meer informatie, zie Integration Services (SSIS) expressies, Eigenschapsexpressies gebruiken in pakketten, en XML-bron aangepaste eigenschappen.

De XML-bron ondersteunt meerdere reguliere uitvoer en meerdere foutuitvoer.

SQL Server Integration Services bevat het XML-broneditor dialoogvenster voor het configureren van de XML-bron. Dit dialoogvenster is beschikbaar in SSIS Designer.

U kunt eigenschappen instellen via SSIS Designer of programmatisch.

Het dialoogvenster Geavanceerde editor weerspiegelt de eigenschappen die programmatisch kunnen worden ingesteld. Klik op een van de volgende onderwerpen voor meer informatie over de eigenschappen die u kunt instellen in het dialoogvenster Geavanceerde editor of programmatisch:

Klik op een van de volgende onderwerpen voor meer informatie over het instellen van de eigenschappen:

XML-broneditor (pagina Verbindingsbeheer)

Gebruik de pagina Verbindingsbeheer van de XML-broneditor om een XML-bestand en de XSD op te geven waarmee de XML-gegevens worden getransformeerd.

Statische opties

gegevenstoegangsmodus
Geef de methode op voor het selecteren van gegevens uit de bron.

Waarde Beschrijving
LOCATIE VAN XML-bestand Gegevens ophalen uit een XML-bestand.
XML-bestand van variabele Geef de naam van het XML-bestand op in een variabele.

Gerelateerde informatie: Variabelen gebruiken in pakketten
XML-gegevens uit variabele XML-gegevens ophalen uit een variabele.

inlineschema gebruiken
Geef op of de XML-brongegevens zelf het XSD-schema bevatten waarmee de structuur en gegevens worden gedefinieerd en gevalideerd.

XSD-locatie
Typ het pad en de bestandsnaam van het XSD-schemabestand of zoek het bestand door op Bladerente klikken.

bladeren
Gebruik het dialoogvenster openen om het XSD-schemabestand te zoeken.

XSD genereren
Gebruik het dialoogvenster Opslaan als om een locatie te selecteren voor het automatisch gegenereerde XSD-schemabestand. De editor leidt het schema af uit de structuur van de XML-gegevens.

Dynamische opties voor gegevenstoegangsmodus

Gegevenstoegangsmodus = XML-bestandslocatie

XML-locatie
Typ het pad en de bestandsnaam van het XML-gegevensbestand of zoek het bestand door op Bladerente klikken.

browsen
Gebruik het dialoogvenster Openen om het XML-gegevensbestand te zoeken.

Gegevenstoegangsmodus = XML-bestand van variabele

naam van variabele
Selecteer de variabele die het pad en de bestandsnaam van het XML-bestand bevat.

Gegevenstoegangsmodus = XML-gegevens uit variabele

naam van variabele
Selecteer de variabele die de XML-gegevens bevat.

XML-broneditor (Kolommenpagina)

Gebruik het knooppunt Kolommen van het XML-bronbewerkervenster dialoogvenster om een uitvoerkolom toe te wijzen aan een externe (bron) kolom.

Opties

beschikbare externe kolommen
Bekijk de lijst met beschikbare externe kolommen in de gegevensbron. U kunt deze tabel niet gebruiken om kolommen toe te voegen of te verwijderen.

Externe kolom
Bekijk externe (bron) kolommen in de volgorde waarin de taak ze leest. U kunt deze volgorde wijzigen door eerst de geselecteerde kolommen in de tabel in de editor te wissen en vervolgens externe kolommen in de lijst in een andere volgorde te selecteren.

uitvoerkolom
Geef een unieke naam op voor elke uitvoerkolom. De standaardwaarde is de naam van de geselecteerde externe kolom (bronkolom; U kunt echter elke unieke, beschrijvende naam kiezen. De opgegeven naam wordt weergegeven in SSIS Designer.

XML-broneditor (foutuitvoerpagina)

Gebruik de pagina Foutuitvoer van het dialoogvenster XML-broneditor om opties voor foutafhandeling te selecteren en eigenschappen in te stellen voor kolommen met foutuitvoer.

Opties

invoer/uitvoer
Bekijk de naam van de gegevensbron.

kolom
Bekijk de externe kolommen die u hebt geselecteerd op de Connection Manager pagina van het dialoogvenster XML Source Editor.

Fout
Geef op wat er moet gebeuren wanneer er een fout optreedt: de fout negeren, de rij omleiden of het onderdeel mislukken.

verwante onderwerpen:foutafhandeling in gegevens

Afkapping
Geef op wat er moet gebeuren wanneer er een afkapping plaatsvindt: negeer de fout, leid de rij om, of laat het onderdeel falen.

beschrijving
Bekijk de beschrijving van de fout.

deze waarde instellen op geselecteerde cellen
Geef op wat er moet gebeuren met alle geselecteerde cellen wanneer er een fout of afkapping optreedt: negeer de fout, leid de rij om, of laat het onderdeel falen.

toepassen
Pas de foutafhandelingsoptie toe op de geselecteerde cellen.

gegevens extraheren met behulp van de XML-bron