Création d'une règle de correspondance

Les règles de correspondance sont utilisées dans Interflow Match, Intraflow Match et Transactional Match pour définir les critères qui déterminent si un enregistrement correspond à un autre. Les règles de correspondance spécifient les champs à comparer, la manière dont comparer les champs et une hiérarchie de comparaisons pour les règles de correspondance complexes.

Vous pouvez créer des règles de correspondance dans Interflow Match, Intraflow Match et Transactional Match. Vous pouvez également créer des règles de correspondance dans l'outil Gestion des règles de correspondance d'Enterprise Designer. Créer une règle dans l'outil Gestion des règles de correspondance rend la règle disponible pour être utilisée dans tout flux de données et la rend également disponible aux autres utilisateurs. Créer une règle de correspondance dans un des stages de mise en correspondance rend la règle disponible uniquement pour ce stage, à moins d'enregistrer la règle en cliquant sur le bouton Enregistrer, ce qui la rend disponible aux autres stages et utilisateurs.

  1. Ouvrez Enterprise Designer.
  2. Procédez de l’une des façons suivantes :
    • Si vous souhaitez définir une règle de correspondance dans Interflow Match, Intraflow Match ou Transactional Match, double-cliquez sur le stage de mise en correspondance pour lequel vous souhaitez définir une règle de correspondance. Dans le champ Charger une règle de correspondance, choisissez une règle de correspondance prédéfinie comme point de départ. Si vous souhaitez démarrer par une règle de correspondance vide, cliquez sur Nouveau.
    • Si vous souhaitez définir une règle de correspondance dans l'outil Gestion des règles de correspondance, sélectionnez Outils > Gestion des règles de correspondance. Si vous souhaitez utiliser une règle existante comme point de départ pour votre règle, cochez la case Copier à partir de et sélectionnez la règle à utiliser comme point de départ.
  3. Spécifiez les champs de flux de données à utiliser dans la règle de correspondance, ainsi que la hiérarchie de règle de correspondance.
    1. Cliquez sur Ajouter un parent.
    2. Saisissez un nom pour le parent. Le nom doit être unique et ne peut pas être un champ. Le premier parent dans la hiérarchie est utilisé comme le nom de la règle de correspondance dans le champ Charger une règle de correspondance. Toutes les règles de correspondance personnalisées que vous créez et les règles prédéfinies que vous modifiez sont sauvegardées avec le mot « Personnalisé » précédant le nom.
    3. Cliquez sur Ajouter un enfant. Un menu déroulant apparaît dans la hiérarchie de règle. Sélectionnez un champ à ajouter au parent.
      Remarque : Tous les enfants sous un parent doivent utiliser le même opérateur logique. Si vous souhaitez utiliser différents opérateurs logiques entre les champs, vous devez d'abord créer des parents intermédiaires.
    4. Recommencez afin de compléter votre hiérarchie de correspondance.
  4. Définir des options de parent. Les options de parent sont affichées à droite de la hiérarchie de règle lorsqu'un nœud parent est sélectionné.
    1. Cliquez sur Correspondance lorsque la valeur n'est pas True pour modifier l'opérateur logique pour le parent de AND à AND NOT. Si vous sélectionnez cette option, les enregistrements correspondront uniquement s'ils ne correspondent pas non à la logique définie dans ce parent.
      Remarque : Cocher l'option Correspondance lorsque la valeur n'est pas True a pour effet d'annuler les options de la Méthode de correspondance. Pour plus d'informations, reportez-vous à la section Conditions de correspondance négatives.
    2. Dans le champ Méthode de correspondance, indiquez comment déterminer si un parent est une correspondance ou une non-correspondance. L'un des éléments suivants :
      Tous vrais
      Un parent est considéré comme une correspondance si tous les enfants sont déterminés de manière à obtenir une correspondance. Cette méthode crée un connecteur « ET » entre les enfants.
      Au moins un vrai
      Un parent est considéré comme étant une correspondance si au moins un enfant est déterminé de manière à obtenir une correspondance. Cette méthode crée un connecteur « OU » entre les enfants.
      Basé sur le seuil
      Un parent est considéré comme étant une correspondance si le score du parent est supérieur ou égal au seuil du parent. Lorsque vous choisissez cette option, le curseur Seuil apparait. Utilisez ce curseur pour choisir un seuil. La méthode de score choisit quel connecteur logique utiliser. Les seuils au parent ne peuvent pas être plus élevés que le seuil des enfants.
      Remarque : Le seuil définit ici peut être supplanté à tout moment dans la boîte de dialogue Options de flux de données. Allez dans Édition > Options de flux de données, puis cliquez sur Ajouter. Développez le stage, cliquez sur Seuil de premier niveau, et saisissez le seuil dans le champ Valeur par défaut.
    3. Dans le champ Données manquantes, indiquez comment noter des données vides dans un champ. L'un des éléments suivants :
      Ignorer les blancs
      Ignorer le champ s'il contient des données vierges.
      Comptez comme 0
      Noter le champ comme 0 s'il contient des données vierges.
      Comptez comme 100
      Noter le champ comme 100 s'il contient des données vierges.
      Comparer les valeurs vides

      Donne aux champs suspects et candidats une valeur 100 s'ils contiennent des données vierges ; sinon, donne aux champs suspects et candidats une valeur 0.

    4. Dans le champ Méthode de notation, sélectionnez la méthode utilisée pour déterminer le score de correspondance. L'un des éléments suivants :
      Moyenne pondérée
      Utilise le poids de chaque enfant pour définir le score de correspondance moyen.
      Moyenne
      Utilise le score moyen de chaque enfant pour définir le score d'un parent.
      Maximum
      Utilise le score enfant le plus élevé pour définir le score du parent.
      Minimum
      Utilise le score enfant le plus faible pour définir le score du parent.
      Sommation des vecteurs
      Utilise la sommation des vecteurs de chaque score enfant pour définir le score du parent. La formule pour le calcul est la suivante :

      sqrt(a^2 + b^2 + c^2) / sqrt(n), où : a, b et c sont les scores de trois enfants et n est le nombre d’enfants.

      Le tableau suivant montre la relation logique entre les méthodes de correspondance et les méthodes de notation et comment chaque combinaison modifie la logique employée durant le traitement de correspondances.

      Tableau 1. Matrice de méthode de correspondance de type « Méthode et Score »
      Méthode de notation Méthode de correspondance Commentaires
      Au moins un vrai Tous vrais Basé sur le seuil
      Moyenne pondérée S/O AND AND Disponible que lorsque Tous sont vrais ou Basés sur le seuil sont sélectionnés comme méthodes de correspondance.
      Moyenne S/O AND AND
      Sommation des vecteurs S/O AND AND
      Maximum OR S/O OR Disponible que lorsque Au moins un vrai ou Basés sur le seuil sont sélectionnés comme méthodes de correspondance.
      Minimum OR S/O OR
  5. Définissez les options d'enfant. Les options d'enfant sont affichées à droite de la hiérarchie de règle lorsqu'un enfant est sélectionné.
    1. Cochez l'option Champ candidat pour mapper le champ d'enregistrement enfant sélectionné vers un champ du fichier d'entrée.
    2. Cochez l'option Recouper avec et sélectionnez un ou plusieurs éléments de la liste déroulante pour mettre en correspondance différents champs les uns avec les autres entre deux enregistrements. Si vous utilisez l'outil Gestion des règles de correspondance pour créer ou modifier une règle de correspondance, aucune liste déroulante n'apparaît et, à la place, vous devrez saisir chaque nom de champ en séparant les noms de champ par des virgules.
    3. Cliquez sur Correspondance lorsque la valeur n'est pas True pour modifier l'opérateur logique pour le parent de AND à NOT. Si vous sélectionnez cette option, la règle de correspondance sera uniquement évaluée comme True si les enregistrements ne correspondent pas à la logique définie dans cet enfant.

      Par exemple, si vous souhaitez identifier les individus qui sont associés à des comptes multiples, vous pouvez créer une règle de correspondance qui met en correspondance le nom, sauf lorsque le numéro de compte ne correspond pas. Vous devez utiliser l'option de Correspondance lorsque la valeur n'est pas Truepour l'enfant qui correspond au numéro de compte.

    4. Dans le champ Données manquantes, indiquez comment noter des données vides dans un champ. L'un des éléments suivants :
      Ignorer les blancs
      Ignorer le champ s'il contient des données vierges.
      Comptez comme 0
      Noter le champ comme 0 s'il contient des données vierges.
      Comptez comme 100
      Noter le champ comme 100 s'il contient des données vierges.
      Comparer les valeurs vides

      Donne aux champs suspects et candidats une valeur 100 s'ils contiennent des données vierges ; sinon, donne aux champs suspects et candidats une valeur 0.

    5. Dans le champ Seuil, indiquez le seuil devant être atteint au niveau du champ individuel afin que ce champ soit considéré comme une correspondance.
    6. Dans le champ Méthode de notation, sélectionnez la méthode utilisée pour déterminer le score de correspondance. L'un des éléments suivants :
      Moyenne pondérée
      Utilise le poids de chaque algorithme pour définir le score de correspondance moyen.
      Moyenne
      Utilise la moyenne de chaque algorithme pour définir le score de correspondance moyen.
      Maximum
      Utilise le score d'algorithme le plus élevé pour déterminer le score correspondant.
      Minimum
      Utilise le score d'algorithme le plus bas pour déterminer le score correspondant.
      Sommation des vecteurs
      Utilise la sommation des vecteurs du score de chaque algorithme pour définir le score de correspondance. Cette méthode de notation est utile si vous souhaitez qu'un score de correspondance supérieur dans un ou plusieurs algorithmes soit proportionnellement représenté dans le score de correspondance final. La formule utilisée pour calculer le score final est la suivante :

      sqrt(a^2 + b^2 + c^2) / sqrt(n), où : a, b et c sont les scores de trois algorithmes différents et n est le nombre d’algorithmes utilisés.

    7. Choisissez au moins un algorithme à utiliser pour déterminer si les valeurs du champ correspondent. Un des éléments suivants.
      Acronyme
      Détermine si un nom de société correspond à son acronyme en recherchant des données d'acronyme ; sinon, il crée un acronyme utilisant le premier caractère de chaque mot. Exemple : Internal Revenue Service et son acronyme IRS seraient considérés comme étant une correspondance et afficheraient un score de correspondance de 100.
      Fréquence de caractères
      Détermine la fréquence des instances de chaque caractère dans une chaîne de caractère et compare la fréquence globale entre deux chaînes de caractères.
      Daitch-Mokotoff Soundex
      Algorithme phonétique qui permet une plus grande exactitude dans la mise en correspondance de noms de famille slaves et yiddish avec une prononciation similaire mais des différences dans l'orthographe. Les noms codés sont composés de six chiffres et de multiples encodages possibles peuvent être renvoyés pour un seul nom. Cette option a été développée afin de respecter les limitations de Soundex dans le traitement des noms de famille allemands ou slaves.
      Date
      Compare les champs de date sans prendre en compte le format de date des enregistrements d'entrée. Cliquez sur Éditer dans la colonne Options pour préciser ce qui suit :
      • Exige un mois : empêche une date uniquement composée d'une année de correspondre
      • Exige un jour : empêche une date uniquement composée d'un mois et d'une année de correspondre
      • Correspond au MM/LL transposé : où le mois et le jour sont fournis sous forme numérique, compare le mois suspect au jour candidat et le jour suspect au mois candidat en plus d'effectuer la comparaison standard du mois suspect au mois candidat et du jour suspect au jour candidat
      • Préférer le format JJ/MM/AAAA au format MM/JJ/AAAA : contribue à la décomposition analytique de la date dans les cas ou le mois et le jour sont fournis sous un format numérique et que leur identification ne peut pas être déterminée par le contexte. Par exemple, en prenant les nombres 5 et 13, l'analyseur assignera automatiquement 5 au mois et 13 au jour car il n'y a que 12 mois par an. Toutefois, en prenant les nombres 5 et 12 (ou toute paire de nombres de 12 ou en dessous), l'analyseur prendra le premier nombre comme étant le mois. Cocher cette option vous permettra de vous assurer que l'analyseur lit le premier nombre comme étant le jour plutôt que le mois.
      • Options de durée—Globale : vous permet de définir un nombre maximum de jours entre les dates correspondantes. Par exemple, si vous saisissez une durée globale de 35 jours et que votre date candidate est le 31 décembre 2000, une date suspecte du 5 février 2001 correspondrait mais pas une date suspecte du 6 février. Si vous saisissez une durée globale de 1 jour et que la date candidate est janvier 2000, une date suspecte de 1999 correspondrait (en comparant le 31 décembre 1999) mais pas une date suspecte de janvier 2001.
      • Options de durée—Année : vous permet de définir le nombre d'années entre les dates correspondantes, indépendamment du mois et du jour. Par exemple, si vous saisissez une durée annuelle de 3 et que votre date candidate est le 31 janvier 2000, une date suspecte du 31 janvier 2003 correspondrait mais pas une date suspecte de février 2003. De même, si votre date candidate est 2000, une date suspecte de Mars 2003 correspondrait parce que les mois ne sont pas en conflit et qu'elle se trouve dans la durée des trois ans.
      • Options de durée—Mois : vous permet de définir le nombre de mois entre les dates correspondantes, indépendamment de l'année et du jour. Par exemple, si vous saisissez une durée mensuelle de 4 et que votre date candidate est le 1er janvier 2000, une date suspecte de mai 2000 correspondrait car il n'y a pas de conflit de jour et qu'elle se trouve dans la durée des quatre mois, mais pas une date suspecte du 2 mai 2000 à cause du conflit de jours.
      • Options de durée—Jour : vous permet de définir le nombre de jours entre les dates correspondantes, indépendamment de l'année et du mois. Par exemple, si vous saisissez une durée mensuelle de 5 et que votre date candidate est le 1er janvier 2000, une date suspecte de mai 2000 correspondrait car il n'y a pas de conflit de jour et qu'elle se trouve dans la durée des quatre mois, mais pas une date suspecte du 27 déc. 99 à cause du conflit de jours.
      Metaphone double
      Détermine la similitude entre deux chaînes basée sur la représentation phonétique de leurs caractères. Le double Metaphone est une version améliorée de l'algorithme Metaphone et tente de prendre en compte les nombreuses irrégularités de plusieurs langues.
      Distance d'édition
      Détermine la similitude entre deux chaînes en fonction du nombre de suppressions, d'insertions ou de substitutions requises pour transformer une chaîne en une autre.
      Distance euclidienne
      Fournit une mesure de la similitude entre deux chaînes via l'espace vectoriel de termes combinés sous forme de dimensions. Cela définit également le plus grand diviseur commun de deux entiers. Cela prend une paire d'entiers positifs et forme une nouvelle paire qui se compose du plus petit nombre et de la différence entre les nombres le plus élevé et le plus faible. Le processus se répète jusqu'à ce que les nombres soient égaux. Ce nombre est le plus grand diviseur commun de la paire d'origine. Par exemple, 21 est le plus grand diviseur commun de 252 et de 105 : (252 = 12 × 21 ; 105 = 5 × 21) ; car 252 − 105 = (12 − 5) × 21 = 147, le plus grand diviseur commun de 147 et de 105 est également 21.
      Correspondance exacte
      Détermine si deux chaînes sont identiques.
      Initiales
      Utilisé pour mettre en correspondance les initiales de noms personnels décomposés.
      Distance Jaro-Winkler
      Détermine la similitude entre deux chaînes basée sur le nombre de remplacements de caractère requis pour transformer une chaîne en l'autre. Cette option a été développée pour les chaînes courtes, telles que les noms de personnes.
      Distance du clavier
      Détermine la similitude entre deux chaînes basée sur le nombre de suppressions, d'insertions ou de substitutions requises pour transformer un champ en l'autre, pondérée par la position des touches sur le clavier. Cliquez sur Éditer dans la colonne Options pour spécifier le type de clavier que vous utilisez : QWERTY (États-Unis), QWERTZ (Autriche et Allemagne) ou AZERTY (France).
      Koeln
      Noms d'index par son, tels qu'ils sont prononcés en allemand. Permet aux noms ayant la même prononciation d'être encodés avec la même représentation afin qu'ils puissent être mis en correspondance, en dépit de différences mineures au niveau de l'orthographe. Le résultat est toujours une séquence de nombres ; les caractères spéciaux et les espaces blancs sont ignorés. Cette option a été développée en réponse aux limites du Soundex.
      Distance Kullback-Liebler
      Détermine la similitude entre deux chaînes en fonction des différences entre la répartition des mots dans les deux chaînes.
      Metaphone
      Détermine la similitude entre deux chaînes en langue anglaise en fonction d'une représentation phonétique de leurs caractères. Cette option a été développée en réponse aux limites du Soundex.
      Metaphone (Espagnol)
      Détermine la similitude entre deux chaînes basée sur la représentation phonétique de leurs caractères. Cette option a été développée en réponse aux limites du Soundex.
      Metaphone3
      Procède à une amélioration en fonction des algorithmes Metaphone et Double Metaphone avec des paramètres de consonne et de voyelle interne exacts qui vous permet de produire des mots ou des noms mis en correspondance de manière plus ou moins proche pour rechercher des termes au niveau phonétique. Metaphone 3 augmente l'exactitude de l'encodage phonétique à 98 %. Cette option a été développée en réponse aux limites du Soundex.
      Variante de nom
      Détermine si deux noms sont des variantes l'un de l'autre. L'algorithme rapporte un score de correspondance de 100 si deux noms sont des variations l'un de l'autre, et qu'un score de correspondance de 0 si deux noms ne sont pas des variations l'un de l'autre. Par exemple, JOHN est une variation de JAKE et renvoie un score de correspondance de 100. JOHN n'est pas une variante de HENRY et renvoie un score de correspondance de 0. Cliquez sur Éditer dans la colonne Options pour choisir les options de variante de nom. Pour plus d'informations, reportez-vous à la section Name Variant Finder.
      Distance NGram

      Calcule dans le texte ou l'expression la probabilité du terme suivant en fonction des n termes précédents, qui peuvent inclure des phonèmes, des syllabes, des lettres, des mots ou des paires de base et être constitués de toute combinaison de lettres. Cet algorithme inclut une option permettant de saisir la taille de NGram ; la valeur par défaut est 2.

      Similarité NGram

      Détermine la similarité entre deux chaînes en fonction de la longueur de la sous-séquence commune la plus longue des phonèmes, syllabes, lettres, mots ou paires de base.

      L’algorithme inclut les options suivantes :

      • Taille Ngram : Saisissez la taille de NGram. La valeur par défaut est 2.
      • Ignorer les caractères de bruit : Cochez la case pour remplacer la ponctuation par un espace.
      • Ignorer les espaces : Cochez la case pour fusionner des mots.
      Chaîne numérique
      Compare les lignes d'adresse en séparant les attributs numériques d'une ligne d'adresse des caractères. Par exemple, dans l'adresse de la chaîne 1234 Main Street Apt 567, l'attribut numérique de la chaîne (1234567) sont décomposés et gérés différemment des valeurs restantes de la chaîne (Main Street Apt). L'algorithme met d'abord en correspondance les données numériques dans la chaîne avec l'algorithme numérique. Si la correspondance des données numériques est de 100, les données alphabétiques sont mises en correspondance en utilisant la Distance d'édition et Fréquence de caractère. Le score de correspondance final est calculé ainsi :

      (numericScore + (EditDistanceScore + CharacterFrequencyScore) / 2) / 2

      Par exemple, le score de correspondance de ces deux adresses est de 95,5, calculé ainsi :

      123 Main St Apt 567
      123 Maon St Apt 567

      Numeric Score = 100
      Edit Distance = 91
      Character Frequency = 91

      91 + 91 = 182
      182/2 = 91
      100 + 91 = 191
      191/2 = 95,5

      Nysiis
      L'algorithme de code phonétique qui met en correspondance une prononciation approximative avec une orthographe exacte et indexe des mots prononcés de manière similaire. Fait partie du système New York State Identification and Intelligence System. Imaginons, par exemple, que vous recherchez des informations sur une personne dans une base de données de personnes. Vous pensez que le nom de la personne sonne comme « John Smith », mais il est en fait orthographié « Jon Smath ». Si vous procédez à une recherche de la correspondance exacte de « John Smith », aucun résultat n'est renvoyé. Cependant, si vous indexez la base de données à l'aide de l'algorithme NYSIIS et procédez à une recherche en utilisant de nouveau l'algorithme NYSIIS, la correspondance correcte est renvoyée car « John Smith » et « Jon Smath » sont indexés comme « JANSNATH » par l'algorithme. Cette option a été développée en réponse aux limites de Soundex ; elle gère certains n-grammes à caractères multiples et maintient un positionnement de voyelle relative, ce qui n'est pas le cas de Soundex.
      Remarque : Cet algorithme ne traite pas les caractères non-alpha ; les enregistrements les contenant échoueront lors du traitement.
      Phonix
      Pré-traite les chaînes de nom en appliquant plus de 100 règles de transformation à des caractères uniques ou à des séquences de plusieurs caractères. 19 de ces règles s'appliquent uniquement si les caractères figurent au début de la chaîne, tandis que 12 des règles s'appliquent uniquement si les caractères figurent au milieu de la chaîne et 28 des règles s'appliquent uniquement si les caractères figurent à la fin de la chaîne. La chaîne de nom transformée est cryptée en un code composé d'une lettre au début, suivie de trois chiffres (en enlevant les zéros et les nombres en double). Cette option a été développée pour répondre aux limites de Soundex ; elle est plus complexe et donc plus lente que Soundex.
      Soundex
      Détermine la similitude entre deux chaînes basée sur la représentation phonétique de leurs caractères.
      Sous-chaîne
      Détermine si une chaîne figure dans une autre.
      Alignement de syllabes
      Combine des informations phonétiques avec des calculs basées sur la distance d'édition. Convertit les chaînes à comparer dans leurs séquences de syllabes correspondantes et calcule le nombre d'éditions requises pour convertir une séquence de syllabes en une autre.

      Le tableau suivant décrit la relation logique entre le nombre d'algorithmes que vous pouvez utiliser suivant la méthode de notation du parent sélectionnée.

      Tableau 2. Matrice de méthode de correspondance de type « Algorithme et Notation »
      Méthode de notation Algorithmes
      Seul Multiple
      Moyenne pondérée S/O Oui
      Moyenne S/O Oui
      Maximum Oui Oui
      Minimum S/O Oui
      Sommation des vecteurs S/O Oui
  6. Si vous définissez une règle dans Interflow Match, Intraflow Match ou Transactional Match, et que vous souhaitez partager la règle avec d'autres stages et/ou utilisateurs, cliquez sur le bouton Enregistrer en haut de la fenêtre.