h210

package
v1.1.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 3, 2024 License: BSD-3-Clause Imports: 3 Imported by: 0

Documentation

Overview

Package h210 contains the data structures for HL7 v2.1.

Index

Constants

This section is empty.

Variables

View Source
var ControlSegmentRegistry = map[string]any{
	"BHS": BHS{},
	"BTS": BTS{},
	"FHS": FHS{},
	"FTS": FTS{},
	"DSC": DSC{},
	"ADD": ADD{},
}

Segments specific to file and batch control.

View Source
var DataTypeRegistry = map[string]any{
	"AD": *(new(AD)),
	"CE": *(new(CE)),
	"CK": *(new(CK)),
	"CM": *(new(CM)),
	"CN": *(new(CN)),
	"CQ": *(new(CQ)),
	"DT": *(new(DT)),
	"ID": *(new(ID)),
	"NM": *(new(NM)),
	"PN": *(new(PN)),
	"SI": *(new(SI)),
	"ST": *(new(ST)),
	"TN": *(new(TN)),
	"TS": *(new(TS)),
	"TX": *(new(TX)),
}

Data Type lookup by ID.

View Source
var Registry = registry{}

Registry implements the required interface for unmarshalling data.

View Source
var SegmentRegistry = map[string]any{
	"ACC": ACC{},
	"ADD": ADD{},
	"BHS": BHS{},
	"BLG": BLG{},
	"BTS": BTS{},
	"DG1": DG1{},
	"DSC": DSC{},
	"DSP": DSP{},
	"EVN": EVN{},
	"FHS": FHS{},
	"FT1": FT1{},
	"FTS": FTS{},
	"GT1": GT1{},
	"IN1": IN1{},
	"MRG": MRG{},
	"MSA": MSA{},
	"MSH": MSH{},
	"NK1": NK1{},
	"NPU": NPU{},
	"NTE": NTE{},
	"OBR": OBR{},
	"OBX": OBX{},
	"ORC": ORC{},
	"PD1": PD1{},
	"PID": PID{},
	"PR1": PR1{},
	"PV1": PV1{},
	"QRD": QRD{},
	"QRF": QRF{},
	"UB1": UB1{},
	"URD": URD{},
	"URS": URS{},
}

Segment lookup by ID.

