Origine XMLXML Source

L'origine XML legge un file di dati XML e popola con tali dati le colonne nell'output dell'origine.The XML source reads an XML data file and populates the columns in the source output with the data.

Nei file XML i dati includono spesso relazioni gerarchiche.The data in XML files frequently includes hierarchical relationships. Un file di dati XML può ad esempio rappresentare cataloghi e articoli di catalogo.For example, an XML data file can represent catalogs and items in catalogs. Prima di immettere i dati nel flusso di dati è necessario determinare le relazioni tra gli elementi del file di dati XML e generare un output per ogni elemento del file.Before the data can enter the data flow, the relationship of the elements in XML data file must be determined, and an output must be generated for each element in the file.

SchemiSchemas

Per interpretare i dati XML, l'origine XML utilizza uno schema.The XML source uses a schema to interpret the XML data. L'origine XML supporta l'utilizzo di un file XSD (XML Schema Definition) o di schemi inline per la conversione dei dati in formato tabulare.The XML source supports use of a XML Schema Definition (XSD) file or inline schemas to translate the XML data into a tabular format. Se si configura l'origine XML tramite la finestra di dialogo Editor origine XML , l'interfaccia utente può generare un file XSD dal file di dati XML specificato.If you configure the XML source by using the XML Source Editor dialog box, the user interface can generate an XSD from the specified XML data file.

Nota

I DTD non sono supportati.DTDs are not supported.

Gli schemi possono supportare un solo spazio dei nomi. Le raccolte di schemi non sono supportate.The schemas can support a single namespace only; they do not support schema collections.

Nota

L'origine XML non convalida i dati nel file XML rispetto al file XSD.The XML source does not validate the data in the XML file against the XSD.

Editor origine XMLXML Source Editor

Nei file XML i dati includono spesso relazioni gerarchiche.The data in the XML files frequently includes hierarchical relationships. La finestra di dialogo Editor origine XML usa lo schema specificato per generare gli output dell'origine XML.The XML Source Editor dialog box uses the specified schema to generate the XML source outputs. È possibile specificare un file XSD, utilizzare uno schema inline oppure generare un file XSD dal file di dati XML specificato.You can specify an XSD file, use an inline schema, or generate an XSD from the specified XML data file. Lo schema deve essere disponibile in fase di progettazione.The schema must be available at design time.

L'origine XML genera strutture tabulari dai dati XML creando un output per ogni elemento del file XML che contiene altri elementi.The XML source generates tabular structures from the XML data by creating an output for every element that contains other elements in the XML files. Se ad esempio i dati XML rappresentano cataloghi e articoli di catalogo, l'origine XML creerà un output per i cataloghi e uno per ogni tipo di articolo contenuto nei cataloghi.For example, if the XML data represents catalogs and items in catalogs, the XML source creates an output for catalogs and an output for each type of item that the catalogs contain. L'output di ogni articolo conterrà colonne di output per gli attributi dell'articolo.The output of each item will contain output columns for the attributes of that item.

Per fornire informazioni sulle relazioni gerarchiche dei dati negli output, l'origine XML aggiunge agli output una colonna che identifica l'elemento padre di ogni elemento figlio.To provide information about the hierarchical relationship of the data in the outputs, the XML source adds a column in the outputs that identifies the parent element for each child element. Se nell'esempio dei cataloghi sono presenti diversi tipi di articoli, a ogni articolo corrisponderà un valore di colonna che identifica il catalogo a cui appartiene.Using the example of catalogs with different types of items, each item would have a column value that identifies the catalog to which it belongs.

L'origine XML crea un output per ogni elemento, ma non è necessario utilizzare tutti gli output.The XML source creates an output for every element, but it is not required that you use all the outputs. È possibile eliminare qualsiasi output che non si desidera utilizzare o semplicemente evitare di connetterlo a un componente a valle.You can delete any output that you do not want to use, or just not connect it to a downstream component.

L'origine XML genera inoltre i nomi degli output, per garantire l'utilizzo di nomi univoci.The XML source also generates the output names, to ensure that the names are unambiguous. Tali nomi possono essere tuttavia troppo lunghi e non identificare gli output in modo utile all'utente.These names may be long and may not identify the outputs in a way that is useful to you. È possibile rinominare gli output, purché i nomi rimangano univoci.You can rename the outputs, as long as their names remain unique. È inoltre possibile modificare il tipo di dati e la lunghezza delle colonne di output.You can also modify the data type and the length of output columns.

L'origine XML aggiunge un output degli errori per ogni output.For every output, the XML source adds an error output. Per impostazione predefinita le colonne negli output degli errori hanno tipo di dati stringa Unicode (DT_WSTR) e lunghezza 255, ma è possibile configurarle modificandone il tipo di dati e la lunghezza.By default the columns in error outputs have Unicode string data type (DT_WSTR) with a length of 255, but you can configure the columns in the error outputs by modifying their data type and length.

