Gruppi di elementi XSD
L'utilizzo di determinate strutture in uno schema potrebbe creare variazioni nelle trasformazioni XSLT (Extensible Stylesheet Language Transformations) generate da BizTalk Mapper.
Questa condizione si può verificare quando si include uno schema nella mappa che definisce i gruppi di elementi Sequenze, Scelte o Tutti. Ad esempio, se si usa uno schema che include un nodo Gruppo di scelta , è possibile creare una mappa che richiede la visualizzazione di due o più elementi figlio del nodo Gruppo di scelta in un messaggio di istanza di output. In questo caso, in BizTalk Mapper viene visualizzato un messaggio di avviso durante la compilazione della mappa. Il messaggio di avviso informa che solo uno dei campi richiesti di cui si è eseguito il mapping può essere compilato nella stessa iterazione del ciclo padre in fase di esecuzione. In BizTalk Mapper non viene visualizzato alcun messaggio di errore che informa che la logica di mapping non è corretta.
È inoltre possibile generare variazioni nelle trasformazioni XSLT quando vengono soddisfatte le condizioni seguenti:
Record A ha un elemento Field B figlio.
Il record A e l'elemento campo figlio B si verificano una sola volta.
Record A fa parte di un gruppo di scelta che si ripete.
In questa situazione, in BizTalk Mapper viene generata una trasformazione XSLT che contiene la logica di iterazione per la gestione delle numerose variazioni dei record di origine.
Nota
È necessario che i mapping che riguardano i gruppi siano espliciti. Ad esempio, se uno schema di destinazione contiene un nodo Gruppo di scelta con nodi figlio A e B, non è valido disporre simultaneamente di A e B nella stessa iterazione del gruppo padre. In BizTalk Mapper non viene impedita la creazione di mapping non validi. È pertanto necessario utilizzare functoid logici per impostare mapping che non prevedono l'occorrenza contemporanea di A e B.