Parâmetros de pesquisa FHIR R4 para HealthLake - AWS HealthLake

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Parâmetros de pesquisa FHIR R4 para HealthLake

Use a searchinteração FHIR para pesquisar um conjunto de recursos FHIR em um armazenamento de HealthLake dados com base em alguns critérios de filtro. A search interação pode ser realizada usando uma POST solicitação GET ou. Para pesquisas que envolvam informações de identificação pessoal (PII) ou informações de saúde protegidas (PHI), é recomendável usar POST solicitações, pois PII e PHI são adicionadas como parte do corpo da solicitação e criptografadas em trânsito.

nota

A search interação FHIR descrita neste capítulo é construída em conformidade com o padrão HL7 FHIR R4 para troca de dados de assistência médica. Por ser uma representação de um serviço HL7 FHIR, não é oferecido por meio AWS CLI de e. AWS SDKs Para obter mais informações, consulte a searchdocumentação da API FHIR R4 RESTful .

Você também pode consultar HealthLake datastores com SQL usando o Amazon Athena. Para obter mais informações, consulte Integrando.

HealthLake suporta o seguinte subconjunto de parâmetros de pesquisa do FHIR R4. Para obter mais informações, consulte Parâmetros de pesquisa FHIR R4 para HealthLake.

Tipos de parâmetros de pesquisa compatíveis

A tabela a seguir mostra os tipos de parâmetros de pesquisa suportados em HealthLake.

Tipos de parâmetros de pesquisa compatíveis
Parâmetro de pesquisa Descrição
_id ID do recurso (não é um URL completo)
_Última atualização Data da última atualização. O servidor tem poder discricionário quanto à precisão do limite.
_tag Pesquise por uma tag de recurso.
_perfil Pesquise todos os recursos marcados com um perfil.
_segurança Pesquise as etiquetas de segurança aplicadas a esse recurso.
_fonte Pesquise de onde vem o recurso.
_texto Pesquise a narrativa do recurso.
createdAt Pesquise na extensão personalizada CreatedAt.
nota

Os seguintes parâmetros de pesquisa são compatíveis somente com datastores criados após 09 de dezembro de 2023: _security, _source, _text, createdAt.

A tabela a seguir mostra exemplos de como modificar cadeias de caracteres de consulta com base nos tipos de dados especificados para um determinado tipo de recurso. Para maior clareza, os caracteres especiais na coluna de exemplos não foram codificados. Para fazer uma consulta bem-sucedida, certifique-se de que a string de consulta tenha sido codificada corretamente.

Exemplos de parâmetros de pesquisa
Tipos de parâmetros de pesquisa Detalhes Exemplos

Número

Pesquisa um valor numérico em um recurso especificado. Números significativos são observados. O número de dígitos significativos é específico por valor do parâmetro de pesquisa, excluindo zeros à esquerda. Prefixos de comparação são permitidos.

[parameter]=100

[parameter]=1e2

[parameter]=lt100

Data/ DateTime

Pesquisa uma data ou hora específica. O formato esperado éyyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm], mas pode variar.

Aceita os seguintes tipos de dados: date dateTimeinstant,Period,, Timing e. Para obter mais detalhes sobre o uso desses tipos de dados em pesquisas, consulte a data na documentação da API FHIR R4 RESTful .

Prefixos de comparação são permitidos.

[parameter]=eq2013-01-14

[parameter]=gt2013-01-14T10:00

[parameter]=ne2013-01-14

String

Pesquisa uma sequência de caracteres com distinção entre maiúsculas e minúsculas.

Suporta ambos HumanName os Address tipos. Para obter mais detalhes, consulte a entrada do tipo de HumanName dados e as entradas do tipo de Address dados na documentação do FHIR R4.

A pesquisa avançada é suportada usando :text modificadores.

[base]/Patient?given=eve

[base]/Patient?given:contains=eve

Token

Pesquisa uma close-to-exact correspondência com uma sequência de caracteres, geralmente comparada a um par de valores de código médico.

A distinção entre maiúsculas e minúsculas está vinculada ao sistema de código usado ao criar uma consulta. As consultas baseadas em subsunção podem ajudar a reduzir problemas relacionados à distinção entre maiúsculas e minúsculas. Para maior clareza, não | foi codificado.