Se il file di dati XML contiene elementi non presenti nel file XSD, tali elementi verranno ignorati e non verrà generato alcun output corrispondente.If the XML data file contains elements that are not in the XSD, these elements are ignored and no output is generated for them. Se viceversa nel file di dati XML mancano elementi che sono rappresentati nel file XSD, l'output conterrà colonne con valori Null.On the other hand, if the XML data file is missing elements that are represented in the XSD, the output will contain columns with null values.

I dati estratti dal file di dati XML vengono convertiti in un tipo di dati Integration ServicesIntegration Services .When the data is extracted from the XML data file, it is converted to an Integration ServicesIntegration Services data type. Tuttavia, l'origine XML non è in grado di convertire i dati XML nei tipi di dati DT_TIME2 o DT_DBTIMESTAMP2, in quanto l'origine non supporta tali tipi di dati.However, the XML source cannot convert the XML data to the DT_TIME2 or DT_DBTIMESTAMP2 data types because the source does not support these data types. Per altre informazioni, vedere Tipi di dati di Integration Services.For more information, see Integration Services Data Types.

Lo schema inline o XSD può specificare il tipo di dati per gli elementi ma, in caso contrario, la finestra di dialogo Editor origine XML assegna il tipo di dati stringa Unicode (DT_WSTR) alla colonna dell'output che contiene l'elemento e imposta la lunghezza della colonna su 255 caratteri.The XSD or inline schema may specify the data type for elements, but if it does not, the XML Source Editor dialog box assigns the Unicode string data type (DT_WSTR) to the column in the output that contains the element, and sets the column length to 255 characters.

L'eventuale valore specificato nello schema relativo alla lunghezza massima di un elemento viene applicato alla lunghezza della colonna di output.If the schema specifies the maximum length of an element, the length of output column is set to this value. Se la lunghezza massima è maggiore di quella supportata dal tipo di dati di Integration ServicesIntegration Services in cui l'elemento viene convertito, i dati vengono troncati al raggiungimento della lunghezza massima del tipo di dati.If the maximum length is greater than the length supported by the Integration ServicesIntegration Services data type to which the element is converted, then the data is truncated to the maximum length of the data type. Se ad esempio la lunghezza di una stringa è 5000, la stringa verrà troncata a 4000 caratteri poiché tale è la lunghezza massima del tipo di dati DT_WSTR. Analogamente, i dati byte vengono troncati a 8000 caratteri, ovvero la lunghezza massima del tipo di dati DT_BYTES.For example, if a string has a length of 5000, it is truncated to 4000 characters because the maximum length of the DT_WSTR data type is 4000 characters; likewise, byte data is truncated to 8000 characters, the maximum length of the DT_BYTES data type. Se nello schema non è specificata una lunghezza massima, la lunghezza predefinita delle colonne con qualsiasi tipo di dati è impostata su 255.If the schema specifies no maximum length, the default length of columns with either data type is set to 255. Il troncamento dei dati nell'origine XML viene gestito con la stessa modalità di troncamento utilizzata in altri componenti del flusso di dati.Data truncation in the XML source is handled the same way as truncation in other data flow components. Per altre informazioni, vedere Gestione degli errori nei dati.For more information, see Error Handling in Data.

È possibile modificare sia il tipo di dati sia la lunghezza della colonna.You can modify the data type and the column length. Per altre informazioni, vedere Tipi di dati di Integration Services.For more information, see Integration Services Data Types.

Configurazione dell'origine XMLConfiguration of the XML Source

L'origine XML supporta tre diverse modalità di accesso ai dati.The XML source supports three different data access modes. è possibile specificare il percorso del file di dati XML, la variabile che contiene il percorso del file oppure la variabile che contiene i dati XML.You can specify the file location of the XML data file, the variable that contains the file location, or the variable that contains the XML data.

L'origine XML include le proprietà personalizzate XMLData e XMLSchemaDefinition, che possono essere aggiornate da espressioni di proprietà al caricamento del pacchetto.The XML source includes the XMLData and XMLSchemaDefinition custom properties that can be updated by property expressions when the package is loaded. Per altre informazioni, vedere Espressioni di Integration Services (SSIS), Utilizzo delle espressioni di proprietà nei pacchetti e Proprietà personalizzate dell'origine XML.For more information, see Integration Services (SSIS) Expressions, Use Property Expressions in Packages, and XML Source Custom Properties.

L'origine XML supporta più output regolari e più output degli errori.The XML source supports multiple regular outputs and multiple error outputs.

SQL ServerSQL Server Integration ServicesIntegration Services include la finestra di dialogo Editor origine XMLper la configurazione dell'origine XML. Integration ServicesIntegration Services includes the XML Source Editor dialog box for configuring the XML source. Questa finestra di dialogo è disponibile in Progettazione SSISSSIS .This dialog box is available in SSISSSIS Designer.

È possibile impostare le proprietà tramite Progettazione SSISSSIS o a livello di codice.You can set properties through SSISSSIS Designer or programmatically.

Per altre informazioni sulle proprietà che è possibile impostare nella finestra di dialogo Editor origine XML , fare clic su uno degli argomenti seguenti:For more information about the properties that you can set in the XML Source Editor dialog box, click one of the following topics:

Estrarre i dati tramite l'origine XMLExtract Data by Using the XML Source