Condividi tramite


Schemi che utilizzano altri schemi

Panoramica

Quando gli schemi diventano grandi e complessi, o quando gli schemi che rappresentano i diversi tipi di messaggi di istanza condividono alcune parti, può essere utile combinare schemi più piccoli per creare gli schemi che definiranno la struttura dei messaggi di istanza che si prevede di scambiare con i partner commerciali. È possibile, ad esempio, avere più tipi di messaggio che richiedono che al loro interno venga espresso un indirizzo di spedizione. È possibile definire la struttura di un indirizzo di spedizione in un solo schema, quindi utilizzare tale schema all'interno di altri schemi che definiscono, ad esempio, schemi di messaggio Ordine, Fattura e Avviso di spedizione.

Importare, includere e ridefinire

Il linguaggio XSD (XML Schema Definition) offre tre meccanismi correlati per l'utilizzo di più schemi supportati dall'Editor BizTalk. Nella tabella seguente sono riepilogate le caratteristiche di questi meccanismi, in base alla definizione di XSD (XML Schema Definition).

Meccanismo a più schemi Scenario di utilizzo
Importa - Accede e usa i tipi definiti nello schema importato.
- Deve usare i tipi nello schema importato così come è o derivare nuovi tipi da essi; nessuna modifica del tipo consentita.
- Fornisce un meccanismo per l'uso di tipi definiti in altri spazi dei nomi. Uno schema importato deve avere uno spazio dei nomi di destinazione diverso da quello dello schema che importa.
- Usa l'elemento import e i relativi attributi dello spazio dei nomi e schemaLocation per fare riferimento all'altro schema.
Includi - Accede e usa i tipi definiti nello schema incluso.
- Deve usare i tipi nello schema incluso così come è o derivare nuovi tipi da essi; nessuna modifica del tipo consentita.
- Lo schema incluso deve trovarsi nello stesso spazio dei nomi di destinazione dello schema incluso oppure lo spazio dei nomi di destinazione dello schema incluso deve essere vuoto.
- Usa l'elemento include e il relativo attributo schemaLocation per fare riferimento all'altro schema.
Redefine - Accede e usa i tipi definiti nello schema ridefinito.
- Può usare i tipi nello schema ridefinito così come è, derivare nuovi tipi da tali tipi o specificare le modifiche apportate.
- Lo schema ridefinito deve trovarsi nello stesso spazio dei nomi di destinazione dello schema di ridefinizione oppure lo spazio dei nomi di destinazione dello schema ridefinito deve essere vuoto.
- Usa l'elemento ridefinizione e il relativo attributo schemaLocation per fare riferimento all'altro schema. Qualsiasi ridefinizione dei tipi viene specificata con l'elemento ridefinizione . Nota: L'uso del meccanismo di ridefinizione è un concetto XSD avanzato e deve essere usato solo dopo avere una conoscenza sufficiente di come e quando deve essere usato.

Nota

Per informazioni complete sulle differenze e le analogie tra l'importazione, includere e ridefinire i meccanismi, vedere i riferimenti elencati in Risorse XSD sul Web.

Dettagli importanti

Per utilizzare un tipo definito in uno schema (Schema1) all'interno di un altro schema (Schema2), è necessario specificare in Schema2 un riferimento a Schema1. A tale scopo, utilizzare la proprietà Imports del nodo Schema in Schema2. Quando si fa clic sul pulsante con i puntini di sospensione (...) nel campo proprietà Imports , viene visualizzata la finestra di dialogo Importazioni . Nell'elenco a discesa Importa nuovo schema come selezionare XSD Import, XSD Include o XSDRedefine. Fare quindi clic su Aggiungi per aprire la finestra di dialogo Selezione tipi BizTalk e passare all'interno del progetto BizTalk per selezionare Schema1.

Per istruzioni dettagliate su questi passaggi, vedere Creazione di schemi che usano altri schemi.

Quando si utilizza la finestra di dialogo Imports per importare, includere o ridefinire un altro schema, importare uno o più elementi XSD, includere e ridefinire viene aggiunto alla rappresentazione XSD dello schema, inclusi gli attributi e i valori di attributo appropriati. Inoltre, nel caso dell'elemento import , viene aggiunta una dichiarazione di prefisso per lo spazio dei nomi dell'altro schema all'elemento dello schema .

Tutti i tipi globali(ad esempio ComplexTypes, SimpleTypes, gruppi di elementi, gruppi di attributi) in uno schema importato/incluso/ridefinito sono automaticamente disponibili per l'uso all'interno dello schema in cui viene importato, incluso o ridefinito lo schema precedente. Ad esempio, i ComplexType globali definiti in uno schema importato/incluso/ridefinito vengono aggiunti all'elenco a discesa della proprietà Tipo struttura dati per tutti i nodi Record nell'importazione, inclusa o ridefinendo lo schema. Altre informazioni su questa proprietà sono disponibili nelle linee guida dell'interfaccia utente e nelle informazioni di riferimento sullo spazio dei nomi delle API per sviluppatori.

Vedere anche

Informazioni sugli schemi
Creare schemi che usano altri schemi
Creare riferimenti a un altro nodo o tipo