Pour les documents allemands, configurez maintenant leur activité Extraction Rules. Fast Learning a déjà pris en charge certains champs ; cette activité traite les autres.Documentation Index
Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
Use this file to discover all available pages before exploring further.
Avant de commencer
Ouvrez l’activité dans l’Éditeur d’activité
- Ouvrez l’activité “arrêt maladie DE” dans l’Activity Editor.
- Sélectionnez l’un des documents de l’ensemble de documents.
Extraction des données du patient
Créez le group PatientDataArea
- Cliquez sur Create Element et sélectionnez l’élément Group dans la liste déroulante. Renommez-le “PatientDataArea”.
- Dans la section Under what conditions, remplacez la valeur Element is par Optional.
Repérez le libellé du patient à l’aide d’un élément Static Text
- Cliquez sur Create Element et sélectionnez l’élément Static Text dans la liste déroulante. Renommez-le en “kwPatientTitle”.
- Saisissez le texte “Name, Vorname” dans le champ Text to find du volet Properties.
- Cliquez sur Match. Une fois le traitement terminé, le Tree of Hypotheses s’affiche sous le document. Assurez-vous qu’Advanced Designer a bien trouvé le texte statique souhaité : un point vert à côté du nom de l’élément indique une correspondance réussie. Cliquez sur le nom de l’élément dans le Tree of Hypotheses pour afficher un cadre violet autour de la région correspondante dans le document.
Repérez la limite inférieure à l’aide d’un Separator
- Ajoutez un élément Separator au groupe et nommez-le « SeparatorBottom ». Définissez sa longueur minimale sur 200.
- Cliquez avec le bouton droit sur l’élément, puis sélectionnez Match Element dans le menu contextuel. Le Tree of Hypotheses contient de nombreux points verts : ils correspondent à différents séparateurs répondant aux critères de recherche. Cliquez sur chaque point pour voir l’objet correspondant sur l’image.
- Pour affiner les critères de recherche, spécifiez la zone de recherche du Separator. Cliquez sur Match pour trouver l’élément « kwPatientTitle », qui sera utilisé comme élément d’ancrage. Dans la section Where to search du volet Properties, cliquez sur Draw on Image. Sélectionnez l’élément « kwPatientTitle » dans le document, puis cliquez sur l’icône de flèche vers le bas pour définir la zone de recherche sous le mot-clé et sur l’icône la plus proche afin de rechercher le Separator le plus proche du mot-clé.
- Cliquez sur Match et vérifiez qu’Advanced Designer a trouvé le Separator sous l’élément « kwPatientTitle ».
Recherchez le Paragraph du nom et de l’adresse
- Créez un élément de recherche Paragraph et nommez-le “NameAddressParagraph”.
- Définissez Text alignment sur Left.
- Les données du patient occupent de deux à cinq lignes ; indiquez donc Line count de 2 à 5.
- Définissez la zone de recherche du paragraphe à l’aide du menu Add dans la section Where to search. L’élément doit se trouver sous l’élément “kwPatientTitle” et au-dessus de l’élément “SeparatorBottom”.
- Cliquez sur Match.
Créer le PatientGroup
Configurer le groupe répétitif NameGroup
- Créez un élément de recherche Repeating Group et nommez-le “NameGroup”. Indiquez 2 comme nombre maximal de répétitions. Rendez l’élément facultatif.
-
Pour limiter la zone de recherche aux lignes faisant partie du paragraphe “NameAddressParagraph”, cliquez sur l’icône de l’éditeur de code sous l’image du document et collez le script suivant dans la section Conditions de recherche de l’éditeur de code :
- Dans le groupe répétitif, créez un élément Character String destiné à capturer une ligne de caractères. Nommez-le “NameLine”.
-
Le texte recherché peut contenir des lettres majuscules et minuscules, ainsi qu’un ensemble de signes de ponctuation. Configurez deux jeux de caractères distincts :
- Le premier jeu contient toutes les lettres latines majuscules et minuscules. Pour ajouter des caractères diacrités, modifiez la sous-plage Unicode ou collez directement les caractères dans le champ Caractères sélectionnés.
- Le second jeu contient les signes de ponctuation suivants : ,-.()’. Pour éviter que la chaîne ne contienne uniquement des signes de ponctuation, définissez Portion dans le texte, % sur 40 % pour le second jeu.
- Désactivez l’option Rechercher des parties de mots.
- Indiquez la zone de recherche de l’élément “NameLine” : sous l’élément “kwPatientTitle” et au plus près de celui-ci.
- Cliquez sur Match et examinez l’arbre des hypothèses. Deux chaînes de caractères sont trouvées, mais la seconde contient l’adresse du patient.
-
Pour exclure l’adresse des résultats de recherche, ajoutez une condition de recherche par script. Sélectionnez l’élément de recherche “NameLine” et ouvrez l’éditeur de code Conditions de recherche. Collez le script suivant : il suppose que la première ligne contient un nom complet si elle comporte une virgule et un espace. Si un nom complet est trouvé, le groupe répétitif cesse de rechercher une deuxième instance :
- Cliquez sur Match et vérifiez que le nom est correctement trouvé.
Configurez l’élément Address
- À l’intérieur de “PatientGroup”, créez un élément de recherche Character String nommé “Address” avec la même configuration de jeu de caractères que l’élément “NameLine”.
-
Définissez la zone de recherche de l’élément à l’aide du code. L’adresse doit se trouver sous “NameLine” ou, si cet élément est introuvable, sous la première ligne de l’élément “NameAddressParagraph” :
- Désactivez l’option Search for parts of words.
- Cliquez sur Match.

