A composable processor is a collection of operations you can build to orchestrate your unique workflow. You can reuse a processor for multiple workflows. . Learn more about orchestration.
Check out how processors can enhance your data processing workflow with these high-level use cases, including one detailed use case with code examples at the end.
Scenario: A message from your connection is missing diagnoses, insurance details, or certain code sets.
Problem: You need the missing data to populate records in your system.
Goal: Add the missing data from an external API to the message before it reaches your system.
How the processor works:
- The processor calls an external API to get the missing data.
- The processor enriches the messages with these details:
- Add encounter diagnoses from the EHR system to a Scheduling message.
- Add insurance information to VisitQuery results.
- Add standardized terminology codes to a value set.
- The processor sends the enriched message to your system.
Scenario: You receive order cancellations as HL7v2 messages.
Problem: To cancel a single order, your system needs two HL7v2 messages that differ only in ORC.1. Your connection (i.e., the source system) sends only one Order.Cancel message.
Goal: Send two versions of the cancellation, each with the ORC.1 value that your system expects.
How the processor works:
- The processor duplicates the Order.Cancel message.
- It tags the copy.
- Your destination’s config uses the tag to set a different ORC.1 value on each message.
Scenario: An EHR system send discharge notifications to your system.
Problem: You need the patient’s full clinical record after discharge, but the EHR system only sends a discharge notification.
Goal: Turn the discharge notification into a complete clinical record for your system.
How the processor works:
- The processor takes the MRN from the A03 message.
- It finds the patient in the EHR system.
- It runs a set of FHIR® searches, such as Encounter, Observation, Condition, and Medications.
- It reads any referenced Location, Organization, and Practitioner resources to build the clincial record.
- It combines everything into one FHIR® bundle and sends it to your system.
Scenario: You’re receiving an SIU and ADT feed that you filter based on provider ID.
Problem: The provider ID list is manually maintained and filters have to be updated or paused every time a new provider is added to the network.
Goal: Automatically check for new providers and get notified about the new provider(s) without having to pause your filters.
How the processor works:
- The processor polls for new providers.
- It notifies your system when a new provider is added so you can update your filter and provider list without pausing.
Scenario: You receive a FHIR® bundle with several document entries in one message.
Problem: Your system expects individual documents for easy retrieval.
Goal: Split the FHIR® bundle into individual Document Bundle payloads.
Process operations: Next, build your processor with these operations:
- apply-config: You need to modify the FHIR® bundle by applying a Redox base config. Learn about apply config.
- map-collection: You need to map the split document bundles to new payloads with metadata for each. Learn about map collection.
- build-json: You need to return each item as a full payload with metadata so it's ready to enqueue at your source. Learn about build json.