Skip to main content

Escenario

Una clínica integra su sistema de admisión con un EHR externo y necesita enviar Patient con RUN como identificador nacional. El campo más sensible es el dígito verificador: el RUN 15420097-5 es válido, pero 15420097-3 no lo es. Inspect valida el DV localmente con la regla cl-run-03 y obliga al identifier.system canónico del Registro Civil más type.coding con CSTipoIdentificador code 01.

Payload válido

Patient con RUN válido

Cómo validarlo

Resultado esperado

Si el DV está correcto, valid es true, issues[] viene vacío y el HTTP status es 200. Si el DV no cuadra con el módulo 11 (por ejemplo el RUN inválido 15420097-3), Inspect devuelve:
Errores típicos cuando el caso falla:
  • cl-run-03: DV no cuadra con el módulo 11.
  • cl-run-04: identifier.system distinto del canónico http://www.registrocivil.cl/run.
  • cl-patient-*: falta name, gender o birthDate exigidos por CorePacienteCl.

Tips

El cuerpo del RUN se escribe sin puntos de miles: 15420097-5, no 15.420.097-5. Inspect normaliza puntos pero identifier.value debe quedar canónico en lectura/escritura.
La K del DV va en mayúscula. 15420097-k se rechaza con cl-run-03.
type.coding.code siempre es "01" (el código de RUN en CSTipoIdentificador). "RUN" solo sirve como display. Para pasaporte usar "02", para DNI extranjero "03".
Pacientes extranjeros sin RUN: usar type.coding.code "02" (pasaporte) o "03" (DNI extranjero) con system distinto y omitir la validación módulo 11. Inspect la salta si type.coding.code != "01".
Inspect valida este Patient contra el perfil CorePacienteCl de CL Core 1.9.4. Si identifier.system no es canónico o el DV no cuadra, devuelve cl-run-03 / cl-run-04 con quickFix aplicable desde el MCP.