View Source
var TableLookup = map[string]Table{
	`0001`: {ID: `0001`, Name: `SEX`, Row: []Row{
		{ID: `F`, Description: `Female`},
		{ID: `M`, Description: `Male`},
		{ID: `O`, Description: `Other`},
		{ID: `U`, Description: `Unknown`}}},
	`0002`: {ID: `0002`, Name: `MARITAL STATUS`, Row: []Row{
		{ID: `A`, Description: `Separated`},
		{ID: `D`, Description: `Divorced`},
		{ID: `M`, Description: `Married`},
		{ID: `S`, Description: `Single`},
		{ID: `W`, Description: `Widowed`}}},
	`0003`: {ID: `0003`, Name: `EVENT TYPE CODE`, Row: []Row{
		{ID: `A01`, Description: `Admit a patient`},
		{ID: `A02`, Description: `Transfer a Patient`},
		{ID: `A03`, Description: `Discharge a Patient`},
		{ID: `A04`, Description: `Register a Patient`},
		{ID: `A05`, Description: `Pre-admit a Patient`},
		{ID: `A06`, Description: `Transfer an outpatient to inpatient`},
		{ID: `A07`, Description: `Transfer an Inpatient to Outpatient`},
		{ID: `A08`, Description: `Update patient information`},
		{ID: `A09`, Description: `Patient departing`},
		{ID: `A10`, Description: `Patient arriving`},
		{ID: `A11`, Description: `Cancel admit`},
		{ID: `A12`, Description: `Cancel transfer`},
		{ID: `A13`, Description: `Cancel discharge`},
		{ID: `A14`, Description: `Pending admit`},
		{ID: `A15`, Description: `Pending transfer`},
		{ID: `A16`, Description: `Pending discharge`},
		{ID: `A17`, Description: `Swap Patients`},
		{ID: `A18`, Description: `Merge patient information`},
		{ID: `A19`, Description: `Patient query`},
		{ID: `A20`, Description: `Bed status updates`},
		{ID: `A21`, Description: `Leave of Absence - Out (leaving)`},
		{ID: `A22`, Description: `Leave of Absence - In (returning)`},
		{ID: `A23`, Description: `Delete a Patient Record`},
		{ID: `A24`, Description: `Link Patient Records`},
		{ID: `O01`, Description: `Order message`},
		{ID: `O02`, Description: `Order response`},
		{ID: `P01`, Description: `Add and update patient account`},
		{ID: `P02`, Description: `Purge Patient Accounts`},
		{ID: `P03`, Description: `Post detail financial transaction`},
		{ID: `P04`, Description: `Generate bills and A/R statements`},
		{ID: `Q01`, Description: `Immediate access`},
		{ID: `Q02`, Description: `Deferred Access`},
		{ID: `R01`, Description: `Unsolicited transmission of requested Observ.`},
		{ID: `R03`, Description: `Display oriented results, query/unsol. update`}}},
	`0004`: {ID: `0004`, Name: `PATIENT CLASS`, Row: []Row{
		{ID: `E`, Description: `Emergency`},
		{ID: `I`, Description: `Inpatient`},
		{ID: `O`, Description: `Outpatient`},
		{ID: `P`, Description: `Preadmit`}}},
	`0005`: {ID: `0005`, Name: `ETHNIC GROUP`, Row: []Row{
		{ID: `B`, Description: `Black`},
		{ID: `C`, Description: `Caucasian`},
		{ID: `H`, Description: `Hispanic`},
		{ID: `R`, Description: `Oriental`}}},
	`0006`: {ID: `0006`, Name: `RELIGION`, Row: []Row{
		{ID: `A`, Description: `Atheist`},
		{ID: `B`, Description: `Baptist`},
		{ID: `C`, Description: `Catholic`},
		{ID: `E`, Description: `Episcopalian`},
		{ID: `J`, Description: `Judaism`},
		{ID: `L`, Description: `Lutheran`},
		{ID: `M`, Description: `Church of Latter Day Saints (Mormon)`},
		{ID: `N`, Description: `Hindu`},
		{ID: `P`, Description: `Protestant`}}},
	`0007`: {ID: `0007`, Name: `ADMISSION TYPE`, Row: []Row{
		{ID: `A`, Description: `Accident`},
		{ID: `E`, Description: `Emergency`},
		{ID: `L`, Description: `Labor and Delivery`},
		{ID: `R`, Description: `Routine`}}},
	`0008`: {ID: `0008`, Name: `ACKNOWLEDGMENT CODE`, Row: []Row{
		{ID: `AA`, Description: `Application Accept`},
		{ID: `AE`, Description: `Application Error`},
		{ID: `AR`, Description: `Application Reject`}}},
	`0009`: {ID: `0009`, Name: `AMBULATORY STATUS`, Row: []Row{
		{ID: `A0`, Description: `No functional limitations`},
		{ID: `A1`, Description: `Ambulates with assistive device`},
		{ID: `A2`, Description: `Wheelchair/stretcher bound`},
		{ID: `A3`, Description: `Comatose; non-responsive`},
		{ID: `A4`, Description: `Disoriented`},
		{ID: `A5`, Description: `Vision impaired`},
		{ID: `A7`, Description: `Speech impaired`},
		{ID: `A8`, Description: `Non-English Speaking`},
		{ID: `A9`, Description: `Functional level unknown`},
		{ID: `B1`, Description: `Oxygen Therapy`},
		{ID: `B2`, Description: `Special Equipment (tunes, IV's, Catheters)`},
		{ID: `B3`, Description: `Amputee`},
		{ID: `B4`, Description: `Mastectomy`},
		{ID: `B5`, Description: `Paraplegic`},
		{ID: `B6`, Description: `Pregnant`}}},
	`0010`: {ID: `0010`, Name: `PHYSICIAN ID`, Row: []Row{}},
	`0017`: {ID: `0017`, Name: `TRANSACTION TYPE`, Row: []Row{}},
	`0018`: {ID: `0018`, Name: `PATIENT TYPE`, Row: []Row{}},
	`0019`: {ID: `0019`, Name: `ANESTHESIA CODE`, Row: []Row{}},
	`0021`: {ID: `0021`, Name: `BAD DEBT AGENCY CODE`, Row: []Row{}},
	`0022`: {ID: `0022`, Name: `BILLING STATUS`, Row: []Row{}},
	`0023`: {ID: `0023`, Name: `ADMIT SOURCE`, Row: []Row{}},
	`0024`: {ID: `0024`, Name: `FEE SCHEDULE`, Row: []Row{}},
	`0032`: {ID: `0032`, Name: `CHARGE/PRICE INDICATOR`, Row: []Row{}},
	`0036`: {ID: `0036`, Name: `UNITS OF MEASURE - ISO528,1977`, Row: []Row{
		{ID: `BT`, Description: `Bottle`},
		{ID: `EA`, Description: `Each`},
		{ID: `GM`, Description: `Grams`},
		{ID: `KG`, Description: `Kilograms`},
		{ID: `MEQ`, Description: `Milliequivalent`},
		{ID: `MG`, Description: `Milligrams`},
		{ID: `OZ`, Description: `Ounces`},
		{ID: `SC`, Description: `Square centimeters`},
		{ID: `TB`, Description: `Tablet`},
		{ID: `VL`, Description: `Vial`}}},
	`0038`: {ID: `0038`, Name: `ORDER STATUS`, Row: []Row{
		{ID: `CA`, Description: `Order was canceled`},
		{ID: `CM`, Description: `Order is completed`},
		{ID: `DC`, Description: `Order was discontinued`},
		{ID: `ER`, Description: `Error, order not found`},
		{ID: `HD`, Description: `Order is on hold`},
		{ID: `IP`, Description: `In process, unspecified`},
		{ID: `SC`, Description: `In process, scheduled`}}},
	`0042`: {ID: `0042`, Name: `INS. COMPANY PLAN CODE`, Row: []Row{}},
	`0043`: {ID: `0043`, Name: `CONDITION`, Row: []Row{}},
	`0044`: {ID: `0044`, Name: `CONTRACT CODE`, Row: []Row{}},
	`0045`: {ID: `0045`, Name: `COURTESY CODE`, Row: []Row{}},
	`0046`: {ID: `0046`, Name: `CREDIT RATING`, Row: []Row{}},
	`0047`: {ID: `0047`, Name: `DANGER CODE`, Row: []Row{}},
	`0048`: {ID: `0048`, Name: `WHAT SUBJECT FILTER`, Row: []Row{
		{ID: `ADV`, Description: `Advice/Diagnosis`},
		{ID: `ANU`, Description: `Nursing Unit Look up`},
		{ID: `APN`, Description: `Patient name look up`},
		{ID: `CAN`, Description: `Cancel. Used to cancel a query`},
		{ID: `DEM`, Description: `Demographics`},
		{ID: `MRI`, Description: `Most recent inpatient`},
		{ID: `MRO`, Description: `Most recent outpatient`},
		{ID: `OTH`, Description: `Other`},
		{ID: `PRO`, Description: `Procedure`},
		{ID: `RES`, Description: `Result`},
		{ID: `STA`, Description: `Status`}}},
	`0049`: {ID: `0049`, Name: `DEPARTMENT CODE`, Row: []Row{}},
	`0050`: {ID: `0050`, Name: `ACCIDENT CODE`, Row: []Row{}},
	`0051`: {ID: `0051`, Name: `DIAGNOSIS CODE`, Row: []Row{}},
	`0052`: {ID: `0052`, Name: `DIAGNOSIS TYPE`, Row: []Row{}},
	`0053`: {ID: `0053`, Name: `DIAGNOSIS CODING METHOD`, Row: []Row{
		{ID: `I9`, Description: `ICD9`}}},
	`0055`: {ID: `0055`, Name: `DRG CODE`, Row: []Row{}},
	`0056`: {ID: `0056`, Name: `DRG GROUPER REVIEW CODE`, Row: []Row{}},
	`0059`: {ID: `0059`, Name: `CONSENT CODE`, Row: []Row{}},
	`0062`: {ID: `0062`, Name: `EVENT REASON`, Row: []Row{
		{ID: `01`, Description: `Patient Request`},
		{ID: `02`, Description: `Physician Order`}}},
	`0063`: {ID: `0063`, Name: `RELATIONSHIP`, Row: []Row{}},
	`0064`: {ID: `0064`, Name: `FINANCIAL CLASS`, Row: []Row{}},
	`0065`: {ID: `0065`, Name: `ACTION CODE`, Row: []Row{
		{ID: `A`, Description: `Add ordered tests to the existing specimen`},
		{ID: `C`, Description: `Cancel order for battery or tests named`},
		{ID: `G`, Description: `Generated order`},
		{ID: `L`, Description: `Lab to obtain specimen from patient.`},
		{ID: `O`, Description: `Specimen obtained by service other than Lab`},
		{ID: `P`, Description: `Pending specimen-Order sent prior to delivery`},
		{ID: `S`, Description: `Schedule the tests specified below`}}},
	`0066`: {ID: `0066`, Name: `EMPLOYMENT STATUS`, Row: []Row{}},
	`0068`: {ID: `0068`, Name: `GUARANTOR TYPE`, Row: []Row{}},
	`0069`: {ID: `0069`, Name: `HOSPITAL SERVICE`, Row: []Row{}},
	`0070`: {ID: `0070`, Name: `SOURCE OF SPECIMEN`, Row: []Row{
		{ID: `BLD`, Description: `Blood`},
		{ID: `BON`, Description: `Bone`},
		{ID: `BRN`, Description: `Burn`},
		{ID: `CNJT`, Description: `Conjunctiva`},
		{ID: `CSF`, Description: `Cerebral spinal fluid`},
		{ID: `CVX`, Description: `Cervix`},
		{ID: `EAR`, Description: `Ear`},
		{ID: `FIB`, Description: `Fibroblood`},
		{ID: `HAR`, Description: `Hair`},
		{ID: `MN`, Description: `Amniotic Fluid`},
		{ID: `NOS`, Description: `Nose`},
		{ID: `OTH`, Description: `Other`},
		{ID: `PLAS`, Description: `Plasma`},
		{ID: `PRT`, Description: `Peritoneal Fluid`},
		{ID: `RBC`, Description: `Erythrocytes`},
		{ID: `SAL`, Description: `Saliva`},
		{ID: `SEM`, Description: `Seminal Fluid`},
		{ID: `SER`, Description: `Serum`},
		{ID: `SKN`, Description: `Skin`},
		{ID: `SNV`, Description: `Synovial Fluid`},
		{ID: `STL`, Description: `Stool`},
		{ID: `SWT`, Description: `Sweat`},
		{ID: `THRT`, Description: `Throat`},
		{ID: `TIS`, Description: `Tissue`},
		{ID: `UMB`, Description: `Umbilical Blood`},
		{ID: `UR`, Description: `Urine`},
		{ID: `URTH`, Description: `Urethra`},
		{ID: `WBC`, Description: `Leukocytes`},
		{ID: `WND`, Description: `Wound`}}},
	`0072`: {ID: `0072`, Name: `INS. PLAN ID`, Row: []Row{}},
	`0073`: {ID: `0073`, Name: `INTEREST RATE CODE`, Row: []Row{}},
	`0074`: {ID: `0074`, Name: `DIAGNOSTIC SERVICE SECTION ID`, Row: []Row{
		{ID: `BG`, Description: `Blood gases`},
		{ID: `CH`, Description: `Chemistry`},
		{ID: `CP`, Description: `Cytopathology`},
		{ID: `CT`, Description: `CAT scan`},
		{ID: `CUS`, Description: `Cardiac Ultrasound`},
		{ID: `EC`, Description: `Electrocardiac (e.g., EKG, EEC, Holter)`},
		{ID: `HM`, Description: `Hematology`},
		{ID: `IMM`, Description: `Immunology`},
		{ID: `MB`, Description: `Microbiology`},
		{ID: `MCB`, Description: `Mycobacteriology`},
		{ID: `MYC`, Description: `Mycology`},
		{ID: `NMR`, Description: `Nuclear magnetic resonance`},
		{ID: `NMS`, Description: `Nuclear medicine scan`},
		{ID: `NRS`, Description: `Nursing service measures`},
		{ID: `OT`, Description: `Occupational Therapy`},
		{ID: `OTH`, Description: `Other`},
		{ID: `OUS`, Description: `OB Ultrasound`},
		{ID: `PHR`, Description: `Pharmacy`},
		{ID: `PT`, Description: `Physical Therapy`},
		{ID: `RC`, Description: `Respiratory Care`},
		{ID: `RT`, Description: `Radiation Therapy`},
		{ID: `RUS`, Description: `Radiology ultrasound`},
		{ID: `SP`, Description: `Surgical Pathology`},
		{ID: `SR`, Description: `Serology`},
		{ID: `TX`, Description: `Toxicology`},
		{ID: `VUS`, Description: `Vascular Ultrasound`},
		{ID: `XRC`, Description: `Cineradiography`}}},
	`0076`: {ID: `0076`, Name: `MESSAGE TYPE`, Row: []Row{
		{ID: `ACK`, Description: `General Acknowledgment       CNT       II`},
		{ID: `ARD`, Description: `Ancillary RPT (display)      ANR       VII`},
		{ID: `BAR`, Description: `Add/change billing account   BLN       VI`},
		{ID: `DSR`, Description: `Display response             QRY       V`},
		{ID: `MCF`, Description: `Delayed acknowledgment       CNT       II`},
		{ID: `ORF`, Description: `Observ. Result/record resp.  ANR       VII`},
		{ID: `ORM`, Description: `Order                        ORD       IV`},
		{ID: `ORR`, Description: `Order response message       ORD       IV`},
		{ID: `ORU`, Description: `Observ. result/unsolicited   ANR       VII`},
		{ID: `OSQ`, Description: `Order status query           ORD       IV`},
		{ID: `UDM`, Description: `Unsolicited display          QRY       V`}}},
	`0078`: {ID: `0078`, Name: `ABNORMAL FLAGS`, Row: []Row{
		{ID: `<`, Description: `Below absolute low-off instrument scale`},
		{ID: `A`, Description: `Abnormal (applies to non-numeric results)`},
		{ID: `AA`, Description: `Very abnormal`},
		{ID: `D`, Description: `Significant change down`},
		{ID: `H`, Description: `Above high normal`},
		{ID: `HH`, Description: `Above upper panic limits`},
		{ID: `I`, Description: `Interval`},
		{ID: `LL`, Description: `Below lower panic limits`},
		{ID: `MS`, Description: `Moderately sensitive`},
		{ID: `R`, Description: `Resists`},
		{ID: `S`, Description: `Sensitive`},
		{ID: `U`, Description: `Significant change up`},
		{ID: `VS`, Description: `Very sensitive`}}},
	`0079`: {ID: `0079`, Name: `LOCATION`, Row: []Row{}},
	`0080`: {ID: `0080`, Name: `NATURE OF ABNORMAL TESTING`, Row: []Row{
		{ID: `A`, Description: `An aged based population`},
		{ID: `N`, Description: `None - generic normal range`},
		{ID: `R`, Description: `A race based population`},
		{ID: `S`, Description: `A sexed based population`}}},
	`0081`: {ID: `0081`, Name: `NOTICE OF ADMISSION`, Row: []Row{}},
	`0083`: {ID: `0083`, Name: `OUTLIER TYPE`, Row: []Row{}},
	`0084`: {ID: `0084`, Name: `PERFORMED BY CODE`, Row: []Row{}},
	`0085`: {ID: `0085`, Name: `OBSERVATION RESULT STATUS`, Row: []Row{
		{ID: `D`, Description: `Delete previously transmitted observation`},
		{ID: `F`, Description: `Complete/final results (entered and verified)`},
		{ID: `I`, Description: `Specimen in lab--results pending`},
		{ID: `R`, Description: `Results entered - not verified`},
		{ID: `S`, Description: `Partial results`}}},
	`0086`: {ID: `0086`, Name: `INS. PLAN TYPE`, Row: []Row{}},
	`0087`: {ID: `0087`, Name: `PRE-ADMIT TESTING`, Row: []Row{}},
	`0088`: {ID: `0088`, Name: `PROCEDURE CODE`, Row: []Row{}},
	`0089`: {ID: `0089`, Name: `PROCEDURE CODING METHOD`, Row: []Row{}},
	`0090`: {ID: `0090`, Name: `PROCEDURE TYPE`, Row: []Row{}},
	`0091`: {ID: `0091`, Name: `QUERY PRIORITY`, Row: []Row{
		{ID: `D`, Description: `Deferred`},
		{ID: `I`, Description: `Immediate`}}},
	`0092`: {ID: `0092`, Name: `RE-ADMISSION INDICATOR`, Row: []Row{}},
	`0093`: {ID: `0093`, Name: `RELEASE OF INFORMATION`, Row: []Row{}},
	`0094`: {ID: `0094`, Name: `REPORT OF ELIGIBILITY`, Row: []Row{}},
	`0096`: {ID: `0096`, Name: `FINANCIAL TRANSACTION CODE`, Row: []Row{}},
	`0098`: {ID: `0098`, Name: `TYPE OF AGREEMENT CODE`, Row: []Row{}},
	`0099`: {ID: `0099`, Name: `VIP INDICATOR`, Row: []Row{}},
	`0100`: {ID: `0100`, Name: `WHEN TO CHARGE`, Row: []Row{
		{ID: `D`, Description: `On discharge`},
		{ID: `O`, Description: `On receipt of order`},
		{ID: `R`, Description: `At time service is completed`},
		{ID: `S`, Description: `At time service is started`}}},
	`0102`: {ID: `0102`, Name: `DELAYED ACKNOWLEDGMENT TYPE`, Row: []Row{
		{ID: `D`, Description: `Message Received, stored for later processing`}}},
	`0103`: {ID: `0103`, Name: `PROCESSING ID`, Row: []Row{
		{ID: `D`, Description: `Debugging`},
		{ID: `P`, Description: `Production`},
		{ID: `T`, Description: `Training`}}},
	`0104`: {ID: `0104`, Name: `VERSION CONTROL TABLE`, Row: []Row{
		{ID: `2.0`, Description: `Release 2.0  September 1988`},
		{ID: `2.0D`, Description: `Demo    2.0  October 1988`},
		{ID: `2.1`, Description: `Release 2.1  March 1990`}}},
	`0105`: {ID: `0105`, Name: `SOURCE OF COMMENT`, Row: []Row{
		{ID: `L`, Description: `Ancillary department is source of comment`},
		{ID: `P`, Description: `Orderer is source of comment`}}},
	`0106`: {ID: `0106`, Name: `QUERY FORMAT CODE`, Row: []Row{
		{ID: `R`, Description: `Response in Record-oriented format`}}},
	`0107`: {ID: `0107`, Name: `DEFERRED RESPONSE TYPE`, Row: []Row{
		{ID: `L`, Description: `Later than the DATE/TIME specified`}}},
	`0108`: {ID: `0108`, Name: `QUERY RESULTS LEVEL`, Row: []Row{
		{ID: `O`, Description: `Order plus order status`},
		{ID: `S`, Description: `Status only`},
		{ID: `T`, Description: `Full Results`}}},
	`0109`: {ID: `0109`, Name: `REPORT PRIORITY`, Row: []Row{
		{ID: `R`, Description: `Routine`},
		{ID: `S`, Description: `Stat`}}},
	`0110`: {ID: `0110`, Name: `TRANSFER TO BAD DEBT CODE`, Row: []Row{}},
	`0111`: {ID: `0111`, Name: `DELETE ACCOUNT CODE`, Row: []Row{}},
	`0112`: {ID: `0112`, Name: `DISCHARGED DISPOSITION`, Row: []Row{}},
	`0113`: {ID: `0113`, Name: `DISCHARGED TO LOCATION`, Row: []Row{}},
	`0114`: {ID: `0114`, Name: `DIET TYPE`, Row: []Row{}},
	`0115`: {ID: `0115`, Name: `SERVICING FACILITY`, Row: []Row{}},
	`0116`: {ID: `0116`, Name: `BED STATUS`, Row: []Row{
		{ID: `C`, Description: `Closed`},
		{ID: `H`, Description: `Housekeeping`},
		{ID: `O`, Description: `Occupied`}}},
	`0117`: {ID: `0117`, Name: `ACCOUNT STATUS`, Row: []Row{}},
	`0118`: {ID: `0118`, Name: `MAJOR DIAGNOSTIC CATEGORY`, Row: []Row{}},
	`0119`: {ID: `0119`, Name: `ORDER CONTROL`, Row: []Row{
		{ID: `CA`, Description: `Cancel order request`},
		{ID: `CH`, Description: `Child order`},
		{ID: `CN`, Description: `Combined result`},
		{ID: `DC`, Description: `Discontinue order request`},
		{ID: `DE`, Description: `Data Errors`},
		{ID: `DR`, Description: `Discontinued as requested`},
		{ID: `HD`, Description: `Hold order request`},
		{ID: `HR`, Description: `On hold as requested`},
		{ID: `NA`, Description: `Number assigned            T`},
		{ID: `NW`, Description: `New order                  T`},
		{ID: `OD`, Description: `Order discontinued`},
		{ID: `OK`, Description: `Order accepted and OK`},
		{ID: `OR`, Description: `Released as requested`},
		{ID: `PA`, Description: `Parent order`},
		{ID: `RE`, Description: `Observations to follow`},
		{ID: `RO`, Description: `Replacement order`},
		{ID: `RP`, Description: `Order replace request`},
		{ID: `RR`, Description: `Request received`},
		{ID: `RU`, Description: `Replaced unsolicited`},
		{ID: `SN`, Description: `Send filler number            F         I`},
		{ID: `SS`, Description: `Send order status request`},
		{ID: `UD`, Description: `Unable to discontinue`},
		{ID: `UH`, Description: `Unable to put on hold`},
		{ID: `UR`, Description: `Unable to release`},
		{ID: `UX`, Description: `Unable to change`},
		{ID: `XR`, Description: `Changed as requested`},
		{ID: `XX`, Description: `Order changed, unsolicited`}}},
	`0121`: {ID: `0121`, Name: `RESPONSE FLAG`, Row: []Row{
		{ID: `E`, Description: `Report exceptions only.`},
		{ID: `F`, Description: `Same as D, plus confirmations explicitly.`},
		{ID: `N`, Description: `Only the MSA segment is returned.`}}},
	`0122`: {ID: `0122`, Name: `CHARGE TYPE`, Row: []Row{
		{ID: `CH`, Description: `Charge`},
		{ID: `CO`, Description: `Contract`},
		{ID: `CR`, Description: `Credit`},
		{ID: `DP`, Description: `Department`},
		{ID: `GR`, Description: `Grant`},
		{ID: `NC`, Description: `No Charge`},
		{ID: `PC`, Description: `Professional`},
		{ID: `RS`, Description: `Research`}}},
	`0123`: {ID: `0123`, Name: `RESULT STATUS - OBR`, Row: []Row{
		{ID: `C`, Description: `Correction of previously transmitted results`},
		{ID: `F`, Description: `Final results - results stored & verified`},
		{ID: `I`, Description: `Specimen in lab, not yet processed.`},
		{ID: `P`, Description: `Preliminary results`},
		{ID: `R`, Description: `Results stored - not yet verified`},
		{ID: `S`, Description: `Procedure scheduled, not done`},
		{ID: `Y`, Description: `No order on record for this test`},
		{ID: `Z`, Description: `No record of this patient`}}},
	`0124`: {ID: `0124`, Name: `TRANSPORTATION MODE`, Row: []Row{
		{ID: `PORT`, Description: `The examining device goes to Patient's Loc.`},
		{ID: `WALK`, Description: `Patient walks to diagnostic service`},
		{ID: `WHLC`, Description: `Wheelchair`}}},
	`0125`: {ID: `0125`, Name: `VALUE TYPE`, Row: []Row{
		{ID: `AD`, Description: `Address`},
		{ID: `CK`, Description: `Composite ID with check digit`},
		{ID: `FT`, Description: `Formatted Text`},
		{ID: `PN`, Description: `Person name`},
		{ID: `ST`, Description: `String data. Used to transmit numerics.`},
		{ID: `TM`, Description: `Time`},
		{ID: `TS`, Description: `Time stamp`},
		{ID: `TX`, Description: `Text`}}},
	`0126`: {ID: `0126`, Name: `QUANTITY LIMITED REQUEST`, Row: []Row{
		{ID: `CH`, Description: `Characters`},
		{ID: `LI`, Description: `Lines`},
		{ID: `PG`, Description: `Pages`},
		{ID: `ZO`, Description: `Locally defined`}}},
}