[parameter]=[system]|[code]: Aqui [system] se refere a um sistema de codificação e [code] se refere ao valor do código encontrado nesse sistema específico.

[parameter]=[code]: Aqui, sua entrada corresponderá a um código ou a um sistema.

[parameter]=|[code]: aqui, sua entrada corresponderá a um código e a propriedade do sistema não terá identificador.

Composto

Pesquisa vários parâmetros em um único tipo de recurso, usando os modificadores $ e a , operação.

Prefixos de comparação são permitidos.

/Patient?language=FR,NL&language=EN

Observation?component-code-value-quantity=http://loinc.org|8480-6$lt60

[base]/Group?characteristic-value=gender$mixed

Quantidade

Pesquisa um número, sistema e código como valores. É necessário um número, mas o sistema e o código são opcionais. Com base no tipo de dados Quantidade. Para obter mais detalhes, consulte Quantidade na documentação do FHIR R4.

Usa a seguinte sintaxe presumida [parameter]=[prefix][number]|[system]|[code]

[base]/Observation?value-quantity=5.4|http://unitsofmeasure.org|mg

[base]/Observation?value-quantity=5.4|http://unitsofmeasure.org|mg

[base]/Observation?value-quantity=5.4|http://unitsofmeasure.org|mg

[base]/Observation?value-quantity=le5.4|http://unitsofmeasure.org|mg

Referência

Pesquisa referências a outros recursos.

[base]/Observation?subject=Patient/23

test

URI

Pesquisa uma sequência de caracteres que identifica inequivocamente um recurso específico.

[base]/ValueSet?url=http://acme.org/fhir/ValueSet/123

Especial

Pesquisas baseadas em extensões médicas integradas de PNL.

Parâmetros de pesquisa avançada suportados por HealthLake

HealthLake suporta os seguintes parâmetros de pesquisa avançada.

Name (Nome) Descrição Exemplo Recurso
_include Usado para solicitar que recursos adicionais sejam retornados em uma solicitação de pesquisa. Ele retorna recursos que são referenciados pela instância do recurso de destino. Encounter?_include=Encounter:subject
_revinclude Usado para solicitar que recursos adicionais sejam retornados em uma solicitação de pesquisa. Ele retorna recursos que fazem referência à instância do recurso primário. Patient?_id=patient-identifier&_revinclude=Encounter:patient
_summary O resumo pode ser usado para solicitar um subconjunto do recurso. Patient?_summary=text Os seguintes parâmetros de resumo são suportados:_summary=true,_summary=false,_summary=text,_summary=data.
_elements Solicite que um conjunto específico de elementos seja retornado como parte de um recurso nos resultados da pesquisa. Patient?_elements=identifier,active,link
_total Retorna o número de recursos que correspondem aos parâmetros de pesquisa. Patient?_total=accurate Support_total=accurate,_total=none.
_sort Indique a ordem de classificação dos resultados da pesquisa retornados usando uma lista separada por vírgulas. O - prefixo pode ser usado para qualquer regra de classificação na lista separada por vírgulas para indicar a ordem decrescente. Observation?_sort=status,-date Support classificar por campos com tiposNumber, String, Quantity, Token, URI, Reference. A classificação por só Date é compatível com armazenamentos de dados criados após 09 de dezembro de 2023. Support até 5 regras de classificação.
_count Controle quantos recursos são retornados por página do pacote de pesquisa. Patient?_count=100 O tamanho máximo da página é 100.
chaining Elementos de pesquisa dos recursos referenciados. O . direciona a pesquisa em cadeia para o elemento dentro do recurso referenciado. DiagnosticReport?subject:Patient.name=peter
reverse chaining (_has) Pesquise um recurso com base nos elementos dos recursos que se referem a ele. Patient?_has:Observation:patient:code=1234-5

_include

O uso _include em uma consulta de pesquisa permite que recursos adicionais do FHIR especificados também sejam retornados. Use _include para incluir recursos que estão vinculados diretamente.

exemplo — Para usar _include para encontrar os pacientes ou o grupo de pacientes que foram diagnosticados com tosse

