Search Parameters
Here we describe the key RESTful FHIR interactions for this profile: search and read operations. Responders that implement the full U.S. Core Implementation Guide specifications will have additional capabilities, but here we focus on those necessary for this pilot exchange.
All of the following search parameters and combinations of them SHALL be supported by the Responder. For further information, implementers may want to review these parts of the FHIR R4 specification:
For Observation
Responder SHALL support searching using the patient search parameter
Description
This search fetches a bundle of all Observation resources for the specified patient.
Syntax
GET [base]/Observation?patient=[reference]
Example
GET [base]/Observation?patient=1134281
Responder SHALL support searching using thepatient and category search parameters
Description
This search fetches a bundle of all Observation resources for the specified patient that have the specified category code.
Syntax
GET [base]/Observation?patient=[reference]&category={system|}[code]
Example
GET [base]/Observation?patient=1134281&category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory
Responder SHALL support searching using the patient and category and date search parameters
Description
This search fetches a bundle of all Observation resources for the specified patient that have the specified category code and match the date comparators.
The Responder SHALL support these date comparators: gt, lt, ge, and le.
The Responder SHOULD also support a composite AND search on multiple date parameters. For example: date=[date]&date=[date]]&...
Syntax
GET [base]/Observation?patient=[reference]&category={system|}[code]&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...
Example
GET [base]/Observation?patient=1134281&category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&date=ge2021-01-04
For Patient
Responder SHALL support reading a Patient resource using the _id search parameter
Description
This search fetches a bundle of all Patient resources for the specified id.
Syntax
GET [base]/Patient[id]
Examples
GET [base]/Patient?_id=10327021
GET [base]/Patient/1032702
Responder SHALL support searching a patient by an identifier such as a MPI using the identifier search parameter:
Description
This search fetches a bundle of all Patient resources matching the identifier.
Syntax
GET [base]/Patient?identifier={system|}[code]
Example
GET [base]/Patient?identifier=http://hospital.smarthealthit.org|1032702