Parámetros de búsqueda FHIR R4 para HealthLake - AWS HealthLake

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Parámetros de búsqueda FHIR R4 para HealthLake

Utilice la searchinteracción del FHIR para buscar un conjunto de recursos del FHIR en un banco de HealthLake datos en función de algunos criterios de filtrado. La search interacción se puede realizar mediante una solicitud GET oPOST. Para las búsquedas que incluyan información de identificación personal (PII) o información de salud protegida (PHI), se recomienda utilizar POST solicitudes, ya que la PII y la PHI se agregan como parte del cuerpo de la solicitud y se cifran durante el tránsito.

nota

La search interacción entre el FHIR que se describe en este capítulo se basa en el estándar R4 del HL7 FHIR para el intercambio de datos de atención médica. Como es una representación de un servicio de la HL7 FHIR, no se ofrece a través de y. AWS CLI AWS SDKs Para obtener más información, consulte la documentación de searchla API R4 RESTful del FHIR.

También puede consultar almacenes HealthLake de datos con SQL mediante Amazon Athena. Para obtener más información, consulte Integración.

HealthLake admite el siguiente subconjunto de parámetros de búsqueda del FHIR R4. Para obtener más información, consulte Parámetros de búsqueda FHIR R4 para HealthLake.

Tipos de parámetros de búsqueda compatibles

En la siguiente tabla se muestran los tipos de parámetros de búsqueda admitidos en HealthLake.

Tipos de parámetros de búsqueda compatibles
Parámetro de búsqueda Descripción
_id ID del recurso (no es una URL completa)
_Última actualización Fecha de la última actualización. El servidor tiene discreción en cuanto a la precisión de los límites.
_tag Busca por etiqueta de recurso.
_perfil Busca todos los recursos etiquetados con un perfil.
_seguridad Busque en las etiquetas de seguridad aplicadas a este recurso.
_fuente Busque de dónde proviene el recurso.
_texto Busque en la narrativa del recurso.
createdAt Busque en la extensión personalizada CreatedAt.
nota

Los siguientes parámetros de búsqueda solo se admiten en los almacenes de datos creados después del 9 de diciembre de 2023: _security, _source, _text, CreatedAt.

En la siguiente tabla se muestran ejemplos de cómo modificar las cadenas de consulta en función de los tipos de datos especificados para un tipo de recurso determinado. Para mayor claridad, los caracteres especiales de la columna de ejemplos no se han codificado. Para realizar una consulta correctamente, asegúrese de que la cadena de consulta se haya codificado correctamente.

Ejemplos de parámetros de búsqueda
Tipos de parámetros de búsqueda Detalles Ejemplos

Número

Busca un valor numérico en un recurso específico. Se observan cifras significativas. El número de dígitos significativos es específico por valor de parámetro de búsqueda, excluyendo los ceros iniciales. Se permiten prefijos de comparación.

[parameter]=100

[parameter]=1e2

[parameter]=lt100

Fecha/ DateTime

Busca una fecha u hora específica. El formato esperado esyyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm], pero puede variar.

Acepta los siguientes tipos de datos: datedateTime,instant,Period, yTiming. Para obtener más información sobre el uso de estos tipos de datos en las búsquedas, consulta la fecha en la documentación de la RESTful API R4 del FHIR.

Se permiten los prefijos de comparación.

[parameter]=eq2013-01-14

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

[parameter]=ne2013-01-14

Cadena

Busca una secuencia de caracteres distinguiendo mayúsculas de minúsculas.

Admite ambos HumanName Address tipos. Para obtener más información, consulte la entrada del tipo de HumanName datos y las entradas del tipo de Address datos en la documentación del FHIR R4.

Se admite la búsqueda avanzada mediante :text modificadores.

[base]/Patient?given=eve

[base]/Patient?given:contains=eve

Token

Busca una close-to-exact coincidencia con una cadena de caracteres, a menudo comparada con un par de valores de códigos médicos.

