Utilisation d’enveloppes dans les composants de pipeline Assembleur et Désassembleur XML
Un message XML peut inclure zéro, une ou plusieurs enveloppes. L'exemple suivant illustre une enveloppe (en gras) associée à un document XML.
<ns1:document xmlns:ns1="http://myDocumentNamespaceURI.org">
<message>Hello</message>
</ns1:document>
Les enveloppes remplissent deux fonctions :
Elles peuvent inclure des valeurs de champ à utiliser pour promouvoir et rétrograder des propriétés.
Le composant Désassembleur XML promeut les propriétés, tandis que le composant Assembleur XML les rétrograde. La promotion et la rétrogradation des propriétés peuvent aussi intervenir dans des documents XML.
Elles peuvent combiner plusieurs documents XML en un seul échange.
Un document XML bien formé ne pouvant comporter qu'un élément racine, une enveloppe permet de combiner plusieurs documents XML afin qu'ils partagent un seul élément racine.
Vous pouvez appliquer le formulaire canonique en spécifiant l’ordre d’enveloppe à l’aide de la boîte de dialogue Éditeur de propriétés de collection de schémas accessible en cliquant sur les points de suspension de la propriété De conception des schémas d’enveloppe dans l’assembleur XML. Vous pouvez également utiliser XMLNORM. Propriété de contexte de message EnvelopeSpecNames avant l’exécution de l’assembleur XML. L'Assembleur XML produit un document enveloppé au format canonique.
Imbrication d'enveloppes
Vous pouvez imbriquer des enveloppes pour former des structures de documents complexes où plusieurs documents XML enveloppés peuvent être combinés en un échange plus vaste. L'exemple suivant illustre un échange avec deux enveloppes.
<envelope1>
<document1/>
<envelope2>
<document2/>
<document3/>
</envelope2>
<document4/>
</envelope1>
L'exemple précédent présente une forme flexible, ce qui signifie qu'un document peut se situer au même niveau hiérarchique qu'une enveloppe. Après le désassemblage du document enveloppé, quatre documents distincts sont créés (document1, document2, etc.).