Compartilhar via


Parâmetros de pesquisa selecionáveis (versão prévia)

Importante

O recurso de parâmetro de pesquisa selecionável está disponível para visualização. As APIs e os SDKs de visualização são fornecidos sem um SLA (contrato de nível de serviço). É recomendável que você não as use para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou talvez ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.

A busca por recursos é fundamental para o serviço FHIR®. Cada recurso no serviço FHIR carrega informações como um conjunto de elementos. Os parâmetros de pesquisa funcionam para consultar as informações nesses elementos. Quando o serviço FHIR é implantado, os parâmetros de pesquisa embutidos são ativados por padrão. O serviço FHIR executa pesquisas eficientes extraindo e indexando propriedades específicas de recursos FHIR durante a ingestão de dados.

Os parâmetros de pesquisa selecionáveis permitem ativar ou desativar os parâmetros de pesquisa integrados. Esse recurso ajuda a armazenar mais recursos no espaço de armazenamento alocado e melhorar o desempenho, habilitando apenas os parâmetros de pesquisa necessários.

Para executar atualizações de status nos parâmetros de pesquisa, siga estas etapas:

  1. Obtenha o status dos parâmetros de pesquisa.
  2. Atualize o status dos parâmetros de pesquisa.
  3. Execute um trabalho de reindexação.

Neste artigo, demonstramos a sintaxe de pesquisa FHIR em chamadas de API de exemplo com o espaço reservado {{FHIR_URL}} para representar a URL do servidor FHIR.

Obter o status dos parâmetros de pesquisa

Um endpoint de API ('$status') é fornecido para exibir o status dos parâmetros de pesquisa. Há quatro status para a resposta:

Status Descrição
Com suporte O parâmetro de pesquisa é compatível com o serviço FHIR e você enviou solicitações para habilitar o parâmetro de pesquisa. Execute a operação de reindexação a ser executada de com suporte para habilitado.
Enabled O parâmetro de pesquisa está habilitado para pesquisa. Esse status é a próxima etapa após o status com suporte.
DesativaçãoPendente A desativação do parâmetro de pesquisa está pendente após a execução da operação de reindexação.
Desabilitadas O parâmetro de pesquisa está desabilitado.

Para obter o status em todos os parâmetros de pesquisa, use a solicitação a seguir, que retorna uma lista de todos os parâmetros de pesquisa e seu status. Percorra a lista para encontrar o parâmetro de pesquisa de que você precisa.

GET {{FHIR_URL}}/SearchParameter/$status

Para identificar o status de um indivíduo ou de um subconjunto de parâmetros de pesquisa, use os filtros a seguir.

  • Nome.. Para identificar o status do parâmetro de pesquisa por nome, use esta solicitação.
   GET {{FHIR_URL}}/SearchParameter/$status?code=<name of search parameter/ sub string>
  • URL. Para identificar o status do parâmetro de pesquisa por seu identificador canônico, use esta solicitação.
GET {{FHIR_URL}}/SearchParameter/$status?url=<SearchParameter url>
  • Tipo de recurso. No FHIR, os parâmetros de pesquisa são habilitados no nível do recurso individual para permitir a filtragem e a recuperação de um subconjunto específico de recursos. Para identificar o status de todos os parâmetros de pesquisa mapeados para um recurso, use esta solicitação.
GET {{FHIR_URL}}/SearchParameter/$status?resourcetype=<ResourceType name>

Em resposta à solicitação GET para $status ponto de extremidade, o tipo de recurso parameters é retornado com o status do parâmetro de pesquisa. Veja um exemplo de resposta.

{
  "resourceType" : "Parameters",
  "parameter" : [
    "name" : "searchParameterStatus",
    "part" : {
        {
        "name" : "url",
        "valueString" : "http://hl7.org/fhir/SearchParameter/Account-identifier"
        },
        {
        "name" : "status",
        "valueString" : "supported"
        }
    }
  ]
}

Atualizar o status dos parâmetros de pesquisa

Depois de obter o status dos parâmetros de pesquisa, atualize o status dos parâmetros de pesquisa para Supported ou Disabled.

Observação