Você pesquisaria o tipo de Condition recurso especificando o código de diagnóstico para tosse e, em seguida, _include especificaria que deseja que o subject diagnóstico também seja retornado. No tipo de Condition recurso, subject refere-se ao tipo de recurso do paciente ou ao tipo de recurso do grupo.

Para maior clareza, os caracteres especiais no exemplo não foram codificados. Para fazer uma consulta bem-sucedida, certifique-se de que a sequência de caracteres de consulta tenha sido codificada corretamente.

GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/ Condition?code=49727002&_include=Condition:subject

_revinclude

O uso _revinclude em uma consulta de pesquisa permite que recursos adicionais do FHIR especificados também sejam retornados. Use _revinclude para incluir recursos vinculados de trás para frente.

exemplo — Usar _revinclude para incluir tipos de recursos relacionados de Encontro e Observação vinculados a um paciente específico

Para fazer essa pesquisa, você primeiro definiria o indivíduo Patient especificando seu identificador no parâmetro de _id pesquisa. Em seguida, você especificaria recursos adicionais do FHIR usando a estrutura e. Encounter:patient Observation:patient

Para maior clareza, os caracteres especiais no exemplo não foram codificados. Para fazer uma consulta bem-sucedida, certifique-se de que a sequência de caracteres de consulta tenha sido codificada corretamente.

GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/ Patient?_id=patient-identifier&_revinclude=Encounter:patient&_revinclude=Observation:patient

_summary

O uso _summary em uma consulta de pesquisa permite que o usuário solicite um subconjunto do recurso FHIR. Ele pode conter um dos seguintes valores:true, text, data, false. Quaisquer outros valores serão tratados como inválidos. Os recursos retornados serão marcados com 'SUBSETTED' meta.tag, para indicar que os recursos estão incompletos.

  • true: retorne todos os elementos suportados que estão marcados como 'resumo' na definição básica do (s) recurso (s).

  • text: retorne somente os elementos 'text', 'id', 'meta' e somente os elementos obrigatórios de nível superior.

  • data: Retorne todas as partes, exceto o elemento 'texto'.

  • false: Retorne todas as partes do (s) recurso (s)

Em uma única solicitação de pesquisa, _summary=text não pode ser combinado com _include ou com parâmetros de _revinclude pesquisa.

exemplo — Obtenha o elemento “texto” dos recursos do paciente em um armazenamento de dados.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_summary=text

_elements

O uso _elements em uma consulta de pesquisa permite que elementos de recursos específicos do FHIR sejam solicitados. Os recursos retornados serão marcados com 'SUBSETTED' meta.tag, para indicar que os recursos estão incompletos.

O _elements parâmetro consiste em uma lista separada por vírgulas de nomes de elementos básicos, como elementos definidos no nível raiz do recurso. Somente os elementos listados devem ser retornados. Se os valores dos _elements parâmetros contiverem elementos inválidos, o servidor os ignorará e retornará elementos obrigatórios e válidos.

_elementsnão será aplicável aos recursos incluídos (recursos retornados cujo modo de pesquisa éinclude).

Em uma única solicitação de pesquisa, _elements não pode ser combinado com os parâmetros _summary de pesquisa.

exemplo — Obtenha elementos “identificadores”, “ativos” e “vinculados” dos recursos do paciente em seu armazenamento de HealthLake dados.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_elements=identifier,active,link

_total

O uso _total em uma consulta de pesquisa retornará o número de recursos que correspondem aos parâmetros de pesquisa solicitados. HealthLake retornará o número total de recursos correspondentes (recursos retornados cujo modo de pesquisa ématch) na resposta Bundle.total da pesquisa.

_totalsuporta os accurate valores dos none parâmetros. _total=estimatenão é suportado. Quaisquer outros valores serão tratados como inválidos. _totalnão é aplicável aos recursos incluídos (recursos retornados cujo modo de pesquisa éinclude).

exemplo — Obtenha o número total de recursos do paciente em um armazenamento de dados:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_total=accurate

_sort

O uso _sort na consulta de pesquisa organiza os resultados em uma ordem específica. Os resultados são ordenados com base na lista separada por vírgulas das regras de classificação em ordem de prioridade. As regras de classificação devem ser parâmetros de pesquisa válidos. Quaisquer outros valores serão tratados como inválidos.

