Élément TemplateTag d'un fichier de définition de modèle

Les fichiers de définition de modèle utilisent les éléments TemplateTag et TemplateDocument. Plusieurs éléments TemplateTag peuvent être définis pour chaque message XML entrant. Chaque élément TemplateTag doit être lié à un élément TemplateDocument à l'aide de l'attribut name. La valeur associée à l'attribut name doit correspondre à la valeur d'un sous-élément TemplateTagName dans un élément TemplateDocument défini dans le fichier de définition de modèle.
Chaque élément TemplateTag contient une liste de définitions de balises dans le sous-élément Tag. L'élément Tag peut contenir les cinq attributs suivants :
XPath
Chemin d'accès de l'élément XML, par rapport au StartElement l'indiqué dans TemplateDocument. L'élément XPath est la clé pour trouver le nom de champ de la paire nom-valeur. Les exemples suivants illustrent la valeur qui peut être utilisée pour l'attribut XPath :
  • E1/E2 - L'élément E2 est imbriqué dans l'élément E1.

    XPath='Address/ZipCode'

  • E1/E2/E3 - L'élément E3 est imbriqué dans l'élément E2, qui est imbriqué dans l'élément E1.

    XPath='ContactInfo/Address/ZipCode'

  • E3@a1 - L'attribut a1 est imbriqué dans l'élément E3.

    XPath='InvoiceInfo@InvoiceType'

    L'attribut InvoiceType peut être utilisé pour indiquer à quel type de facture le message s'applique.
  • E4[1] - Première instance, l'élément E4. Il peut y avoir plusieurs instances d'E4. Par exemple, vous pouvez utiliser ce format lorsque vous avez plusieurs lignes d'une adresse. Chaque ligne de l'adresse est contenue dans un élément de balise distinct.
  • E5[@2="value 2"] - Instance de l'élément E5, où l'attribut a2 dans E5 est égal à "value 2".

    XPath='InvoiceInfo[@InvoiceType="ShippingInvoice"]

    E5[@a1="value1"][@a2="value 2"] - Instance de l'élément E5, où l'attribut a1 d'E5 est égal à '"value1", et l'attribut a2 d'E5 est égal à "value 2".

XPathType
Type d'élément indiqué dans le XPath. Cet attribut indique comment l'élément XML doit être traité par l'analyseur XML. Les types de données suivants sont admis pour l'attribut.
PCDATA
L'élément ou l'attribut de l'élément contient des données brutes entrantes qui sont traitées et renvoyées dans une paire nom-valeur. Il s'agit du type de valeur par défaut pour XPathType.
EMPTY
L'élément est vide ou contient des données qui peuvent être ignorées. Aucune paire nom-valeur n'est retournée pour cet élément.
REPEAT
L'élément peut avoir plusieurs instances. Le PCDATA de chaque élément est retourné dans une paire nom-valeur.
ATTRIBUTE
Si le nom du champ d'élément est déterminé par la valeur d'un attribut, cet attribut doit présenter le type ATTRIBUTE.
Vector
Un nouveau tableau de hachage est ajouté au vecteur, et toutes les paires nom-valeur générées pour les sous-éléments sont mises dans le nouveau tableau de hachage.
USERDATA
Indique un élément défini par l'utilisateur. L'élément a un attribut appelé name dont la valeur est le nom de champ. Les données de l'élément sont retournées dans une paire nom-valeur.
Zone
Nom de champ de la paire nom-valeur renseigné dans TypedProperty. La valeur de cet attribut doit correspondre au nom d'un paramètre utilisé par la commande appelée.
FieldType
Type de zone de données. Le type de zone peut être String ou Date (format de date ISO 8601). La valeur par défaut est String.
FieldInfo
Indique dans TypedProperty laquelle la paire nom-valeur doit être placée. La valeur par défaut est Data. Si vous souhaitez placer la paire nom-valeur dans plus d'une TypedProperty, vous devez spécifier plusieurs des valeurs suivantes, séparées par une virgule :
Data
La paire nom-valeur est intégrée à la carte des propriétés de la demande de l'objet CommandProperty qui contient des arguments pour la commande.
Contrôle
La paire nom-valeur est intégrée à la carte des propriétés d'exécution de l'objet CommandProperty qui contient des informations de contrôle pour la commande, telles que USERID ou PASSWORD. Ces paires nom-valeur sont généralement utilisées avant l'exécution de la logique métier réelle, telles que la validation de l'utilisateur / le contrôle d'accès.
Commande
La paire nom-valeur est utilisée pour déterminer la commande à appeler. Les paires nom-valeur générées sont utilisées dans l'élément CommandMapping de l'élément TemplateDocument.

Si l'élément XPath n'est pas trouvé dans le modèle de balise, le XPath dans le message XML est utilisé comme nom de champ et XPathType est PCDATA. Une paire nom-valeur est générée en utilisant XPath comme nom de champ.

Pour un exemple de la façon dont l'élément TemplateTag est utilisé, reportez-vous au fichier sys_template.xml.