TableLookup provides valid values for field types.

View Source
var TableValueLookup = map[string]map[string]bool{
	`0001`: {
		`F`: true,
		`M`: true,
		`O`: true,
		`U`: true},
	`0002`: {
		`A`: true,
		`D`: true,
		`M`: true,
		`S`: true,
		`W`: true},
	`0003`: {
		`A01`: true,
		`A02`: true,
		`A03`: true,
		`A04`: true,
		`A05`: true,
		`A06`: true,
		`A07`: true,
		`A08`: true,
		`A09`: true,
		`A10`: true,
		`A11`: true,
		`A12`: true,
		`A13`: true,
		`A14`: true,
		`A15`: true,
		`A16`: true,
		`A17`: true,
		`A18`: true,
		`A19`: true,
		`A20`: true,
		`A21`: true,
		`A22`: true,
		`A23`: true,
		`A24`: true,
		`O01`: true,
		`O02`: true,
		`P01`: true,
		`P02`: true,
		`P03`: true,
		`P04`: true,
		`Q01`: true,
		`Q02`: true,
		`R01`: true,
		`R03`: true},
	`0004`: {
		`E`: true,
		`I`: true,
		`O`: true,
		`P`: true},
	`0005`: {
		`B`: true,
		`C`: true,
		`H`: true,
		`R`: true},
	`0006`: {
		`A`: true,
		`B`: true,
		`C`: true,
		`E`: true,
		`J`: true,
		`L`: true,
		`M`: true,
		`N`: true,
		`P`: true},
	`0007`: {
		`A`: true,
		`E`: true,
		`L`: true,
		`R`: true},
	`0008`: {
		`AA`: true,
		`AE`: true,
		`AR`: true},
	`0009`: {
		`A0`: true,
		`A1`: true,
		`A2`: true,
		`A3`: true,
		`A4`: true,
		`A5`: true,
		`A7`: true,
		`A8`: true,
		`A9`: true,
		`B1`: true,
		`B2`: true,
		`B3`: true,
		`B4`: true,
		`B5`: true,
		`B6`: true},
	`0010`: {},
	`0017`: {},
	`0018`: {},
	`0019`: {},
	`0021`: {},
	`0022`: {},
	`0023`: {},
	`0024`: {},
	`0032`: {},
	`0036`: {
		`BT`:  true,
		`EA`:  true,
		`GM`:  true,
		`KG`:  true,
		`MEQ`: true,
		`MG`:  true,
		`OZ`:  true,
		`SC`:  true,
		`TB`:  true,
		`VL`:  true},
	`0038`: {
		`CA`: true,
		`CM`: true,
		`DC`: true,
		`ER`: true,
		`HD`: true,
		`IP`: true,
		`SC`: true},
	`0042`: {},
	`0043`: {},
	`0044`: {},
	`0045`: {},
	`0046`: {},
	`0047`: {},
	`0048`: {
		`ADV`: true,
		`ANU`: true,
		`APN`: true,
		`CAN`: true,
		`DEM`: true,
		`MRI`: true,
		`MRO`: true,
		`OTH`: true,
		`PRO`: true,
		`RES`: true,
		`STA`: true},
	`0049`: {},
	`0050`: {},
	`0051`: {},
	`0052`: {},
	`0053`: {
		`I9`: true},
	`0055`: {},
	`0056`: {},
	`0059`: {},
	`0062`: {
		`01`: true,
		`02`: true},
	`0063`: {},
	`0064`: {},
	`0065`: {
		`A`: true,
		`C`: true,
		`G`: true,
		`L`: true,
		`O`: true,
		`P`: true,
		`S`: true},
	`0066`: {},
	`0068`: {},
	`0069`: {},
	`0070`: {
		`BLD`:  true,
		`BON`:  true,
		`BRN`:  true,
		`CNJT`: true,
		`CSF`:  true,
		`CVX`:  true,
		`EAR`:  true,
		`FIB`:  true,
		`HAR`:  true,
		`MN`:   true,
		`NOS`:  true,
		`OTH`:  true,
		`PLAS`: true,
		`PRT`:  true,
		`RBC`:  true,
		`SAL`:  true,
		`SEM`:  true,
		`SER`:  true,
		`SKN`:  true,
		`SNV`:  true,
		`STL`:  true,
		`SWT`:  true,
		`THRT`: true,
		`TIS`:  true,
		`UMB`:  true,
		`UR`:   true,
		`URTH`: true,
		`WBC`:  true,
		`WND`:  true},
	`0072`: {},
	`0073`: {},
	`0074`: {
		`BG`:  true,
		`CH`:  true,
		`CP`:  true,
		`CT`:  true,
		`CUS`: true,
		`EC`:  true,
		`HM`:  true,
		`IMM`: true,
		`MB`:  true,
		`MCB`: true,
		`MYC`: true,
		`NMR`: true,
		`NMS`: true,
		`NRS`: true,
		`OT`:  true,
		`OTH`: true,
		`OUS`: true,
		`PHR`: true,
		`PT`:  true,
		`RC`:  true,
		`RT`:  true,
		`RUS`: true,
		`SP`:  true,
		`SR`:  true,
		`TX`:  true,
		`VUS`: true,
		`XRC`: true},
	`0076`: {
		`ACK`: true,
		`ARD`: true,
		`BAR`: true,
		`DSR`: true,
		`MCF`: true,
		`ORF`: true,
		`ORM`: true,
		`ORR`: true,
		`ORU`: true,
		`OSQ`: true,
		`UDM`: true},
	`0078`: {
		`<`:  true,
		`A`:  true,
		`AA`: true,
		`D`:  true,
		`H`:  true,
		`HH`: true,
		`I`:  true,
		`LL`: true,
		`MS`: true,
		`R`:  true,
		`S`:  true,
		`U`:  true,
		`VS`: true},
	`0079`: {},
	`0080`: {
		`A`: true,
		`N`: true,
		`R`: true,
		`S`: true},
	`0081`: {},
	`0083`: {},
	`0084`: {},
	`0085`: {
		`D`: true,
		`F`: true,
		`I`: true,
		`R`: true,
		`S`: true},
	`0086`: {},
	`0087`: {},
	`0088`: {},
	`0089`: {},
	`0090`: {},
	`0091`: {
		`D`: true,
		`I`: true},
	`0092`: {},
	`0093`: {},
	`0094`: {},
	`0096`: {},
	`0098`: {},
	`0099`: {},
	`0100`: {
		`D`: true,
		`O`: true,
		`R`: true,
		`S`: true},
	`0102`: {
		`D`: true},
	`0103`: {
		`D`: true,
		`P`: true,
		`T`: true},
	`0104`: {
		`2.0`:  true,
		`2.0D`: true,
		`2.1`:  true},
	`0105`: {
		`L`: true,
		`P`: true},
	`0106`: {
		`R`: true},
	`0107`: {
		`L`: true},
	`0108`: {
		`O`: true,
		`S`: true,
		`T`: true},
	`0109`: {
		`R`: true,
		`S`: true},
	`0110`: {},
	`0111`: {},
	`0112`: {},
	`0113`: {},
	`0114`: {},
	`0115`: {},
	`0116`: {
		`C`: true,
		`H`: true,
		`O`: true},
	`0117`: {},
	`0118`: {},
	`0119`: {
		`CA`: true,
		`CH`: true,
		`CN`: true,
		`DC`: true,
		`DE`: true,
		`DR`: true,
		`HD`: true,
		`HR`: true,
		`NA`: true,
		`NW`: true,
		`OD`: true,
		`OK`: true,
		`OR`: true,
		`PA`: true,
		`RE`: true,
		`RO`: true,
		`RP`: true,
		`RR`: true,
		`RU`: true,
		`SN`: true,
		`SS`: true,
		`UD`: true,
		`UH`: true,
		`UR`: true,
		`UX`: true,
		`XR`: true,
		`XX`: true},
	`0121`: {
		`E`: true,
		`F`: true,
		`N`: true},
	`0122`: {
		`CH`: true,
		`CO`: true,
		`CR`: true,
		`DP`: true,
		`GR`: true,
		`NC`: true,
		`PC`: true,
		`RS`: true},
	`0123`: {
		`C`: true,
		`F`: true,
		`I`: true,
		`P`: true,
		`R`: true,
		`S`: true,
		`Y`: true,
		`Z`: true},
	`0124`: {
		`PORT`: true,
		`WALK`: true,
		`WHLC`: true},
	`0125`: {
		`AD`: true,
		`CK`: true,
		`FT`: true,
		`PN`: true,
		`ST`: true,
		`TM`: true,
		`TS`: true,
		`TX`: true},
	`0126`: {
		`CH`: true,
		`LI`: true,
		`PG`: true,
		`ZO`: true},
}

