Continuando con los documentos alemanes, configure la actividad Extraction Rules para ellos. Fast Learning ya se ha encargado de algunos campos; esta actividad abarca el resto.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.
Antes de comenzar
Abra la actividad en el Activity Editor
- Abra la actividad “Sick Note DE” en el Activity Editor.
- Seleccione uno de los documentos del conjunto de documentos.
Extracción de los datos del paciente
Cree el grupo PatientDataArea
- Haga clic en Create Element y seleccione el elemento grupo en la lista desplegable. Cambie su nombre a “PatientDataArea”.
- En la sección En qué condiciones, cambie el valor de Element is a Optional.
Localice la etiqueta del paciente con un elemento de texto estático
- Haga clic en Create Element y seleccione el elemento Texto estático de la lista desplegable. Cambie su nombre a “kwPatientTitle”.
- Introduzca el texto “Name, Vorname” en el campo Texto para buscar del panel Propiedades.
- Haga clic en Match. Cuando finalice el procesamiento, verá el Árbol de hipótesis debajo del documento. Asegúrese de que Advanced Designer haya encontrado correctamente el texto estático deseado: un punto verde junto al nombre del elemento indica que la coincidencia se encontró correctamente. Haga clic en el nombre del elemento en el Árbol de hipótesis para ver un marco violeta alrededor de la región correspondiente del documento.
Encuentre el límite inferior con un separador
- Agregue un elemento separador al grupo y asígnele el nombre “SeparatorBottom”. Establezca su longitud mínima en 200.
- Haga clic con el botón derecho en el elemento y seleccione Match Element en el menú contextual. El Árbol de hipótesis contiene muchos puntos verdes; corresponden a distintos separadores que cumplen los criterios de búsqueda. Haga clic en cada punto para ver el objeto correspondiente en la imagen.
- Para acotar los criterios de búsqueda, especifique el área de búsqueda del separador. Haga clic en Match para encontrar el elemento “kwPatientTitle”, que se utilizará como elemento de anclaje. En la sección Dónde buscar del panel Propiedades, haga clic en Draw on Image. Seleccione el elemento “kwPatientTitle” en el documento y haga clic en el icono de flecha hacia abajo para especificar el área de búsqueda debajo de la palabra clave, y en el icono más cercano para buscar el separador más próximo a la palabra clave.
- Haga clic en Match y compruebe que Advanced Designer haya encontrado el separador debajo del elemento “kwPatientTitle”.
Busque el párrafo con el nombre y la dirección
- Cree un elemento de búsqueda de Párrafo y asígnele el nombre “NameAddressParagraph”.
- Cambie Text alignment a Left.
- Los datos del paciente ocupan de dos a cinco líneas, así que especifique Line count de 2 a 5.
- Especifique el área de búsqueda del párrafo mediante el menú Add en la sección Where to search. El elemento debe estar situado debajo del elemento “kwPatientTitle” y encima del elemento “SeparatorBottom”.
- Haga clic en Match.
Crear PatientGroup
Configurar el grupo repetido NameGroup
- Cree un elemento de búsqueda Grupo repetido y asígnele el nombre “NameGroup”. Especifique 2 como número máximo de repeticiones. Haga que el elemento sea opcional.
-
Para restringir el área de búsqueda a las líneas que forman parte del párrafo “NameAddressParagraph”, haga clic en el icono del editor de código situado debajo de la imagen del documento y pegue el siguiente script en la sección Search Conditions del Code Editor:
- Dentro del grupo repetido, cree un elemento Cadena de caracteres diseñado para capturar una línea de caracteres. Asígnele el nombre “NameLine”.
-
El texto que buscamos puede contener letras mayúsculas y minúsculas, así como un conjunto de signos de puntuación. Configure dos conjuntos de caracteres independientes:
- El primer conjunto contiene todas las letras latinas mayúsculas y minúsculas. Para agregar caracteres con signos diacríticos, cambie el subrango Unicode o pegue los caracteres directamente en el campo Selected characters.
- El segundo conjunto contiene los signos de puntuación: ,-.()’. Para evitar que la cadena contenga únicamente signos de puntuación, establezca Portion in text, % para el segundo conjunto en 40%.
- Desactive la opción Search for parts of words.
- Especifique el área de búsqueda para el elemento “NameLine”: debajo del elemento “kwPatientTitle” y lo más cerca posible de él.
- Haga clic en Match y revise el Tree of Hypotheses. Se encuentran dos cadenas de caracteres, pero la segunda contiene la dirección del paciente.
-
Para excluir la dirección de los resultados de búsqueda, agregue una condición de búsqueda mediante script. Seleccione el elemento de búsqueda “NameLine” y abra el editor de código de Search Conditions. Pegue el siguiente script: se asume que la primera línea contiene un nombre completo si incluye una coma y un espacio; si se encuentra un nombre completo, el grupo repetido deja de buscar una segunda instancia:
- Haga clic en Match y asegúrese de que el nombre se haya encontrado correctamente.
Configurar el elemento Address
- Dentro de “PatientGroup”, cree un elemento de búsqueda de cadena de caracteres llamado “Address” con la misma configuración del conjunto de caracteres que el elemento “NameLine”.
-
Especifique el área de búsqueda del elemento mediante código. La dirección debe estar situada debajo de “NameLine” o, si no se encontró ese elemento, debajo de la primera línea del elemento “NameAddressParagraph”:
- Desactive la opción Buscar partes de palabras.
- Haga clic en Match.

