Back to Pilotfish Home

Data Mapping – Map From HL7 Message Template

    Video Key Moments

    Data Mapping from an HL7 Message Template to Custom XML

    In this demo you will see how to take an HL7 v2 message template in the eiConsole for Healthcare, convert the inbound HL7 into XML, then map it into a custom XML structure using the built-in Data Mapper. You will also learn how to run an inline test to validate the output before moving the transformation to production.

    [Try the Free 90-day Trial]     [Talk to an Expert]

     

    30-second summary

    • Start from an HL7 message template, then generate a reusable HL7 to XML transform
    • Use Friendly Names to make HL7 fields easier to interpret during mapping
    • Drag & drop mappings in the 3-pane Data Mapper, which generates standards-based XSLT
    • Run inline tests in eiConsole to confirm the output XML before deployment

     

    Create a New Source Transformation

    1. Create a new route, then define a Source and Target.
    2. Add a new Source Transform and select HL7 2.x.
    3. Select your HL7 version and enable Friendly Names to make the structure easier to read during mapping.

     

    Convert HL7 into XML

    In the Source Transform, the platform automatically converts the inbound HL7 message to XML, providing a consistent tree structure that is easier to map and test.

     

    Map into Custom XML using the Data Mapper

    1. Click New to open the Data Mapper.
    2. Load the HL7 Source structure using the HL7 format builder, version selection, Friendly Names and a sample HL7 message file.
    3. Load the Target as a custom XML structure using the XML format builder and a sample XML file.
    4. Generate a Target template from the sample to display the Target structure in the mapping pane.

     

    Drag & Drop Field Mappings

    To map values, navigate to the needed HL7 segment, field, or component on the left, then drag it into the corresponding target element. In the demo, we map a small set of patient fields to clearly show the workflow, then repeat the same pattern until the full target is populated.

     

    Apply Format Functions for Data Normalization

    When formats differ between Source and Target, use built-in tools like date/time formatting. For example, convert an inbound HL7 date in YYYYMMDD into an XML date in YYYY-MM-DD with a formatter drop-in.

     

    Test in eiConsole using Inline Execution

    Switch to Testing mode, feed a sample HL7 message, then execute the test. Review the input HL7, the intermediate HL7-as-XML output, and the final mapped custom XML to validate both structure and values before rollout.

     

    Deploy and Run in Production

    Routes saved by the eiConsole IDE can be deployed to eiPlatform for unattended execution, with operational visibility in eiDashboard. This supports hot deploy patterns and works well in Docker containers.

     

    Security, Observability, and Governance

    • Audit visibility for message flow and configuration changes
    • Metrics and reporting for throughput, error rates, and operational SLAs
    • Patterns that support secure handling of sensitive healthcare data

     

    HL7 Data Mapping, Validation and Transformation Case Studies

    Enhanced HL7 Healthcare Delivery

    A healthcare technology provider used PilotFish to automate HL7 workflows while applying customer-specific rules for advanced validation. The team also accelerated delivery by reusing HL7 interfaces, enabling changes and new implementations to move faster with less friction.

     

    RCM Automation: Flat File to HL7 with PilotFish

    A national medical billing provider replaced fragile Access and VBA processing with a configuration-driven integration approach that converts flat files into HL7 DFT for hospital billing. PilotFish enabled template-based reuse across 100+ hospital-based practices, improving onboarding speed, consistency and operational resilience.

     

    Healthcare Financial Analytics

    A healthcare analytics technology leader used PilotFish to enable real-time data integration, with reconciliation and auditing, from ingestion through transformation. The result was more reliable decision-critical data that supported operational and financial performance needs at scale.


    FAQ


    Yes. The workflow is the same: select the HL7 version, load a representative sample, convert to XML, then map to your target format. This same workflow is used for X12 EDI, FHIR, JSON and other standard data formats as well.


    No. The mapping is created visually in the Data Mapper, which generates the transform logic for you. You can toggle between the visual and XSLT versions of the mapping.


    Yes, PilotFish is fully capable of handling hospital-based HL7 integration. Still, it is designed to extend beyond hospitals to serve a broader range of healthcare sectors, including payers, solution providers, medical device companies, medical labs, and more. Its flexibility enables it to adapt to diverse healthcare needs, making it suitable for clients seeking a versatile integration engine.


    Out-of-the-box, the eiConsole lenient parsing component handles anything that looks even remotely like an HL7 v2.x message – including “byzantine” sets of fields, components and sub-components that are not part of the standard. The lenient parser is exposed and enabled in the Transformation module. The HL7 message, including any custom segments, converts easily to XML. Watch the HL7 Lenient Parsing video.


    PilotFish streamlines the process of modifying HL7 message segments by leveraging its intuitive drag & drop data mapping tool. This graphical interface eliminates the need for custom coding, enabling rapid adjustments without system redeployment or downtime.


    Check out our FAQ pages for more.


    Data Mapping from an HL7 Message in the eiConsole for Healthcare

    This is a demonstration of the eiConsole for Healthcare data map created from the HL7 message template. Using the eiConsole for Healthcare, it’s easy to map from any HL7 message to any other data format. Let’s show you how.

     

    Create a New Source Transformation

    Simply create a new route, define a source and define a target. Next, we’ll create a new source transformation. We’ll call it “Map from HL7 Message”. First, we’ll need to take our HL7 and transform it into XML. So, we’ll use our transformation module. Let’s scroll down to HL7 2.X; you can choose our version here, which, in this case, we’ll use 2.4, and we’ll also scroll down to use the “friendly names” option.

     

    Configure Mapping into XSLT

    Next, we’ll need to configure our mapping into XSLT transformation. By clicking “New,” we’ll open the Data Mapper. Here, we need to load it in our source and target formats, starting with the source format. Here, we will use our HL7 format builder. Again, we’ll choose our version, 2.4 and choose “friendly names”; we’ll also use a sample file. We’ll use this lab result message as our HL7 sample file. Hit “open” and “read format”. Here, on the left, you can see the structure of the HL7 message.

     

    Load Desired Target Format

    Next, we’ll load in the desired target format, which will be a custom XML structure. I’ll use the XML format builder. Select from the drop-down and here we can also choose a sample file. In this case, I’m going to use the custom lab results XML file. Hit “reformat” – that will pull that structure over here on the right.

    To map from one to the other, I’ll create a target template using the sample data. The structure of my target data will appear in the center panel. To map values from the HL7 message, I’ll simply navigate to the appropriate segment field or component and drag and drop. For demonstration purposes, I’ll map the last name, the first name, and the date of birth.

    If we need to do any further manipulation of the data, the palliative structures above the mapping can be used to accommodate that. For instance, if we want to map the inbound date format onto an XML date format, we can use the date/time formatting tool. Simply drop this formatter right into the date of birth. You’ll get a pop-up box where you can have the input pattern that you expect from your HL7 message and also input the output pattern that you expect your custom XML to have. In this case, our HL7 message is coming in as YYYYMMDD. I want to format that automatically into YYYY-MM-DD. Hit ‘OK’ to apply that. We continue in this fashion until all the various fields are mapped. You can go ahead and then save our mapping and return to the eiConsole.

     

    eiConsole’s Testing Mode

    We can now test the mapping in the eiConsole’s testing mode. First, I’ll configure my test and use a sample file to feed through it. We’ll use the same lab result HL7 message that we used for the mapping. Hit “open.” Now, when I hit “execute test,” you’ll see these three question marks turn into green checkmarks.

    Let’s go ahead and take a look at the output. Here’s our input HL7 message. Now, we can see its transformation to XML. Finally, we will map under the custom format, where we can see the fields that we mapped here in this demo.

    So, it’s just that easy! We used the HL7 transformation module to convert the HL7 message into XML. We perform our mapping using drag & drop in the data mapper and then we test in the testing mode. In minutes, we built the transformation from any HL7 message to any other format.


    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.
    X12, chartered by the American National Standards Institute for more than 35 years, develops and maintains EDI standards and XML schemas.

    This is a unique website which will require a more modern browser to work! Please upgrade today!