Attività XML
L'attività XML consente di eseguire operazioni su dati in formato XML. Tramite questa attività un pacchetto può recuperare documenti XML, applicare operazioni ai documenti utilizzando fogli di stile XSLT (Extensible Stylesheet Language Transformation) ed espressioni XPath, unire più documenti oppure convalidare, confrontare e salvare i documenti aggiornati in file e variabili.
Questa attività consente ai pacchetti di Integration Services di modificare dinamicamente documenti XML in fase di esecuzione. È possibile utilizzare l'attività XML per gli scopi seguenti:
Riformattare un documento XML. L'attività può ad esempio accedere a un report che risiede in un file XML e applicare dinamicamente un foglio di stile XSLT per personalizzare la presentazione del documento.
Selezionare sezioni di un documento XML. L'attività può ad esempio accedere a un report che risiede in un file XML e applicare dinamicamente un'espressione XPath per selezionare una sezione del documento. L'operazione può inoltre ottenere ed elaborare valori nel documento.
Unire più documenti da numerose origini. L'attività può ad esempio scaricare report da più origini e unirli dinamicamente in un documento XML riepilogativo.
È possibile includere dati XML in un flusso di dati utilizzando un'origine XML per estrarre valori da un documento XML. Per ulteriori informazioni, vedere Origine XML.
Operazioni XML
La prima azione eseguita dall'attività XML consiste nel recupero di un documento XML specifico. Tale azione è incorporata nell'attività XML e viene eseguita automaticamente. Il documento XML recuperato viene utilizzato come origine dei dati per l'operazione eseguita dall'attività XML.
Le operazioni XML Diff, Merge e Patch richiedono due operandi. Il primo operando specifica il documento XML di origine. Il secondo specifica un documento XML il cui contenuto dipende dai requisiti dell'operazione. L'operazione Diff, ad esempio, confronta due documenti. Il secondo operando specifica pertanto un altro documento XML simile, con cui confrontare il documento XML di origine.
L'attività XML può utilizzare una variabile o una gestione connessione file come origine oppure includere i dati XML in una proprietà dell'attività.
Se l'origine è una variabile, la variabile specificata conterrà il percorso del documento XML.
Se l'origine è una gestione connessione file, le informazioni sull'origine verranno fornite dalla gestione connessione file specificata, configurata separatamente, a cui viene fatto riferimento dall'attività XML. La stringa di connessione della gestione connessione file specifica il percorso del file XML. Per ulteriori informazioni, vedere Gestione connessione file.
L'attività XML può essere configurata in modo da salvare il risultato dell'operazione in una variabile o in un file. Se il risultato viene salvato in un file, l'attività XML utilizzerà una gestione connessione file per accedervi. Anche i risultati del Diffgram generato dall'operazione Diff possono essere salvati in file e variabili.
Operazioni XML predefinite
L'attività XML include un set predefinito di operazioni applicabili ai documenti XML, descritte nella tabella seguente.
Operazione |
Descrizione |
---|---|
Diff |
Confronta due documenti XML. Utilizzando il documento XML di origine come documento di base, l'operazione Diff esegue un confronto con un secondo documento XML, rileva le differenze e le scrive in un documento Diffgram in formato XML. Questa operazione include proprietà per la personalizzazione del confronto. |
Merge |
Unisce due documenti XML. Utilizzando il documento XML di origine come documento di base, l'operazione Merge aggiunge il contenuto di un secondo documento al documento di base. L'operazione può specificare una posizione di unione nel documento di base. |
Patch |
Applica l'output dell'operazione Diff, detto documento Diffgram, a un documento XML, per creare un nuovo documento padre che include il contenuto del documento Diffgram. |
Validate |
Convalida il documento XML rispetto a un file DTD (Document Type Definition) o a uno schema XSD (XML Schema Definition). |
XPath |
Esegue valutazioni e query XPath. |
XSLT |
Esegue trasformazioni XSL su documenti XML. |
Operazione Diff
L'operazione Diff può essere configurata in modo da utilizzare un algoritmo di confronto diverso a seconda che il confronto debba essere rapido o preciso. L'operazione può essere inoltre configurata in modo da selezionare automaticamente il confronto rapido o preciso, in base alle dimensioni dei documenti da confrontare.
L'operazione Diff include un set di opzioni per la personalizzazione del confronto XML, descritte nella tabella seguente.
Opzione |
Descrizione |
---|---|
IgnoreComments |
Valore che specifica se i nodi dei commenti devono essere confrontati. |
IgnoreNamespaces |
Valore che specifica se l'URI (Uniform Resource Identifier) dello spazio dei nomi di un elemento e i nomi dei suoi attributi devono essere confrontati. Se questa opzione è impostata su true, due elementi con lo stesso nome locale e spazio dei nomi diverso verranno considerati identici. |
IgnorePrefixes |
Valore che specifica se i prefissi degli elementi e i nomi degli attributi vengono confrontati. Se questa opzione è impostata su true, due elementi con lo stesso nome locale ma prefisso e URI dello spazio dei nomi diversi verranno considerati identici. |
IgnoreXMLDeclaration |
Valore che specifica se le dichiarazioni XML devono essere confrontate. |
IgnoreOrderOfChildElements |
Valore che specifica se l'ordine degli elementi figli viene confrontato. Se questa opzione è impostata su true, gli elementi figli che differiscono solo per la posizione in un elenco di elementi di pari livelli vengono considerati identici. |
IgnoreWhiteSpaces |
Valore che specifica se gli spazi devono essere confrontati. |
IgnoreProcessingInstructions |
Valore che specifica se le istruzioni di elaborazione devono essere confrontate. |
IgnoreDTD |
Valore che specifica se il DTD deve essere ignorato. |
Operazione Merge
Quando si utilizza un'istruzione XPath per identificare la posizione di unione nel documento di origine, è previsto che tale istruzione restituisca un unico nodo. Se l'istruzione restituisce più nodi, viene utilizzato solo il primo nodo. Il contenuto del secondo documento viene unito sotto il primo nodo restituito dalla query XPath.
Operazione XPath
L'operazione XPath può essere configurata in modo da utilizzare diversi tipi di funzionalità XPath.
Per implementare funzioni XPath come sum(), selezionare Valutazione.
Per restituire come frammento XML i nodi selezionati, selezionare l'opzione Elenco dei nodi.
Per restituire il valore del testo interno di tutti i nodi selezionati, concatenato in modo da formare una stringa, selezionare l'opzione Valori.
Operazione Validation
L'operazione Validate può essere configurata in modo da utilizzare un file DTD (Document Type Definition) o uno schema XSD (XML Schema Definition).
Codifica dei documenti XML
L'attività XML supporta solo l'unione di documenti Unicode. È pertanto possibile applicare l'operazione Merge solo a documenti con codifica Unicode. Se si utilizzano altre codifiche, l'attività XML non verrà completata.
[!NOTA]
Le operazioni Diff e Patch includono un'opzione che consente di ignorare la dichiarazione XML nei dati XML del secondo operando e questo consente di utilizzare documenti con altre codifiche in tali operazioni.
Per verificare se il documento XML può essere utilizzato, esaminare la dichiarazione XML. La dichiarazione deve specificare esplicitamente UTF-8, che indica la codifica Unicode a 8 bit.
Nel tag seguente è specificata la codifica Unicode a 8 bit.
<?xml version="1.0" encoding="UTF-8"?>
Messaggi di registrazione personalizzati disponibili nell'attività XML
Nella tabella seguente è indicata la voce di log personalizzata disponibile per l'attività XML. Per ulteriori informazioni, vedere Registrazione di Integration Services (SSIS) e Messaggi personalizzati per la registrazione.
Voce di log |
Descrizione |
---|---|
XMLOperation |
Fornisce informazioni sull'operazione eseguita dall'attività. |
Configurazione dell'attività XML
È possibile impostare le proprietà tramite Progettazione SSIS o a livello di codice.
Per ulteriori informazioni sulle proprietà che è possibile impostare in Progettazione SSIS, fare clic su uno degli argomenti seguenti:
Per ulteriori informazioni sull'impostazione delle proprietà in Progettazione SSIS, fare clic sull'argomento seguente:
Configurazione a livello di codice dell'attività XML
Per ulteriori informazioni sull'impostazione di queste proprietà a livello di codice, fare clic sull'argomento seguente:
Attività correlate
Impostazione delle proprietà di un'attività o di un contenitore
Contenuto correlato
Intervento nel blog sul componente script di destinazione XML sul sito Web agilebi.com
Esempio di CodePlex sull'esempio di elaborazione di pacchetti dati XML, su www.codeplex.com
|