Crear y mapear los campos del paciente
| Nombre | Tipo | Elemento de búsqueda |
|---|---|---|
| Name | Campo de texto en el grupo “Paciente” | NameLine |
| Address | Campo de texto en el grupo “Paciente” | Address |
Extracción del tipo de parte de baja por enfermedad
Crear el TypeOfSickNoteGroup
Configurar el PrimaryGroup
-
Restrinja el área de búsqueda del grupo de elementos mediante código: a la derecha del elemento “PatientGroup” y por encima del elemento “DoctorAreaGroup” (que se creará más adelante):
- Cree un elemento de búsqueda texto estático llamado “kwPrimary” (texto que se debe buscar: “Erstbescheinigung”) y márquelo como obligatorio.
-
Cree un elemento de búsqueda colección de objetos llamado “Checkmark” con esta configuración: Type
Checkmark, Checkmark stateChecked, Minimum height10, Maximum width20, Maximum height20. Especifique que el elemento está situado a la izquierda del elemento “kwPrimary” y es el más cercano a este. - Haga clic en Match.
Crear y configurar el SecondaryGroup
- Copie y pegue el grupo “PrimaryGroup”. Cambie el nombre del grupo copiado a “SecondaryGroup”; este grupo es obligatorio.
- Cambie el nombre del elemento “kwPrimary” dentro de él a “kwSecondary” y establezca el texto que se debe buscar en “Folgebescheinigung”. Especifique el área de búsqueda: debajo del elemento “kwPrimary” de “PrimaryGroup”.
- Especifique el área de búsqueda para el elemento “Checkmark”: a la izquierda de “kwSecondary” y el más cercano a este.
- El elemento de búsqueda colección de objetos encuentra una colección de todos los objetos adecuados dentro del área de búsqueda. Si las marcas de verificación están situadas en la misma línea, el elemento “Checkmark” de “SecondaryGroup” también puede encontrar la marca de verificación principal. Para evitarlo, excluya la marca de verificación principal del área de búsqueda.
- Haga clic en Match.

Crear y asignar los campos del tipo de parte de baja por enfermedad
| Nombre | Tipo | Elemento de búsqueda |
|---|---|---|
| Tipo de parte de baja por enfermedad | grupo de marcas de verificación | |
| Principal | marca de verificación en el grupo de marcas de verificación “Tipo de parte de baja por enfermedad” | PrimaryGroup -> Checkmark |
| Secundario | marca de verificación en el grupo de marcas de verificación “Tipo de parte de baja por enfermedad” | SecondaryGroup -> Checkmark |
Extracción de los datos del médico
Cree DoctorAreaGroup y DataArea
- Cree un elemento Group llamado “DoctorAreaGroup” y haga que el elemento sea opcional.
- Para encontrar la etiqueta del cuadro, cree un elemento Static Text llamado “kwDoctorTitle” (texto a buscar: “Unterschrift des Arztes”).
- Dentro del grupo “DoctorAreaGroup”, cree otro grupo llamado “DataArea”.
Agregue los cuatro separadores delimitadores
| Name | Orientation | Minimum length | Search area |
|---|---|---|---|
SeparatorRight | Vertical | 180 | A la derecha de “kwDoctorTitle”, más cercano al borde derecho de la página |
SeparatorLeft | Vertical | 180 | A la izquierda de “kwDoctorTitle”, a la izquierda de “SeparatorRight” (en caso de que no se haya encontrado “kwDoctorTitle”), más cercano a “SeparatorRight”, por debajo de “SeparatorRight” (haga clic en el icono a la derecha del nombre del separador y seleccione Top Boundary of Region), excluir “SeparatorRight” |
SeparatorBottom | Horizontal | 200 | Por debajo de “kwDoctorTitle” (con un ajuste de -10 puntos), a la derecha de “SeparatorLeft”, a la izquierda de “SeparatorRight”, más cercano al borde inferior de la página (esta configuración será útil en caso de que no se haya encontrado “kwDoctorTitle”) |
SeparatorTop | Horizontal | 200 | Por encima de “kwDoctorTitle”, a la derecha de “SeparatorLeft”, más cercano a “TypeOfSickNoteGroup”, excluir “SeparatorBottom” |
Cree BoxRegion
Crear el grupo DoctorGroup
Añada la colección de objetos 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 firma puede estar ubicada parcialmente fuera del cuadro. Para encontrar la imagen completa, expandiremos el área de búsqueda en 100 puntos en cada dirección: RSA: DoctorAreaGroup.DataArea.BoxRegion.Rect.GetInflated(100dot,100dot); |
Agregue el párrafo "DoctorInformation"
| Property | Value |
|---|---|
| Name | DoctorInformation |
| Maximum line count | 6 |
| Search area | Por encima de “kwDoctorTitle”, excluir “Signature” |
| Search Conditions section of the Code Editor | RSA: DoctorAreaGroup.DataArea.BoxRegion.Rect; |
Compruebe que se hayan encontrado los elementos

Cree y asigne los campos del médico
| Name | Type | Search element |
|---|---|---|
| Doctor Information | Campo de texto en el grupo “Doctor” | DoctorInformation |
| Signature | Campo de imagen en el grupo “Doctor” | Signature |
