Règles et stratégies de base
En général, MapForce mappe des données de manière intuitive, mais il peut tomber sur des situations dans lesquelles la sortie contient trop ou pas assez d’items. Ce chapitre décrit les règles de mappage principales et vous aide à éviter des situations dans lesquelles le mappage produit un résultat non désiré dû à des connections ou un contexte incorrects.
Afin d’être valide, un mappage doit inclure au moins une source connectée à au moins un composant cible. Un composant source lit les données, généralement d’un fichier ou d’une base de données. Un composant cible écrit des données, généralement vers un fichier ou une base de données.
Toutes les connexions de mappage que vous tracez forment, ensemble, un algorithme de mappage. Au moment de l’exécution du mappage, MapForce évalue l’algorithme et traite les données basées sur celui-ci. L’intégrité et efficacité de l'algorithme de mappage dépend principalement des connexions. Vous pouvez modifier certains paramètres aux niveaux des mappage, composant ou même connexion, mais ce sont les connexions qui déterminent comment vos données sont traitées.
Règles de mappage
Cette sous-section décrit les règles principales du traitement des données. Pour illustrer les règles, nous utiliserons le mappage affiché ci-dessous.
Règle 1
Pour chaque item source, un item est créé dans la cible. Il s'agit là de la règle principale de mappage dans MapForce. Dans le mappage ci-dessus, si l’XML source contient trois éléments book, alors trois éléments publication seront créés du côté cible. Veuillez noter qu’il y a aussi des cas spéciaux (voir Séquences).
Règle 2
MapForce démarre toujours le traitement depuis l’item de racine cible (nœud). C’est là que l’ exécution d'un mappage commence réellement. Après avoir traiter le nœud cible, MapForce progresse en descendant la hiérarchie.
Règle 3
Chaque connexion crée le contexte de mappage actuel. Le contexte détermine quelles données sont disponibles pour le nœud cible actuel et ses descendants. Ainsi, le contexte détermine quels items de source sont réellement copiés depuis la source vers le composant de cible. En traçant ou en omettant une connexion, vous pouvez modifier par inadvertance le contexte actuel et influer le résultat du mappage. Par exemple votre mappage peut appeler une base de données ou un service Web plusieurs fois sans que cela soit nécessaire au cours d’une seule exécution de mappage. Ce concept est décrit plus loin dans le chapitre Ordre de contexte et traitement.
Règle 4
Lorsque vous établissez une connexion depuis l’item source vers un item cible, le mappage lit les données de l’item source, transmet les données à l’item cible, et génère les données d’instance dans le format cible.
L’item source peut avoir zéro, une ou de multiples occurrences dans le fichier d’instance source. Indépendamment du nombre d’occurrences, MapForce affiche toujours uniquement les hiérarchies de schéma dans les composants structurels (par ex., XML). C’est bien la raison pour laquelle, par exemple, le composant source dans le mappage ci-dessus n’a qu’un élément book.