Routing HL7 Data with PilotFish Interface Integration Software
Welcome, in this demonstration you will see some of the unique capabilities of the eiConsole for Healthcare in this example. HL7 formatted lab results will be received along with the corresponding image report. These two data sources will be combined into a single transaction in a standards-based XML format.
Configure Source, Listener & Processors for HL7 Route
We’ll begin by opening up the receive HL7 results route or interface from the route file management window. This brings us to the main route grid that depicts the flow of data between our source system, a lab system, and our target system, an external insurance company.
We begin with the Listener, which is configured to poll a directory for an HL7 input file. Once such a file is found, we move on to the Processors.
Next, the Processors look at the name of the inbound file and attempt to find a corresponding image report with the PDF extension. That image report is added to the transaction and converted into a Base64 encoded format.
HL7 Data Transformations & Data Mapping
We then move on to the Source Transformation, which will take the HL7 data and convert it into a generic XML representation. We do this by using the XCS eiConsole’s HL7 to XML transformation module. The HL7 is parsed, converted into XML, and then grouped into a logical XML representation.
In the Routing stage, we route the data along to our single target system, which includes the target transformation to convert our generic XML representation of the HL7 into the insurance specific XML format. In this case, an ACORD TXLife 1122 XML transaction.
Data transformations in the XCS eiConsole are handled using PilotFish’s Data Mapper. All of your logical mapping is done here between your source format, in this case, our HL7 data, represented as a tree to the left and our target format in this case in an ACORD TXLife XML transaction represented as a tree to the right.
Logical mapping rules are created through dragging and dropping onto the structure in the middle, with green nodes representing XML elements in our result and blue nodes representing values mapped into those fields.
For instance, here we can see patient information mapped into the person, first name, middle name, and last name tax. We also see a yellow note underneath birthdate that demonstrates how the eiConsole data mapper can be used to perform data manipulation during the mapping process. Here we’re formatting the date of birth value coming in from our HL7 into an XML date format using our date formatting tool from the palette above.
As this mapping was created, XSLT was generated under the covers. It’s also, within the Data Mapper, where we pull in the HL7 image, already converted into a Base64 encoded representation and we place it into our main XML transaction as an attachment data element. Once the data has been converted into our outbound ACORD 1122 XML transaction, we move on to the Transport stage.
In the Transport stage, we’ve configured a directory drop to simply place the XML transaction in a specified directory. However, any number of transport types are possible and more typically we’d be doing something like an HTTP POST to a web service.
HL7 Route Validation & Testing
Now that we view the configuration of these stages let’s watch it in action. To do that, we’ll switch to the Interface Testing Mode of the eiConsole. Here, we’ll see all the stages we just talked about represented as question marks. We can choose to start our test at any stage and end it at any stage.
Now when we click the execute test button, the Listener will fire up and begin polling the specified directory for data. As it finds an HL7 formatted file we’ll pick it up, it’ll pick up the corresponding image and as each stage completes the question mark will turn into a check mark indicating success.
Now we can take a look at how the data appeared at each step in the process. Here we can see our initial HL7 lab result input. We then picked up the corresponding PDF image. That PDF image was converted into a single Base64 encoded stream. Then in the source transformation, we converted the HL7 input into XML.
Routing HL7 Data to Target Destination
The HL7 XML representation is then routed to our one target, where it is mapped onto an industry-specific XML standard format. In this case, an ACORD TXLife transaction. Within this transaction, you can see the embedded image created from the PDF. You can also see the mapping of a number of lab test results.
Finally, this file was dropped in the directory for further processing. And that’s all there is to it! It’s just that simple to use the eiConsole for Healthcare to manipulate HL7 Data and to Convert HL7 Data into virtually any other file format. Thanks for watching.
Free Test Drive of PilotFish Integration Engine
Try the eiConsole for yourself! We offer a Free 90-Day Trial of the eiConsole for Healthcare without any obligation.