Em uma única solicitação de pesquisa, você pode usar até 5 parâmetros de pesquisa de classificação. Opcionalmente, você pode usar um - prefixo para indicar a ordem decrescente. O servidor classificará em ordem crescente por padrão.

Os tipos de parâmetros de pesquisa de classificação suportados são:Number, String, Date, Quantity, Token, URI, Reference. Se um parâmetro de pesquisa se referir a um elemento aninhado, esse parâmetro de pesquisa não terá suporte para classificação. Por exemplo, a pesquisa por “nome” do tipo de recurso Paciente se refere ao paciente. O elemento Nome com o tipo de HumanName dados é considerado aninhado. Portanto, não há suporte para classificar os recursos do paciente por 'nome'.

exemplo — Obtenha os recursos do paciente em um armazenamento de dados e classifique-os por data de nascimento em ordem crescente:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_sort=birthdate

_count

O parâmetro _count é definido como uma instrução para o servidor sobre quantos recursos devem ser retornados em uma única página.

O tamanho máximo da página é 100. Qualquer valor maior que 100 é inválido. _count=0não é suportado.

exemplo — Pesquise o recurso do paciente e defina o tamanho da página de pesquisa para 25:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_count=25

Chaining and Reverse Chaining(_has)

O encadeamento e o encadeamento reverso no FHIR fornecem uma maneira mais eficiente e compacta de obter dados interconectados, reduzindo a necessidade de várias consultas separadas e tornando a recuperação de dados mais conveniente para desenvolvedores e usuários.

Se algum nível de recursão retornar mais de 100 resultados, HealthLake retornará 4xx para proteger o armazenamento de dados de ser sobrecarregado e causar várias paginações.

exemplo — Encadeamento - Obtém tudo DiagnosticReport o que se refere a um paciente em que o nome do paciente é peter.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/DiagnosticReport?subject:Patient.name=peter
exemplo — Encadeamento reverso - Obtenha recursos do paciente, em que o recurso do paciente é referido por pelo menos uma observação em que a observação tem um código de 1234 e onde a observação se refere ao recurso do paciente no parâmetro de pesquisa do paciente.

GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_has:Observation:patient:code=1234

Modificadores de pesquisa compatíveis

Os modificadores de pesquisa são usados com campos baseados em strings. Todos os modificadores de pesquisa em HealthLake uso usam lógica baseada em booleanos. Por exemplo, você pode :contains especificar que um campo de string maior inclua uma string pequena para que seja incluído nos resultados da pesquisa.

Modificadores de pesquisa compatíveis
Modificador de pesquisa Type
:ausente Todos os parâmetros, exceto Composite
:exato String
:contém String
:não Token
:texto Token
:identificador Referência
:abaixo URI

Comparadores de pesquisa compatíveis

Você pode usar comparadores de pesquisa para controlar a natureza da correspondência em uma pesquisa. Você pode usar comparadores ao pesquisar nos campos de número, data e quantidade. A tabela a seguir lista os comparadores de pesquisa e suas definições que são suportadas pelo HealthLake.

Comparadores de pesquisa compatíveis

Comparador de pesquisa

Descrição

eq O valor do parâmetro no recurso é igual ao valor fornecido.
um O valor do parâmetro no recurso não é igual ao valor fornecido.
gt O valor do parâmetro no recurso é maior que o valor fornecido.
lt O valor do parâmetro no recurso é menor que o valor fornecido.
idade O valor do parâmetro no recurso é maior ou igual ao valor fornecido.
le O valor do parâmetro no recurso é menor ou igual ao valor fornecido.
mar O valor do parâmetro no recurso começa após o valor fornecido.
eb O valor do parâmetro no recurso termina antes do valor fornecido.

Parâmetros de pesquisa FHIR não suportados pelo HealthLake

HealthLake suporta todos os parâmetros de pesquisa do FHIR, com exceção dos listados na tabela a seguir. Para obter uma lista completa dos parâmetros de pesquisa do FHIR, consulte o registro de parâmetros de pesquisa do FHIR.

Parâmetros de pesquisa não suportados
Composição do pacote Localização próxima
Identificador de pacote C onsent-source-reference
Mensagem do pacote Paciente contratado
Tipo de pacote Conteúdo do recurso
Carimbo de data/hora do pacote Consulta de recursos