Artículo
· 7 mar, 2023 Lectura de 12 min

Instalación y adaptación de EMPI en modo Standalone - Configuración básica

Hemos visto como instalar nuestro EMPI en modo standalone y, parafraseando a Fray Luis de León, como decíamos ayer, procederemos a exponer como realizar una configuración básica, sin demasiadas pretensiones, de nuestro EMPI.

Primeramente deberemos realizar la configuración básica inicial, y para ello deberemos acceder a la opción del menú de Configuración de nuestro Registry.

Desde esta opción tendremos acceso a la tabla de configuración básica de nuestro Registry:

En este menú deberemos incluir los siguientes parámetros y actualizar el valor de los que ya estén presentes:

KEY VALUE DESCRIPTION
\HSPI\LinkageDefinition Local.Linkage.Definition Clase principal encargada de la gestionar las posibles vinculaciones entre datos de pacientes.
\HSPI\CompositeRecordDefinition Local.CompositeRecord.Transient.Definition Clase responsable de la visualización de datos de los pacientes.
\HSPI\PreserveHistoricalData 1 Con valor a 1 mantenemos los datos históricos del paciente para su uso en el proceso de vinculación. Con 0 se descartan.
\MPI\CompositeHSPISearchResults 1 Con valor a 1 habilitamos a la búsqueda de paciente para devolver los resultados como un CompositeRecord.
\TimeZone\SystemDefault LOCAL Definición de la zona horaria a usar.
\IHE\AffinityDomain El valor que quieras Dominio responsable de la asignación del MPIID, debe estar definido en OID Registry.

Antes de entrar más en detalle con los diferentes archivos de configuración que hemos definido en la configuración del Registry vamos a explicar brevemente el concepto que maneja nuestro EMPI denominado NICE

¿Qué es NICE?

NICE corresponde a las iniciales de:

  • Normalize: normalización de los datos del paciente. Todos los datos se pasan a minúsculas y se eliminan los signos de puntuación.
  • Index: indexación del paciente. Definimos una serie de campos que nos generarán índices y que luego utilizaremos para la búsqueda de coincidencias entre pacientes.
  • Compare: con las coincidencias obtenidas comparando índices aplicamos una serie de puntuaciones a cada una de las posibles coincidencias o divergencias entre los datos de los pacientes con índices comunes, obteniendo finalmente una puntuación en base a los valores asignados.
  • Evaluation: evaluación del valor numérico obtenido en la fase anterior en relación a una serie de límites previamente configurados. Tras esta evaluación se podrán vincular automáticamente los pacientes, descartar dicha evaluación o dejarlo en manos del usuario.

Este será el proceso que cualquier dato que reciba nuestro EMPI recorrerá desde el momento en el que los datos entren en el sistema. Podréis preguntaros...¿qué tiene que ver este proceso NICE con la configuración que hemos definido en el punto anterior? Muy sencillo, la clase que hemos configurado en \HSPI\LinkageDefinition es la que contendrá todas las configuraciones necesarias para realizar el proceso: Local.Linkage.Definition

Si tenéis alguna curiosidad podéis consultar aquí mismo la definición de dicha clase.

 
Local.Linkage.Definition

En esta clase es donde realizaremos la configuración básica de nuestro EMPI, desde la definición de campos de los índices a la definición de los pesos que tendrá en el proceso de comparación cada uno de los campos de datos del paciente. Como observaréis, configurar dichas opciones desde el propio fichero resultaría poco amigable, pero no os preocupéis, HealthShare tiene habilitada una pantalla a tal efecto y a la que accederemos a través de HealtShare --> HSPIDATA (o como lo hayáis declarado en vuestra instancia) --> Definition Designer :

 

