Módulo 13 · Lección 3 de 6
FHIR: recursos, API web y perfiles
Qué aporta FHIR frente a HL7 v2: recursos modulares, una API REST con JSON, perfiles y guías de implementación, y el resumen internacional de paciente.
- 25 min
- 9 fuentes
- 6 tarjetas
- Actualizada el 26 de octubre de 2026
FHIR es la respuesta de HL7 a la web. En lugar de mensajes de texto con delimitadores, define recursos (paciente, episodio, observación…) con dirección propia, que se leen, crean y buscan por una API como cualquier servicio web, en JSON o XML. Su núcleo es deliberadamente pequeño: cada país, región o hospital lo adapta con perfiles y guías de implementación. No sustituye de golpe a HL7 v2: conviven, y existen mapas oficiales entre ambos.
Qué es FHIR y de dónde viene
HL7 lo presenta como un marco de estándares de nueva generación que combina lo mejor de HL7 v2, HL7 v3 y CDA 1. Se apoya en estándares web comunes: XML, JSON, HTTP y OAuth, entre otros 1. Las soluciones FHIR se construyen con componentes modulares llamados recursos 1.
La versión publicada en hl7.org a fecha de consulta es la Release 5 (v5.0.0) 1. La Release 6 está en proceso de votación; su primer borrador es de diciembre de 2023 5. Muchas implementaciones y guías siguen basadas en la Release 4: por ejemplo, la guía oficial de traducción de v2 a FHIR y la del resumen internacional de paciente 6 7. Fecha de publicación final de la Release 6: [PENDIENTE: no publicada por HL7 a 26-oct-2026].
Recursos: piezas pequeñas y enlazadas
FHIR tiene recursos para conceptos administrativos, como paciente, profesional, organización y dispositivo, y para muchos conceptos clínicos 1. Cada recurso es una pieza con sentido propio, que referencia a otras. Los segmentos de HL7 v2 corresponden, más o menos, a la idea de recurso de FHIR 4. La guía oficial de traducción lo concreta 6:
| Segmento HL7 v2 | Recurso FHIR de destino |
|---|---|
PID (paciente) | Patient |
PV1 (visita) | Encounter |
ORC / OBR (petición) | ServiceRequest, DiagnosticReport |
OBX (resultado) | Observation |
AL1 (alergia) | AllergyIntolerance |
DG1 (diagnóstico) | Condition |
Una diferencia de fondo: el núcleo de los recursos FHIR es mucho más limitado que los segmentos de v2, que incluyen muchos elementos de uso raro 4. Lo que falta se añade con extensiones, que, a diferencia de los segmentos Z de v2, llevan una definición pública 3. Otra diferencia: los recursos llevan una parte legible por personas, algo que en general las instancias v2 no tienen 4.
Un resultado de laboratorio, inventado y simplificado, como recurso Observation en JSON:
{
"resourceType": "Observation",
"id": "obs-001",
"status": "final",
"code": {"coding": [{"system": "http://loinc.org", "code": "2951-2",
"display": "Sodium [Moles/volume] in Serum or Plasma"}]},
"subject": {"reference": "Patient/pac-123"},
"effectiveDateTime": "2026-10-26T09:00:00+01:00",
"valueQuantity": {"value": 139, "unit": "mmol/L",
"system": "http://unitsofmeasure.org", "code": "mmol/L"}
}
La prueba se identifica con el código LOINC 2951-2, sodio en suero o plasma 9, y la unidad, con un sistema de unidades estándar. El paciente no se copia dentro: se referencia.
La API: leer, buscar y crear por la web
FHIR se describe como una especificación RESTful 2. Cada recurso tiene una dirección con el patrón [base]/[tipo]/[id] 2, y las operaciones son las del protocolo web 2:
| Interacción | Verbo | Ejemplo |
|---|---|---|
| read: leer el contenido actual | GET | GET [base]/Patient/pac-123 |
| search: buscar con criterios | GET o POST | GET [base]/Observation?patient=pac-123&code=http://loinc.org|2951-2 |
| create: crear en el servidor | POST | POST [base]/Observation |
| update: nueva versión de un recurso | PUT | PUT [base]/Observation/obs-001 |
Los formatos oficiales son application/fhir+json y application/fhir+xml 2. La seguridad (quién puede leer qué) no la resuelve el núcleo del estándar: se apoya en mecanismos web como OAuth 1.
Además de la API, FHIR admite mensajería por eventos, parecida a la de v2, y documentos 1 4. Un mismo recurso Observation puede viajar dentro de un mensaje, formar parte de un documento o servirse por la API.
Perfiles y guías de implementación
El estándar base casi nunca se usa tal cual: HL7 advierte que suele requerir más adaptación a cada contexto 3. Para eso hay tres herramientas 3:
- Perfil: un conjunto de restricciones sobre un recurso. Por ejemplo, que el paciente lleve obligatoriamente el identificador sanitario autonómico y que el sexo use un conjunto de códigos concreto.
- Extensión: un elemento nuevo, identificado por una dirección web que define su significado y dónde puede usarse.
- Guía de implementación: «a coherent and bounded set of adaptations that are published as a single unit».
Las guías forman una jerarquía: de los acuerdos internacionales a los de una sola institución, cada nivel añade acuerdos «with an ever smaller community» 3. Que dos sistemas «hablen FHIR» no basta. Hay que preguntar qué guía cumplen.
Un ejemplo de guía: el resumen de paciente
La guía International Patient Summary (IPS) define un conjunto de datos «minimal and non-exhaustive; specialty-agnostic and condition-independent; but still clinically relevant» 7. Está pensada para la atención no planificada y transfronteriza, aunque no se limita a ella, y la especifica la norma ISO 27269 7. Su versión publicada es la 2.0.1, de uso a prueba, basada en FHIR Release 4 7.
Encaja con lo que exige Europa. Las historias clínicas resumidas son la primera categoría prioritaria del Espacio Europeo de Datos de Salud (art. 14.1.a) 8. El formato europeo de intercambio deberá incluir conjuntos de datos armonizados, sistemas de codificación y especificaciones técnicas, con «normas y perfiles» (art. 15.1) 8. Si ese formato se apoyará en FHIR, en otro estándar o en varios: [PENDIENTE: actos de ejecución del art. 15 del Reglamento (UE) 2025/327, no publicados a 26-oct-2026].
Caso práctico
Un servicio de salud quiere que una aplicación móvil muestre al paciente sus últimos resultados de analítica. El laboratorio y la historia clínica del hospital solo hablan HL7 v2.
La solución habitual es una capa de traducción: el motor de integración recibe cada ORU^R01, convierte los OBX en recursos Observation siguiendo la guía oficial de v2 a FHIR 6 y los guarda en un servidor FHIR. La aplicación consulta ese servidor con búsquedas como GET [base]/Observation?patient=… 2.
El punto débil no es técnico. Si el laboratorio usa códigos locales, la aplicación mostrará GLU sin explicar qué es ni podrá agrupar la misma prueba hecha en dos centros. La conversión de formato funciona; la interoperabilidad semántica requiere además un código estándar.
Qué implica para los sistemas
| Elemento | Qué hay que decidir o mantener | Con quién |
|---|---|---|
| Servidor FHIR | Qué recursos expone, con qué perfiles y para qué usuarios | Aplicaciones de profesionales y de pacientes, otros centros |
| Guías de implementación | Qué guía nacional o regional se cumple y en qué versión de FHIR | Servicio de salud, Ministerio, proyectos europeos |
| Conversión v2 a FHIR | Mapas de segmentos a recursos y de códigos locales a estándar | Motor de integración y sistemas departamentales |
| Seguridad de la API | Autenticación, permisos por recurso, registro de accesos | Identidad corporativa, protección de datos |
Tarjetas de esta lección (6)
- Recurso FHIR
- Unidad modular de información de FHIR, con estructura definida e identificador propio: Patient, Encounter, Observation, ServiceRequest, DiagnosticReport…
- Perfil FHIR
- Conjunto de restricciones sobre un recurso base para un uso concreto: qué elementos son obligatorios, qué códigos se admiten, qué extensiones se añaden.
- Extensión FHIR
- Elemento añadido a un recurso, identificado por una dirección web única que define su significado, para recoger datos que el núcleo del estándar no prevé.
- Guía de implementación
- Conjunto coherente de perfiles, extensiones y reglas publicado como una unidad para una comunidad: internacional, nacional, regional o de una sola institución.
- IPS
- International Patient Summary: conjunto mínimo de datos clínicos de una persona, pensado para la atención no planificada y transfronteriza; lo especifica la norma ISO 27269.
- REST
- Estilo de arquitectura web en que cada recurso tiene su dirección y se manipula con las operaciones estándar del protocolo HTTP: leer, crear, actualizar, borrar, buscar.
Fuentes
- HL7 International — FHIR Release 5 (v5.0.0): resumen del estándar (FHIR Overview)
- HL7 International — FHIR Release 5: API RESTful (http.html)
- HL7 International — FHIR Release 5: perfiles, extensiones y guías de implementación (profiling.html)
- HL7 International — FHIR Release 5: comparación con HL7 v2 (Comparison-v2)
- HL7 International — FHIR Release 6, primer borrador a votación (6.0.0-ballot1)
- HL7 International — HL7 Version 2 to FHIR Implementation Guide 1.0.0 (STU 1)
- HL7 International — International Patient Summary Implementation Guide (STU 2)
- Reglamento (UE) 2025/327, relativo al Espacio Europeo de Datos de Salud (DOUE L de 5.3.2025), arts. 14 y 15
- SNOMED International — LOINC Implementation Guide, 2.1 «LOINC Features»