kyriosdata / ig

Exemplo de um Guia de Implementação FHIR
https://kyriosdata.github.io/ig/
Apache License 2.0
0 stars 0 forks source link

URL canônica (resolução) #8

Closed kyriosdata closed 7 months ago

kyriosdata commented 8 months ago

O validador pode ser empregado, via linha de comandos, conforme abaixo:

java -jar validator_cli -version 4.0.1 paciente.json

Se a instância de Patient no arquivo citado contém pelo menos um profile em meta.profile, digamos, https://fhir.fabrica.inf.ufg.br/ig/StructureDefinition/animal, então o resultado é aquele abaixo:

  Warning @ Patient.meta.profile[0] (line 1, col2): Profile reference 'https://fhir.fabrica.inf.ufg.br/ig/StructureDefinition/animal' has not been checked because it could not be found, and fetching it resulted in the error org.hl7.fhir.r4.utils.client.EFhirClientException: Error reading Http Response from https://fhir.fabrica.inf.ufg.br/ig: Error parsing JSON source: Unexpected char '<' in json stream at Line 1 (path=[null])

Sugere que o validador vai buscar o perfil, mas recebe o conteúdo em HTML, enquanto está esperando o conteúdo em JSON, pela resposta. Desta forma como está respondendo o servidor, a saída seria indicar explicitamente onde estão os perfis, neste caso apenas um, conforme abaixo:

java -jar validator_cli -version 4.0.1 paciente.json -ig https://fhir.fabrica.inf.ufg.br/ig/site/StructureDefinition-animal.json

neste caso o validar faz o download do conteúdo indicado pelo flag ig e, nele está o perfil que será utilizado, o que permite a validação de forma satisfatória. Contudo, o melhor seria o comando anterior, sem exigir que o usuário forneça o arquivo contendo o perfil, dado que se trata de uma URL canônica, conforme funciona com outros perfis publicados. Veja, por exemplo, como uma requisição via httpie funciona para uma URL canônica de um perfil do US Core:

http --follow http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-occupation Accept:application/xml ou ainda

http --follow http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-occupation Accept:application/json

recupera no formato XML e JSON, respectivamente, com base na URL canônica, comportamento esperado.

muriloluz commented 7 months ago

Servidor de aplicação devidamente configurado.