Echemos un vistazo a las configuraciones más relevantes:

  • Locale: nos permitirá configurar la localización de nuestros datos para que en el proceso de NICE se utilicen los diccionarios más apropiados al idioma y particularidades locales.
  • Enable Domain Conflict: permite definir si deseamos que se asigne un nuevo identificador de EMPI a los datos de un paciente que sean parecidos a otro que ya tengamos registrado y cuyo origen sea el mismo.
  • Exclusion condition: criterios de exclusión del proceso de NICE de determinados pacientes, se deberá codificar en ObjectScript (ej. originalObject.Name.Given = 'test').

Si continuamos el recorrido por las pestañas disponibles:

Desde la pestaña Data Classes podremos visualizar la información relativa a las clases de ObjectScript que se usan para el registro de los pacientes y su posterior búsqueda. A priori estas clases podrían ser sustituidas por otras, pero es más recomendable utilizar las funcionalidades que permiten la extensión de la información presente en dichas clases. Estas extensiones las explicaremos en un artículo posterior.

En esta pestaña de Parameters podremos configurar todo lo necesario para el proceso de comparación del que hemos hablado anteriormente, los datos del paciente que vamos a tener encuenta, los pesos máximos asignados a dichos datos (tanto cuando se dé una coincidencia como cuando no),  la clase responsable del cálculo del peso, valores del dato que deban considerarse como nulos e incluso funciones propias para normalizar los datos o considerar el valor como coincidente fuera de la definición de la case responsable de establecer el peso.

Para este artículo dejaremos los valores por defecto.

Un punto interesante de esta pantalla se encuentra en su parte superior, la correspondiente a la lista de valores límites:

 

Como podéis observar disponemos de 3 posibles límites:

  • Límite de revisión: cualquier comparación entre pacientes que no alcance dicha puntuación será descartada, los valores por encima de él y por debajo del límite de autoenlazado quedarán en estado de revisión para que un usuario decida la vinculación de forma manual.
  • Límite de autoenlazado: cuando una comparación supere este valor implicará una vinculación entre los pacientes de forma automática. Si no se super el límite de validar quedarán enlazados pendiente de validación.
  • Límite de validación: las comparaciones que superen este valor será automáticamente enlazados y validados, siendo transparente para el usuario.

Finalmente tendremos la pestaña que nos permitirá la definición de los campos que formarán parte de los índices que utilizaremos en el proceso de indexación de cada paciente.

Podremos definir tantos conjuntos de datos como deseemos indicando también el número de coincidencias que se deben cumplir. Para explicarlo de un modo más sencillo, en la imagen anterior podemos ver como hemos elegido 5 posibles campos para formar parte del índice, el cual estará formado por 3 campos (como indica el Minimum Matches), por lo tanto para la generación de los índices realizaremos permutaciones de 5 elementos tomados de 3 en 3.

Finalmente vemos que tenemos los siguientes botones disponibles:

  • Use Default Weights: como su nombre indica nos configurará los pesos asignados a los campos con los valores por defecto, perdiendo cualquier modificación realizada.
  • Build All Linkage Data: reconstruirá todos los datos de vinculaciones entre pacientes. Esta opción será obligatoria cuando se introduzca cualquier cambio en las configuraciones.
  • Adjust Thresholds: nos mostrará una gráfica de barras con subconjuntos de puntuaciones entre pacientes, mostrando donde se ubican entre los límites definidos.
  • MLE Calibration: debido a las posibles complejidades en la configuración de los límites se dispone de una herramienta de Machine Learning que alimentada por los ciclos de ingesta de pacientes, vinculaciones entre los mismos y revisiones por parte de los usuarios que nos sugerirá mejoras en nuestra configuración de cara a disminuir en la medida de lo posible la intervención humana en el proceso de revisión y vinculación.

Pues bien, esta sería la configuración básica para poder empezar a trabajar con nuestro EMPI, en la próxima entrega revisaremos la producción que tenemos disponible por defecto y haremos un ejemplo de ingesta de datos de pacientes mediante mensajería HL7.

Si tenéis cualquier comentario o sugerencia no dudéis en escribirla en los comentarios.

Comentarios (0)1
Inicie sesión o regístrese para continuar