---
{
  "title": "Terminology FHIR en dos fases: Autoría y Uso",
  "description": "Por qué la Terminology FHIR se divide en fases de autoría y tiempo de ejecución: sistemas de códigos, conjuntos de valores, desnormalización de expansiones y el rol de un servidor FHIR.",
  "date": "2019-04-30",
  "author": "Nikolai Ryzhikov",
  "reading-time": "2 min read",
  "tags": [
    "Terminology",
    "FHIR Standard"
  ],
  "seo-tags": [
    "API",
    "FHIR",
    "Terminology"
  ]
}
---

> For the complete documentation index, see [llms.txt](https://www.health-samurai.io/llms.txt).
> Use it to discover all available pages before guessing URLs.

---
[Terminology](/blog/introducing-hybrid-terminology-engine) en la informática de salud es un aspecto muy importante y complejo. Gran parte de la interoperabilidad depende de con qué precisión se **codifican** los datos.

La especificación del servicio de [Terminology](/blog/automate-terminology-translation-with-aidbox-tx-engine) de FHIR hace un excelente trabajo al proporcionar a los desarrolladores una API sencilla y directa para el [servicio de terminología](https://www.hl7.org/fhir/terminology-service.html).

La gestión de Terminology es un dominio complejo: hay que mantener actualizados los sistemas de códigos externos, comprender su estructura interna y disponer de herramientas de autoría, versionado y publicación.

Podemos imaginar una arquitectura con un [servidor FHIR](https://www.health-samurai.io/fhir-server) y un servicio de Terminology separados. Sin embargo, un «buen» [servidor FHIR](https://www.health-samurai.io/fhir-server) tiene una dependencia bastante fuerte de Terminology para validación, búsquedas y consultas de subsunción. Implementar la especificación completa del servicio de Terminology en el [servidor FHIR](https://www.health-samurai.io/fhir-server) es una tarea considerable. Usar un servicio de Terminology externo hace que el [servidor FHIR](https://www.health-samurai.io/fhir-server) no sea autónomo. Así que hay una concesión :(

> Empiece a usar el [servidor FHIR](https://www.health-samurai.io/fhir-server) de Aidbox para almacenamiento de datos, integraciones, analítica sanitaria y mucho más, o [contrate a nuestro equipo](https://www.health-samurai.io/services) para cubrir sus necesidades de desarrollo de software.

### Autoría frente a Uso

Si se examina con más detenimiento la [Terminology de FHIR](/articles/state-of-fhir-terminology-2024), se puede observar que puede descomponerse en dos partes: **autoría/gestión** y **uso**. Para los casos de **autoría**, se necesitan CodeSystems y herramientas de diseño de ValueSets actualizados, con motor de expansión, gestión de versiones, etc. Para el **uso**, se trabaja principalmente con ValueSets inmutables y es necesario proporcionar filtrado y búsqueda eficientes para la validación.

Para reducir el acoplamiento entre Terminology y el [servidor FHIR](https://www.health-samurai.io/fhir-server), podemos separar las responsabilidades de la siguiente manera:
- Diseñar ValueSets en el servicio de Terminology y publicarlos en forma expandida mediante algún tipo de API/formato de exportación masiva
- Cargar y utilizar ValueSets en forma optimizada en los [servidores FHIR](https://www.health-samurai.io/fhir-server)

A continuación se presentan los detalles técnicos de cómo se puede lograr esto.

### El recurso Concept

En [Aidbox](https://www.health-samurai.io/fhir-server) dividimos CodeSystem en información de cabecera y un conjunto de recursos [Concept](https://app.gitbook.com/@aidbox/s/project/terminology/concept) (aún no FHIR :) ), que tienen una estructura similar al elemento [CodeSystem.concept](https://www.hl7.org/fhir/codesystem-definitions.html#CodeSystem.concept) y al tipo de dato Coding. Esto nos permite traducir parte de la API del servicio de Terminology en una API FHIR unificada de CRUD/búsqueda sobre recursos Concept.

Convertimos las terminologías más populares en un conjunto de recursos Concept, que pueden distribuirse como archivos ndjson para una exportación/importación masiva eficiente. A continuación se muestra un ejemplo para LOINC:

> ---
*-* *code: 10000-8* ** *display: R wave duration in lead AVR* ** *names:   - R wave dur L-AVR   - Cardiac   - "Durat"   - "ECG"   ....* ** *property:* ** *loinc:* ** *relatednames2: Cardiac; Durat; ECG; EKG.MEASUREMENTS; ...* ** *method_typ: EKG* ** *classtype: '2'* ** *system: Heart* ** *time_aspct: Pt* ** *common_order_rank: '0'* ** *property: Time* ** *order_obs: Observation* ** *unitsrequired: Y           ....*

### Desnormalización de expansiones

Si añadimos al recurso Concept múltiples vínculos a Value Sets, podemos desnormalizar todas las expansiones sofisticadas de Value Sets de la siguiente manera:

> *code: 10000-8* *system:* [*http://loinc.org*](http://loinc.org/)***display: R wave duration in lead AVR* *valueSet: -* *reference: ValueSet/LL1162-8 -* *reference: ValueSet/another-vs*

El conjunto de Concepts con ValueSets desnormalizados puede volcarse en ndjson mediante una API de exportación masiva y cargarse en el [servidor FHIR](https://www.health-samurai.io/fhir-server).

### Tiempo de ejecución del [servidor FHIR](https://www.health-samurai.io/fhir-server)

El recurso Concept con vínculos a ValueSets puede utilizarse en el [servidor FHIR](https://www.health-samurai.io/fhir-server) para implementar las operaciones básicas de uso — **$expand** con filtro, **$validate-code** y **$lookup** — mediante una API de búsqueda sencilla sobre Concept:

> *GET /ValueSet/v1/$expand?_filter=x* ***=>*** *GET /Concept?vs=v1&display=???/ValueSet/v1/$validate-code?system=???code=???* ***=>*** */Concept?vs=v1&system=???code=???*

### Conclusión

Para simplificar el uso de Terminology y desacoplar los [servidores FHIR](https://www.health-samurai.io/fhir-server) de la terminología, podemos introducir un nuevo tipo de recurso Concept, realizar toda la autoría de ValueSets en el servicio de Terminology y exportar/importar de forma masiva los Concepts desnormalizados (expandidos) a los [servidores FHIR](https://www.health-samurai.io/fhir-server) con una implementación mucho más sencilla de las operaciones básicas.

¡Sus comentarios son bienvenidos!

[![Aidbox FHIR Platform Free Trial](image-1.avif)](https://www.health-samurai.io/aidbox)