# HL7 v3

HL7 v3 es una especificación de interoperabilidad para transacciones entre sistemas de información y aplicaciones de software utilizados en el sector salud, que hace parte del conjunto de estándares HL7.
Al igual que el estándar de mensajería HL7 versión 2 (HL7 v2.x), HL7 v3 permite el intercambio electrónico de datos y las comunicaciones entre sistemas de información sanitarios. Sin embargo, HL7 v3 es una especificación mucho más robusta que reduce la ambigüedad semántica, mejora los procesos y resultados de HL7 v2.x.
La primera especificación del estándar HL7 v3 fue publicada en el año 2003 y es el resultado de muchos años de trabajo de la comunidad Health Level Seven.

## Dificultades con el estándar de mensajería HL7 v2.x

A pesar de que HL7 v2.x ha demostrado ser un estándar efectivo, es ampliamente utilizado por la industria de tecnología informática para la salud y se encuentra aún vigente, se hacía necesaria una evolución hacia una sintaxis XML y una metodología mucho más formal para el desarrollo de las especificaciones de los mensajes.
HL7 v2.x no cuenta con un modelo explícito de referencia de información, no se desarrolló sobre conceptos de orientación a objetos ni jerarquías y la sintaxis de los mensajes es primitiva (utiliza texto delimitado por Pipes).
En las especificaciones de HL7 v2.x los eventos disparadores y los campos de datos se describen únicamente en lenguaje natural. Las relaciones estructurales entre los campos de datos no son muy claras. Los segmentos de datos son reutilizados en muchos mensajes y las definiciones de los mensajes se reutilizan para muchos eventos disparadores. Con el fin de facilitar el uso extensivo, la mayoría de los campos de datos son opcionales. Los capítulos son inconsistentes en cuanto al uso de eventos disparadores, en relación con los códigos de estado.
Por otra parte, el proceso de desarrollo del estándar HL7 v2.x es totalmente "ad hoc" y no existe una metodología explícita para el desarrollo de mensajes y los miembros de HL7 no reciben ningún tipo de orientación formal en la construcción de las estructuras de mensajería.
Todo esto no implica que HL7 v2.x sea un estándar ineficiente o que su uso sea incorrecto, sino que se hacía necesario un marco de desarrollo de mensajes que permitiera que las especificaciones pudieran evolucionar manteniendo la integridad como estándar.
De hecho, las necesidades de la industria, han hecho que se hayan continuado desarrollando especificaciones de HL7 v2.x. (la versión 2.6 se publicó en el año 2007).
HL7 v2.x seguirá existiendo, mientras los usuarios y la industria adoptan o migran sus aplicaciones hacia HL7 v3.

## Características de HL7 v3

Cuenta con un Modelo de Referencia de Información: A diferencia de otros estándares de interoperabilidad, HL7 v3 cuenta con un modelo de información denominado RIM (Reference Information Model) que es una especificación estructurada de la información dentro del escenario de la salud. El RIM utiliza UML para representar gráficamente un modelo de clases que permite contextualizar cualquier evento que ocurra dentro de la operación de los servicios de salud. A partir del RIM, se construyen las especificaciones de mensajes específicos para diferentes dominios del escenario de salud.
Contempla el uso de sintaxis XML:Siguiendo la tendencia internacional de uso de XML como un lenguaje para el intercambio de información estructurada entre diferentes plataformas, HL7 v3 implementa su uso para la codificación de sus mensajes.
Utiliza principios de Orientación a Objetos (POO) y Lenguaje Unificado de Modelado (UML): El uso de estas metodologías formales, contribuyen a los procesos de desarrollo del estándar, conduciendo a un mayor detalle, claridad y precisión de las especificaciones, así como un mayor control sobre las diseños finales de los mensajes.
No se limita a la capa 7: Después de años de implementación de HL7 v2.x y de desarrollar estándares de interoperabilidad, HL7 se dio cuenta de que era necesario desarrollar un estándar comprensible, que incluya otras capas del Modelo OSI. Por esta razón HL7 v3 incluye especificaciones sobre XML, seguridad, vocabulario, modelado, metodología, etc.
Hace un fuerte énfasis en el uso de vocabularios controlados: HL7 v3 hace uso intensivo de codificaciones internacionales (LOINC, CIE-10, Snomed CT, etc) para la representación de la terminología utilizada en el escenario de la prestación de servicios de salud. Adicionalmente HL7 v3 propone listas de codificaciones propias para casos específicos.