@dotbase/hl7-v2-message
Version:
Parses HL7 v2.x messages into typed javascript objects and makes them easily accessable.
450 lines (449 loc) • 19 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const Hl7Message_1 = tslib_1.__importDefault(require("../../../model/Hl7Message"));
/**
* Specimen Shipment Centric Laboratory Order Message
*/
class OML_O39_Message extends Hl7Message_1.default {
constructor() {
super(...arguments);
this.compounds = {
PATIENT: {
name: "PATIENT",
isOptional: true,
isRepeatable: false,
},
PATIENT_PATIENT_VISIT: {
name: "PATIENT_PATIENT_VISIT",
isOptional: true,
isRepeatable: false,
parentCompound: "PATIENT",
},
PATIENT_INSURANCE: {
name: "PATIENT_INSURANCE",
isOptional: true,
isRepeatable: true,
parentCompound: "PATIENT",
},
ORDER: {
name: "ORDER",
isOptional: false,
isRepeatable: true,
},
ORDER_TIMING: {
name: "ORDER_TIMING",
isOptional: true,
isRepeatable: true,
parentCompound: "ORDER",
},
ORDER_OBSERVATION_REQUEST: {
name: "ORDER_OBSERVATION_REQUEST",
isOptional: true,
isRepeatable: false,
parentCompound: "ORDER",
},
ORDER_OBSERVATION_REQUEST_OBSERVATION: {
name: "ORDER_OBSERVATION_REQUEST_OBSERVATION",
isOptional: true,
isRepeatable: true,
parentCompound: "ORDER_OBSERVATION_REQUEST",
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT",
isOptional: true,
isRepeatable: true,
parentCompound: "ORDER_OBSERVATION_REQUEST",
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHIPMENT_OBSERVATION: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHIPMENT_OBSERVATION",
isOptional: true,
isRepeatable: true,
parentCompound: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT",
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE",
isOptional: false,
isRepeatable: true,
parentCompound: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT",
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE",
isOptional: true,
isRepeatable: true,
parentCompound: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE",
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_OBSERVATION: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_OBSERVATION",
isOptional: true,
isRepeatable: true,
parentCompound: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE",
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE",
isOptional: true,
isRepeatable: true,
parentCompound: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE",
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_CONTAINER_OBSERVATION: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_CONTAINER_OBSERVATION",
isOptional: true,
isRepeatable: true,
parentCompound: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE",
},
};
this.segments = {
MSH: {
name: "MSH",
type: "MSH",
isOptional: false,
isRepeatable: false,
value: []
},
SFT: {
name: "SFT",
type: "SFT",
isOptional: true,
isRepeatable: true,
value: []
},
UAC: {
name: "UAC",
type: "UAC",
isOptional: true,
isRepeatable: false,
value: []
},
NTE: {
name: "NTE",
type: "NTE",
isOptional: true,
isRepeatable: true,
value: []
},
PATIENT_PID: {
name: "PATIENT_PID",
type: "PID",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_PD1: {
name: "PATIENT_PD1",
type: "PD1",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_PRT: {
name: "PATIENT_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_NTE: {
name: "PATIENT_NTE",
type: "NTE",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_NK1: {
name: "PATIENT_NK1",
type: "NK1",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_PATIENT_VISIT_PV1: {
name: "PATIENT_PATIENT_VISIT_PV1",
type: "PV1",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_PATIENT_VISIT,
value: []
},
PATIENT_PATIENT_VISIT_PV2: {
name: "PATIENT_PATIENT_VISIT_PV2",
type: "PV2",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_PATIENT_VISIT,
value: []
},
PATIENT_PATIENT_VISIT_PRT: {
name: "PATIENT_PATIENT_VISIT_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT_PATIENT_VISIT,
value: []
},
PATIENT_INSURANCE_IN1: {
name: "PATIENT_INSURANCE_IN1",
type: "IN1",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_INSURANCE,
value: []
},
PATIENT_INSURANCE_IN2: {
name: "PATIENT_INSURANCE_IN2",
type: "IN2",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_INSURANCE,
value: []
},
PATIENT_INSURANCE_IN3: {
name: "PATIENT_INSURANCE_IN3",
type: "IN3",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_INSURANCE,
value: []
},
PATIENT_GT1: {
name: "PATIENT_GT1",
type: "GT1",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_AL1: {
name: "PATIENT_AL1",
type: "AL1",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT,
value: []
},
ORDER_ORC: {
name: "ORDER_ORC",
type: "ORC",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER,
value: []
},
ORDER_PRT: {
name: "ORDER_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER,
value: []
},
ORDER_TIMING_TQ1: {
name: "ORDER_TIMING_TQ1",
type: "TQ1",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_TIMING,
value: []
},
ORDER_TIMING_TQ2: {
name: "ORDER_TIMING_TQ2",
type: "TQ2",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_TIMING,
value: []
},
ORDER_OBSERVATION_REQUEST_OBR: {
name: "ORDER_OBSERVATION_REQUEST_OBR",
type: "OBR",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST,
value: []
},
ORDER_OBSERVATION_REQUEST_TCD: {
name: "ORDER_OBSERVATION_REQUEST_TCD",
type: "TCD",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST,
value: []
},
ORDER_OBSERVATION_REQUEST_NTE: {
name: "ORDER_OBSERVATION_REQUEST_NTE",
type: "NTE",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST,
value: []
},
ORDER_OBSERVATION_REQUEST_PRT: {
name: "ORDER_OBSERVATION_REQUEST_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST,
value: []
},
ORDER_OBSERVATION_REQUEST_CTD: {
name: "ORDER_OBSERVATION_REQUEST_CTD",
type: "CTD",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST,
value: []
},
ORDER_OBSERVATION_REQUEST_DG1: {
name: "ORDER_OBSERVATION_REQUEST_DG1",
type: "DG1",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST,
value: []
},
ORDER_OBSERVATION_REQUEST_OBSERVATION_OBX: {
name: "ORDER_OBSERVATION_REQUEST_OBSERVATION_OBX",
type: "OBX",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_OBSERVATION_PRT: {
name: "ORDER_OBSERVATION_REQUEST_OBSERVATION_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_OBSERVATION_TCD: {
name: "ORDER_OBSERVATION_REQUEST_OBSERVATION_TCD",
type: "TCD",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_OBSERVATION_NTE: {
name: "ORDER_OBSERVATION_REQUEST_OBSERVATION_NTE",
type: "NTE",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHP: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHP",
type: "SHP",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHIPMENT_OBSERVATION_OBX: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHIPMENT_OBSERVATION_OBX",
type: "OBX",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHIPMENT_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHIPMENT_OBSERVATION_PRT: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHIPMENT_OBSERVATION_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_SHIPMENT_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_PAC: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_PAC",
type: "PAC",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPM: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPM",
type: "SPM",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_OBSERVATION_OBX: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_OBSERVATION_OBX",
type: "OBX",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_OBSERVATION_PRT: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_OBSERVATION_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_SAC: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_SAC",
type: "SAC",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_CONTAINER_OBSERVATION_OBX: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_CONTAINER_OBSERVATION_OBX",
type: "OBX",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_CONTAINER_OBSERVATION,
value: []
},
ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_CONTAINER_OBSERVATION_PRT: {
name: "ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_CONTAINER_OBSERVATION_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER_OBSERVATION_REQUEST_SPECIMEN_SHIPMENT_PACKAGE_SPECIMEN_IN_PACKAGE_SPECIMEN_CONTAINER_IN_PACKAGE_CONTAINER_OBSERVATION,
value: []
},
ORDER_FT1: {
name: "ORDER_FT1",
type: "FT1",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER,
value: []
},
ORDER_CTI: {
name: "ORDER_CTI",
type: "CTI",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.ORDER,
value: []
},
ORDER_BLG: {
name: "ORDER_BLG",
type: "BLG",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.ORDER,
value: []
},
};
}
get name() { return 'OML_O39'; }
get description() { return 'Specimen Shipment Centric Laboratory Order Message'; }
}
exports.default = OML_O39_Message;