Using FHIR search functionality in Amazon HealthLake - Amazon HealthLake

Using FHIR search functionality in Amazon HealthLake

Amazon HealthLake supports searching data store resources using supported parameters. You can search HealthLake data stores using both GET and POST. For queries that involve Protected Health Information (PII) or Personally identifiable information (PHI) it's recommended to use POST requests.

For requests that require pagination, all follow-up page requests will be searched with GET by default when the pagination token is used. To specify the number of search results, use the _count parameter in your search query. The maximum value for _count is 100 query results.

The following search parameter types are supported in HealthLake.

Search Parameter Types Details Examples

Number

Searches for a numerical value in a specified resource. Significant figures are observed.

Significant figures are observed. The number of significant digits are specific in by search parameter value, excluding leading zeros.

Comparison prefixes are allowed.

[parameter]=100

[parameter]=1e2

[parameter]=lt100

Date/DateTime

Searches for a specific date or time. The expected format is yyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm] but can vary.

Accepts the following data types date, dateTime, instant, Period, and Timing. For more details using these data types in searches, see date in the FHIR Documentation Index.

Comparison prefixes are allowed.

[parameter]=eq2013-01-14

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

[parameter]=ne2013-01-14

String

Searches for a sequence of characters in a case-sensitive manner.

Supports both HumanName and Address types. For more details, see the HumanName data type entry and the Address data type entries in the FHIR Documentation Index.

Advanced search is supported using :text modifiers.

[base]/Patient?given=eve

[base]/Patient?given:contains=eve

Token

Searches for a close-to-exact match against a string of characters, often against a pair of values as seen in medical codes.

Case sensitivity is linked to code system used when creating a query.

Subsumption based queries can help reduce issues linked to case sensitivity.

[parameter]=[system]|[code]: Here [system] refers a coding system, and [code] refers to code value found within that specific system.

[parameter]=[code]: Here your input will match either a code or a system.

[parameter]=|[code]: Here your input will a match a code, and the system property has no identifier.

Composite

Searches for multiple parameters within a single resource type, using the modifiers$ and , operation.

Comparison prefixes are allowed.

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

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

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

Quantity

Searches for a number, system, and code as values. A number is required, but system and code are optional. Based on the Quantity data type. For more details, see Quantity in the FHIR Documentation Index.

Uses the following assumed syntax [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

Reference

Searches for references to other resources.

[base]/Observation?subject=Patient/23

test

URI

Searches for a string of characters that unambiguously identifies a particular resource.

The modifiers :above and :below can be used to specify partial matches.

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

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

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

Special

Searches based on integrated medical NLP extensions.

For details on the full FHIR standard search specifications see, Searching FHIR resources in the FHIR Documentation Index.