HL7 Soup V3.1

What's new?

Version 3.1 is loaded with heaps of exciting new features. We've added some fantastic searching features to the main window that you are going to find super useful, plus we've taken our workflows to the next level with a pile of new activities and message formats to simplify your interfaces or conversions.

  • Improved searching

  • Database activities

  • HTTP activities - REST services, SSL(https)

  • Web Service activities - SSL(https)

  • Support for JSON and FHIR messages (+ more) in workflows

  • New transformers (Conditions and For Each)

  • Easily adjust date formats or encoding of variables

Improved Searching

Searching for HL7 by path example

Ever been on a phone call for an HL7 integration when someone mentions a Field you’re not familiar with? “Hey, we’ve been having some problems with the PID-13..”

Well, we’ve got your back! Just type the path “PID-13” in the search box up the top left and instantly get the details you need at a glance. You’ll get the Name, Data Type and all the children presented to you in a flash, as well as highlighting the field in your message.

Searching for text within and HL7 message example

It’s even better when searching for a text in your messages too. See the results right below the search box, with the text highlighted to match your search term. We even show the results where the found text starts with your term first before we show you where it’s contained.

Now just click through each of the found messages and this results box will show the located values for each message.

Database activities

Did you want to store the data you received to a database? How about grabbing additional database data and adding it to the HL7 messages you are sending? This just got a lot easier with our new database activities.

Works with SQL Server and Oracle DB etc. We even provide simple mechanisms for using parameters to prevent SQL Injection attacks.

Polls you database waiting for new values. Once they arrive, put them into your message and send it on.

Runs queries against your database. Great for INSERT or UPDATE, but it can also retrieve additional results if you use a SELECT. Take the query results and include them in your messages.

Database Query activity example

HTTP activities - REST services, SSL(https)

Our HTTP activities make it simple to call a REST service with custom criteria and content. Or maybe you would prefer hosting your own REST service? Perfect for getting started using FHIR too (JSON or XML).

We also make it easy to secure your message with SSL (https). Great for when you need to send data via the internet, or even if you just want to keep things secure on-premise. We think that security is super important in an HL7 integration, so we don’t charge extra for this. If you have integrations in other systems that do, why not relay them with HL7 Soup to make them secure.

Host your own Secure Rest service or create FHIR endpoints for your system. You can use data passed in the message content, as well as the URL structure and Query String.

e.g. https://xps15:8080/HL7Soup/Auckland/Urology?PatientID=1000

Http parameters and query string example

Send messages of any type reliably and securely over SSL. There is even a new HL7 Soup Sender that can send messages straight from the HL7 Soup main screen to the HTTP service of your choice. Testing Solved!

Web Service activities - SSL(https)

If you have SOAP web services, they can now be used in your HL7 Soup workflow too. Or if you'd like to host your own with HL7 Soup, not a problem. We’ll even make them easy to secure with SSL at no additional cost.

Creates a service that listens for SOAP messages. Plus, the URL provides a WSDL that describes how to call it.

Just point it at a WSDL and you’ll get all the methods available. Makes it really easy to configure. It even populates templates for the data you send as well as the results you get back.

Like with the HTTP Sender, you can also send to Web Services directly from the HL7 Soup senders – no workflow required.

Support for JSON and FHIR messages (+ more) in workflows

We’ve always supported HL7, XML and CSV, but now we’ve included JSON (FHIR + REST), Binary (PDF, Audio, Imaging, etc), and Plain Text.

Better yet, every format works with all our activities making communication with every type of system possible. E.G. easily send a JSON message over TCP, HTTP, SOAP, or write it to a file.

We also make it simple to encode (escape) data for any message type. So, if you want to send HL7 within an XML message it won’t corrupt your XML (More below) …

New transformers (Conditions and For Each)

Transformers just got a shot in the arm too. You can now selectively pick which transformers are executed depending on criteria. E.g. if the HL7 PID-3 is not provided, then map the PID-2 to the Patient ID instead.

You can even loop over repeating fields in HL7, XML and JSON and run your transformers for each result. E.g. Loop over all the phone numbers in the HL7 PID-13 and create an XML node for each one.

Mix the two new transformers together and hunt for values within a message.

For Each and Conditional Transformers

Easily adjust date formats or encoding of variables

If you map between message types and systems, you’ll have found how little anomalies in the data can waste a lot of your time. Well HL7 Soup is going to make that headache go away.

Firstly, mappings between message types automatically escapes control characters in the data. Your CSV file might have no problems storing ‘Corner of High Street & Main’ or ‘Charles Charlie Brown‘, but when that data is placed into HL7, XML or JSON you’d be corrupting the message format. Luckily, we correct it for you.

It’s still possible to adjust the message structure if that’s what you want to do, but there’s now a checkbox to allow this.

Mapping your data to a variable provides even more options because whenever you right click on a variable or message binding we have a pile of treats available.

Formatting Variables Menu

Easily swap your variable with another variable or even with a binding to the results of an activity

Or maybe you need to escape it for a particular message type. We have features that escape your text to and from HL7, XML, JSON, CSV, Base64 and URLs.

Formatting Variables As Date Menu

Formatting dates and numbers are also just a menu click away. I think you’ll find this selection rather helpful!

Or how about the make sure text uses Title Casing – great for first names or documents.

Better yet, how about McName Casing! Ever been asked to import names into a system and get the capitalization correct when the originating system stores everything in upper case? Your formulas work great until Mr MacDonald comes along with Mr Macquarie.

We’ve solved this for you with a customizable database, pre-populated with over 200 surnames having complicated casing. The McName Case feature makes it super easy to get the right casing for all your Surnames and Street Name. Mrs LeBlanc will appreciate your efforts.

There are a plenty of more features too if you look at the release notes file in the HL7 Soup installation directory.


Please post any questions you might have to our support page.

Available for download here.