Академический Документы
Профессиональный Документы
Культура Документы
https://testapp.hospitalitaliano.org.ar/masterfile-federacion-service/fhir/ está
desplegada la versión FHIR del Federador de pacientes en modo de prueba. Para este
connectathon no vamos a utilizar ninguna autenticación.
En el final del documento dejo un link a una colección de Postman con varios requests de
ejemplo, junto con la definición de la estructura de los Json (structure definitions)
relacionados con el recurso Patient del federador.
A continuación una breve descripción de cada servicio:
get by id [ /fhir/Patient/{id} ]
Esta esta operación, recupera un recurso Patient por id del federador.
GET https://testapp.hospitalitaliano.org.ar/masterfile-federacion-service/fhir/Patient/488848
https://testapp.hospitalitaliano.org.ar/masterfile-federacion-service/fhir/Pati
GET
ent?identifier=urn:oid:2.16.840.1.113883.2.10.1|486765&name=andres
POST https://testapp.hospitalitaliano.org.ar/masterfile-federacion-service/fhir/Patient/$validate
$validate => OK
$validate =>Error
match [ /fhir/Patient/$match ]
Esta operación permite buscar recursos Patient similares a los parámetros especificados en
el body del request. Estos parámetros son: name, humanname-fathers-family, birthdate,
gender e identifier. Este último parámetro requiere que sea un identificador que se
corresponda con un documento personal del paciente, es decir que no sea ni el identificador
del federador ni de un oid. Esta operación match es utilizada para la búsqueda de
candidatos, es decir es la operación previa que debe realizar un dominio antes de dar de
alta el paciente. Este match retorna un Bundle con los pacientes similares encontrados junto
con un puntaje (search.score) que indica el parecido del paciente encontrado con los
parámetros de búsqueda. Este puntaje es un valor numérico entre 0 y 1, donde 1 indica una
similitud total con los parámetros. Las entradas en el Bundle están ordenadas por puntaje
de mayor a menor.
POST https://testapp.hospitalitaliano.org.ar/masterfile-federacion-service/fhir/Patient/$match
{
"resourceType": "Patient",
"identifier": [
{
"use": "usual",
BODY
"system": "http://www.renaper.gob.ar/dni",
"value": "23327755"
}
],
"name": [
{
"_family": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/humanname-fathers-family",
"valueString": "Martinez"
}
]
},
"given": [
"Julian"
]
}
],
"birthDate": "1973-06-12",
"gender": "male"
}
create[ /fhir/Patient ]
Crea un recurso Patient dentro del federador. En el body del request se espera un Patient
bien formado, es decir que sea válido (ver patient validation). Si la creación fue exitosa la url
del nuevo paciente está en el header de la respuesta, ver key Location.
Para crear un paciente utilizar el oid correspondiente.
POST https://testapp.hospitalitaliano.org.ar/masterfile-federacion-service/fhir/Patient
{
"resourceType": "Patient",
"identifier": [
{
"system": "urn:oid:2.16.840.1.113883.2.10.28",
"value": "A-555555"
},
{
BODY "system": "http://www.renaper.gob.ar/dni",
"value": "11111111"
}
],
"name": [
{
"text": "Marjorie Bouvier Garner Simpson",
"family": "Bouvier Garner Simpson",
"_family": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/humanname-fathers-family",
"valueString": "Bouvier"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/humanname-mothers-family",
"valueString": "Garner"
}
]
},
"given": [
"Marjorie"
]
}
],
"birthDate": "1979-06-14",
"gender": "female"
}
Immunization
@create
Crea un recurso Immunization. En el response header vendrá el recurso con el atributo id
asignado “Location:https://bus-dev.msal.gov.ar/fhir-demo/Immunization/1”.
Se puede informar al servidor que se espera obtener el recurso creado en el body de la
respuesta (que normalmente estaria vacia, con un status code 201 Created).
Para ello se proporciona un header en el request: “Prefer:return=representation”.
POST https://bus-dev.msal.gov.ar/fhir-demo/Immunization
<status value="completed"/>
<notGiven value="false"/>
<vaccineCode>
<coding>
<system value="http:/sisa/fhir/vacuna"/>
<code value="143"/>
</coding>
</vaccineCode>
<patient>
<reference
value="https://testapp.hospitalitaliano.org.ar/masterfile-federacion-service/fhir/Patient/33149453
"/>
</patient>
<date value="2018-05-22"/>
<primarySource value="true"/>
<location>
<reference value="http://sisa/fhir/Location/282818181"/>
</location>
<lotNumber value="649718"/>
<vaccinationProtocol>
<doseSequence value="1"/>
<targetDisease>
<coding>
<system value="http://snomed.info/sct"/>
<code value="40733004"/> <!-- enfermedad infecciosa -->
</coding>
</targetDisease>
<doseStatus>
<coding>
<system value="http://hl7.org/fhir/vaccination-protocol-dose-status"/>
<code value="count"/>
</coding>
</doseStatus>
</vaccinationProtocol>
</Immunization>
@get
Se obtiene un recurso Immunization creado, por id.
GET https://bus-dev.msal.gov.ar/fhir-demo/Immunization/${id}