Lorsqu'un événement CBE est mappé à une classe d'événement Enterprise Console dans la base de règles, chaque élément de données étendu est mappé à un attribut dans l'événement Enterprise Console résultant.
Si le nom complet d'un élément de données étendu ne correspond pas au nom d'un attribut dans la définition de classe d'événement Enterprise Console, l'élément de données étendu est éliminé.
Le tableau 1 illustre le mappage d'un élément de données étendu CBE avec les attributs d'un événement Enterprise Console.
Sous-zone de l'élément de données étendu |
Attribut Enterprise Console |
---|---|
nom de l'attribut |
|
indique si la valeur de l'attribut Enterprise Console est une valeur simple ou un tableau. |
|
valeur de l'attribut |
|
extendedDataElement.children |
chaque élément enfant de l'élément de données étendu est converti en un autre attribut dans l'événement Enterprise Console. Le processus est répété de façon récursive jusqu'à ce qu'il n'y ait plus de sous-élément dans l'élément de données étendu. Voir la section "Name" pour en savoir plus sur le nom d'attribut résultant dans l'événement Enterprise Console. |
Tableau 1. Mappage d'éléments de données étendus CBE avec des attributs Enterprise Console.
Les sections suivantes expliquent en détail comment chaque attribut d'une définition d'événement CBE est mappé à un attribut dans la définition de classe d'événement Enterprise Console :
Un élément de données étendu peut être imbriqué dans un autre élément de données étendu. Le nom de l'attribut résultant dans la définition de classe d'événement Enterprise Console est créé par concaténation des noms de tous les éléments de données étendus depuis l'ancêtre le plus élevé jusqu'au nom de l'élément mappé. Le caractère "." (point) est utilisé comme séparateur.
Prenons pour exemple un événement CBE ayant les éléments de données étendus suivants :
<CommonBaseEvent ...> <extendedDataElements name="abc" type="string"> <values>ma valeur</values> <children name="def" type="int"> <values>123</values> </children> </extendedDataElements> ... </CommonBaseEvent>
Les attributs résultants, et les valeurs correspondantes, dans l'événement Enterprise Console seraient :
abc='ma valeur' abc.def=123
Si le nom mappé d'un élément de données étendu est en conflit avec le nom d'un autre attribut dans l'événement Enterprise Console, l'élément de données étendu en question est éliminé. Voir la rubrique "Conflits de noms pour les éléments de données étendus" pour en savoir plus.
C'est pourquoi les éléments de données étendus ayant les noms suivants ne sont pas mappés à un attribut dans l'événement Enterprise Console, l'algorithme de conversion traitant les attributs de base avant les éléments de données étendus :
Remarque :
La sous-zone type d'un élément de données étendu indique le type de données attendu pour les valeurs dans l'élément. L'élément de données étendu n'est mappé à un attribut dans l'événement Enterprise Console que si les deux types sont compatibles.
Le tableau 2 indique la compatibilité entre les types d'élément de données étendu et les types d'attribut Enterprise Console.
Type d'élément de données étendu |
Type d'attribut Enterprise Console |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tableau 2. Mappage des types d'élément de données étendu avec les types d'attribut Ennterprise Console.
Prenons pour exemple un événement CBE ayant les éléments de données étendus suivants :
<CommonBaseEvent extensionName="CustomEvent" ...> <extendedDataElements name="slot1" type="string"> <values>ma valeur1</values> <values>ma valeur2</values> <values>ma valeur3</values> </extendedDataElements> ... </CommonBaseEvent>
En supposant que l'attribut "slot1" de la classe d'événement "CustomEvent" dans la base de règles soit défini sous la forme d'une liste de chaînes, l'événement Enterprise Console résultant contiendrait l'attribut suivant :
slot1=['ma valeur1', 'ma valeur2', 'ma valeur3']
Conflits de noms pour les éléments de données étendus