ESMD FHIR Implementation Guide
1.0.0 - esmd

ESMD FHIR Implementation Guide - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Search Parameters

The esMD FHIR system incorporates custom SearchParameters to efficiently retrieve information related to specific transactions and documents in the esMD workflow. These SearchParameters allow for targeted querying of transaction data based on specific criteria like sender OID, unique identifier, and transaction status. Below is a detailed explanation of the key SearchParameters used in esMD: organizationid, uniqueId, and trans-status-type.


2. SearchParameter: uniqueId

The uniqueId SearchParameter is a custom parameter that filters records based on a Unique Identifier (ID) that is generated by the HIH during the creation of a transaction. The uniqueId serves as a transaction identifier, allowing HIHs to track and manage their submissions within the esMD system.

Purpose:

  • Allows HIHs to retrieve specific transactions based on the unique identifier they generated at the time of submission.
  • Ensures that the search results are specific to a particular transaction, making it easier to track its status and associated documents.

Usage:

The uniqueId is generated by the HIH when a transaction is created and included in the submission bundle. This ID acts as a reference key for both the HIH and esMD, ensuring that the transaction can be queried and managed throughout its lifecycle.

Example Usage:

To retrieve a specific transaction based on its unique ID, the following query can be used:

GET /List?uniqueId=12345

Where 12345 is the unique ID assigned by the HIH during the creation of the transaction.

Key Points:
  • The uniqueId is crucial for transaction management and tracking.
  • This parameter allows for fine-grained search results specific to an individual transaction, making it easy to find, review, and update the transaction's status.

3. SearchParameter: trans-status-type

The trans-status-type SearchParameter is used to filter transactions based on their current status. In esMD, the status of a transaction indicates where it is in the lifecycle. This parameter supports filtering transactions that are ready for download (e.g., pending review) versus those that have already been processed or downloaded.

Transaction Status Types:

  1. ready-to-download: This status indicates that the transaction is available for download and has not yet been processed or retrieved by the HIH. These are the transactions that the HIH is expected to retrieve and process.
  2. processed: This status indicates that the transaction has already been downloaded and processed. Once the HIH retrieves a document or transaction, its status is updated to processed.

Purpose:

  • Ensures that HIHs can retrieve transactions based on their current status, allowing them to focus on transactions that are either ready for processing (ready-to-download) or those that have already been processed (processed).

Usage:

This SearchParameter helps differentiate between transactions that need attention (i.e., they are ready for download) and those that have already been processed, allowing HIHs to manage their workload efficiently.

Example Usage:

To retrieve transactions that are ready to be downloaded:

GET /List?trans-status-type=ready-to-download

To retrieve transactions that have already been downloaded and processed:

GET /List?trans-status-type=processed
Key Points:
  • ready-to-download: Focuses on transactions that are ready for the HIH to download and process.
  • processed: Focuses on transactions that have already been retrieved by the HIH and have been processed.
  • Helps HIHs manage document delivery and transaction lifecycle efficiently.

Search Workflow Example

Let’s consider a scenario where a HIH wants to retrieve all transactions that are ready to be downloaded and submitted by a specific HIH:

Workflow:

  1. Retrieve Ready-to-Download Transactions for a Specific HIH:
    • The HIH would query the esMD FHIR server using both the organizationid and trans-status-type parameters to get a list of all transactions submitted by the HIH that are ready-to-download.

    Example API Call:

    GET /List?organizationid=urn:oid:2.16.840.1.113883.3.9999.1&trans-status-type=ready-to-download
    

    This query retrieves all transactions associated with the HIH OID 2.16.840.1.113883.3.9999.1 that are marked as ready-to-download.

  2. Download and Process the Transaction:
    • The HIH then downloads and processes the transaction. After successful retrieval, the esMD system updates the transaction status to processed.
  3. Verify Processed Transactions:
    • If the HIH needs to verify which transactions have already been processed, they can query the esMD system using the processed status.

    Example API Call:

    GET /List?trans-status-type=processed