Skip to main content

FHIRPath

Implementações do FHIR retornam, em geral, representações de recursos em JSON. Neste caso, o JSON retornado pode ser consultado por meio de JsonPath. Há vasta informação sobre o Jsonpath, como a possibilidade de execução de consultas online, a especificação detalhada, tutorial e até aplicação em java) que executa Jsonpath.

FHIRPath é similar a JsonPath, contudo, contém funções específicas para FHIR. FHIRPath também é usado pela Clinical Quality Language (CQL).

A definição de FHIRPath também está disponível, inclusive em detalhes.

Consultas baseadas em FHIRPath podem ser executadas por meio do portal clinfhir. Adicionalmente, pode-se usar a implementação fhirpath em Javascript, dentre outras opções.

Esta implementação é empregada nos exemplos fornecidos abaixo.

Instalação

$ git clone https://github.com/kyriosdata/rnds
$ cd rnds/tools/fhirpath
$ yarn install

Em projeto existente (dependências de desenvolvimento):

$ yarn add fhirpath --dev

Operação trivial

Contando quantas entradas possuem no documento exemplo.json.

  • Qual o tipo do recurso?
$ yarn fhirpath -- -f exemplo.json -e "resourceType"
  • Quando o Bundle foi atualizado pela última vez?
$ yarn fhirpath -- -f exemplo.json -e "meta.lastUpdated"
  • Qual o identificador local (definido pelo laboratório) do Bundle?
$ yarn fhirpath -- -f exemplo.json -e "identifier.value"
  • Quantos recursos estão reunidos no Bundle?
$ npm run fhirpath -- -f exemplo.json -e "entry.count()"
  • Quais os tipos dos recursos reunidos no Bundle?
$ yarn fhirpath -- -f exemplo.json -e "entry.resource.resourceType"