TableValueLookup may be used to validate a specific value.

View Source
var TriggerRegistry = map[string]any{
	"ADT_A01": ADT_A01{},
	"ADT_A02": ADT_A02{},
	"ADT_A03": ADT_A03{},
	"ADT_A04": ADT_A04{},
	"ADT_A05": ADT_A05{},
	"ADT_A06": ADT_A06{},
	"ADT_A07": ADT_A07{},
	"ADT_A08": ADT_A08{},
	"ADT_A09": ADT_A09{},
	"ADT_A10": ADT_A10{},
	"ADT_A11": ADT_A11{},
	"ADT_A12": ADT_A12{},
	"ADT_A13": ADT_A13{},
	"ADT_A14": ADT_A14{},
	"ADT_A15": ADT_A15{},
	"ADT_A16": ADT_A16{},
	"ADT_A17": ADT_A17{},
	"ADT_A18": ADT_A18{},
	"ADT_A20": ADT_A20{},
	"ADT_A21": ADT_A21{},
	"ADT_A22": ADT_A22{},
	"ADT_A23": ADT_A23{},
	"ADT_A24": ADT_A24{},
	"BAR_P01": BAR_P01{},
	"BAR_P02": BAR_P02{},
	"DFT_P03": DFT_P03{},
	"DSR_Q03": DSR_Q03{},
	"ORM_O01": ORM_O01{},
	"ORR_O02": ORR_O02{},
	"ORU_R01": ORU_R01{},
	"ORU_R03": ORU_R03{},
	"QRY_A19": QRY_A19{},
	"QRY_Q01": QRY_Q01{},
	"QRY_Q02": QRY_Q02{},
	"UDM_Q05": UDM_Q05{},
}

Trigger lookup by ID.

View Source
var Version = `2.1`

Version of this HL7 package.

Functions

This section is empty.

Types

type ACC

type ACC struct {
	HL7              HL7Name `hl7:",name=ACC,type=s"`
	AccidentDateTime TS      `hl7:"1,len=19,format=YMDHMS,display=Accident Date/Time"`
	AccidentCode     ID      `hl7:"2,len=2,table=0050,display=Accident Code"`
	AccidentLocation ST      `hl7:"3,len=25,display=Accident Location"`
}

Accident

type AD = string

Address

type ADD

type ADD struct {
	HL7                         HL7Name `hl7:",name=ADD,type=s"`
	AddendumContinuationPointer ST      `hl7:"1,len=60,display=Addendum Continuation Pointer"`
}

Addendum

type ADT_A01

type ADT_A01 struct {
	HL7 HL7Name `hl7:",name=ADT_A01,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	NK1 *NK1    `hl7:"4,required,display=Next Of Kin"`
	PV1 *PV1    `hl7:"5,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"6,display=Diagnosis"`
}

Admit a Patient

type ADT_A02

type ADT_A02 struct {
	HL7 HL7Name `hl7:",name=ADT_A02,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
}

Transfer a Patient

type ADT_A03

type ADT_A03 struct {
	HL7 HL7Name `hl7:",name=ADT_A03,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
}

Discharge a Patient

type ADT_A04

type ADT_A04 struct {
	HL7 HL7Name `hl7:",name=ADT_A04,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	NK1 *NK1    `hl7:"4,required,display=Next Of Kin"`
	PV1 *PV1    `hl7:"5,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"6,display=Diagnosis"`
}

Register a Patient

type ADT_A05

type ADT_A05 struct {
	HL7 HL7Name `hl7:",name=ADT_A05,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	NK1 *NK1    `hl7:"4,required,display=Next Of Kin"`
	PV1 *PV1    `hl7:"5,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"6,display=Diagnosis"`
}

admit a Patient

type ADT_A06

type ADT_A06 struct {
	HL7 HL7Name `hl7:",name=ADT_A06,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
}

Transfer an Outpatient to Inpatient

type ADT_A07

type ADT_A07 struct {
	HL7 HL7Name `hl7:",name=ADT_A07,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
}

Transfer an Inpatient to Outpatient

type ADT_A08

type ADT_A08 struct {
	HL7 HL7Name `hl7:",name=ADT_A08,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	NK1 *NK1    `hl7:"4,required,display=Next Of Kin"`
	PV1 *PV1    `hl7:"5,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"6,display=Diagnosis"`
}

Update Patient Information

type ADT_A09

type ADT_A09 struct {
	HL7 HL7Name `hl7:",name=ADT_A09,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"5,display=Diagnosis"`
}

Patient Departing

type ADT_A10

type ADT_A10 struct {
	HL7 HL7Name `hl7:",name=ADT_A10,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"5,display=Diagnosis"`
}

Patient Arriving

type ADT_A11

type ADT_A11 struct {
	HL7 HL7Name `hl7:",name=ADT_A11,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"5,display=Diagnosis"`
}

Cancel Admit

type ADT_A12

type ADT_A12 struct {
	HL7 HL7Name `hl7:",name=ADT_A12,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"5,display=Diagnosis"`
}

Cancel Transfer

type ADT_A13

type ADT_A13 struct {
	HL7 HL7Name `hl7:",name=ADT_A13,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"5,display=Diagnosis"`
}

Cancel Discharge

type ADT_A14

type ADT_A14 struct {
	HL7 HL7Name `hl7:",name=ADT_A14,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PD1 *PD1    `hl7:"4,required,display=Patient Demographics"`
	NK1 *NK1    `hl7:"5,required,display=Next Of Kin"`
	PV1 *PV1    `hl7:"6,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"7,display=Diagnosis"`
}

Pending Admit

type ADT_A15

type ADT_A15 struct {
	HL7 HL7Name `hl7:",name=ADT_A15,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"5,display=Diagnosis"`
}

Pending Transfer

type ADT_A16

type ADT_A16 struct {
	HL7 HL7Name `hl7:",name=ADT_A16,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
	DG1 *DG1    `hl7:"5,display=Diagnosis"`
}

Pending Discharge

type ADT_A17

type ADT_A17 struct {
	HL7     HL7Name           `hl7:",name=ADT_A17,type=t"`
	MSH     *MSH              `hl7:"1,required,display=Message Header"`
	EVN     *EVN              `hl7:"2,required,display=Event Type"`
	Patient []ADT_A17_Patient `hl7:",required,display=Patient"`
}

Swap Patients

type ADT_A17_Patient

type ADT_A17_Patient struct {
	HL7 HL7Name `hl7:",name=ADT_A17_Patient,type=tg"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
}

Patient

type ADT_A18

type ADT_A18 struct {
	HL7 HL7Name `hl7:",name=ADT_A18,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	MRG *MRG    `hl7:"4,required,display=Merge Patient Information"`
	PV1 *PV1    `hl7:"5,display=Patient Visit"`
}

Merge Patient Information

type ADT_A20

type ADT_A20 struct {
	HL7 HL7Name `hl7:",name=ADT_A20,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	NPU *NPU    `hl7:"3,required,display=Non-patient Update"`
}

Nursing/Census Application Updates

type ADT_A21

type ADT_A21 struct {
	HL7 HL7Name `hl7:",name=ADT_A21,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
}

A Patient Goes On A "Leave Of Absence"

type ADT_A22

type ADT_A22 struct {
	HL7 HL7Name `hl7:",name=ADT_A22,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
}

A Patient Returns From A "Leave Of Absence"

type ADT_A23

type ADT_A23 struct {
	HL7 HL7Name `hl7:",name=ADT_A23,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,required,display=Patient Visit"`
}

Delete a Patient Record

type ADT_A24

type ADT_A24 struct {
	HL7  HL7Name `hl7:",name=ADT_A24,type=t"`
	MSH  *MSH    `hl7:"1,required,display=Message Header"`
	EVN  *EVN    `hl7:"2,required,display=Event Type"`
	PID  *PID    `hl7:"3,required,display=Patient Identification"`
	PV1  *PV1    `hl7:"4,required,display=Patient Visit"`
	PID2 *PID    `hl7:"5,required,display=Patient Identification"`
}

Create a Patient Link Transaction

type BAR_P01

type BAR_P01 struct {
	HL7   HL7Name         `hl7:",name=BAR_P01,type=t"`
	MSH   *MSH            `hl7:"1,required,display=Message Header"`
	EVN   *EVN            `hl7:"2,required,display=Event Type"`
	PID   *PID            `hl7:"3,required,display=Patient Identification"`
	Visit []BAR_P01_Visit `hl7:",required,display=Visit"`
}

Add and Update Patient Accounts

type BAR_P01_Visit

type BAR_P01_Visit struct {
	HL7 HL7Name `hl7:",name=BAR_P01_Visit,type=tg"`
	PV1 *PV1    `hl7:"4,display=Patient Visit"`
	DG1 []DG1   `hl7:"5,display=Diagnosis"`
	PR1 []PR1   `hl7:"6,display=Procedures"`
	GT1 []GT1   `hl7:"7,display=Guarantor"`
	NK1 []NK1   `hl7:"8,display=Next Of Kin"`
	IN1 []IN1   `hl7:"9,display=Insurance"`
	ACC *ACC    `hl7:"10,display=Accident"`
	UB1 *UB1    `hl7:"11,display=Ub82 Data"`
}

Visit

type BAR_P02

type BAR_P02 struct {
	HL7     HL7Name           `hl7:",name=BAR_P02,type=t"`
	MSH     *MSH              `hl7:"1,required,display=Message Header"`
	EVN     *EVN              `hl7:"2,required,display=Event Type"`
	Patient []BAR_P02_Patient `hl7:",required,display=Patient"`
}

Purge Patient Accounts

type BAR_P02_Patient

type BAR_P02_Patient struct {
	HL7 HL7Name `hl7:",name=BAR_P02_Patient,type=tg"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,display=Patient Visit"`
}

Patient

type BHS

type BHS struct {
	HL7                       HL7Name `hl7:",name=BHS,type=s"`
	BatchFieldSeparator       ST      `hl7:"1,required,len=1,display=Batch Field Separator"`
	BatchEncodingCharacters   ST      `hl7:"2,required,len=3,display=Batch Encoding Characters"`
	BatchSendingApplication   ST      `hl7:"3,len=15,display=Batch Sending Application"`
	BatchSendingFacility      ST      `hl7:"4,len=20,display=Batch Sending Facility"`
	BatchReceivingApplication ST      `hl7:"5,len=15,display=Batch Receiving Application"`
	BatchReceivingFacility    ST      `hl7:"6,len=20,display=Batch Receiving Facility"`
	BatchCreationDateTime     TS      `hl7:"7,len=19,format=YMDHMS,display=Batch Creation Date/Time"`
	BatchSecurity             ST      `hl7:"8,len=40,display=Batch Security"`
	BatchNameIDType           ST      `hl7:"9,len=20,display=Batch Name/Id/Type"`
	BatchComment              ST      `hl7:"10,len=80,display=Batch Comment"`
	BatchControlID            ST      `hl7:"11,len=20,display=Batch Control Id"`
	ReferenceBatchControlID   ST      `hl7:"12,len=20,display=Reference Batch Control Id"`
}

Batch Header

type BLG

type BLG struct {
	HL7          HL7Name `hl7:",name=BLG,type=s"`
	WhenToCharge CM      `hl7:"1,len=15,table=0100,display=When To Charge"`
	ChargeType   ID      `hl7:"2,len=50,table=0122,display=Charge Type"`
	AccountID    CM      `hl7:"3,len=100,display=Account Id"`
}

Billing

type BTS

type BTS struct {
	HL7               HL7Name `hl7:",name=BTS,type=s"`
	BatchMessageCount ST      `hl7:"1,len=10,display=Batch Message Count"`
	BatchComment      ST      `hl7:"2,len=80,display=Batch Comment"`
	BatchTotals       CM      `hl7:"3,len=100,display=Batch Totals"`
}

Batch Trailer

type CE

type CE struct {
	HL7                         HL7Name `hl7:",name=CE,len=0,type=d"`
	Identifier                  ID      `hl7:"1,display=Identifier"`
	Text                        ST      `hl7:"2,display=Text"`
	NameOfCodingSystem          ST      `hl7:"3,display=Name Of Coding System"`
	AlternateIdentifier         ST      `hl7:"4,display=Alternate Identifier"`
	AlternateText               ST      `hl7:"5,display=Alternate Text"`
	NameOfAlternateCodingSystem ST      `hl7:"6,display=Name Of Alternate Coding System"`
}

Coded Element

type CK