La distinción entre mayúsculas y minúsculas está vinculada al sistema de código utilizado al crear una consulta. Las consultas basadas en subsuposiciones pueden ayudar a reducir los problemas relacionados con la distinción entre mayúsculas y minúsculas. Para mayor claridad, no se ha codificado. |

[parameter]=[system]|[code]: Aquí [system] se refiere a un sistema de codificación y [code] se refiere al valor de código que se encuentra dentro de ese sistema específico.

[parameter]=[code]: En este caso, la entrada coincidirá con un código o un sistema.

[parameter]=|[code]: En este caso, la entrada coincidirá con un código y la propiedad del sistema no tiene ningún identificador.

Compuesto

Busca varios parámetros dentro de un mismo tipo de recurso mediante los modificadores $ y la , operación.

Se permiten los prefijos de comparación.

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

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

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

Cantidad

Busca un número, un sistema y un código como valores. Se requiere un número, pero el sistema y el código son opcionales. Basado en el tipo de datos de cantidad. Para obtener más información, consulta la sección Cantidad en la documentación del FHIR R4.

Utiliza la siguiente sintaxis asumida [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

Referencia

Busca referencias a otros recursos.

[base]/Observation?subject=Patient/23

test

URI

Busca una cadena de caracteres que identifique de forma inequívoca un recurso concreto.

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

Especial

Búsquedas basadas en extensiones de PNL médicas integradas.

Parámetros de búsqueda avanzada compatibles con HealthLake

HealthLake admite los siguientes parámetros de búsqueda avanzada.

Nombre Descripción Ejemplo Funcionalidad
_include Se utiliza para solicitar que se devuelvan recursos adicionales en una solicitud de búsqueda. Devuelve los recursos a los que hace referencia la instancia de recurso de destino. Encounter?_include=Encounter:subject
_revinclude Se utiliza para solicitar que se devuelvan recursos adicionales en una solicitud de búsqueda. Devuelve los recursos que hacen referencia a la instancia de recurso principal. Patient?_id=patient-identifier&_revinclude=Encounter:patient
_summary El resumen se puede utilizar para solicitar un subconjunto del recurso. Patient?_summary=text Se admiten los siguientes parámetros de resumen:_summary=true,, _summary=false_summary=text,_summary=data.
_elements Solicite que se devuelva un conjunto específico de elementos como parte de un recurso en los resultados de la búsqueda. Patient?_elements=identifier,active,link
_total Devuelve el número de recursos que coinciden con los parámetros de búsqueda. Patient?_total=accurate Support_total=accurate,_total=none.
_sort Indique el orden de clasificación de los resultados de búsqueda devueltos mediante una lista separada por comas. El - prefijo se puede usar para cualquier regla de clasificación de la lista separada por comas para indicar un orden descendente. Observation?_sort=status,-date Support ordenar por campos con tiposNumber, String, Quantity, Token, URI, Reference. La clasificación por solo Date se admite en los almacenes de datos creados después del 9 de diciembre de 2023. Support hasta 5 reglas de clasificación.
_count Controle cuántos recursos se devuelven por página del paquete de búsqueda. Patient?_count=100 El tamaño máximo de página es 100.
chaining Elementos de búsqueda de los recursos referenciados. .Dirige la búsqueda encadenada al elemento dentro del recurso referenciado. DiagnosticReport?subject:Patient.name=peter
reverse chaining (_has) Busque un recurso en función de los elementos de los recursos que hacen referencia a él. Patient?_has:Observation:patient:code=1234-5

_include

Si se utiliza _include en una consulta de búsqueda, también se pueden obtener recursos adicionales específicos del FHIR. Se usa _include para incluir recursos que están enlazados hacia adelante.

ejemplo — Para localizar _include a los pacientes o al grupo de pacientes a los que se les ha diagnosticado tos

Debe buscar en el tipo de Condition recurso especificando el código de diagnóstico de la tos y, a continuación, _include especificando que también desea que se devuelva ese diagnóstico. subject En el tipo Condition de recurso, subject se refiere al tipo de recurso del paciente o al tipo de recurso del grupo.

Para mayor claridad, los caracteres especiales del ejemplo no se han codificado. Para que la consulta se realice correctamente, asegúrese de que la cadena de consulta se haya codificado correctamente.

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

_revinclude

Si se utiliza _revinclude en una consulta de búsqueda, también se pueden devolver recursos adicionales del FHIR especificados. _revincludeUtilícelo para incluir recursos que estén enlazados hacia atrás.

ejemplo — _revinclude Para incluir tipos de recursos relacionados con el encuentro y la observación vinculados a un paciente específico

Para realizar esta búsqueda, primero debe definir a la persona Patient especificando su identificador en el parámetro _id de búsqueda. Luego, especificaría recursos adicionales del FHIR utilizando la estructura Encounter:patient yObservation:patient.

Para mayor claridad, los caracteres especiales del ejemplo no se han codificado. Para que la consulta se realice correctamente, asegúrese de que la cadena de consulta se haya codificado correctamente.

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

_summary

El uso _summary en una consulta de búsqueda permite al usuario solicitar un subconjunto del recurso FHIR. Puede contener uno de los siguientes valores:. true, text, data, false Cualquier otro valor se considerará inválido. Los recursos devueltos se marcarán con una 'SUBSETTED' meta.tag para indicar que los recursos están incompletos.

  • true: Devuelve todos los elementos compatibles que estén marcados como «resumen» en la definición básica de los recursos.

  • text: Devuelve solo los elementos «texto», «identificador» y «meta» y solo los elementos obligatorios de nivel superior.

  • data: Devuelve todas las partes excepto el elemento «texto».

  • false: Devuelve todas las partes de los recursos

En una sola solicitud de búsqueda, _summary=text no se puede combinar con _include los parámetros _revinclude de búsqueda.

ejemplo — Obtenga el elemento «texto» de los recursos para pacientes en un almacén de datos.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_summary=text

_elements

El uso _elements en una consulta de búsqueda permite solicitar elementos de recursos específicos del FHIR. Los recursos devueltos se marcarán con una 'SUBSETTED' etiqueta meta para indicar que los recursos están incompletos.

El _elements parámetro consiste en una lista de nombres de elementos base separados por comas, como los elementos definidos en el nivel raíz del recurso. Solo se devolverán los elementos que estén en la lista. Si los valores de los _elements parámetros contienen elementos no válidos, el servidor los ignorará y devolverá los elementos obligatorios y los elementos válidos.

_elementsno se aplicará a los recursos incluidos (recursos devueltos cuyo modo de búsqueda esinclude).

En una sola solicitud de búsqueda, _elements no se puede combinar con los parámetros _summary de búsqueda.

ejemplo — Obtenga los elementos «identificadores», «activos» y «enlaces» de los recursos para pacientes en su almacén de HealthLake datos.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_elements=identifier,active,link

_total

Si se utiliza _total en una consulta de búsqueda, se devolverá el número de recursos que coinciden con los parámetros de búsqueda solicitados. HealthLake devolverá el número total de recursos coincidentes (recursos devueltos cuyo modo de búsqueda esmatch) en la respuesta Bundle.total de búsqueda.

_totaladmite los valores accurate de los none parámetros. _total=estimateno es compatible. Cualquier otro valor se considerará inválido. _totalno se aplica a los recursos incluidos (recursos devueltos cuyo modo de búsqueda esinclude).

ejemplo — Obtenga el número total de recursos para pacientes en un almacén de datos:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_total=accurate

_sort

Al _sort utilizarlos en la consulta de búsqueda, se ordenan los resultados en un orden específico. Los resultados se ordenan según la lista de reglas de clasificación separadas por comas en orden de prioridad. Las reglas de clasificación deben ser parámetros de búsqueda válidos. Los demás valores se considerarán inválidos.

En una sola solicitud de búsqueda, puede utilizar hasta 5 parámetros de búsqueda de clasificación. Si lo desea, puede utilizar un - prefijo para indicar el orden descendente. El servidor ordenará en orden ascendente de forma predeterminada.

Los tipos de parámetros de búsqueda de clasificación admitidos son:Number, String, Date, Quantity, Token, URI, Reference. Si un parámetro de búsqueda hace referencia a un elemento que está anidado, este parámetro de búsqueda no se admite para la ordenación. Por ejemplo, busque por «nombre» del tipo de recurso Paciente hace referencia a Patient.El elemento NAME con el tipo de HumanName datos se considera anidado. Por lo tanto, no se permite ordenar los recursos de los pacientes por «nombre».

ejemplo — Coloque los recursos para pacientes en un almacén de datos y ordénelos por fecha de nacimiento en orden ascendente:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_sort=birthdate

_count

El parámetro _count se define como una instrucción al servidor sobre cuántos recursos deben devolverse en una sola página.

El tamaño máximo de página es 100. Los valores superiores a 100 no son válidos. _count=0no se admite.

ejemplo — Busque el recurso para pacientes y establezca el tamaño de la página de búsqueda en 25:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_count=25

Chaining and Reverse Chaining(_has)

El encadenamiento y el encadenamiento inverso en el FHIR proporcionan una forma más eficiente y compacta de obtener datos interconectados, lo que reduce la necesidad de realizar múltiples consultas independientes y hace que la recuperación de datos sea más cómoda para los desarrolladores y los usuarios.

Si algún nivel de recursión arroja más de 100 resultados, HealthLake devolverá 4xx para evitar que el almacén de datos se sobrecargue y provoque múltiples paginaciones.

ejemplo — Encadenar: obtiene todo DiagnosticReport lo que hace referencia a un paciente cuyo nombre es peter.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/DiagnosticReport?subject:Patient.name=peter
ejemplo — Encadenamiento inverso: obtenga los recursos para pacientes, donde al menos una observación hace referencia al recurso para pacientes, donde la observación tiene el código 1234 y donde la observación hace referencia al recurso para pacientes en el parámetro de búsqueda de pacientes.

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

Modificadores de búsqueda compatibles

Los modificadores de búsqueda se utilizan con campos basados en cadenas. Todos los modificadores de búsqueda HealthLake utilizan una lógica booleana. Por ejemplo, puede especificar :contains que un campo de cadena más grande incluya una cadena pequeña para que se incluya en los resultados de la búsqueda.

Modificadores de búsqueda compatibles
Modificador de búsqueda Tipo
:falta Todos los parámetros excepto Composite
:exacto Cadena
:contiene Cadena
:no Token
:texto Token
:identificador Referencia
:abajo URI

Comparadores de búsqueda compatibles

Puede utilizar los comparadores de búsqueda para controlar la naturaleza de la coincidencia en una búsqueda. Puede utilizar los comparadores al buscar en los campos de número, fecha y cantidad. En la siguiente tabla se enumeran los comparadores de búsqueda y sus definiciones compatibles con. HealthLake

Comparadores de búsqueda compatibles

Comparador de búsquedas

Descripción

eq El valor del parámetro en el recurso es igual al valor proporcionado.
Uno El valor del parámetro del recurso no es igual al valor proporcionado.
gt El valor del parámetro en el recurso es mayor que el valor proporcionado.
lt El valor del parámetro en el recurso es inferior al valor proporcionado.
Edad El valor del parámetro del recurso es mayor o igual al valor proporcionado.
le El valor del parámetro del recurso es menor o igual al valor proporcionado.
sa El valor del parámetro del recurso comienza después del valor proporcionado.
eb El valor del parámetro del recurso finaliza antes del valor proporcionado.

Los parámetros de búsqueda del FHIR no son compatibles con HealthLake

HealthLake admite todos los parámetros de búsqueda del FHIR, a excepción de los que se muestran en la siguiente tabla. Para obtener una lista completa de los parámetros de búsqueda del FHIR, consulte el registro de parámetros de búsqueda del FHIR.

Parámetros de búsqueda no compatibles
Composición del paquete Ubicación: cerca
Identificador de paquete C onsent-source-reference
Paquete: mensaje Paciente contratado
Tipo de paquete Contenido del recurso
Marca de tiempo del paquete Consulta de recursos