Routing HL7 Data with PilotFish’s Integration Engine Software
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.
Setting up Route Source & Target
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.
Import HL7 Data
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.
Process Imported Data
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.
Transform HL7 to XML
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 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.
Creating the Data Map
Data transformations in the 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 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 persons 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.
Data 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.
Testing the Message Route
Now that we viewed the configuration of these stages, let’s move along to 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 checkmark 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.
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 eiConsole Trial
Try the eiConsole for yourself! We offer a Free 90-Day Trial of the eiConsole for Healthcare without any obligation.