ASTM Message Parser
Inspect ASTM-style laboratory messages as records, fields, control characters, and frames.
This tool runs entirely in your browser. Your files are never uploaded to a server.
| 0 | H |
| 1 | \^& |
| 2 | |
| 3 | |
| 4 | SyntheticInstrument^1.0 |
| 5 | |
| 6 | |
| 7 | |
| 8 | |
| 9 | |
| 10 | |
| 11 | P |
| 12 | LIS2-A2 |
| 13 | 20240101120000 |
| 0 | P |
| 1 | 1 |
| 2 | |
| 3 | SYNTHETIC-001 |
| 4 | |
| 5 | Example^Patient |
| 0 | O |
| 1 | 1 |
| 2 | SAMPLE-001 |
| 3 | |
| 4 | ^^^GLU |
| 5 | R |
| 0 | R |
| 1 | 1 |
| 2 | ^^^GLU |
| 3 | 98 |
| 4 | mg/dL |
| 5 | 70-99 |
| 6 | N |
| 7 | |
| 8 | F |
| 0 | L |
| 1 | 1 |
| 2 | N |
Splits ASTM-style laboratory text into records and pipe-delimited fields — a structural aid, not a standards-conformance test, clinical interpreter, or substitute for the instrument interface manual.
What this tool does
The parser turns ASTM-style, text-oriented laboratory messages into a structural view of records and pipe-delimited fields. It labels common H, P, O, R, C, Q, M, and L record prefixes without assigning clinical meaning to their values.
How to use it
Paste only a synthetic or fully de-identified sample. The table numbers fields from zero so developers can compare raw positions, and the summary lists recognized transport control characters and any complete framed blocks.
Worked example
The bundled synthetic sample contains H, P, O, R, and L records. Its R record displays the artificial value 98 and unit mg/dL as raw fields; the tool does not decide whether that result, unit, or reference interval is correct.
Frames and checksums
For a complete STX frame, the parser expects a sequence digit, payload, ETX or ETB, and a two-digit hexadecimal checksum. It reports the low-byte character-sum comparison but treats malformed framed input as an error instead of presenting its trailer as a record.
Records are not universal semantics
LIS02-A2 documents common conventions for message content, while low-level transfer is covered separately by LIS01. Real instruments add profiles and conventions, so field positions and codes must be checked against the exact vendor interface manual.
Important limitations
This is a debugging aid, not a LIS01/LIS02 conformance test, clinical result interpreter, medical device, or production interface validator. A valid-looking checksum only detects certain transmission errors; it does not prove clinical accuracy, authenticity, or completeness.
Privacy and sources
Parsing runs locally in the browser, but clinical text can still leak through clipboard history, extensions, screenshots, logs, or the device. Use de-identified data and consult the archived CLSI LIS01-A2 and LIS02-A2 documents plus the current manufacturer specification; content reviewed September 2026.
Frequently Asked Questions
- How do ASTM E1381/E1394 relate to LIS01/LIS02?
- The legacy ASTM work became the basis for CLSI's LIS01 low-level transfer and LIS02 message-content documents. CLSI now lists LIS02-A2 as archived, so implementations should use the exact purchased standard and instrument vendor profile rather than treating the names as interchangeable versions.
- Which record types does the parser recognize?
- It identifies records by their leading type letter: H (Header), P (Patient), O (Order), R (Result), C (Comment), M (Manufacturer Information), and L (Terminator), and splits each one into its pipe-delimited fields.
- Does it interpret the result values themselves?
- No. Result field meanings are instrument-specific and defined by each manufacturer, so the parser only exposes the raw field structure — it doesn't attempt to decode what a given result code or unit means.