Back to calculator Use calculator
HL7 & InterfacesGenerated accuracy model review: 2026-05-06
HL7 Message Viewer accuracy and testing
This page documents how Calwarden builds trust for this calculator: source notes, regression-style default tests, limitations, assumptions, unit handling, rounding, and visible change history.
Formula source
- Splits by \r (Segment) -> | (Field) -> ~ (Repetition).
Test cases
Default input regression check
Generated from the checked-in default inputs and calculate function.
Inputs
- Raw Message: MSH|^~\&|EPIC|EPICADT|SMS|SMSADT|199912271408|CHARRIS|ADT^A04|1817457|D|2.5| PID||0493575^^^2^ID 1|454721||DOE^JOHN^^^^|DOE^JOHN^^^^|19480203|M||B|254 MYSTREET AVE^^MYTOWN^OH^44123^USA||(216)123-4567|||M|NON|400003403~1129086| NK1||ROE^MARIE^^^^|SPO||(216)123-4567||EC||||||||||||||||||||||||||| PV1||O|168 ~219~C~PMA^^^^^^^^^||||277^ALLEN MYLASTNAME^BONNIE^^^^|||||||||| ||2688684|||||||||||||||||||||||||199912271408||||||002376853
Expected outputs
- Parsed Fields: Field | Value | Description; MSH-1 | | | Field Separator; MSH-2 | ^~\& | Encoding Characters; MSH-3 | EPIC | Sending Application; MSH-4 | EPICADT | Sending Facility; MSH-5 | SMS | Receiving Application; MSH-6 | SMSADT | Receiving Facility; MSH-7 | 199912271408 | Date/Time of Message; MSH-8 | CHARRIS | ; MSH-9 | ADT^A04 | Message Type; MSH-10 | 1817457 | Message Control ID; MSH-11 | D | Processing ID; MSH-12 | 2.5 | Version ID; MSH-13 | | ; PID-1 | | Set ID - PID; PID-2 | 0493575^^^2^ID 1 | Patient ID; PID-3 | 454721 | Patient Identifier List; PID-4 | | ; PID-5 | DOE^JOHN^^^^ | Patient Name; PID-6 | DOE^JOHN^^^^ | ; PID-7 | 19480203 | Date/Time of Birth; PID-8 | M | Administrative Sex; PID-9 | | ; PID-10 | B | Race; PID-11 | 254 MYSTREET AVE^^MYTOWN^OH^44123^USA | Patient Address; PID-12 | | ; PID-13 | (216)123-4567 | Phone Number - Home; PID-14 | | ; PID-15 | | ; PID-16 | M | ; PID-17 | NON | ; PID-18 [1] | 400003403 | Patient Account Number; PID-18 [2] | 1129086 | Patient Account Number; PID-19 | | ; NK1-1 | | ; NK1-2 | ROE^MARIE^^^^ | ; NK1-3 | SPO | ; NK1-4 | | ; NK1-5 | (216)123-4567 | ; NK1-6 | | ; NK1-7 | EC | ; NK1-8 | | ; NK1-9 | | ; NK1-10 | | ; NK1-11 | | ; NK1-12 | | ; NK1-13 | | ; NK1-14 | | ; NK1-15 | | ; NK1-16 | | ; NK1-17 | | ; NK1-18 | | ; NK1-19 | | ; NK1-20 | | ; NK1-21 | | ; NK1-22 | | ; NK1-23 | | ; NK1-24 | | ; NK1-25 | | ; NK1-26 | | ; NK1-27 | | ; NK1-28 | | ; NK1-29 | | ; NK1-30 | | ; NK1-31 | | ; NK1-32 | | ; NK1-33 | | ; NK1-34 | | ; PV1-1 | | Set ID - PV1; PV1-2 | O | Patient Class; PV1-3 [1] | 168 | Assigned Patient Location; PV1-3 [2] | 219 | Assigned Patient Location; PV1-3 [3] | C | Assigned Patient Location; PV1-3 [4] | PMA^^^^^^^^^ | Assigned Patient Location; PV1-4 | | ; PV1-5 | | ; PV1-6 | | ; PV1-7 | 277^ALLEN MYLASTNAME^BONNIE^^^^ | Attending Doctor; PV1-8 | | Referring Doctor; PV1-9 | | ; PV1-10 | | ; PV1-11 | | ; PV1-12 | | ; PV1-13 | | ; PV1-14 | | ; PV1-15 | | ; PV1-16 | | ; PV1-17 | | ; PV1-18 | | ; PV1-19 | 2688684 | Visit Number; PV1-20 | | ; PV1-21 | | ; PV1-22 | | ; PV1-23 | | ; PV1-24 | | ; PV1-25 | | ; PV1-26 | | ; PV1-27 | | ; PV1-28 | | ; PV1-29 | | ; PV1-30 | | ; PV1-31 | | ; PV1-32 | | ; PV1-33 | | ; PV1-34 | | ; PV1-35 | | ; PV1-36 | | ; PV1-37 | | ; PV1-38 | | ; PV1-39 | | ; PV1-40 | | ; PV1-41 | | ; PV1-42 | | ; PV1-43 | | ; PV1-44 | 199912271408 | Admit Date/Time; PV1-45 | | Discharge Date/Time; PV1-46 | | ; PV1-47 | | ; PV1-48 | | ; PV1-49 | | ; PV1-50 | 002376853 |
Known limitations
- Supports standard v2.x pipe-delimited encoding. XML-encoded HL7 (v3) is not supported. Descriptions are provided for common segments (MSH, PID, PV1, ORC, OBR, OBX); custom Z-segments will appear without descriptions.
Assumptions
- The parser expects a pipe-delimited HL7 v2-style message that begins with MSH and uses recognizable segment separators.
- Field descriptions come from a built-in dictionary for common segments and do not cover every HL7 version, custom segment, or local implementation detail.
- This viewer focuses on field-level structure and repetitions; it does not fully decode components, validate message grammar, or confirm trigger-event correctness.
Unit handling
- Raw Message accepts text values.
Rounding rules
- Number displays use up to 2 decimal places in the calculator UI.
Version history
1.0.0 - 2026-05-06
Generated accuracy and testing page from the current hl7-message-viewer calculator definition.
Change log
2026-05-06
Published default regression test documentation and metadata fallbacks for HL7 Message Viewer.
Calculator transparency
Accuracy pages are generated from checked-in calculator definitions and can be upgraded with curated review metadata over time.