Guía de Implementación Core de Costa Rica
0.1.0 - ci-build Costa Rica bandera

Guía de Implementación Core de Costa Rica - Versión en desarrollo (v0.1.0): borrador de trabajo de la Iniciativa HL7® Costa Rica, que puede cambiar sin aviso.

Modelo lógico: Modelo Lógico del Servicio de Salud - Mapeos

Estado de las normas de la página: Draft

Mapeos para el cr-lm-servicio-salud modelo lógico.

Mappings to Structures in this Implementation Guide

No Mappings Found

Mappings to other Structures

NombreFHIR R5doco
.. CRLMServicioSalud
... identificacion
HealthcareService.identifier
Mismo patrón que el expediente, la ubicación y el rol del profesional: `identifier.system` = `https://hl7.or.cr/fhir/sid/servicio/{código del establecimiento}` (la CCSS usa `cj-4000042147`). `identifier.use` = `official`. No lleva `type`.
.... @id
.... extension
.... modifierExtension
.... codigo
HealthcareService.identifier.value
N/A
.... establecimiento
HealthcareService.identifier.system (sufijo)
No se envía como dato aparte: es el sufijo del `system`.
... organizacion
HealthcareService.providedBy
En el perfil, `providedBy` pasa de 0..1 a 1..1. Se admite la referencia lógica por `codigo-establecimiento` o cédula jurídica; una unidad de la CCSS sin identificador se referencia de forma literal.
... ubicacion
HealthcareService.location
En el perfil, `location` pasa de 0..* a 1..*.
... tipoServicio
HealthcareService.type
`IHE.mCSD.HealthcareService` exige `type` 1..*. No se usa el ValueSet de R5 (`service-type`, binding `example`): viene de un directorio de servicios de Australia, con 596 conceptos que en buena parte no son de salud. `HealthcareService.category` no se usa: el CodeSystem CR es jerárquico y sus conceptos padre cumplen esa función. Se busca con el parámetro estándar `service-type`.
... especialidad
HealthcareService.specialty
Mismo catálogo que el profesional, el rol del profesional y la relación entre organizaciones. Resuelve la pregunta 13 de la organización, que dejaba `HealthcareService` para cuando existiera este catálogo.
... modalidadImagen
HealthcareService.characteristic (slice modalidadImagen)
`HealthcareService.characteristic` ("características del servicio", binding `example` en R5) se divide en slices con discriminador por valor sobre `coding.system`; en esta versión solo existe `modalidadImagen`, con el mismo ValueSet y la misma fuerza que `ImagingStudy.modality` en R5. Sin extensión. Laboratorio podría agregar su propio slice cuando se modelen los resultados de laboratorio (pregunta 2 de la ubicación).
... requisitoAcceso
HealthcareService.eligibility.code
Una ocurrencia de `HealthcareService.eligibility` por requisito; `eligibility.code` pasa de 0..1 a 1..1 y `eligibility.comment` admite detalles en texto (por ejemplo, "referencia del primer nivel"). R5 lo define como "requisitos específicos para usar el servicio", sin extensión. `HealthcareService.referralMethod` (cómo se reciben las referencias: fax, teléfono, electrónico) no se usa en esta versión.
... requiereCita
... idioma
HealthcareService.communication
Igual que en el profesional de salud: BCP 47 obligatorio y el ValueSet CR `cr-idioma` para pantalla.
... horario
HealthcareService.availability.availableTime
En R5 el horario va en el tipo de dato `Availability` (nuevo en R5). El perfil usa una sola `availability` (0..1) con varios `availableTime`. Invariante `cr-servicio-horario` sobre `availableTime`: `(allDay.where($this = true).exists() and availableStartTime.empty() and availableEndTime.empty()) or (allDay.where($this = true).empty() and availableStartTime.exists() and availableEndTime.exists() and availableStartTime < availableEndTime)`. La primera parte (sin horas en un bloque de todo el día) ya la exige la regla `av-1` de `Availability` en R5; la invariante agrega que un bloque que no es de todo el día lleve las dos horas y que el inicio sea anterior al fin. `allDay` se compara con `where()` porque, si falta, una comparación directa da vacío. Los cierres por feriado o mantenimiento (`notAvailableTime`) quedan fuera de esta versión. FHIR no lleva zona horaria en el tipo `time`; la zona se fija por regla de negocio.
.... @id
.... extension
.... modifierExtension
.... dias
HealthcareService.availability.availableTime.daysOfWeek
`daysOfWeek` pasa de 0..* a 1..*.
.... todoElDia
HealthcareService.availability.availableTime.allDay
N/A
.... horaInicio
HealthcareService.availability.availableTime.availableStartTime
N/A
.... horaFin
HealthcareService.availability.availableTime.availableEndTime
N/A
... telefono
HealthcareService.contact.telecom (system = phone)
Igual que en la organización: contacto general sin `purpose` (elementos nativos de `contact`, sin slices). `telecom.system` = `phone`, `telecom.use` = `work`.
... correoElectronico
HealthcareService.contact.telecom (system = email)
`telecom.system` = `email`, `telecom.use` = `work`.
... comentario

doco Documentación de este formato

Other Mappings

NombreRIM Mappingdoco
.. CRLMServicioSalud
n/a
... identificacion
.... @id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... codigo
.... establecimiento
... organizacion
... ubicacion
... tipoServicio
... especialidad
... modalidadImagen
... requisitoAcceso
... requiereCita
... idioma
... horario
.... @id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... dias
.... todoElDia
.... horaInicio
.... horaFin
... telefono
... correoElectronico
... comentario

doco Documentación de este formato