Data Mapping to an HL7 Message in the eiConsole for Healthcare
This is a demonstration of the eiConsole for Healthcare mapping to HL7 message template feature. In the course of this demonstration, I will show you just how easy it is to use a sample HL7 message, for instance, from an implementation guide to create a new mapping from a custom format.
Create a New Source Transformation
Here we are in the eiConsole. We’ll add a source and add a target.
Next, we’ll create a new transformation for this mapping. The first thing we need to do is build the map itself. We’ll do this in the PilotFish Data Mapper. Our source format will be a custom XML file. We use the XML format reader to read that file in. Simply hit “read format”, that will pull in the structure of our custom XML file on the left-hand side.
We’ll use a sample HL7 file for our target side. First, we’ll select the HL7 2.x format reader – we’ll choose to use “friendly names” in a sample file. Choose “read format”. A slice of the HL7 vocabulary corresponding to the sample message provided will appear in the target format tree.
Create a Mapping
Now we’ll want to create a mapping. To do this under the format menu, I’ll choose to add my target sample data as a template. A number of green nodes corresponding to the segments fields and components used in the sample message will automatically appear in my mapping panel. By default, these fields would contain the values from my sample file. However, I now want to map dynamic information from my source data into some of these fields.
For instance, let’s map the patient name. I’ll simply drag & drop from my source side onto the mapping. I can also manipulate this data during the mapping. For instance, let’s map the date of birth. We’ll see that my message format expects a different date than I am expecting on the target side. I can use tools like the date/time formatter to manipulate the mapping. Simply drag & drop this formatter onto the mapping. A pop-up box will appear. In this situation, my source data date of birth is coming in as MM/DD/YYYY and I want to change that to YYYYMMDD. I’ll simply enter the input pattern here and on the output pattern I will define what I expect the day to change to. That will now manipulate that data in the way that I expect.
As I do this, XSLT is being generated for the mapping that I can test in the testing view of the data mapper. Here we can see values from my source mapped into my HL7 XML template. Similarly, we can see the date of birth with the formatting rules placed in the date and time of birth field.
Convert Output into Delimited HL7
Once I’ve completed my mapping to the template, I save it and return to the main eiConsole screen to convert my output into delimited HL7. Here I’ll choose the HL7 2.x transformer. Again, I’ll choose my version and select the “friendly names” option. I can save my work and testing in the eiConsole’s testing mode to test my transformation.
Next, I’ll set the parameters from my test and load in a sample file. Once I hit “execute test” you’ll see all the question marks turn to green checks. Here we can see our custom XML format with Sally Underweather born on September 19, 1980, our original date format. And here we can see the data after being mapped under the HL7 message template. Finally, the HL7 transformation module converted that into a delimited HL7 compliant format.
So, it’s just that easy! You can take a sample HL7 message from any implementation guide or vendor system loaded as a target template drag & drop your source data onto it and you’re done. You’ve created a transformation to a custom defined HL7 message template.
Review our long list of other helpful HL7 Tools included with our Integration Engine, the eiConsole. We encourage you to try it for yourself by downloading a Free 90-Day Trial of eiConsole by PilotFish.
If you’re curious about the software features, free trial, or even a demo – we’re ready to answer any and all questions. Please call us at 813 864 8662 or click the button.
HL7 is the registered trademark of Health Level Seven International.