Envio de DCMs para a IPES
O envio de dados para a plataforma de saúde usa uma API que implementa o padrão FHIR/IHE Mobile Access to Health Data (MHD).
Nesta API, os dados são enviados, em formato FHIR através de um recurso denominado Bundle, que agrupa um conjunto de outros quatro recursos: Patient, DocumentManifest, DocumentoReference e Binary.
Esses recursos contém as seguintes informações:
Patient: Informações do paciente. Como os pacientes/cidadãos já estarão cadastrados na plataforma, são enviados aqui apenas o identificador (CPF ou CNS) do paciente/cidadão.
DocumentManifest e DocumentReference: Informações do documento, tais como autor (o próprio paciente, para informações auto-referidas/questionário de autoavaliação), tipo de documento, formato, entre outras. Essas informações são usadas para indexar e recuperar documentos na plataforma.
Binary: O documento propriamente dito, codificado em formato binário (Base64Binary).
Os recursos deverão ser enviados em formato XML.
A seguir, são apresentados os recursos que compõem o Bundle a ser enviado e uma breve explicação dos metadados utilizados. Os elementos não apresentados na tabela tipicamente têm valor fixo para o caso de uso pretendido.
| Recurso | Metadados | Exemplo |
|---|---|---|
| Patient | id deve ser formado pela concatenção do OID com o identificador (CPF ou CNS) do paciente (vide identifier a seguir). | <id value="2.16.840.1.113883.13.237-60678666172"/> |
| identifier deve conter também o CPF ou CNS do paciente. O tipo de identificador usado é diferenciado pelo elemento system, que contém um OID, sendo: 2.16.840.1.113883.13.237 para o CPF e 2.16.840.1.113883.13.236para o CNS. | <identifier> <system value="2.16.840.1.113883.13.237"/> <value value="60678666172"/> </identifier> | |
| request (do recurso Patient) | request possui um elemento url, cujo valor consiste no caminho relativo do recurso Patient na plataforma, sendo formado pela concatenação “Patient/ |
<request> <method value="PUT"/> <url value="Patient/2.16.840.1.113883.13.237-60678666172"/> </request> |
| DocumentManifest | id contém o identificador único do recurso. Sugere-se que seja usado um uuid gerado aleatoriamente. | <id value="5bb0ccf6-a941-4e9b-8d14-837858f0bcc7"/> |
| masterIdentifier e identifier, contendo identificadores universais do documento. Sugere-se que o masterIdentifier tenha o mesmo valor do id do recurso Binary e o valor do identifier seja formado pela concatenação de strings “urn:uuid: |
<masterIdentifier> <system value="urn:ietf:rfc:3986"/> <value value="urn:oid:1.3.6.1.4.1.54413.1.1.5.1.20200327015504.1"/> </masterIdentifier> <identifier> <use value="official"/> <system value="urn:ietf:rfc:3986"/> <value value="urn:uuid:5bb0ccf6-a941-4e9b-8d14-837858f0bcc7"/> </identifier> | |
| subject contém uma reference ´para a URL do recurso Patient. | <subject> <reference value="Patient/2.16.840.1.113883.13.237-60678666172"/> </subject> | |
| created contém o timestamp de criação do documento. | <created value="2020-03-27T01:55:04Z"/> | |
| source contém o identificador (OID) do sistema de origem, por exemplo, urn:oid:1.3.6.1.4.1.54413.1.1.5.4 para o Monitora COVID19. | <source value="urn:oid:1.3.6.1.4.1.54413.1.1.5.4"/> | |
| content contém uma reference para a URL do recurso DocumentReference. | <content> <reference value="DocumentReference/21c30116-f114-443f-bd03-21c893fdf8c9"/> </content> | |
| request (do recurso DocumentManifest) | request possui um elemento url, cujo valor consiste no caminho relativo do recurso DocumentManifest na plataforma, sendo formado pela concatenação “DocumentManifest/ |
<request> <method value="PUT"/> <url value="DocumentManifest/5bb0ccf6-a941-4e9b-8d14-837858f0bcc7"/> </request> |
| DocumentReference | id contém o identificador único do recurso. Sugere-se que seja usado um uuid gerado aleatoriamente. | <id value="21c30116-f114-443f-bd03-21c893fdf8c9"/> |
| masterIdentifier e identifier, contendo identificadores universais do documento. Seguem a mesma regra de formação dos mesmos elementos no recurso DocumentManifest. NOTA: DocumentManifest e DocumentReference devem ter id diferentes. | <masterIdentifier> <system value="urn:ietf:rfc:3986"/> <value value="urn:oid:1.3.6.1.4.1.54413.1.1.5.1.20200327015504.2"/> </masterIdentifier> <identifier> <use value="official"/> <system value="urn:ietf:rfc:3986"/> <value value="urn:uuid:21c30116-f114-443f-bd03-21c893fdf8c9"/> </identifier> | |
| subject conforme o mesmo elemento do recurso DocumentManifest | <subject> <reference value="Patient/2.16.840.1.113883.13.237-60678666172"/> </subject> | |
| date contém o timestamp de criação do documento. | <date value="2020-03-27T01:55:04Z"/> | |
| author apresenta informações do(s) autor do documento, neste caso o próprio paciente. | <author> <reference value="Patient/2.16.840.1.113883.13.237-60678666172"/> </author> | |
| source contém o identificador (OID) do sistema de origem, por exemplo, urn:oid:1.3.6.1.4.1.54413.1.1.5.4 para o Monitora COVID19. | <source value="urn:oid:1.3.6.1.4.1.54413.1.1.5.4"/> | |
| content apresenta informações sobre o documento, incluindo a url do recurso Binary que contém o documento, seu tamanho size, em bytes, um hash e timestamp de criação creation, além das informações de formato format (fixas para esse caso de uso). | <content> <attachment> <contentType value="text/json"/> <language value="pt-BR"/> <url value="Binary/1.3.6.1.4.1.54413.1.1.5.1.20200327015504.2"/> <size value="50"/> <hash value="b227aec9d8329a7e93e80e8cdb0571458f1f38d4"/> <creation value="2020-03-27T01:55:04Z"/> </attachment> <format> <system value="2.16.840.1.113883.4.642.3.1024"/> <code value="application/json"/> <display value="JSON"/> </format> </content> | |
| request (do recurso DocumentReference) | request possui um elemento url, cujo valor consiste no caminho relativo do recurso DocumentReference na plataforma, sendo formado pela concatenação “DocumentReference/ |
<request> <method value="PUT"/> <url value="DocumentReference/21c30116-f114-443f-bd03-21c893fdf8c9"/> </request> |
| Binary | id apresenta o idenficador do recurso Binary, formado pela concatenação “1.3.6.1.4.1.54413.1.1.5.1. |
<id value="1.3.6.1.4.1.54413.1.1.5.1.20200327015504.2"/> |
| data contém o documento codificado em formato binário (Base64Binary) | <data value="aHR0cHM6Ly90ZXN0ZS5jb20vMS8yLzMvNA=="/> | |
| request (do recurso Binary) | request possui um elemento url, cujo valor consiste no caminho relativo do recurso Binary na plataforma, sendo formado pela concatenação “Binary/ |
<request> <method value="PUT"/> <url value="Binary/1.3.6.1.4.1.54413.1.1.5.1.20200327015504.2"/> </request> |