Créez et associez les champs du patient
| Nom | Type | Élément de recherche |
|---|---|---|
| Nom | champ Text dans le groupe “Patient” | NameLine |
| Adresse | champ Text dans le groupe “Patient” | Address |
Extraction du type d’arrêt maladie
Créer le TypeOfSickNoteGroup
Configurer le PrimaryGroup
-
Limitez la zone de recherche du groupe d’éléments à l’aide du code — à droite de l’élément “PatientGroup” et au-dessus de l’élément “DoctorAreaGroup” (qui sera créé plus tard) :
- Créez un élément de recherche Static Text appelé “kwPrimary” (texte à trouver : “Erstbescheinigung”) et rendez-le obligatoire.
-
Créez un élément de recherche Object Collection appelé “Checkmark” avec les paramètres suivants : type
Checkmark, état de la cocheChecked, hauteur minimale10, largeur maximale20, hauteur maximale20. Indiquez que l’élément se situe à gauche de l’élément “kwPrimary” et au plus près de celui-ci. - Cliquez sur Associer.
Créer et configurer le SecondaryGroup
- Copiez-collez le groupe “PrimaryGroup”. Renommez la copie en “SecondaryGroup” — ce groupe est obligatoire.
- Renommez l’élément “kwPrimary” qu’il contient en “kwSecondary” et définissez le texte à trouver sur “Folgebescheinigung”. Indiquez la zone de recherche : sous l’élément “kwPrimary” du “PrimaryGroup”.
- Indiquez la zone de recherche de l’élément “Checkmark” : à gauche de “kwSecondary” et au plus près de celui-ci.
- L’élément de recherche Object Collection trouve une collection de tous les objets appropriés dans la zone de recherche. Si les coches se trouvent sur la même ligne, l’élément “Checkmark” du “SecondaryGroup” peut aussi trouver la coche primaire. Pour éviter cela, excluez la coche primaire de la zone de recherche.
- Cliquez sur Associer.

Créer et mapper les champs du type d’arrêt maladie
| Nom | Type | Élément de recherche |
|---|---|---|
| Type d’arrêt maladie | groupe de coches | |
| Primaire | Coche dans le groupe de coches “Type d’arrêt maladie” | PrimaryGroup -> Checkmark |
| Secondaire | Coche dans le groupe de coches “Type d’arrêt maladie” | SecondaryGroup -> Checkmark |
Extraction des données du médecin
Créez « DoctorAreaGroup » et « DataArea »
- Créez un élément Group nommé “DoctorAreaGroup” et définissez cet élément comme facultatif.
- Pour trouver le libellé de la zone, créez un élément Static Text nommé “kwDoctorTitle” (texte à rechercher : “Unterschrift des Arztes”).
- À l’intérieur du groupe “DoctorAreaGroup”, créez un autre groupe nommé “DataArea”.
Ajoutez les quatre Separator de bordure
| Name | Orientation | Longueur minimale | Zone de recherche |
|---|---|---|---|
SeparatorRight | Vertical | 180 | À droite de “kwDoctorTitle”, le plus proche du bord droit de la Page |
SeparatorLeft | Vertical | 180 | À gauche de “kwDoctorTitle”, à gauche de “SeparatorRight” (au cas où “kwDoctorTitle” n’aurait pas été trouvé), le plus proche de “SeparatorRight”, en dessous de “SeparatorRight” (cliquez sur l’icône à droite du nom du séparateur et sélectionnez Top Boundary of Region), Exclure “SeparatorRight” |
SeparatorBottom | Horizontal | 200 | En dessous de “kwDoctorTitle” (avec un ajustement de -10 points), à droite de “SeparatorLeft”, à gauche de “SeparatorRight”, le plus proche du bord inférieur de la Page (ce paramètre sera utile au cas où “kwDoctorTitle” n’aurait pas été trouvé) |
SeparatorTop | Horizontal | 200 | Au-dessus de “kwDoctorTitle”, à droite de “SeparatorLeft”, le plus proche de “TypeOfSickNoteGroup”, Exclure “SeparatorBottom” |
Créez l’élément BoxRegion
Créez le groupe DoctorGroup
Ajoutez l’Object Collection nommée Signature
| Property | Value |
|---|---|
| Name | Signature |
| Type | Picture |
| Minimum width | 15 |
| Minimum height | 15 |
| Maximum width | 600 |
| Maximum height | 350 |
| Search Conditions section of the Code Editor | La signature peut être partiellement située en dehors de la zone. Pour trouver l’image complète, agrandissez la zone de recherche de 100 points dans chaque direction : RSA: DoctorAreaGroup.DataArea.BoxRegion.Rect.GetInflated(100dot,100dot); |
Ajoutez le Paragraph DoctorInformation
| Property | Value |
|---|---|
| Name | DoctorInformation |
| Maximum line count | 6 |
| Search area | Au-dessus de “kwDoctorTitle”, Exclure “Signature” |
| Search Conditions section of the Code Editor | RSA: DoctorAreaGroup.DataArea.BoxRegion.Rect; |
Vérifiez que les éléments ont bien été trouvés

Créer et associer les champs du médecin
| Name | Type | Search element |
|---|---|---|
| Doctor Information | champ de Text dans le groupe “Doctor” | DoctorInformation |
| Signature | champ image dans le groupe “Doctor” | Signature |