Para atualizar o status dos parâmetros de pesquisa, você precisa da função RBAC do Azure do Gerenciador de Parâmetros de Pesquisa.

O status do parâmetro de pesquisa pode ser atualizado para um único parâmetro de pesquisa ou em massa.

Atualizar o status de um único parâmetro de pesquisa

Para atualizar o status de um único parâmetro de pesquisa, use a solicitação de API a seguir.

PUT {{FHIR_URL}}/SearchParameter/$status
{
    "resourceType": "Parameters",
    "parameter": [
        {
            "name": "searchParameterStatus",
            "part": [
                {
                    "name": "url",
                    "valueUrl": "http://hl7.org/fhir/SearchParameter/Resource-test-id"
                },
                {
                    "name": "status",
                    "valueString": "Supported"
                }
            ]
        }
    ]
}

Dependendo do seu caso de uso, você pode manter o valor do estado de status "Com suporte" ou "Desativado" para um parâmetro de pesquisa. Quando você envia o estado Disabled na solicitação, a resposta retorna como PendingDisable porque um trabalho de reindexação deve ser executado para remover totalmente as associações.

Se você receber um código de status HTTP 400 na resposta, isso significa que não há correspondência exclusiva para o parâmetro de pesquisa identificado. Verifique o ID do parâmetro de pesquisa.

Atualizar o status do parâmetro de pesquisa em massa

Para atualizar o status dos parâmetros de pesquisa em massa, a solicitação 'PUT' deve ter a lista de recursos 'Parâmetros' no corpo da solicitação. A lista precisa conter os parâmetros de pesquisa individuais que precisam ser atualizados.

PUT {{FHIR_URL}}/SearchParameter/$status
{
  "resourceType" : "Parameters",
  "parameter" : [
    {
     "name" : "searchParameterStatus",
     "part" :{
        "name" : "url",
        "valueString" : "http://hl7.org/fhir/SearchParameter/Endpoint-name"
     },
     "part":{ 
        "name" : "status",
        "valueString" : "supported"
     }
    },
         "name" : "searchParameterStatus",
     "part" :{
        "name" : "url",
        "valueString" : "http://hl7.org/fhir/SearchParameter/HealthcareService-name"
     },
     "part":{ 
        "name" : "status",
        "valueString" : "supported"
     }
    },
    ...
  ]
}

Executar um trabalho de reindexação

Depois de atualizar o status do parâmetro de pesquisa para Supported ou Disabled, a próxima etapa é executar um trabalho de reindexação.

Até que o parâmetro de pesquisa seja indexado, o e Disabled o Enabled status dos parâmetros de pesquisa não serão ativados. Reindexar a execução do trabalho atualiza o status de Supported para Enabled ou PendingDisable para Disabled.

Um trabalho de reindexação pode ser executado em todo o banco de dados do serviço FHIR ou em parâmetros de pesquisa específicos. Um trabalho de reindexação pode exigir muito desempenho. Para obter mais informações, consulte Executar um trabalho de reindexação.

Observação

Um documento de declaração de funcionalidade é um conjunto de comportamentos para um servidor FHIR. Enabled Os parâmetros de pesquisa são listados na declaração de funcionalidade do serviço FHIR. Uma instrução de funcionalidade está disponível para o ponto de extremidade /metadata.

Perguntas frequentes

Qual é o comportamento se a consulta incluir um parâmetro de pesquisa com o status 'Suportado'?

O parâmetro de pesquisa no estado 'Suportado' precisa ser reindexado. Até então, o parâmetro de pesquisa não está ativado. Se uma consulta for executada em um parâmetro de pesquisa não ativo, o serviço FHIR renderizará uma resposta sem considerar esse parâmetro de pesquisa. Na resposta, haverá uma mensagem de aviso indicando que o parâmetro de pesquisa não foi indexado e não foi usado na consulta. Para renderizar um erro em tais situações, use o cabeçalho 'Prefer: handling' com o valor 'strict'. Ao definir esse cabeçalho, os avisos são relatados como erros.

Próximas etapas

Definir parâmetros de pesquisa personalizados

Observação

FHIR® é uma marca registrada da HL7 e é usado com a permissão da HL7.