Quizá muchos desconozcan que desde hace varios años se vienen implementando estándares de interoperabilidad que sirven para el intercambio electrónico de información clínica para el sector de la Salud; Los más utilizados son HL7 y DCOM. Pues bien, en este artículo vamos a conocer un poco acerca de HL7, ¿qué es?, ¿qué tipo de aplicación tiene?, ¿de qué estándares dispones? estas son algunas de las preguntas que vamos a poder conocer en este artículo, así como algunos componentes que tenemos disponibles en el mercado para nuestro Delphi.

¿Qué es HL7?

HL7 (Health Level Seven), es un conjunto de estándares cuyo principal objetivo es especificar mensajería para la comunicación de información clínica, demográfica y financiera, entre sistemas informáticos. Existen algunos estándares dentro de HL7 que tienen otros focos, pero la mensajería es uno de los aspectos más fuertes..

HL7 fue creado por una organización sin ánimo de lucro que lleva su mismo nombre y tiene su origen en los EEUU y hoy en día es una de las organizaciones más importantes de informática médica a nivel internacional.

Elementos de HL7

  • Trigger event: es un evento determinado, que debe suceder para lanzar el envío de un mensaje de un sistema a otro. Este evento puede ser lanzado por la acción de un usuario, o al cumplirse una determinada condición en el sistema (sin intervención humana).

  • Message: es el mensaje propiamente dicho, con la información útil. Cada dominio define un conjunto de estructuras de mensajes con propósitos determinados.

  • Acknowledge: debido a la naturaleza de algunas transacciones, existen envíos de mensajes que necesitan una confirmación del receptor. HL7 define estructuras de mensajes de confirmación para este tipo de transacciones, estos son los mensajes de respuesta conocidos como ACK.

  • Control Act: define la estructura intermedia en los mensajes HL7 que da contexto al mensaje, quien debe recibir el mensaje (lista de distribución) y quién es el autor son algunos de los datos que veremos en esta estructura, conteniendo la información del mensaje.

  • Transmission Infrastructure: define el formato general de los contenedores de mensajes HL7, donde se especifica el emisor, el receptor, el dispositivo que se utiliza para la comunicación (canal), e indica cómo se debe responder al mensaje. Su contenido es el ControlAct.

  • Query Infrastructure: define una estructura de mensaje especial, que es utilizada para realizar consultas sobre determinados sistemas usando mensajería HL7. Se utiliza para obtener datos de un sistema a través de un interfaz de consultas.

Ejemplos de mensajes HL7

La creciente necesidad de generar sistemas de información integrados regionalmente (ciudades, regiones, países) hizo necesario el desarrollo de un espectro más amplio de estándares HL7 que faciliten la interoperabilidad, a continuación podemos ver algunos ejemplos:

  • Mensajería HL7 Versión 2: Estándar de mensajería para el intercambio electrónico de datos de salud.
  • Mensajería HL7 Versión 3: Estándar de mensajería para el intercambio electrónico de datos de salud basada en el RIM.
  • CDA HL7: (Clinical Document Architecture) Estándar de arquitectura de documentos clínicos electrónicos.
  • SPL HL7: (Structured Product Labeling) Estándar electrónico de etiquetado de medicamentos.
  • HL7 Medical Records: Estándar de administración de Registros Médicos.
  • GELLO: Estándar para la expresión de reglas de soporte de decisiones clínicas.
  • Arden Sintax: Es estándar sintáctico (if then) para compartir reglas de conocimiento clínico.
  • CCOW: Es un estándar para frameworks que facilita compartir contexto entre aplicaciones.

Ejemplo de mensaje HL7 v2 formato PIPELINE

MSH|^~\&|app|sender|HL7API|PKB|201303080949||SIU^S13|ABC0000000001|P|2.4
PID|||999999^^^NHS^NH||Smith^John^Joe^^Mr||19700101|M|||My flat name^1,Road^London^London^SW1AA^GBR||
john.smith@hotmail.com^NET~01234567890^PRN~07123456789^PRS|john.smith@company.com^NET~01234098765^WPN||||||||||||||||N|
SCH|ID123 

Ejemplo de mensaje HL7 v3 formato XML

<POLB_IN224200 ITSVersion="XML_1.0" xmlns="urn:hl7-org:v3"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
 <id root="2.16.840.1.113883.19.1122.7" extension="CNTRL-3456"/>
 <creationTime value="200202150930-0400"/>
 <!-- The version of the datatypes/RIM/vocabulary used is that of May 2006 -->
 <versionCode code="2006-05"/>
 <!-- interaction id= Observation Event Complete, w/o Receiver Responsibilities -->
 <interactionId root="2.16.840.1.113883.1.6" extension="POLB_IN224200"/>
 <processingCode code="P"/>
 <processingModeCode nullFlavor="OTH"/>
 <acceptAckCode code="ER"/>
 <receiver typeCode="RCV">
   <device classCode="DEV" determinerCode="INSTANCE">
     <id extension="GHH LAB" root="2.16.840.1.113883.19.1122.1"/>
     <asLocatedEntity classCode="LOCE">
       <location classCode="PLC" determinerCode="INSTANCE">
         <id root="2.16.840.1.113883.19.1122.2" extension="ELAB-3"/>
       </location>
     </asLocatedEntity>
   </device>
 </receiver>
 <sender typeCode="SND">
   <device classCode="DEV" determinerCode="INSTANCE">
     <id root="2.16.840.1.113883.19.1122.1" extension="GHH OE"/>
     <asLocatedEntity classCode="LOCE">
       <location classCode="PLC" determinerCode="INSTANCE">
         <id root="2.16.840.1.113883.19.1122.2" extension="BLDG24"/>
       </location>
     </asLocatedEntity>
   </device>
 </sender>
 <! –- Trigger Event Control Act & Domain Content -- >
 </POLB_IN224200>

Componentes para trabajar con HL7

Realmente son pocos los componentes que podemos encontrar en el mercado para Delphi y la mensajería HL7, algunos de ellos ya se encuentran obsoletos.

Os dejamos un listado de componentes que han publicado desde .hl7.org donde se encuentran implementaciones de código abierto para diferentes lenguajes de programación utilizando otro nuevo estándar llamado FHIR y que viene a mejorar HL7 con nuevas características modernas de desarrollo web.

¿Quieres contratarnos?

Ahora que nos conoces un poco mejor, si quieres crear sistemas que se sincronicen entre ellos con HL7, ya sabes que forma parte de nuestro día a día y que podemos ayudarte externalizando parte de tus proyectos, es algo que hacemos a diario con gran parte de nuestros clientes del sector Salud.

Espero este artículo haya sido interesante y recuerda, si necesitas una consultoría avanzada sobre HL7 o Delphi puedes contactar con nosotros en nuestro formulario de contacto de Abatic

Acerca de Emilio Pérez

Programando desde los 9 años y trabajando desde los 19 con Delphi.
Oracle y PostgreSQL DBA y Developer.
Especializado en formar y enseñar a programar.
CEO de Abatic y Cudacu

Reader Interactions

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

He leído y acepto la política de privacidad

Responsable: ABATIC SOLUCIONES TECNOLOGICAS SLU
Finalidad: gestionar los comentarios.
Legitimación: tu consentimiento.
Destinatarios: los datos que me facilitas estarán ubicados en los servidores de Nicalia dentro de la UE. Ver política de privacidad de Nicalia.
Derechos: podrás ejercer tus derechos, entre otros, a acceder, rectificar, limitar, suprimir, portabilidad y olvido de tus datos.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.