Parametri di ricerca FHIR R4 per HealthLake - AWS HealthLake

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Parametri di ricerca FHIR R4 per HealthLake

Usa l'searchinterazione FHIR per cercare un set di risorse FHIR in un archivio HealthLake dati in base ad alcuni criteri di filtro. L'searchinterazione può essere eseguita utilizzando una richiesta GET orPOST. Per le ricerche che coinvolgono informazioni di identificazione personale (PII) o informazioni sanitarie protette (PHI), si consiglia di utilizzare POST le richieste, poiché PII e PHI vengono aggiunti come parte del corpo della richiesta e vengono crittografati durante il transito.

Nota

L'searchinterazione FHIR descritta in questo capitolo è costruita in conformità allo standard FHIR R4 per lo HL7 scambio di dati sanitari. Poiché è una rappresentazione di un servizio HL7 FHIR, non viene offerto tramite e. AWS CLI AWS SDKs Per ulteriori informazioni, consulta la searchdocumentazione dell'API FHIR R4 RESTful .

Puoi anche interrogare gli archivi HealthLake dati con SQL utilizzando Amazon Athena. Per ulteriori informazioni, consulta Integrazione.

HealthLake supporta il seguente sottoinsieme di parametri di ricerca FHIR R4. Per ulteriori informazioni, consulta Parametri di ricerca FHIR R4 per HealthLake.

Tipi di parametri di ricerca supportati

La tabella seguente mostra i tipi di parametri di ricerca supportati in HealthLake.

Tipi di parametri di ricerca supportati
Parametro di ricerca Descrizione
_id ID della risorsa (non un URL completo)
_Ultimo aggiornamento Data ultimo aggiornamento. Il server ha discrezione sulla precisione dei limiti.
_etichetta Cerca in base a un tag di risorsa.
_profilo Cerca tutte le risorse contrassegnate con un profilo.
_sicurezza Cerca sulle etichette di sicurezza applicate a questa risorsa.
_fonte Cerca da dove proviene la risorsa.
_testo Cerca nella narrazione della risorsa.
createdAt Cerca sull'estensione personalizzata CreateDat.
Nota

I seguenti parametri di ricerca sono supportati solo per i datastore creati dopo il 09 dicembre 2023: _security, _source, _text, CreateDat.

La tabella seguente mostra esempi di come modificare le stringhe di query in base a tipi di dati specificati per un determinato tipo di risorsa. Per maggiore chiarezza, i caratteri speciali nella colonna degli esempi non sono stati codificati. Per eseguire correttamente una query, assicuratevi che la stringa di query sia stata codificata correttamente.

Esempi di parametri di ricerca
Tipi di parametri di ricerca Dettagli Esempi

Numero

Cerca un valore numerico in una risorsa specificata. Sono state osservate cifre significative. Il numero di cifre significative è specifico in base al valore del parametro di ricerca, esclusi gli zeri iniziali. I prefissi di confronto sono consentiti.

[parameter]=100

[parameter]=1e2

[parameter]=lt100

Data/ DateTime

Cerca una data o un'ora specifica. Il formato previsto è yyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm] ma può variare.

Accetta i seguenti tipi di dati: datedateTime,instant,Period, eTiming. Per maggiori dettagli sull'utilizzo di questi tipi di dati nelle ricerche, consulta la data nella documentazione dell'API FHIR R4 RESTful .

I prefissi di confronto sono consentiti.

[parameter]=eq2013-01-14

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

[parameter]=ne2013-01-14

Stringa

Cerca una sequenza di caratteri con distinzione tra maiuscole e minuscole.

Supporta entrambi i tipiHumanName. Address Per ulteriori dettagli, vedere la voce relativa al tipo di HumanName dati e le voci relative al tipo di Address dati nella documentazione FHIR R4.

La ricerca avanzata è supportata tramite :text modificatori.

[base]/Patient?given=eve

[base]/Patient?given:contains=eve

Token

Cerca una close-to-exact corrispondenza in base a una stringa di caratteri, spesso confrontata con un paio di valori di codice medico.

