0.5.0 - ci-build
FHIR_CORE_AR - Local Development build (v0.5.0). See the Directory of published versions
Operaciones con el Federador de Pacientes <?xml version=”1.0” encoding=”UTF-8” standalone=”no”?>
Los siguientes parámetros de búsqueda y combinaciones serán soportados:
Los servidores DEBEN soportar buscar un recurso Patient usando el parametro de búsqueda **[_id]:
GET [base]/Patient[id]
Ejemplos
Notas de Implementación ([como buscar por id logico] del recurso)
Los servidores DEBEN soportar buscar un recurso Patient por un identificador como el DNI, utilizando el parámetro de búsqueda **[identifier]:
GET [base]/Patient?identifier={system|}[code]
Ejemplo:
| GET [base]/Patient?identifier=http://renaper.org.ar/DNI | 99999999 |
Nota de Implementación: Devuelve un Bundle con recursos Patient que coincidan con el identificador - deberia ser siempre un solo recurso ([como buscar por token])
Los servidores DEBEN soportar la búsqueda de recursos Patient por una búsqueda en la cual coincida cualquiera de las partes del nombre (HumanName) incluyendo family, given y/o text usando el parámetro de búsqueda [name]
GET [base]/Patient?name=[string]
Ejemplo:
Nota de Implementación: Devuelve un Bundle con recursos Patient que coincidan con el identificador ([como buscar por cadena alfanumérica])
Los servidores DEBEN soportar la búsqueda de recursos Patient por una búsqueda en la cual se combine el género, la fecha de nacimiento y cualquiera de las partes del nombre (HumanName) incluyendo family, given y/o text usando los parámetros de búsqueda [name] y [birthdate]
GET [base]/Patient?birthdate=[date]&name=[string]&gender=[code]
Example:
Nota de Implementación: Devuelve un Bundle con recursos Patient para el cual coincidan todos los parámetros de búsqueda especificados
Esta operación permite buscar candidatos según el algoritmo de búsqueda del federador
La definición oficial para esta operación esta disponible aquí
http://hl7.org/fhir/OperationDefinition/Patient-match
Un MPI o federador de pacientes (MPI ) es un servicio utilizado para gestionar identificación de pacientes en un contexto donde existen multiples base de datos de pacientes. Las aplicaciones de salud utilizan el MPI para encontrar candidatos o almacenar registros nuevos de pacientes a medida que aparecen.
Para consultar a un federador o MPI sobre los candidatos, los clientes deben usar la operación $match, que acepta como parámetro un recurso Patient que está completo parcialmente. La información provista es interpretada y procesada por un algoritmo que determina los candidatos mas apropiados en el federador. La operacion generica $match no define el set minimo de datos, pero nuestra implementacion requiere
POST [base]/Patient/$match
| Uso | Nombre | Cardinalidad | Tipoe | Vinculación | Documentación |
| IN | resource | 1..1 | Resource | Usado para proveer un detalle de los datos de paciente, para buscar los candidatos (se realiza un POST de Patient a Patient/$match). | |
| IN | count | 0..1 | integer | La maxima cantidad de registros a devolver. Si no se especifica, el servidor decide cuantos devuelve. Notar que los clientes deben ser precavidos cuando utilizan este parametro ya que puede impedir que algunos candidatos sean devueltos por la operacion | |
| OUT | return | 1..1 | Bundle | Un bundle que contiene un conjunto de recursos Patient con posibles candidatos. Si la operación no fuera exitosa, devuelve un recurso OperationOutcome explicando el problema con un codigo de error HTTP 500. |
Ver ejemplo [ejemplo-match] Ejemplo de Respuesta - Ver Ejemplo Parámetros Match
La respuesta de la operación $match es un Bundle con recursos Patient, ordenados desde el más parecido al menos parecido. Si no hay candidatos, el federador devolverá un resultado de búsqueda vacio, sin errores. Todos los registros tendrán un score de 0 a 1, siendo 1 el candidato con mas coincidencia
POST [base]/Patient/$match Body:
{
"resourceType": "Patient",
"identifier": [
{
"use": "usual",
"system": "http://www.renaper.gob.ar/dni",
"value": "23327755"
}
],
"name": [
{
"text": "Juliancito Julianzote Martinez",
"family": "Martinez",
"given": [
"Julian"
]
}
],
"birthDate": "1973-06-12",
"gender": "male"
}
Se buscó a todos los pacientes masculinos “Julian Martinez” nacidos en “1973-06-12” con DNI “23327755”
Ejemplo de Respuesta - Ver Bundle Respuesta Match
POST [base]/Patient En el Body, un recurso paciente compatible con Patient_ar_core
Si el paciente fue creado exitosamente se obtiene un status “201 Created”