Reference·QPD Segment·QPD-3
HL7 v2 Reference

HL7 v2 QPD-3 Field Guide: User Parameters Values and Common Mistakes

Jul 28, 2026 · 4 min read
← QPD-2

QPD-3 is where the actual search value lives, but its shape is not fixed by the segment itself — it is defined entirely by whichever query QPD-1 names, which is exactly the assumption that trips up generic parsers.

Quick answer

QPD-3 is the first of the User Parameters fields, and in a common patient demographic query it typically carries the primary identifier being searched for, such as a patient identifier with its assigning authority and identifier type. Later repetitions and additional QPD fields can carry further search criteria — a name, a date of birth, or other demographic values — with the exact list and order defined by the specific query named in QPD-1, not by QPD itself.

What this field contains

Component 1
ID number — the raw identifier value being searched for, such as a medical record number
Component 4
Assigning authority — identifies the system or namespace that issued the identifier, needed to disambiguate identical ID numbers issued by different sources
Component 5
Identifier type code — flags what kind of identifier this is, for example a medical record number versus some other identifier type

Example

Synthetic example Generated by Synthibase
QPD|Q22^Find Candidates^HL70471|SYNTHIBQ00019|9284471^^^SYNTHIBMRN^MR

QPD-3 (9284471^^^SYNTHIBMRN^MR) is a fabricated patient identifier standing in as the search parameter for this synthetic demographic query.

Where this trips people up

Because QPD-3's structure is defined by the query in QPD-1 rather than by QPD itself, test generators that hardcode a patient-identifier shape for every query silently produce malformed parameters the moment a different query type expects, say, a name or a date range in that same position. Parsing code on the receiving end that was only ever validated against one parameter layout tends to fail quietly too, extracting garbage into the wrong component instead of raising an obvious error, which makes the underlying mismatch hard to catch until search results start coming back wrong.

HL7 v2 QPD Segment Guide: Fields, Format, and Testing Gotchas
HL7 ADT Messages: A01 through A08 Explained
How to Write EDI Test Cases That Actually Catch Go-Live Failures
Test search parameters that match the query type
Synthibase generates synthetic QPD parameter sets shaped correctly for each query type, so parsing logic gets validated against realistic, query-appropriate search values instead of one hardcoded identifier layout.
Start free trial →
This page is written independently by Synthibase for testing and informational purposes. It is not an official publication of HL7 International or X12/Washington Publishing Company, and is not a substitute for reviewing the official standard or your trading partner's companion guide. See our Terms of Service for full legal terms.