Partager via


Schémas utilisant d'autres schémas

Vue d’ensemble

Lorsque vos schémas gagnent en taille et en complexité, ou lorsque les schémas représentant vos différents types de messages d’instance comportent plusieurs portions en commun, il peut être utile de combiner des schémas plus petits en des schémas qui définiront la structure finale des messages d'instance que vous prévoyez d'échanger avec des partenaires commerciaux. Par exemple, plusieurs types de messages peuvent nécessiter de comporter une adresse de livraison. Vous pouvez définir la structure d’une adresse de livraison dans un seul schéma, puis utiliser ce schéma au sein d’autres schémas qui définissent par exemple les schémas de message Commande, Facture et Avis d’expédition.

Importer, inclure et redéfinir

Le langage XSD (XML Schema definition) propose trois mécanismes associés pour l’utilisation conjointe de plusieurs schémas pris en charge par l’Éditeur BizTalk. Le tableau suivant répertorie les caractéristiques de ces mécanismes, tels qu’ils sont définis par XSD.

Mécanisme multischéma Scénario d’usage
Importer - Accède et utilise les types définis dans le schéma importé.
- Doit utiliser des types dans le schéma importé en l’état ou en dériver de nouveaux types ; aucune modification de type autorisée.
- Fournit un mécanisme permettant d’utiliser des types définis dans d’autres espaces de noms. En effet, un schéma importé doit être associé à un espace de noms cible différent du schéma importateur.
- Utilise l’élément import et ses attributs d’espace de noms et schemaLocation pour référencer l’autre schéma.
Inclure - Accède et utilise les types définis dans le schéma inclus.
- Doit utiliser des types dans le schéma inclus en l’état ou en dériver de nouveaux types ; aucune modification de type autorisée.
- Le schéma inclus doit se trouver dans le même espace de noms cible que le schéma d’inclusion, ou l’espace de noms cible du schéma inclus doit être vide.
- Utilise l’élément include et son attribut schemaLocation pour référencer l’autre schéma.
Redéfinir - Accède et utilise les types définis dans le schéma redéfini.
- Peut utiliser des types dans le schéma redéfini en l’état, en dériver de nouveaux types ou spécifier des modifications.
- Le schéma redéfini doit se trouver dans le même espace de noms cible que le schéma de redéfinition, ou l’espace de noms cible du schéma redéfini doit être vide.
- Utilise l’élément redéfini et son attribut schemaLocation pour référencer l’autre schéma. Toutes les redéfinitions de type sont spécifiées avec l’élément redefine . Note: L’utilisation du mécanisme de redéfinition est un concept XSD avancé qui ne doit être utilisé qu’après avoir suffisamment compris comment et quand il doit être utilisé.

Notes

Pour obtenir des informations complètes sur les différences et les similitudes entre les mécanismes d’importation, d’inclure et de redéfinition, consultez les références répertoriées dans Ressources XSD sur le web.

Détails importants

Pour utiliser un type défini dans un schéma (Schema1) à l'intérieur d'un autre schéma (Schema2), vous devez fournir une référence à Schema1 dans Schema2. Pour ce faire, utilisez la propriété Imports du nœud Schéma dans Schema2. Lorsque vous cliquez sur le bouton de sélection (...) dans le champ de propriété Importations , la boîte de dialogue Importations s’ouvre. Dans la liste déroulante Importer un nouveau schéma en tant que , sélectionnez Importation XSD, XSD Include ou XSD Redéfinir. Cliquez ensuite sur Ajouter pour ouvrir la boîte de dialogue Sélecteur de types BizTalk et parcourir votre projet BizTalk pour sélectionner Schéma1.

Pour obtenir des instructions détaillées sur ces étapes, consultez Création de schémas qui utilisent d’autres schémas.

Lorsque vous utilisez la boîte de dialogue Importations pour importer, inclure ou redéfinir un autre schéma, un ou plusieurs éléments XSD importer, inclure et redéfinir est ajouté à la représentation XSD de votre schéma, y compris les attributs et les valeurs d’attribut appropriés. En outre, dans le cas de l’élément import , une déclaration de préfixe pour l’espace de noms de l’autre schéma est ajoutée à l’élément de schéma .

Tous les types globaux (tels que ComplexTypes, SimplesTypes, groupes d’éléments, groupes d’attributs) dans un schéma importé/inclus/redéfini sont automatiquement disponibles pour une utilisation dans le schéma dans lequel le schéma précédent est importé, inclus ou redéfini. Par exemple, les ComplexTypes globaux définis dans un schéma importé/inclus/redéfini sont ajoutés à la liste déroulante de la propriété Type de structure de données pour tous les nœuds Record dans le schéma d’importation, y compris ou de redéfinition. Pour plus d’informations sur cette propriété, consultez les instructions de l’interface utilisateur et les informations de référence sur l’espace de noms d’API des développeurs.

Voir aussi

À propos des schémas
Créer des schémas utilisant d’autres schémas
Créer des références à un autre nœud ou type