type CK = string

Composite Id With Check Digit

type CM

type CM = string

type CN

type CN = string

Composite Id Number And Name

type CQ

type CQ = string

Composite Quantity With Units

type DFT_P03

type DFT_P03 struct {
	HL7 HL7Name `hl7:",name=DFT_P03,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	EVN *EVN    `hl7:"2,required,display=Event Type"`
	PID *PID    `hl7:"3,required,display=Patient Identification"`
	PV1 *PV1    `hl7:"4,display=Patient Visit"`
	FT1 []FT1   `hl7:"5,display=Financial Transaction"`
}

Post Detail Financial Transactions

type DG1

type DG1 struct {
	HL7                     HL7Name `hl7:",name=DG1,type=s"`
	SetIDDiagnosis          SI      `hl7:"1,required,len=4,display=Set Id - Diagnosis"`
	DiagnosisCodingMethod   ID      `hl7:"2,required,len=2,table=0053,display=Diagnosis Coding Method"`
	DiagnosisCode           ID      `hl7:"3,len=8,table=0051,display=Diagnosis Code"`
	DiagnosisDescription    ST      `hl7:"4,len=40,display=Diagnosis Description"`
	DiagnosisDateTime       TS      `hl7:"5,len=19,format=YMDHMS,display=Diagnosis Date/Time"`
	DiagnosisDrgType        ID      `hl7:"6,required,len=2,table=0052,display=Diagnosis/Drg Type"`
	MajorDiagnosticCategory ST      `hl7:"7,len=4,table=0118,display=Major Diagnostic Category"`
	DiagnosticRelatedGroup  ID      `hl7:"8,len=4,table=0055,display=Diagnostic Related Group"`
	DrgApprovalIndicator    ID      `hl7:"9,len=2,display=Drg Approval Indicator"`
	DrgGrouperReviewCode    ID      `hl7:"10,len=2,table=0056,display=Drg Grouper Review Code"`
	OutlierType             ID      `hl7:"11,len=2,table=0083,display=Outlier Type"`
	OutlierDays             NM      `hl7:"12,len=3,display=Outlier Days"`
	OutlierCost             NM      `hl7:"13,len=12,display=Outlier Cost"`
	GrouperVersionAndType   ST      `hl7:"14,len=4,display=Grouper Version And Type"`
}

Diagnosis

type DSC

type DSC struct {
	HL7                 HL7Name `hl7:",name=DSC,type=s"`
	ContinuationPointer ST      `hl7:"1,len=60,display=Continuation Pointer"`
}

Continuation Pointer

type DSP

type DSP struct {
	HL7               HL7Name `hl7:",name=DSP,type=s"`
	SetIDDisplayData  SI      `hl7:"1,len=4,display=Set Id - Display Data"`
	DisplayLevel      SI      `hl7:"2,len=4,display=Display Level"`
	DataLine          TX      `hl7:"3,required,len=300,display=Data Line"`
	LogicalBreakPoint ST      `hl7:"4,len=2,display=Logical Break Point"`
	ResultID          TX      `hl7:"5,len=20,display=Result Id"`
}

Display Data

type DSR_Q03

type DSR_Q03 struct {
	HL7 HL7Name `hl7:",name=DSR_Q03,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	QRD *QRD    `hl7:"2,required,display=Query Definition"`
	QRF *QRF    `hl7:"3,display=Query Filter"`
	DSP []DSP   `hl7:"4,required,display=Display Data"`
	DSC *DSC    `hl7:"5,required,display=Continuation Pointer"`
}

Deferred Response to A Query

type DT

type DT = time.Time

Date

type EVN

type EVN struct {
	HL7                  HL7Name `hl7:",name=EVN,type=s"`
	EventTypeCode        ID      `hl7:"1,required,len=3,table=0003,display=Event Type Code"`
	DateTimeOfEvent      TS      `hl7:"2,required,len=19,format=YMDHMS,display=Date/Time Of Event"`
	DateTimePlannedEvent TS      `hl7:"3,len=19,format=YMDHMS,display=Date/Time Planned Event"`
	EventReasonCode      ID      `hl7:"4,len=3,table=0062,display=Event Reason Code"`
}

Event Type

type FHS

type FHS struct {
	HL7                      HL7Name `hl7:",name=FHS,type=s"`
	FileFieldSeparator       ST      `hl7:"1,required,len=1,display=File Field Separator"`
	FileEncodingCharacters   ST      `hl7:"2,required,len=4,display=File Encoding Characters"`
	FileSendingApplication   ST      `hl7:"3,len=15,display=File Sending Application"`
	FileSendingFacility      ST      `hl7:"4,len=20,display=File Sending Facility"`
	FileReceivingApplication ST      `hl7:"5,len=15,display=File Receiving Application"`
	FileReceivingFacility    ST      `hl7:"6,len=20,display=File Receiving Facility"`
	DateTimeOfFileCreation   TS      `hl7:"7,len=19,format=YMDHMS,display=Date/Time Of File Creation"`
	FileSecurity             ST      `hl7:"8,len=40,display=File Security"`
	FileNameID               ST      `hl7:"9,len=20,display=File Name/Id"`
	FileHeaderComment        ST      `hl7:"10,len=80,display=File Header Comment"`
	FileControlID            ST      `hl7:"11,len=20,display=File Control Id"`
	ReferenceFileControlID   ST      `hl7:"12,len=20,display=Reference File Control Id"`
}

File Header

type FT1

type FT1 struct {
	HL7                       HL7Name `hl7:",name=FT1,type=s"`
	SetIDFinancialTransaction SI      `hl7:"1,len=4,display=Set Id - Financial Transaction"`
	TransactionID             ST      `hl7:"2,len=12,display=Transaction Id"`
	TransactionBatchID        ST      `hl7:"3,len=5,display=Transaction Batch Id"`
	TransactionDate           DT      `hl7:"4,required,len=8,format=YMD,display=Transaction Date"`
	TransactionPostingDate    DT      `hl7:"5,len=8,format=YMD,display=Transaction Posting Date"`
	TransactionType           ID      `hl7:"6,required,len=8,table=0017,display=Transaction Type"`
	TransactionCode           ID      `hl7:"7,required,len=20,table=0096,display=Transaction Code"`
	TransactionDescription    ST      `hl7:"8,len=40,display=Transaction Description"`
	TransactionDescriptionAlt ST      `hl7:"9,len=40,display=Transaction Description - Alt"`
	TransactionAmountExtended NM      `hl7:"10,len=12,display=Transaction Amount - Extended"`
	TransactionQuantity       NM      `hl7:"11,len=4,display=Transaction Quantity"`
	TransactionAmountUnit     NM      `hl7:"12,len=12,display=Transaction Amount - Unit"`
	DepartmentCode            ST      `hl7:"13,len=16,table=0049,display=Department Code"`
	InsurancePlanID           ID      `hl7:"14,len=8,table=0072,display=Insurance Plan Id"`
	InsuranceAmount           NM      `hl7:"15,len=12,display=Insurance Amount"`
	PatientLocation           ST      `hl7:"16,len=12,table=0079,display=Patient Location"`
	FeeSchedule               ID      `hl7:"17,len=1,table=0024,display=Fee Schedule"`
	PatientType               ID      `hl7:"18,len=2,table=0018,display=Patient Type"`
	DiagnosisCode             ID      `hl7:"19,len=8,table=0051,display=Diagnosis Code"`
	PerformedByCode           CN      `hl7:"20,len=60,table=0084,display=Performed By Code"`
	OrderedByCode             CN      `hl7:"21,len=60,display=Ordered By Code"`
	UnitCost                  NM      `hl7:"22,len=12,display=Unit Cost"`
}

Financial Transaction

type FTS

type FTS struct {
	HL7                HL7Name `hl7:",name=FTS,type=s"`
	FileBatchCount     ST      `hl7:"1,len=10,display=File Batch Count"`
	FileTrailerComment ST      `hl7:"2,len=80,display=File Trailer Comment"`
}

File Trailer

type GT1

type GT1 struct {
	HL7                       HL7Name `hl7:",name=GT1,type=s"`
	SetIDGuarantor            SI      `hl7:"1,required,len=4,display=Set Id - Guarantor"`
	GuarantorNumber           ID      `hl7:"2,len=20,display=Guarantor Number"`
	GuarantorName             PN      `hl7:"3,required,len=48,display=Guarantor Name"`
	GuarantorSpouseName       PN      `hl7:"4,len=48,display=Guarantor Spouse Name"`
	GuarantorAddress          AD      `hl7:"5,len=106,display=Guarantor Address"`
	GuarantorPhNumHome        TN      `hl7:"6,len=40,display=Guarantor Ph. Num.- Home"`
	GuarantorPhNumBusiness    TN      `hl7:"7,len=40,display=Guarantor Ph. Num-business"`
	GuarantorDateOfBirth      DT      `hl7:"8,len=8,format=YMD,display=Guarantor Date Of Birth"`
	GuarantorSex              ID      `hl7:"9,len=1,table=0001,display=Guarantor Sex"`
	GuarantorType             ID      `hl7:"10,len=2,table=0068,display=Guarantor Type"`
	GuarantorRelationship     ID      `hl7:"11,len=2,table=0063,display=Guarantor Relationship"`
	GuarantorSSN              ST      `hl7:"12,len=11,display=Guarantor Ssn"`
	GuarantorDateBegin        DT      `hl7:"13,len=8,format=YMD,display=Guarantor Date - Begin"`
	GuarantorDateEnd          DT      `hl7:"14,len=8,format=YMD,display=Guarantor Date - End"`
	GuarantorPriority         NM      `hl7:"15,len=2,display=Guarantor Priority"`
	GuarantorEmployerName     ST      `hl7:"16,len=45,display=Guarantor Employer Name"`
	GuarantorEmployerAddress  AD      `hl7:"17,len=106,display=Guarantor Employer Address"`
	GuarantorEmployPhone      TN      `hl7:"18,len=40,display=Guarantor Employ Phone #"`
	GuarantorEmployeeIDNum    ST      `hl7:"19,len=20,display=Guarantor Employee Id Num"`
	GuarantorEmploymentStatus ID      `hl7:"20,len=2,table=0066,display=Guarantor Employment Status"`
}

Guarantor

type HL7Name

type HL7Name struct{}

type ID

type ID = string

Coded Value

type IN1

