Nœuds Groupe Tous
Dans l’éditeur BizTalk, vous pouvez insérer un nœud Tous les groupes pour contenir d’autres nœuds qui apparaîtront zéro ou une seule fois, dans n’importe quel ordre. Dans le langage XSD (XML Schema Definition), le groupe All a plus de limitations d’utilisation que les groupes Sequence et Choice , ce qui se traduit par peu de situations dans l’éditeur BizTalk où vous serez en mesure de créer un nœud Tous les groupes .
Pour utiliser un nœud Tous les groupes dans l’Éditeur BizTalk, vous devez suivre quelques étapes supplémentaires : le moyen le plus simple de créer un nœud Tous les groupes consiste à remplacer la valeur de la propriété Type d’ordre de groupe du nœud Parent Record par All. Cela garantit que tous les nœuds subordonnés du nœud Record sont contenus dans le nœud Tous les groupes . Consultez Type d’ordre de groupe dans l’aide de l’interface utilisateur et informations de référence sur l’espace de noms d’API des développeurs.
Une autre façon d’utiliser un nœud Tous les groupes dans l’éditeur BizTalk commence par l’insertion d’un nouveau nœud Enregistrement . Après avoir inséré le nouveau nœud Record , remplacez sa propriété Content Type par ComplexContent. Vous pouvez ensuite insérer un nœud Tous les groupes en tant qu’enfant du nœud Enregistrement . Cela est obligatoire, car le groupe Tout peut être inséré uniquement lorsque l’héritage est impliqué. En spécifiant que le nœud Record contenant contient du contenu complexe, son type de données devient basé sur le type de données xs :anyType, dérivé par extension.
Notes
Dans l’éditeur BizTalk, le nœud Tous les groupes est représenté avec la chaîne <All> dans l’arborescence de schéma. Si vous définissez une référence à un nœud Tous les groupes , par exemple sur x, il est représenté en tant que <Group :x> dans l’arborescence de schéma.
Représentation XSD
Un nœud Tous les groupes peut être inséré dans un nœud Record , mais uniquement s’il s’agit du seul nœud enfant non-attribut de ce nœud Record . L’exemple suivant montre, en étapes, comment un nouveau nœud Tous les groupes est représenté dans le langage XSD (XML Schema Definition) en tant qu’élément all à mesure que les étapes dans l’éditeur BizTalk sont effectuées (avec des nœuds nommés pour clarifier leur identité).
<xs:element name="NewRecord">
<xs:complexType />
</xs:element>
Après avoir ajouté un nouvel enregistrement comme indiqué dans le fragment XSD précédent, sa propriété Content Type est remplacée par ComplexContent, ce qui entraîne les modifications XSD suivantes.
<xs:element name="NewRecord">
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="xs:anyType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
À présent, le nœud Tous les groupes peut être inséré en tant qu’enfant du nouvel enregistrement, comme illustré dans le fragment XSD suivant.
<xs:element name="NewRecord">
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="xs:anyType">
<xs:all />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
Enfin, vous pouvez insérer les nœuds appropriés en tant qu’enfants du nouveau nœud Tous les groupes . L’exemple suivant montre un nœud Record et un nœud Élément Field insérés en tant que nœuds enfants du nouveau nœud Tous les groupes .
<xs:element name="NewRecord">
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="xs:anyType">
<xs:all>
<xs:element name="RecordChildOfAllGroup">
<xs:complexType />
</xs:element>
<xs:element name="FieldElementChildOfAllGroup" type="xs:string" />
</xs:all>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>