/
Creating a Catchall Matching Rule

Creating a Catchall Matching Rule

What is a "Catchall" matching rule?

HL7 has lots and lots of messages. Often times we want to ignore most of them. This is where having a “catchall” rule which just matches everything that you don’t want to match and just parses the header MSH segment of a message is super helpful.

Editing the Matching Rules in IguanaX

On the previous page we created a vmd file. Now it is time to add “Catchall” and create matching rules:

  1. You should have an ADT^A01 message imported already.

  2. Click + ADD MESSAGE:

Screen Shot 2024-09-18 at 4.32.25 PM.png
  1. Edit the message:

Screen Shot 2024-09-18 at 4.33.38 PM.png
  1. Change the name to “Catchall” and add a “MSH” type, then SAVE:

  1. Click “Matching Rules”

  1. Edit the Matching Rules:

  1. Add a rule like the screenshot and SAVE:

Matching rule order matters. The order defined here is what IguanaX uses to match inbound messages. If the * catchall rule is defined before any rules, the proceeding rules will not take effect.

Use the code here:

function main(Data) -- PARSE HL7 Message local Out, MsgType, err = hl7.parse{vmd="hl7.vmd", data=Data} trace(Out) end

Here is the sample message to copy in:

MSH|^~\&|MESA_ADT|XYZ_ADMITTING|iFW|ZYX_HOSPITAL|||ADT^A04|103102|P|2.4|||||||| EVN||200007010800||||200007010800 PID|||583295^^^ADT1||DOE^JANE||19610615|M-||2106-3|123 MAIN STREET^^GREENSBORO^NC^27401-1020|GL|(919)379-1212|(919)271-3434~(919)277-3114||S||PATID12345001^2^M10|123456789|9-87654^NC NK1|1|BATES^RONALD^L|SPO|||||20011105 PV1||E||||||5101^NELL^FREDERICK^P^^DR|||||||||||V1295^^^ADT1|||||||||||||||||||||||||200007010800|||||||| PV2|||^ABDOMINAL PAIN OBX|1|HD|SR Instance UID||1.123456.2.2000.31.2.1||||||F|||||| AL1|1||^PENICILLIN||PRODUCES HIVES~RASH AL1|2||^CAT DANDER DG1|001|I9|1550|MAL NEO LIVER, PRIMARY|19880501103005|F|| PR1|2234|M11|111^CODE151|COMMON PROCEDURES|198809081123 ROL|45^RECORDER^ROLE MASTER LIST|AD|CP|KATE^SMITH^ELLEN|199505011201 GT1|1122|1519|BILL^GATES^A IN1|001|A357|1234|BCMD|||||132987 IN2|ID1551001|SSN12345678

Use the Sample Data arrows to navigate sample messages and view results in the Annotations.

 

Related content

Creating a VMD
Creating a VMD
More like this
Transforming Messages: HL7 to JSON
Transforming Messages: HL7 to JSON
More like this
Mapping Messages
Mapping Messages
Read with this
Translation of Chameleon HL7 Matching Rules to IguanaX matching rules
Translation of Chameleon HL7 Matching Rules to IguanaX matching rules
More like this
Structuring Component Translators
Structuring Component Translators
Read with this
Working with HL7
Working with HL7
More like this