type IN1 struct {
	HL7                           HL7Name `hl7:",name=IN1,type=s"`
	SetIDInsurance                SI      `hl7:"1,required,len=4,display=Set Id - Insurance"`
	InsurancePlanID               ID      `hl7:"2,required,len=8,table=0072,display=Insurance Plan Id"`
	InsuranceCompanyID            ST      `hl7:"3,required,len=6,display=Insurance Company Id"`
	InsuranceCompanyName          ST      `hl7:"4,len=45,display=Insurance Company Name"`
	InsuranceCompanyAddress       AD      `hl7:"5,len=106,display=Insurance Company Address"`
	InsuranceCoContactPers        PN      `hl7:"6,len=48,display=Insurance Co. Contact Pers"`
	InsuranceCoPhoneNumber        TN      `hl7:"7,len=40,display=Insurance Co Phone Number"`
	GroupNumber                   ST      `hl7:"8,len=12,display=Group Number"`
	GroupName                     ST      `hl7:"9,len=35,display=Group Name"`
	InsuredsGroupEmpID            ST      `hl7:"10,len=12,display=Insured's Group Emp. Id"`
	InsuredsGroupEmpName          ST      `hl7:"11,len=45,display=Insured's Group Emp. Name"`
	PlanEffectiveDate             DT      `hl7:"12,len=8,format=YMD,display=Plan Effective Date"`
	PlanExpirationDate            DT      `hl7:"13,len=8,format=YMD,display=Plan Expiration Date"`
	AuthorizationInformation      ST      `hl7:"14,len=55,display=Authorization Information"`
	PlanType                      ID      `hl7:"15,len=2,table=0086,display=Plan Type"`
	NameOfInsured                 PN      `hl7:"16,len=48,display=Name Of Insured"`
	InsuredsRelationshipToPatient ID      `hl7:"17,len=2,table=0063,display=Insured's Relationship To Patient"`
	InsuredsDateOfBirth           DT      `hl7:"18,len=8,format=YMD,display=Insured's Date Of Birth"`
	InsuredsAddress               AD      `hl7:"19,len=106,display=Insured's Address"`
	AssignmentOfBenefits          ID      `hl7:"20,len=2,display=Assignment Of Benefits"`
	CoordinationOfBenefits        ID      `hl7:"21,len=2,display=Coordination Of Benefits"`
	CoordOfBenPriority            ST      `hl7:"22,len=2,display=Coord Of Ben. Priority"`
	NoticeOfAdmissionCode         ID      `hl7:"23,len=2,table=0081,display=Notice Of Admission Code"`
	NoticeOfAdmissionDate         DT      `hl7:"24,len=8,format=YMD,display=Notice Of Admission Date"`
	RptOfEligibilityCode          ID      `hl7:"25,len=2,table=0094,display=Rpt Of Eligibility Code"`
	RptOfEligibilityDate          DT      `hl7:"26,len=8,format=YMD,display=Rpt Of Eligibility Date"`
	ReleaseInformationCode        ID      `hl7:"27,len=2,table=0093,display=Release Information Code"`
	PreAdmitCertPac               ST      `hl7:"28,len=15,display=Pre-admit Cert. (pac)"`
	VerificationDate              DT      `hl7:"29,len=8,format=YMD,display=Verification Date"`
	VerificationBy                CM      `hl7:"30,len=60,display=Verification By"`
	TypeOfAgreementCode           ID      `hl7:"31,len=2,table=0098,display=Type Of Agreement Code"`
	BillingStatus                 ID      `hl7:"32,len=2,table=0022,display=Billing Status"`
	LifetimeReserveDays           NM      `hl7:"33,len=4,display=Lifetime Reserve Days"`
	DelayBeforeLRDay              NM      `hl7:"34,len=4,display=Delay Before L. R. Day"`
	CompanyPlanCode               ST      `hl7:"35,len=8,table=0042,display=Company Plan Code"`
	PolicyNumber                  ST      `hl7:"36,len=15,display=Policy Number"`
	PolicyDeductible              NM      `hl7:"37,len=12,display=Policy Deductible"`
	PolicyLimitAmount             NM      `hl7:"38,len=12,display=Policy Limit - Amount"`
	PolicyLimitDays               NM      `hl7:"39,len=4,display=Policy Limit - Days"`
	RoomRateSemiPrivate           NM      `hl7:"40,len=12,display=Room Rate - Semi-private"`
	RoomRatePrivate               NM      `hl7:"41,len=12,display=Room Rate - Private"`
	InsuredsEmploymentStatus      ID      `hl7:"42,len=1,table=0066,display=Insured's Employment Status"`
	InsuredsSex                   ID      `hl7:"43,len=1,table=0001,display=Insured's Sex"`
	InsuredsEmployerAddress       AD      `hl7:"44,len=106,display=Insured's Employer Address"`
}

Insurance

type MRG

type MRG struct {
	HL7                       HL7Name `hl7:",name=MRG,type=s"`
	PriorPatientIDInternal    CK      `hl7:"1,required,len=16,display=Prior Patient Id - Internal"`
	PriorAlternatePatientID   CK      `hl7:"2,len=16,display=Prior Alternate Patient Id"`
	PriorPatientAccountNumber CK      `hl7:"3,len=20,display=Prior Patient Account Number"`
}

Merge Patient Information

type MSA

type MSA struct {
	HL7                       HL7Name `hl7:",name=MSA,type=s"`
	AcknowledgmentCode        ID      `hl7:"1,required,len=2,table=0008,display=Acknowledgment Code"`
	MessageControlID          ST      `hl7:"2,required,len=20,display=Message Control Id"`
	TextMessage               ST      `hl7:"3,len=80,display=Text Message"`
	ExpectedSequenceNumber    NM      `hl7:"4,len=15,display=Expected Sequence Number"`
	DelayedAcknowledgmentType ID      `hl7:"5,len=1,table=0102,display=Delayed Acknowledgment Type"`
}

Message Acknowledgment

type MSH

type MSH struct {
	HL7                  HL7Name `hl7:",name=MSH,type=s"`
	FieldSeparator       ST      `hl7:"1,noescape,fieldsep,omit,required,len=1,display=Field Separator"`
	EncodingCharacters   ST      `hl7:"2,noescape,fieldchars,required,len=4,display=Encoding Characters"`
	SendingApplication   ST      `hl7:"3,len=15,display=Sending Application"`
	SendingFacility      ST      `hl7:"4,len=20,display=Sending Facility"`
	ReceivingApplication ST      `hl7:"5,len=15,display=Receiving Application"`
	ReceivingFacility    ST      `hl7:"6,len=30,display=Receiving Facility"`
	DateTimeOfMessage    TS      `hl7:"7,len=19,format=YMDHMS,display=Date/Time Of Message"`
	Security             ST      `hl7:"8,len=40,display=Security"`
	MessageType          ID      `hl7:"9,required,len=7,table=0076,display=Message Type"`
	MessageControlID     ST      `hl7:"10,required,len=20,display=Message Control Id"`
	ProcessingID         ID      `hl7:"11,required,len=1,table=0103,display=Processing Id"`
	VersionID            NM      `hl7:"12,required,len=8,table=0104,display=Version Id"`
	SequenceNumber       NM      `hl7:"13,len=15,display=Sequence Number"`
	ContinuationPointer  ST      `hl7:"14,len=180,display=Continuation Pointer"`
}

Message Header

type NK1

type NK1 struct {
	HL7                   HL7Name `hl7:",name=NK1,type=s"`
	SetIDNextOfKin        SI      `hl7:"1,required,len=4,display=Set Id - Next Of Kin"`
	NextOfKinName         PN      `hl7:"2,len=48,display=Next Of Kin Name"`
	NextOfKinRelationship ST      `hl7:"3,len=15,table=0063,display=Next Of Kin Relationship"`
	NextOfKinAddress      AD      `hl7:"4,len=106,display=Next Of Kin - Address"`
	NextOfKinPhoneNumber  []TN    `hl7:"5,len=40,display=Next Of Kin - Phone Number"`
}

Next Of Kin

type NM

type NM = string

Numeric

type NPU

type NPU struct {
	HL7         HL7Name `hl7:",name=NPU,type=s"`
	BedLocation ID      `hl7:"1,required,len=12,table=0079,display=Bed Location"`
	BedStatus   ID      `hl7:"2,len=1,table=0116,display=Bed Status"`
}

Non-patient Update

type NTE

type NTE struct {
	HL7                   HL7Name `hl7:",name=NTE,type=s"`
	SetIDNotesAndComments SI      `hl7:"1,len=4,display=Set Id - Notes And Comments"`
	SourceOfComment       ID      `hl7:"2,len=8,table=0105,display=Source Of Comment"`
	Comment               []TX    `hl7:"3,required,len=120,display=Comment"`
}

Notes And Comments

type OBR

type OBR struct {
	HL7                        HL7Name `hl7:",name=OBR,type=s"`
	SetIDObservationRequest    SI      `hl7:"1,len=4,display=Set Id - Observation Request"`
	PlacerOrder                CM      `hl7:"2,len=75,display=Placer Order #"`
	FillerOrder                CM      `hl7:"3,len=75,display=Filler Order #"`
	UniversalServiceIdent      CE      `hl7:"4,required,len=200,display=Universal Service Ident."`
	Priority                   ST      `hl7:"5,len=2,display=Priority"`
	RequestedDateTime          TS      `hl7:"6,len=19,format=YMDHMS,display=Requested Date-time"`
	ObservationDateTime        TS      `hl7:"7,required,len=19,format=YMDHMS,display=Observation Date/Time"`
	ObservationEndDateTime     TS      `hl7:"8,required,len=19,format=YMDHMS,display=Observation End Date/Time"`
	CollectionVolume           CQ      `hl7:"9,required,len=20,table=0036,display=Collection Volume"`
	CollectorIdentifier        []CN    `hl7:"10,len=60,display=Collector Identifier"`
	SpecimenActionCode         ST      `hl7:"11,len=1,table=0065,display=Specimen Action Code"`
	DangerCode                 CM      `hl7:"12,len=60,table=0047,display=Danger Code"`
	RelevantClinicalInfo       ST      `hl7:"13,len=300,display=Relevant Clinical Info."`
	SpecimenReceivedDateTime   TS      `hl7:"14,required,len=19,format=YMDHMS,display=Specimen Received Date/Time"`
	SpecimenSource             CM      `hl7:"15,len=300,table=0070,display=Specimen Source"`
	OrderingProvider           []CN    `hl7:"16,len=60,table=0010,display=Ordering Provider"`
	OrderCallBackPhoneNum      []TN    `hl7:"17,max=2,len=40,display=Order Call-back Phone Num"`
	PlacersField1              ST      `hl7:"18,len=60,display=Placers Field #1"`
	PlacersField2              ST      `hl7:"19,len=60,display=Placers Field #2"`
	FillersField1              ST      `hl7:"20,len=60,display=Fillers Field #1"`
	FillersField2              ST      `hl7:"21,len=60,display=Fillers Field #2"`
	ResultsRptStatusChngDateT  TS      `hl7:"22,required,len=19,format=YMDHMS,display=Results Rpt/Status Chng - Date/T"`
	ChargeToPractice           CM      `hl7:"23,len=40,display=Charge To Practice"`
	DiagnosticServSectID       ID      `hl7:"24,len=10,table=0074,display=Diagnostic Serv Sect Id"`
	ResultStatus               ID      `hl7:"25,len=1,table=0123,display=Result Status"`
	LinkedResults              *CE     `hl7:"26,len=200,display=Linked Results"`
	QuantityTiming             []CM    `hl7:"27,len=200,display=Quantity/Timing"`
	ResultCopiesTo             []CN    `hl7:"28,max=5,len=80,display=Result Copies To"`
	ParentAccession            CM      `hl7:"29,len=150,display=Parent Accession #"`
	TransportationMode         ID      `hl7:"30,len=20,table=0124,display=Transportation Mode"`
	ReasonForStudy             []CE    `hl7:"31,len=300,display=Reason For Study"`
	PrincipalResultInterpreter CN      `hl7:"32,len=60,display=Principal Result Interpreter"`
	AssistantResultInterpreter CN      `hl7:"33,len=60,display=Assistant Result Interpreter"`
	Technician                 CN      `hl7:"34,len=60,display=Technician"`
	Transcriptionist           CN      `hl7:"35,len=60,display=Transcriptionist"`
	ScheduledDateTime          TS      `hl7:"36,len=19,format=YMDHMS,display=Scheduled - Date/Time"`
}

Observation Request

type OBX

type OBX struct {
	HL7                     HL7Name `hl7:",name=OBX,type=s"`
	SetIDObservationSimple  SI      `hl7:"1,len=4,display=Set Id - Observation Simple"`
	ValueType               ID      `hl7:"2,len=2,table=0125,display=Value Type"`
	ObservationIdentifier   CE      `hl7:"3,required,len=80,display=Observation Identifier"`
	ObservationSubID        NM      `hl7:"4,len=20,display=Observation Sub-id"`
	ObservationResults      ST      `hl7:"5,required,len=65,display=Observation Results"`
	Units                   ID      `hl7:"6,len=20,display=Units"`
	ReferencesRange         ST      `hl7:"7,len=60,display=References Range"`
	AbnormalFlags           []ST    `hl7:"8,max=5,len=10,table=0078,display=Abnormal Flags"`
	Probability             NM      `hl7:"9,len=5,display=Probability"`
	NatureOfAbnormalTest    ID      `hl7:"10,len=5,table=0080,display=Nature Of Abnormal Test"`
	ObservResultStatus      ID      `hl7:"11,len=2,table=0085,display=Observ Result Status"`
	DateLastObsNormalValues TS      `hl7:"12,len=19,format=YMDHMS,display=Date Last Obs Normal Values"`
}

Result

func (OBX) ChildVaries added in v1.0.9

func (v OBX) ChildVaries(reg func(string) (any, bool)) (reflect.Value, error)

type ORC

type ORC struct {
	HL7                   HL7Name `hl7:",name=ORC,type=s"`
	OrderControl          ST      `hl7:"1,required,len=2,table=0119,display=Order Control"`
	PlacerOrder           CM      `hl7:"2,len=75,display=Placer Order #"`
	FillerOrder           CM      `hl7:"3,len=75,display=Filler Order #"`
	PlacerGroup           CM      `hl7:"4,len=75,display=Placer Group #"`
	OrderStatus           ST      `hl7:"5,len=2,table=0038,display=Order Status"`
	ResponseFlag          ST      `hl7:"6,len=1,table=0121,display=Response Flag"`
	TimingQuantity        CM      `hl7:"7,len=200,display=Timing/Quantity"`
	Parent                CM      `hl7:"8,len=200,display=Parent"`
	DateTimeOfTransaction TS      `hl7:"9,len=19,format=YMDHMS,display=Date/Time Of Transaction"`
	EnteredBy             CN      `hl7:"10,len=80,display=Entered By"`
	VerifiedBy            CN      `hl7:"11,len=80,display=Verified By"`
	OrderingProvider      CN      `hl7:"12,len=80,display=Ordering Provider"`
	EnterersLocation      CM      `hl7:"13,len=80,display=Enterer's Location"`
	CallBackPhoneNumber   []TN    `hl7:"14,max=2,len=40,display=Call Back Phone Number"`
}

