Filtre a pesquisa de cuidados de saúde

Quando consulta dados de cuidados de saúde, pode usar filtros para refinar as respostas da pesquisa. Num pedido de pesquisa, pode fornecer filtros para aplicar critérios que incluam ou excluam determinadas respostas de pesquisa.

Por exemplo, quando pesquisa os dados de um único paciente, o corpo do pedido de pesquisa tem de conter a seguinte expressão de filtro que especifica o ID do paciente:

"filter": "patient_id: ANY(\"PATIENT_ID\")"

Esta página mostra-lhe como definir filtros para a pesquisa de cuidados de saúde.

Antes de começar

Antes de começar, faça o seguinte:

Defina filtros

Os filtros são especificados no campo filter no corpo do pedido do método servingConfigs.search.

A definição do filtro segue a sintaxe da expressão de filtro. Na expressão de filtro, o literal pode ser qualquer campo indexável da resposta à consulta de pesquisa. Por exemplo, se a resposta contiver um recurso Observation, o patient_id que o recurso Observation referencia pode ser usado como um literal de filtro.

As secções seguintes mostram alguns exemplos de como criar filtros.

Defina um filtro resource_datetime

Este exemplo mostra como especificar um filtro para uma pesquisa que inclua apenas os recursos que tenham um valor resource_datetime posterior ao valor de data e hora especificado.

REST

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://us-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/collections/default_collection/dataStores/DATA_STORE_ID/servingConfigs/default_search:search" \
    -d '{
"query": "QUERY",
"filter": "patient_id: ANY(\"PATIENT_ID\") AND resource_datetime > \"DATE_TIME_VALUE,
"contentSearchSpec":{"snippetSpec":{"returnSnippet":true}}
}'

Substitua o seguinte:

  • PROJECT_ID: o ID do seu projeto Google Cloud .
  • DATA_STORE_ID: o ID do arquivo de dados do Vertex AI Search.
  • QUERY: a consulta de pesquisa.
  • PATIENT_ID: o ID do recurso do paciente cujos dados quer pesquisar.
  • DATE_TIME_VALUE: o valor do campo resource_datetime que representa uma data e uma hora no formato dateTime do FHIR. Seguem-se alguns exemplos deste campo:
    • Para especificar uma data e uma hora com um fuso horário separado por um separador T: 2022-08-05T01:00:00+00:00
    • Para especificar uma data: 2022-08-05
    • Para especificar um mês: 2022-08
    • Para especificar um ano: 2022

Defina um filtro de tipo de recurso

O exemplo seguinte mostra como criar um filtro que usa um operador AND para filtrar primeiro todos os recursos Composition e, em seguida, filtrar aqueles cuja data seja posterior a uma data e hora especificadas.

"filter": "resource_type: ANY("Composition") AND Composition.date > "2022-08-05T01:00:00+00:00""

Defina um filtro de recursos FHIR

Pode usar um filtro para verificar se um recurso FHIR está presente no repositório de dados do Vertex AI Search. Por exemplo, pode pesquisar um recurso DocumentReference que tenha o ID 6112d1ac-c6bd-4755-d689-bfb71d59afc5 através do seguinte filtro.

"filter": "DocumentReference.id: ANY(\"6112d1ac-c6bd-4755-d689-bfb71d59afc5\")"