La distinzione tra maiuscole e minuscole è collegata al sistema di codice utilizzato durante la creazione di una query.Le query basate su Subsumption possono aiutare a ridurre i problemi legati alla distinzione tra maiuscole e minuscole. Per chiarezza non è stato codificato. |

[parameter]=[system]|[code]: Qui [system] si riferisce a un sistema di codifica e si [code] riferisce al valore di codice trovato all'interno di quel sistema specifico.

[parameter]=[code]: Qui il tuo input corrisponderà a un codice o a un sistema.

[parameter]=|[code]: Qui il tuo input corrisponderà a un codice e la proprietà del sistema non ha un identificatore.

Composita

Cerca più parametri all'interno di un singolo tipo di risorsa, utilizzando i modificatori e l'operazione$. ,

I prefissi di confronto sono consentiti.

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

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

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

Quantità

Cerca un numero, un sistema e un codice come valori. È richiesto un numero, ma il sistema e il codice sono facoltativi. In base al tipo di dati sulla quantità. Per ulteriori dettagli, vedere Quantity nella documentazione FHIR R4.

Utilizza la seguente sintassi presunta [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

Documentazione di riferimento

Cerca riferimenti ad altre risorse.

[base]/Observation?subject=Patient/23

test

URI

Cerca una stringa di caratteri che identifichi in modo inequivocabile una particolare risorsa.

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

Speciale

Ricerche basate su estensioni NLP mediche integrate.

Parametri di ricerca avanzati supportati da HealthLake

HealthLake supporta i seguenti parametri di ricerca avanzata.

Nome Descrizione Esempio Funzionalità
_include Utilizzato per richiedere la restituzione di risorse aggiuntive in una richiesta di ricerca. Restituisce risorse a cui fa riferimento l'istanza della risorsa di destinazione. Encounter?_include=Encounter:subject
_revinclude Utilizzato per richiedere la restituzione di risorse aggiuntive in una richiesta di ricerca. Restituisce risorse che fanno riferimento all'istanza della risorsa principale. Patient?_id=patient-identifier&_revinclude=Encounter:patient
_summary Il riepilogo può essere utilizzato per richiedere un sottoinsieme della risorsa. Patient?_summary=text Sono supportati i seguenti parametri di riepilogo:_summary=true,_summary=false,_summary=text,_summary=data.
_elements Richiedi la restituzione di un set specifico di elementi come parte di una risorsa nei risultati della ricerca. Patient?_elements=identifier,active,link
_total Restituisce il numero di risorse che corrispondono ai parametri di ricerca. Patient?_total=accurate Support_total=accurate,_total=none.
_sort Indica l'ordinamento dei risultati di ricerca restituiti utilizzando un elenco separato da virgole. Il - prefisso può essere utilizzato per qualsiasi regola di ordinamento nell'elenco separato da virgole per indicare l'ordine decrescente. Observation?_sort=status,-date Supporta l'ordinamento per campi con tipiNumber, String, Quantity, Token, URI, Reference. L'ordinamento per Date è supportato solo per gli archivi dati creati dopo il 09 dicembre 2023. Supporta fino a 5 regole di ordinamento.
_count Controlla quante risorse vengono restituite per pagina del pacchetto di ricerca. Patient?_count=100 La dimensione massima della pagina è 100.
chaining Elementi di ricerca delle risorse referenziate. .Indirizza la ricerca concatenata all'elemento all'interno della risorsa referenziata. DiagnosticReport?subject:Patient.name=peter
reverse chaining (_has) Cerca una risorsa in base agli elementi delle risorse che le fanno riferimento. Patient?_has:Observation:patient:code=1234-5

_include

L'utilizzo _include in una query di ricerca consente di restituire anche risorse FHIR aggiuntive specificate. _includeDa utilizzare per includere risorse collegate in avanti.

Esempio — Da utilizzare _include per trovare i pazienti o il gruppo di pazienti a cui è stata diagnosticata la tosse

È possibile eseguire la ricerca in base al tipo di Condition risorsa specificando il codice diagnostico per la tosse e quindi utilizzando _include specificare che si desidera che venga restituita anche la subject diagnosi. Nel tipo di Condition risorsa subject si riferisce al tipo di risorsa per il paziente o al tipo di risorsa del gruppo.

Per maggiore chiarezza, i caratteri speciali dell'esempio non sono stati codificati. Per eseguire correttamente una query, assicuratevi che la stringa di query sia stata codificata correttamente.

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

_revinclude

L'utilizzo _revinclude in una query di ricerca consente di restituire anche risorse FHIR aggiuntive specificate. _revincludeDa utilizzare per includere risorse collegate all'indietro.

Esempio — Da utilizzare _revinclude per includere tipi di risorse correlate all'incontro e all'osservazione collegate a un paziente specifico

Per effettuare questa ricerca, è necessario innanzitutto definire la persona Patient specificando il suo identificatore nel parametro di _id ricerca. Quindi è necessario specificare risorse FHIR aggiuntive utilizzando la struttura e. Encounter:patient Observation:patient

Per maggiore chiarezza, i caratteri speciali dell'esempio non sono stati codificati. Per eseguire correttamente una query, assicuratevi che la stringa di query sia stata codificata correttamente.

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

_summary

L'utilizzo _summary in una query di ricerca consente all'utente di richiedere un sottoinsieme della risorsa FHIR. Può contenere uno dei seguenti valori:. true, text, data, false Qualsiasi altro valore verrà considerato non valido. Le risorse restituite verranno contrassegnate con 'SUBSETTED' meta.tag, per indicare che le risorse sono incomplete.

  • true: Restituisce tutti gli elementi supportati contrassegnati come «riepilogo» nella definizione di base delle risorse.

  • text: restituisce solo gli elementi 'text', 'id', 'meta' e solo gli elementi obbligatori di primo livello.

  • data: restituisce tutte le parti tranne l'elemento 'text'.

  • false: restituisce tutte le parti delle risorse

In una singola richiesta di ricerca, _summary=text non può essere combinato con i _include nostri parametri _revinclude di ricerca.

Esempio — Ottieni l'elemento «testuale» delle risorse per i pazienti in un archivio dati.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_summary=text

_elements

L'utilizzo _elements in una query di ricerca consente di richiedere elementi di risorse FHIR specifici. Le risorse restituite verranno contrassegnate con 'SUBSETTED' meta.tag, per indicare che le risorse sono incomplete.

Il _elements parametro è costituito da un elenco separato da virgole di nomi di elementi di base, come gli elementi definiti al livello principale della risorsa. Devono essere restituiti solo gli elementi elencati. Se i valori dei _elements parametri contengono elementi non validi, il server li ignorerà e restituirà elementi obbligatori e elementi validi.

_elementsnon sarà applicabile alle risorse incluse (risorse restituite la cui modalità di ricerca èinclude).

In una singola richiesta di ricerca, _elements non può essere combinato con i parametri _summary di ricerca.

Esempio — Ottieni elementi «identificativi», «attivi» e «link» delle risorse per i pazienti nel tuo archivio HealthLake dati.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_elements=identifier,active,link

_total

L'utilizzo _total in una query di ricerca restituirà il numero di risorse che corrispondono ai parametri di ricerca richiesti. HealthLake restituirà il numero totale di risorse corrispondenti (risorse restituite la cui modalità di ricerca èmatch) nella risposta Bundle.total di ricerca.

_totalsupporta i valori dei none parametriaccurate,. _total=estimatenon è supportato. Tutti gli altri valori verranno considerati non validi. _totalnon è applicabile alle risorse incluse (risorse restituite la cui modalità di ricerca èinclude).

Esempio — Ottieni il numero totale di risorse per i pazienti in un archivio dati:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_total=accurate

_sort

L'utilizzo _sort nella query di ricerca ordina i risultati in un ordine specifico. I risultati vengono ordinati in base all'elenco di regole di ordinamento separate da virgole in ordine di priorità. Le regole di ordinamento devono essere parametri di ricerca validi. Tutti gli altri valori verranno considerati non validi.

In una singola richiesta di ricerca, puoi utilizzare fino a 5 parametri di ricerca di ordinamento. Facoltativamente, puoi utilizzare un - prefisso per indicare l'ordine decrescente. Per impostazione predefinita, il server ordinerà in ordine crescente.

I tipi di parametri di ricerca di ordinamento supportati sono:Number, String, Date, Quantity, Token, URI, Reference. Se un parametro di ricerca si riferisce a un elemento annidato, questo parametro di ricerca non è supportato per l'ordinamento. Ad esempio, la ricerca in base al «nome» del tipo di risorsa Patient si riferisce a Patient.name. L'elemento con tipo di HumanName dati è considerato annidato. Pertanto, l'ordinamento delle risorse del paziente per «nome» non è supportato.

Esempio — Recupera le risorse per i pazienti in un archivio dati e ordinale per data di nascita in ordine crescente:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_sort=birthdate

_count

Il parametro _count è definito come un'istruzione al server relativa a quante risorse devono essere restituite in una singola pagina.

La dimensione massima della pagina è 100. Qualsiasi valore superiore a 100 non è valido. _count=0non è supportato.

Esempio — Cerca la risorsa Patient e imposta la dimensione della pagina di ricerca su 25:
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?_count=25

Chaining and Reverse Chaining(_has)

Il concatenamento e il concatenamento inverso in FHIR offrono un modo più efficiente e compatto per ottenere dati interconnessi, riducendo la necessità di più query separate e rendendo il recupero dei dati più comodo per sviluppatori e utenti.

Se un livello di ricorsione restituisce più di 100 risultati, HealthLake restituirà 4xx per proteggere l'archivio dati dal sovraccarico e dalla causa di più impaginazioni.

Esempio — Concatenamento: ottiene tutto ciò DiagnosticReport che si riferisce a un paziente il cui nome del paziente è peter.
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/DiagnosticReport?subject:Patient.name=peter
Esempio — Reverse Chaining - Get Patient Resources, dove la risorsa relativa al paziente viene indicata da almeno un'osservazione, dove l'osservazione ha il codice 1234 e dove l'osservazione si riferisce alla risorsa del paziente nel parametro di ricerca del paziente.

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

Modificatori di ricerca supportati

I modificatori di ricerca vengono utilizzati con i campi basati su stringhe. Tutti i modificatori di ricerca utilizzano una logica basata su booleani. HealthLake Ad esempio, è possibile specificare di :contains specificare che il campo stringa più grande deve includere una stringa piccola per poterla includere nei risultati della ricerca.

Modificatori di ricerca supportati
Modificatore di ricerca Tipo
: mancante Tutti i parametri tranne Composite
: esatto Stringa
:contiene Stringa
:non Token
:testo Token
:identificatore Documentazione di riferimento
: sotto URI

Comparatori di ricerca supportati

È possibile utilizzare i comparatori di ricerca per controllare la natura della corrispondenza in una ricerca. È possibile utilizzare i comparatori durante la ricerca nei campi relativi a numeri, date e quantità. La tabella seguente elenca i comparatori di ricerca e le relative definizioni supportati da. HealthLake

Comparatori di ricerca supportati

Comparatore di ricerca

Descrizione

eq Il valore del parametro nella risorsa è uguale al valore fornito.
uno Il valore del parametro nella risorsa non è uguale al valore fornito.
gt Il valore del parametro nella risorsa è maggiore del valore fornito.
lt Il valore del parametro nella risorsa è inferiore al valore fornito.
età Il valore del parametro nella risorsa è maggiore o uguale al valore fornito.
le Il valore del parametro nella risorsa è inferiore o uguale al valore fornito.
come Il valore del parametro nella risorsa inizia dopo il valore fornito.
eb Il valore del parametro nella risorsa termina prima del valore fornito.

Parametri di ricerca FHIR non supportati da HealthLake

HealthLake supporta tutti i parametri di ricerca FHIR ad eccezione di quelli elencati nella tabella seguente. Per un elenco completo dei parametri di ricerca FHIR, consultate il registro dei parametri di ricerca FHIR.

Parametri di ricerca non supportati
Composizione del pacchetto Ubicazione: vicino
Identificatore del pacchetto C onsent-source-reference
Messaggio del pacchetto Paziente a contratto
Tipo di pacchetto Contenuto delle risorse
Timestamp del pacchetto Interrogazione delle risorse