Common Order

type ORM_O01

type ORM_O01 struct {
	HL7     HL7Name          `hl7:",name=ORM_O01,type=t"`
	MSH     *MSH             `hl7:"1,required,display=Message Header"`
	NTE     []NTE            `hl7:"2,display=Notes And Comments"`
	Patient *ORM_O01_Patient `hl7:",display=Patient"`
}

Order Message

type ORM_O01_Order

type ORM_O01_Order struct {
	HL7         HL7Name              `hl7:",name=ORM_O01_Order,type=tg"`
	ORC         *ORC                 `hl7:"6,required,display=Common Order"`
	Orderdetail *ORM_O01_Orderdetail `hl7:",display=Order_detail"`
}

Order

type ORM_O01_Orderdetail

type ORM_O01_Orderdetail struct {
	HL7  HL7Name `hl7:",name=ORM_O01_Orderdetail,type=tg"`
	OBR  *OBR    `hl7:"7,required,display=Observation Request"`
	NTE  []NTE   `hl7:"8,display=Notes And Comments"`
	OBX  []OBX   `hl7:"9,display=Result"`
	NTE2 []NTE   `hl7:"10,display=Notes And Comments"`
	BLG  *BLG    `hl7:"11,display=Billing"`
}

Orderdetail

type ORM_O01_Patient

type ORM_O01_Patient struct {
	HL7   HL7Name         `hl7:",name=ORM_O01_Patient,type=tg"`
	PID   *PID            `hl7:"3,required,display=Patient Identification"`
	NTE   []NTE           `hl7:"4,display=Notes And Comments"`
	PV1   *PV1            `hl7:"5,display=Patient Visit"`
	Order []ORM_O01_Order `hl7:",required,display=Order"`
}

Patient

type ORR_O02

type ORR_O02 struct {
	HL7     HL7Name          `hl7:",name=ORR_O02,type=t"`
	MSH     *MSH             `hl7:"1,required,display=Message Header"`
	MSA     *MSA             `hl7:"2,required,display=Message Acknowledgment"`
	NTE     []NTE            `hl7:"3,display=Notes And Comments"`
	Patient *ORR_O02_Patient `hl7:",display=Patient"`
}

Respone Message

type ORR_O02_Order

type ORR_O02_Order struct {
	HL7         HL7Name              `hl7:",name=ORR_O02_Order,type=tg"`
	ORC         *ORC                 `hl7:"6,required,display=Common Order"`
	Orderdetail *ORR_O02_Orderdetail `hl7:",display=Order_detail"`
}

Order

type ORR_O02_Orderdetail

type ORR_O02_Orderdetail struct {
	HL7 HL7Name `hl7:",name=ORR_O02_Orderdetail,type=tg"`
	OBR *OBR    `hl7:"7,required,display=Observation Request"`
	NTE []NTE   `hl7:"8,display=Notes And Comments"`
}

Orderdetail

type ORR_O02_Patient

type ORR_O02_Patient struct {
	HL7   HL7Name         `hl7:",name=ORR_O02_Patient,type=tg"`
	PID   *PID            `hl7:"4,display=Patient Identification"`
	NTE   []NTE           `hl7:"5,display=Notes And Comments"`
	Order []ORR_O02_Order `hl7:",required,display=Order"`
}

Patient

type ORU_R01

type ORU_R01 struct {
	HL7           HL7Name                 `hl7:",name=ORU_R01,type=t"`
	MSH           *MSH                    `hl7:"1,required,display=Message Header"`
	Patientresult []ORU_R01_Patientresult `hl7:",required,display=Patient_result"`
}

Unsolicited transmission of requested Obersvation

type ORU_R01_Observation

type ORU_R01_Observation struct {
	HL7 HL7Name `hl7:",name=ORU_R01_Observation,type=tg"`
	OBX *OBX    `hl7:"8,display=Result"`
	NTE []NTE   `hl7:"9,display=Notes And Comments"`
	DSC *DSC    `hl7:"10,display=Continuation Pointer"`
}

Observation

type ORU_R01_Orderobservation

type ORU_R01_Orderobservation struct {
	HL7         HL7Name               `hl7:",name=ORU_R01_Orderobservation,type=tg"`
	ORC         *ORC                  `hl7:"5,display=Common Order"`
	OBR         *OBR                  `hl7:"6,required,display=Observation Request"`
	NTE         []NTE                 `hl7:"7,display=Notes And Comments"`
	Observation []ORU_R01_Observation `hl7:",required,display=Observation"`
}

Orderobservation

type ORU_R01_Patient

type ORU_R01_Patient struct {
	HL7              HL7Name                    `hl7:",name=ORU_R01_Patient,type=tg"`
	PID              *PID                       `hl7:"2,required,display=Patient Identification"`
	NTE              []NTE                      `hl7:"3,display=Notes And Comments"`
	PV1              *PV1                       `hl7:"4,display=Patient Visit"`
	Orderobservation []ORU_R01_Orderobservation `hl7:",required,display=Order_observation"`
}

Patient

type ORU_R01_Patientresult

type ORU_R01_Patientresult struct {
	HL7     HL7Name          `hl7:",name=ORU_R01_Patientresult,type=tg"`
	Patient *ORU_R01_Patient `hl7:",display=Patient"`
}

Patientresult

type ORU_R03

type ORU_R03 struct {
	HL7           HL7Name                 `hl7:",name=ORU_R03,type=t"`
	MSH           *MSH                    `hl7:"1,required,display=Message Header"`
	Patientresult []ORU_R03_Patientresult `hl7:",required,display=Patient_result"`
}

Display oriented results, queyr/unsol. update

type ORU_R03_Observation

type ORU_R03_Observation struct {
	HL7 HL7Name `hl7:",name=ORU_R03_Observation,type=tg"`
	OBX *OBX    `hl7:"8,display=Result"`
	NTE []NTE   `hl7:"9,display=Notes And Comments"`
	DSC *DSC    `hl7:"10,display=Continuation Pointer"`
}

Observation

type ORU_R03_Orderobservation

type ORU_R03_Orderobservation struct {
	HL7         HL7Name               `hl7:",name=ORU_R03_Orderobservation,type=tg"`
	ORC         *ORC                  `hl7:"5,display=Common Order"`
	OBR         *OBR                  `hl7:"6,required,display=Observation Request"`
	NTE         []NTE                 `hl7:"7,display=Notes And Comments"`
	Observation []ORU_R03_Observation `hl7:",required,display=Observation"`
}

Orderobservation

type ORU_R03_Patient

type ORU_R03_Patient struct {
	HL7              HL7Name                    `hl7:",name=ORU_R03_Patient,type=tg"`
	PID              *PID                       `hl7:"2,required,display=Patient Identification"`
	NTE              []NTE                      `hl7:"3,display=Notes And Comments"`
	PV1              *PV1                       `hl7:"4,display=Patient Visit"`
	Orderobservation []ORU_R03_Orderobservation `hl7:",required,display=Order_observation"`
}

Patient

type ORU_R03_Patientresult

type ORU_R03_Patientresult struct {
	HL7     HL7Name          `hl7:",name=ORU_R03_Patientresult,type=tg"`
	Patient *ORU_R03_Patient `hl7:",display=Patient"`
}

Patientresult

type PD1

type PD1 struct {
	HL7   HL7Name `hl7:",name=PD1,type=s"`
	Value ST      `hl7:"1,display=PD1.1"`
}

Patient Demographics

type PID

type PID struct {
	HL7                         HL7Name `hl7:",name=PID,type=s"`
	SetIDPatientID              SI      `hl7:"1,len=4,display=Set Id - Patient Id"`
	PatientIDExternalExternalID CK      `hl7:"2,len=16,display=Patient Id External (external Id)"`
	PatientIDInternalInternalID CK      `hl7:"3,required,len=16,display=Patient Id Internal (internal Id)"`
	AlternatePatientID          ST      `hl7:"4,len=12,display=Alternate Patient Id"`
	PatientName                 PN      `hl7:"5,required,len=48,display=Patient Name"`
	MothersMaidenName           ST      `hl7:"6,len=30,display=Mother's Maiden Name"`
	DateOfBirth                 DT      `hl7:"7,len=8,format=YMD,display=Date Of Birth"`
	Sex                         ID      `hl7:"8,len=1,table=0001,display=Sex"`
	PatientAlias                []PN    `hl7:"9,len=48,display=Patient Alias"`
	EthnicGroup                 ID      `hl7:"10,len=1,table=0005,display=Ethnic Group"`
	PatientAddress              AD      `hl7:"11,len=106,display=Patient Address"`
	CountyCode                  ID      `hl7:"12,len=4,display=County Code"`
	PhoneNumberHome             []TN    `hl7:"13,max=3,len=40,display=Phone Number - Home"`
	PhoneNumberBusiness         []TN    `hl7:"14,max=3,len=40,display=Phone Number - Business"`
	LanguagePatient             ST      `hl7:"15,len=25,display=Language - Patient"`
	MaritalStatus               ID      `hl7:"16,len=1,table=0002,display=Marital Status"`
	Religion                    ID      `hl7:"17,len=3,table=0006,display=Religion"`
	PatientAccountNumber        CK      `hl7:"18,len=20,display=Patient Account Number"`
	SSNNumberPatient            ST      `hl7:"19,len=16,display=Ssn Number - Patient"`
	DriversLicNumPatient        CM      `hl7:"20,len=25,display=Driver's Lic Num - Patient"`
}

Patient Identification

type PN

type PN = string

Person Name

type PR1

type PR1 struct {
	HL7                   HL7Name `hl7:",name=PR1,type=s"`
	SetIDProcedure        []SI    `hl7:"1,required,len=4,display=Set Id - Procedure"`
	ProcedureCodingMethod ID      `hl7:"2,required,len=2,table=0089,display=Procedure Coding Method."`
	ProcedureCode         ID      `hl7:"3,required,len=10,table=0088,display=Procedure Code"`
	ProcedureDescription  ST      `hl7:"4,len=40,display=Procedure Description"`
	ProcedureDateTime     TS      `hl7:"5,required,len=19,format=YMDHMS,display=Procedure Date/Time"`
	ProcedureType         ID      `hl7:"6,required,len=2,table=0090,display=Procedure Type"`
	ProcedureMinutes      NM      `hl7:"7,len=4,display=Procedure Minutes"`
	Anesthesiologist      CN      `hl7:"8,len=60,table=0010,display=Anesthesiologist"`
	AnesthesiaCode        ID      `hl7:"9,len=2,table=0019,display=Anesthesia Code"`
	AnesthesiaMinutes     NM      `hl7:"10,len=4,display=Anesthesia Minutes"`
	Surgeon               CN      `hl7:"11,len=60,table=0010,display=Surgeon"`
	ResidentCode          CN      `hl7:"12,len=60,table=0010,display=Resident Code"`
	ConsentCode           ID      `hl7:"13,len=2,table=0059,display=Consent Code"`
}

Procedures

type PV1

type PV1 struct {
	HL7                     HL7Name `hl7:",name=PV1,type=s"`
	SetIDPatientVisit       SI      `hl7:"1,len=4,display=Set Id - Patient Visit"`
	PatientClass            ID      `hl7:"2,required,len=1,table=0004,display=Patient Class"`
	AssignedPatientLocation ID      `hl7:"3,required,len=12,table=0079,display=Assigned Patient Location"`
	AdmissionType           ID      `hl7:"4,len=2,table=0007,display=Admission Type"`
	PreAdmitNumber          ST      `hl7:"5,len=20,display=Pre-admit Number"`
	PriorPatientLocation    ID      `hl7:"6,len=12,table=0079,display=Prior Patient Location"`
	AttendingDoctor         CN      `hl7:"7,len=60,table=0010,display=Attending Doctor"`
	ReferringDoctor         CN      `hl7:"8,len=60,table=0010,display=Referring Doctor"`
	ConsultingDoctor        []CN    `hl7:"9,len=60,table=0010,display=Consulting Doctor"`
	HospitalService         ID      `hl7:"10,len=3,table=0069,display=Hospital Service"`
	TemporaryLocation       ID      `hl7:"11,len=12,table=0079,display=Temporary Location"`
	PreAdmitTestIndicator   ID      `hl7:"12,len=2,table=0087,display=Pre-admit Test Indicator"`
	ReAdmissionIndicator    ID      `hl7:"13,len=2,table=0092,display=Re-admission Indicator"`
	AdmitSource             ID      `hl7:"14,len=3,table=0023,display=Admit Source"`
	AmbulatoryStatus        ID      `hl7:"15,len=2,table=0009,display=Ambulatory Status"`
	VipIndicator            ID      `hl7:"16,len=2,table=0099,display=Vip Indicator"`
	AdmittingDoctor         CN      `hl7:"17,len=60,table=0010,display=Admitting Doctor"`
	PatientType             ID      `hl7:"18,len=2,table=0018,display=Patient Type"`
	VisitNumber             NM      `hl7:"19,len=4,display=Visit Number"`
	FinancialClass          []ID    `hl7:"20,max=4,len=11,table=0064,display=Financial Class"`
	ChargePriceIndicator    ID      `hl7:"21,len=2,table=0032,display=Charge Price Indicator"`
	CourtesyCode            ID      `hl7:"22,len=2,table=0045,display=Courtesy Code"`
	CreditRating            ID      `hl7:"23,len=2,table=0046,display=Credit Rating"`
	ContractCode            []ID    `hl7:"24,len=2,table=0044,display=Contract Code"`
	ContractEffectiveDate   []DT    `hl7:"25,len=8,format=YMD,display=Contract Effective Date"`
	ContractAmount          []NM    `hl7:"26,len=12,display=Contract Amount"`
	ContractPeriod          []NM    `hl7:"27,len=3,display=Contract Period"`
	InterestCode            ID      `hl7:"28,len=2,table=0073,display=Interest Code"`
	TransferToBadDebtCode   ID      `hl7:"29,len=1,table=0110,display=Transfer To Bad Debt Code"`
	TransferToBadDebtDate   DT      `hl7:"30,len=8,format=YMD,display=Transfer To Bad Debt Date"`
	BadDebtAgencyCode       ST      `hl7:"31,len=10,table=0021,display=Bad Debt Agency Code"`
	BadDebtTransferAmount   NM      `hl7:"32,len=12,display=Bad Debt Transfer Amount"`
	BadDebtRecoveryAmount   NM      `hl7:"33,len=12,display=Bad Debt Recovery Amount"`
	DeleteAccountIndicator  ID      `hl7:"34,len=1,table=0111,display=Delete Account Indicator"`
	DeleteAccountDate       DT      `hl7:"35,len=8,format=YMD,display=Delete Account Date"`
	DischargeDisposition    ID      `hl7:"36,len=2,table=0112,display=Discharge Disposition"`
	DischargedToLocation    ID      `hl7:"37,len=2,table=0113,display=Discharged To Location"`
	DietType                ID      `hl7:"38,len=2,table=0114,display=Diet Type"`
	ServicingFacility       ID      `hl7:"39,len=2,table=0115,display=Servicing Facility"`
	BedStatus               ID      `hl7:"40,len=1,table=0116,display=Bed Status"`
	AccountStatus           ID      `hl7:"41,len=2,table=0117,display=Account Status"`
	PendingLocation         ID      `hl7:"42,len=12,table=0079,display=Pending Location"`
	PriorTemporaryLocation  ID      `hl7:"43,len=12,table=0079,display=Prior Temporary Location"`
	AdmitDateTime           TS      `hl7:"44,len=19,format=YMDHMS,display=Admit Date/Time"`
	DischargeDateTime       TS      `hl7:"45,len=19,format=YMDHMS,display=Discharge Date/Time"`
	CurrentPatientBalance   NM      `hl7:"46,len=12,display=Current Patient Balance"`
	TotalCharges            NM      `hl7:"47,len=12,display=Total Charges"`
	TotalAdjustments        NM      `hl7:"48,len=12,display=Total Adjustments"`
	TotalPayments           NM      `hl7:"49,len=12,display=Total Payments"`
}

Patient Visit

type QRD

type QRD struct {
	HL7                      HL7Name `hl7:",name=QRD,type=s"`
	QueryDateTime            TS      `hl7:"1,required,len=19,format=YMDHMS,display=Query Date/Time"`
	QueryFormatCode          ID      `hl7:"2,required,len=1,table=0106,display=Query Format Code"`
	QueryPriority            ID      `hl7:"3,required,len=1,table=0091,display=Query Priority"`
	QueryID                  ST      `hl7:"4,required,len=10,display=Query Id"`
	DeferredResponseType     ID      `hl7:"5,len=1,table=0107,display=Deferred Response Type"`
	DeferredResponseDateTime TS      `hl7:"6,len=19,format=YMDHMS,display=Deferred Response Date/Time"`
	QuantityLimitedRequest   CQ      `hl7:"7,required,len=5,table=0126,display=Quantity Limited Request"`
	WhoSubjectFilter         []ST    `hl7:"8,required,len=20,display=Who Subject Filter"`
	WhatSubjectFilter        []ID    `hl7:"9,required,len=3,table=0048,display=What Subject Filter"`
	WhatDepartmentDataCode   []ST    `hl7:"10,required,len=20,display=What Department Data Code"`
	WhatDataCodeValueQual    []ST    `hl7:"11,len=20,display=What Data Code Value Qual."`
	QueryResultsLevel        ID      `hl7:"12,len=1,table=0108,display=Query Results Level"`
}

Query Definition

type QRF

type QRF struct {
	HL7                   HL7Name `hl7:",name=QRF,type=s"`
	WhereSubjectFilter    []ST    `hl7:"1,required,len=20,display=Where Subject Filter"`
	WhenDataStartDateTime TS      `hl7:"2,len=19,format=YMDHMS,display=When Data Start Date/Time"`
	WhenDataEndDateTime   TS      `hl7:"3,len=19,format=YMDHMS,display=When Data End Date/Time"`
	WhatUserQualifier     []ST    `hl7:"4,len=20,display=What User Qualifier"`
	OtherQrySubjectFilter []ST    `hl7:"5,len=20,display=Other Qry Subject Filter"`
}

Query Filter

type QRY_A19

type QRY_A19 struct {
	HL7 HL7Name `hl7:",name=QRY_A19,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	QRD *QRD    `hl7:"2,required,display=Query Definition"`
}

Patient Query

type QRY_Q01

type QRY_Q01 struct {
	HL7 HL7Name `hl7:",name=QRY_Q01,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	QRD *QRD    `hl7:"2,required,display=Query Definition"`
	QRF *QRF    `hl7:"3,display=Query Filter"`
	DSC *DSC    `hl7:"4,required,display=Continuation Pointer"`
}

A Query is Made for Immediate Response

type QRY_Q02

type QRY_Q02 struct {
	HL7 HL7Name `hl7:",name=QRY_Q02,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	QRD *QRD    `hl7:"2,required,display=Query Definition"`
	QRF *QRF    `hl7:"3,display=Query Filter"`
	DSC *DSC    `hl7:"4,required,display=Continuation Pointer"`
}

A Query is Sent for Deferred Response

type Row

type Row struct {
	ID          string
	Description string
	Comment     string
}

Row of data table.

type SI

type SI = string

Set Id

type ST

type ST = string

String Data

type TN

type TN = string

Telephone Number

type TS

type TS = time.Time

Time Stamp

type TX

type TX = string

Text Data

type Table

type Table struct {
	ID   string
	Name string
	Row  []Row
}

Table of data.

type UB1

type UB1 struct {
	HL7                       HL7Name `hl7:",name=UB1,type=s"`
	SetIDUb82                 SI      `hl7:"1,len=4,display=Set Id - Ub82"`
	BloodDeductible           ST      `hl7:"2,len=1,display=Blood Deductible"`
	BloodFurnPintsOf40        ST      `hl7:"3,len=2,display=Blood Furn.-pints Of (40)"`
	BloodReplacedPints41      ST      `hl7:"4,len=2,display=Blood Replaced-pints (41)"`
	BloodNotRplcdPints42      ST      `hl7:"5,len=2,display=Blood Not Rplcd-pints(42)"`
	CoInsuranceDays25         ST      `hl7:"6,len=2,display=Co-insurance Days (25)"`
	ConditionCode             []ID    `hl7:"7,max=5,len=2,table=0043,display=Condition Code"`
	CoveredDays23             ST      `hl7:"8,len=3,display=Covered Days - (23)"`
	NonCoveredDays24          ST      `hl7:"9,len=3,display=Non Covered Days - (24)"`
	ValueAmountCode           []CM    `hl7:"10,max=8,len=12,display=Value Amount & Code"`
	NumberOfGraceDays90       ST      `hl7:"11,len=2,display=Number Of Grace Days (90)"`
	SpecProgIndicator44       ID      `hl7:"12,len=2,display=Spec. Prog. Indicator(44)"`
	PsroUrApprovalInd87       ID      `hl7:"13,len=1,display=Psro/Ur Approval Ind. (87)"`
	PsroUrAprvdStayFm88       DT      `hl7:"14,len=8,format=YMD,display=Psro/Ur Aprvd Stay-fm(88)"`
	PsroUrAprvdStayTo89       DT      `hl7:"15,len=8,format=YMD,display=Psro/Ur Aprvd Stay-to(89)"`
	Occurrence2832            []ID    `hl7:"16,max=5,len=20,display=Occurrence (28-32)"`
	OccurrenceSpan33          ID      `hl7:"17,len=2,display=Occurrence Span (33)"`
	OccurrenceSpanStartDate33 DT      `hl7:"18,len=8,format=YMD,display=Occurrence Span Start Date(33)"`
	OccurSpanEndDate33        DT      `hl7:"19,len=8,format=YMD,display=Occur. Span End Date (33)"`
	Ub82Locator2              ST      `hl7:"20,len=30,display=Ub-82 Locator 2"`
	Ub82Locator9              ST      `hl7:"21,len=7,display=Ub-82 Locator 9"`
	Ub82Locator27             ST      `hl7:"22,len=8,display=Ub-82 Locator 27"`
	Ub82Locator45             ST      `hl7:"23,len=17,display=Ub-82 Locator 45"`
}

Ub82 Data

type UDM_Q05

type UDM_Q05 struct {
	HL7 HL7Name `hl7:",name=UDM_Q05,type=t"`
	MSH *MSH    `hl7:"1,required,display=Message Header"`
	URD *URD    `hl7:"2,required,display=Results/update Definition"`
	URS *URS    `hl7:"3,display=Unsolicited Selection"`
	DSP []DSP   `hl7:"4,required,display=Display Data"`
	DSC *DSC    `hl7:"5,required,display=Continuation Pointer"`
}

Unsolicited Updates, ODM Message, Trigger Event Q05

type URD

type URD struct {
	HL7                     HL7Name `hl7:",name=URD,type=s"`
	RUDateTime              TS      `hl7:"1,len=19,format=YMDHMS,display=R/U Date/Time"`
	ReportPriority          ID      `hl7:"2,len=1,table=0109,display=Report Priority"`
	RUWhoSubjectDefinition  []ST    `hl7:"3,required,len=20,display=R/U Who Subject Definition"`
	RUWhatSubjectDefinition []ID    `hl7:"4,len=3,table=0048,display=R/U What Subject Definition"`
	RUWhatDepartmentCode    []ST    `hl7:"5,len=20,display=R/U What Department Code"`
	RUDisplayPrintLocations []ST    `hl7:"6,len=20,display=R/U Display/Print Locations"`
	RUResultsLevel          ID      `hl7:"7,len=1,table=0108,display=R/U Results Level"`
}

Results/update Definition

type URS

type URS struct {
	HL7                         HL7Name `hl7:",name=URS,type=s"`
	RUWhereSubjectDefinition    []ST    `hl7:"1,required,len=20,display=R/U Where Subject Definition"`
	RUWhenDataStartDateTime     TS      `hl7:"2,len=19,format=YMDHMS,display=R/U When Data Start Date/Time"`
	RUWhenDataEndDateTime       TS      `hl7:"3,len=19,format=YMDHMS,display=R/U When Data End Date/Time"`
	RUWhatUserQualifier         []ST    `hl7:"4,len=20,display=R/U What User Qualifier"`
	RUOtherResultsSubjectDefini []ST    `hl7:"5,len=20,display=R/U Other Results Subject Defini"`
}

Unsolicited Selection

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL