The Evolution of Pharmacy Messages HL7 UK Conference 2

Download Report

Transcript The Evolution of Pharmacy Messages HL7 UK Conference 2

The Evolution of Pharmacy Messages
HL7 UK Conference
2 November 2004
Hugh Glover, BSc, PhD
Partner, Blue Wave Informatics LLP
[email protected]
Basics
• Information for Health proposes using IT to better share
patient record
• Must interface different systems together
• How many interfaces do we need?
– 2 Systems = 1 Interface
– 3 Systems = 3 Interfaces
– 4 Systems = 6 Interfaces
– n Systems = n*(n-1)/2 Interfaces
– 15 GP Pharmacy Systems = 105 Interfaces
– 250 Trusts = 31,125 Interfaces
• Something has to be done!
HL7 v3 as a “standard”
• NHS made a judgement that HL7 v3 was the way to go
• No domains had passed ballot
BUT
• The RIM was on the point of passing ballot
Do Domains Matter?
dotORG Ballot
Basic
•
Refinement & Localisation
•
RIM
•
Vocabulary
•
Data Types: Abstract
•
XML ITS
•
UML ITS
•
Transport Specifications
– ebXML
– MLLP
– Web Services
•
Gello
•
Common Terminology Services
•
Common Domains
– Shared Messages
– CMETS
•
Infrastructure Management
– Transmission
– Message Control Act
– Query
– Master File
UK MIM
Basic
• Infrastructure
• CMETs
• Data Types
• Vocabulary
Business Process Specific
• LRs
• PDS
• PSIS Query
Do Domains Matter?
•
•
dotORG Ballot
Admin Management
– Account Billing
– Claims & Reimbursement
– Patient Administration
– Personnel Management
– Scheduling
Health & Clinical Management
– CDA
– Blood Bank
– Laboratory
– Clinical Genomics
– Medical Records
– Care Provision
– Pharmacy
– Public Health reporting
– Informative Public Health Specs
– Regulated Studies
– Therapeutic Devices
UK MIM
Mainstream
• Accident & Emergency
• Diagnostic Imaging
• eBooking
• Emergency Admissions
• GP2GP
• Medication Management
• Mental Health
• NHS Direct
• OOP Appointments
• Out of Hours
• Provision of Care
• Single Assessment
Pharmacy is a Domain Exemplar
• Giving a patient medicine is understood by all
• It is the first example that springs to mind
– RIM Definitions are frequently in terms of drug
administration
… What has happened?
Pharmacy DMIM 2002
CMET: (PAT)
R_Patient
[universal]
(COCT_MT050000)
Note:
For 'change' orders:
If Substance_admin_order.id is null,
P_subject and Substance_admin_order.cd
must be specified.
Otherwise, this information is not
required. If specified, it must
correspond with the specified
Substance_admin_order.id.
Note:
Body weight,
Surface Area,
Allergies,
Medical conditions
Note:
Body weight,
Surface Area,
Allergies,
Medical conditions
CMET: (PAT)
R_Patient
[universal]
CMET: (OBS)
A_ObservationSupporting
[universal]
typeCode*: <= SBJ
time: (availability time)
typeCode*: <= PERT
Constraint:
cd and value or txt must
not be null
A_Observation_criteria
0..* a_Observation_criteria
classCode*: <= OBS
moodCode*: <= EVN.CRT
code: CE <= ObservationType
text*:
effectiveTime:
value:
precondition
verifier
typeCode*: <= COMP
sequenceNumber*: [1..1]
priorityNumber:
pauseQuantity: (e.g. 1s)
splitCode:
joinCode:
must have at least
dose_qty or txt
0..* a_Sub_admin_proposal
A_Substance_admin_proposal_dose
classCode*: <= SBADM
moodCode*: <= PRP
text*: ST
effectiveTime: (SIG timing)
repeatNumber:
doseQuantity: IVL<PQ>
rateQuantity: IVL<PQ>
(e.g. 1 s)
doseCheckQuantity:
SET<RTO<PQ,PQ>>
maxDoseQuantity: SET<RTO<PQ,PQ>>
0..* participant
classCode*: <= SBADM
moodCode*: <= PRP
id: (sub-order id)
code: <= drugTreatment
0..1 a_Substance_admin_proposal_dose
*
text:
option
priorityCode:
typeCode*: <= OPTN
independentInd: "FALSE"
CMET: (ASSIGNED)
R_AssignedPerson
typeCode*: <= ENT
time: (time recorded)
[detailed]
(COCT_MT090101)
0..* participant
Constraint:
callBackContact
(COCT_MT090102)
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
(COCT_MT090101)
CMET: (ASSIGNED)
R_AssignedPerson
typeCode*: <= COMP
sequenceNumber*: [1..1]
priorityNumber:
pauseQuantity: (e.g. 1s)
splitCode:
joinCode:
CMET: (AUTH)
[identified]
pertainsTo1
A_Confirmation
[universal]
typeCode*: <= PERT
0..* subjectA_Confirmation (COCT_MT270000)
CMET: (ASSIGNED)
R_AssignedDevice
[identified]
(COCT_MT090302)
CMET: (OBS)
A_ObservationAnnotation
pertainsTo2
[detailed]
typeCode*: <= PERT
(COCT_MT120401)
0..* subjectA_ObservationAnnotation
0..1 a_Substance_admin_proposal_dose *
option2
typeCode*: <= OPTN
(COCT_MT090102)
CMET: (ENC)
A_Encounter
componentOf
typeCode*: <= COMP
ADMIN PROPOSAL
Constraint:
must have at least
dose_qty or txt
classCode*: <= SBADM
moodCode*: <= ORD
text*: ST
effectiveTime: (SIG timing)
repeatNumber:
doseQuantity: IVL<PQ>
rateQuantity: IVL<PQ>
(e.g. 1 s)
doseCheckQuantity:
SET<RTO<PQ,PQ>>
maxDoseQuantity: SET<RTO<PQ,PQ>>
typeCode*: <= OPTN
typeCode*: <= PERT
0..* pertinentA_ObservationSupporting
0..* participant
typeCode*: <= ENT
time: (time recorded)
callBackContact
A_Observation_criteria
Constraint:
(COCT_MT090102)
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
(COCT_MT090101)
Constraint:
CMET: (ASSIGNED)
R_AssignedPerson
CMET: (AUTH)
[identified]
A_Confirmation
(COCT_MT090102)
[universal]
0..* a_Sub_admin_order
component1
typeCode*: <= COMP
sequenceNumber*: [1..1]
priorityNumber:
pauseQuantity: (e.g. 1s)
splitCode:
joinCode:
pertainsTo1
typeCode*: <= PERT
0..* subjectA_Confirmation (COCT_MT270000)
CMET: (ASSIGNED)
R_AssignedDevice
[identified]
(COCT_MT090302)
CMET: (OBS)
A_ObservationAnnotation
pertainsTo2
[detailed]
typeCode*: <= PERT
(COCT_MT120401)
0..* subjectA_ObservationAnnotation
CMET: (ENC)
A_Encounter
componentOf2
typeCode*: <= COMP
ADMIN ORDER
A_Other_admin_ord
0..* a_Sub_admin_intent
must have at least
dose_qty or txt
A_Substance_admin_intent_dose
classCode*: <= SBADM
moodCode*: <= INT
text*: ST
effectiveTime: (SIG timing)
repeatNumber:
doseQuantity: UVP<PQ>
rateQuantity: UVP<PQ>
(e.g. 1 s)
doseCheckQuantity:
SET<RTO<PQ,PQ>>
maxDoseQuantity: SET<RTO<PQ,PQ>>
A_Sub_admin_intent
verifier
typeCode*: <= VRF+SPV
time*: (verification or attestation)
modeCode:
signatureCode:
signatureText:
R_Assigned_practitioner
CMET: (ASSIGNED)
R_AssignedPerson
0..* participant
dataEnterer
[detailed]
typeCode*: <= ENT
time: (time recorded)
(COCT_MT090101)
0..* participant
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
callBackContact
typeCode*: <= CBC
time: (availability time)
(COCT_MT090102)
1..* participant *
author
R_Assigned_practitioner_or_device
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
(COCT_MT090101)
0..* a_Sub_admin_intent
classCode*: <= SBADM
moodCode*: <= INT
id: (sub-order id)
0..1 a_Substance_admin_intent_dose
code:*<= drugTreatment
text:
option
priorityCode:
typeCode*: <= OPTN
independentInd:
CMET: (ASSIGNED)
R_AssignedPerson
component1
typeCode*: <= COMP
sequenceNumber*: [1..1]
priorityNumber:
pauseQuantity: (e.g. 1s)
splitCode:
joinCode:
[identified]
(COCT_MT090102)
CMET: (OBS)
A_ObservationAnnotation
CMET: (ASSIGNED)
[detailed]
typeCode*: <= PERT
R_AssignedDevice
(COCT_MT120401)
0..* subjectA_ObservationAnnotation [identified]
CMET: (ENC)
A_Encounter
[detailed]
pertainsTo1
typeCode*: <= COMP
option2
ADMIN INTENT
successor
typeCode*: <= SUCC
0..* a_Other_admin_int
classCode*: <= SBADM
moodCode*: <= INT
id*: [1..*]
(COCT_MT170001)
0..* a_SubstanceRoute *
option1
0..* priorA_Other_admin_int
typeCode*: <= OPTN
predecessor
CMET: (SBADM)
A_SubstanceRoute
[detailed]
(COCT_MT170001)
typeCode*: <= SUCC
0..1 priorA_Substance_administration_order
0..* a_Substance_admin_master
inFulfillmentOf1 / fulfillment1
definition
typeCode*: <= FLFS
classCode*: <= SBADM
moodCode*: <= DEF
id*: [1..*] (catalogue #)
A_Sub_administration
A_Substance_admin_event
subject
classCode*: <= SBADM
moodCode*: <= EVN
(COCT_MT050000)
id: (filler number.counter?)
code*: <= ManufactureddrugTreatment
(clinical drug)
CMET: (SBADM)
0..* a_SubstanceRoute * negationInd*: "False" (not administered)
text: ED
A_SubstanceRoute
component1
statusCode: = COMPLETED
[detailed]
typeCode*:
<=
COMP
(COCT_MT170001)
effectiveTime*: (Admin. time)
priorityCode:
confidentialityCode:
CMET: (AUTH)
repeatNumber:
A_Confirmation pertainsTo2
doseQuantity*: PQ
[universal]
typeCode*: <= PERT
(COCT_MT270000) 0..* subjectA_Confirmation rateQuantity: PQ (e.g. 1 s)
substitutionCode:
typeCode*: <= PERT
0..* subjectA_Confirmation (COCT_MT270000)
A_Other_admin_int
typeCode*: <= OPTN
typeCode*: <= SUCC
1..* patient
CMET: (PAT)
R_Patient
[universal]
CMET: (AUTH)
A_Confirmation
[universal]
pertainsTo2
typeCode*: <= OPTN
CMET: (SBADM)
A_SubstanceRoute
[detailed]
option1
predecessor
typeCode*: <= COMP
sequenceNumber*: [1..1]
0..* a_Encounter
componentOf
0..1 a_Substance_admin_intent_dose *
[detailed]
0..* a_Encounter (COCT_MT010101)
0..* a_SubstanceRoute *
0..* priorA_Other_admin_ord
component
(COCT_MT010101)
(COCT_MT090302)
typeCode*: <= SUCC
0..* a_Other_admin_ord
classCode*: <= SBADM
moodCode*: <= ORD
id*: [1..*]
0..* pertinentA_ObservationSupporting
0..* participant
0..* a_Observation_criteria
successor
A_Substance_admin_master
typeCode*: <= PERT
classCode*: <= SBADM
moodCode*: <= INT
id*: (placer number, filler number, etc.)
code*: [1..1] <= ManufactureddrugTreatment (clinical drug)
text: ED
statusCode: "ACTIVE"
priorityCode:
confidentialityCode: "N"
independentInd: "FALSE"
substitutionCode:
typeCode*: <= PRCN+OUTC
checkpointCode:
negationInd:
conjunctionCode:
typeCode*: <= COMP
sequenceNumber*: [1..1]
priorityNumber:
pauseQuantity: (e.g. 1s)
splitCode:
joinCode:
R_Assigned_practitioner_or_device
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
precondition
typeCode*: <= PRCN+OUTC
checkpointCode:
negationInd:
conjunctionCode:
precondition
component
1..* participant *
author
0..* a_Observation_criteria
classCode*: <= OBS
moodCode*: <= EVN.CRT
code: CE <= ObservationType
text*:
effectiveTime:
value:
cd and value or txt must
not be null
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
typeCode*: <= CBC
time: (availability time)
typeCode*: <= OPTN
typeCode*: <= INST
[detailed]
(COCT_MT090101)
0..* participant
option2
definition
CMET: (ASSIGNED)
R_AssignedPerson
dataEnterer
typeCode*: <= PRCN+OUTC
checkpointCode:
negationInd:
conjunctionCode:
pertinentInformation
A_Substance_admin_intent
R_Assigned_practitioner
0..* participant
0..1 a_Substance_admin_order_dose *
0..* a_Substance_admin_master
typeCode*: <= SBJ
time: (availability time)
typeCode*: <= VRF+SPV
time*: (verification or attestation)
modeCode:
signatureCode:
signatureText:
0..* a_Observation_criteria
precondition
A_Sub_admin_order
1..* patient *
subject
verifier
classCode*: <= SBADM
moodCode*: <= ORD
id*: (placer number, etc.)
code*: <= drugTreatment (clinical drug)
text: ED
statusCode*: "ACTIVE"
priorityCode:
confidentialityCode: "N"
substitutionCode:
typeCode*: <= PRCN+OUTC
checkpointCode:
negationInd:
conjunctionCode:
classCode*: <= SBADM
moodCode*: <= ORD
id: (sub-order id)
code:* <= drugTreatment
0..1 a_Substance_admin_order_dose
text:
option
priorityCode:
typeCode*: <= OPTN
independentInd: "FALSE"
Note:
Used to refererence
pharmacy protocols
governing how a drug
should be prescribed/
administered.
(COCT_MT170001)
classCode*: <= SBADM
moodCode*: <= DEF
id*: [1..*] (catalogue #)
precondition
Note:
This Act represents the dosage
instructions for a substance
administration order.
CMET: (SBADM)
A_SubstanceRoute
[detailed]
option1
A_Substance_admin_master
classCode*: <= OBS
moodCode*: <= EVN.CRT
code: CE <= ObservationType
text*:
effectiveTime:
value:
0..* a_Sub_admin_order
A_Substance_admin_order_dose
[detailed]
0..* a_Encounter (COCT_MT010101)
0..* a_SubstanceRoute *
Note:
Used to refererence
pharmacy protocols
governing how a drug
should be prescribed/
administered.
0..* a_Observation_criteria
typeCode*: <= COMP
sequenceNumber*: [1..1]
priorityNumber:
pauseQuantity: (e.g. 1s)
splitCode:
joinCode:
R_Assigned_practitioner_or_device
0..* a_Sub_admin_proposal
component1
A_Observation_criteria
component
1..* participant *
author
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
Note:
This Act represents the dosage
instructions for a substance
administration order.
cd and value or txt must
not be null
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
typeCode*: <= CBC
time: (availability time)
0..* a_Observation_criteria
A_Sub_admin_proposal
R_Assigned_practitioner
dataEnterer
typeCode*: <= PRCN+OUTC
checkpointCode:
negationInd:
conjunctionCode:
pertinentInformation
A_Substance_administration_order
typeCode*: <= VRF+SPV
time*: (verification or attestation)
modeCode:
signatureCode:
signatureText:
typeCode*: <= PRCN+OUTC
checkpointCode:
negationInd:
conjunctionCode:
precondition
component
Constraint:
typeCode*: <= SBJ
time: (availability time)
0..* pertinentA_ObservationSupporting
0..* participant
classCode*: <= SBADM
moodCode*: <= PRP
id*: (placer number, etc.)
code*: <= drugTreatment (clinical drug)
text: ED
statusCode*: "ACTIVE"
priorityCode:
confidentialityCode: "N"
substitutionCode:
(COCT_MT120200)
1..* patient *
subject
pertinentInformation
A_Substance_administration_proposal
CMET: (OBS)
A_ObservationSupporting
[universal]
[universal]
(COCT_MT050000)
(COCT_MT120200)
1..* patient *
subject
Note:
Body weight,
Surface Area,
Allergies,
Medical conditions
CMET: (PAT)
R_Patient
CMET: (OBS)
A_ObservationSupporting
[universal]
(COCT_MT050000)
(COCT_MT120200)
typeCode*: <= SBJ
time: (availability time)
0..* a_Sub_administration
component2
typeCode*: <= COMP
sequenceNumber*: [1..1]
0..* participant
typeCode*: <= ASS+VRF+WIT+SPV
time*: (time of verification or attestation)
modeCode:
signatureCode:
signatureText:
R_Assigned_practitioner
0..* participant
CMET: (ASSIGNED)
R_AssignedPerson
dataEnterer
Pharmacy Administration Order
Pharmacy Administration Proposal
0..1 priorA_Other_admin_ord
(N/A)
(N/A)
A_Other_admin_ord
inFulfillmentOf1
Used as an entry-point when creating
or otherwise manipulating a pharmacy
order.
Used as an entry-point when proposing
the creation or manipulation of a pharmacy
order.
typeCode*: <= ENT
time: (time recorded)
0..1 priorA_Substance_admin_intent
classCode*: <= SBADM
moodCode*: <= ORD
id*: [1..*]
typeCode*: <= FLFS
[detailed]
(COCT_MT090101)
inFulfillmentOf2 / fulfillment
0..* participant
callBackContact
typeCode*: <= FLFS
0..* a_Substance_admin_event
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
typeCode*: <= CBC
time: (availability time)
ADMIN
EVENT
A_Observation_indication
A_Observation_indication
classCode*: <= OBS
moodCode*: <= EVN
id: (used for future maintenance)
code*: [1..1] <= DiagnosisCodes
(admitting Dx, Billing Dx, family Hx, etc.)
statusCode: (Complete, Superceded)
effectiveTime:
confidentialityCode:
value*: UVP<CD> CWE (e.g. ICD9)
targetSiteCode:
0..* content
typeCode*: <= CSM
reason
(COCT_MT230000)
0..*
typeCode*: <= RSON
classCode*: <= OBS
moodCode*: <= EVN
id: (used for future maintenance)
code*: [1..1] <= DiagnosisCodes
(admitting Dx, Billing Dx, family Hx, etc.)
statusCode: (Complete, Superceded)
effectiveTime:
confidentialityCode:
value*: UVP<CD> CWE (e.g. ICD9)
targetSiteCode:
CMET: (CONT)
R_MaterialMedProduct
[universal]
consumable
0..* justifyingA_Observation_indication
Note:
E.g. radioactive substance must
be administered in secured location,
oral morphine in pharmacy
0..* content
CMET: (CONT)
R_MaterialMedProduct
[universal]
consumable
0..* justifyingA_Observation_indication
typeCode*: <= CSM
reason
(COCT_MT230000)
0..*
typeCode*: <= RSON
Note:
Used to refererence
pharmacy protocols
governing how a drug
should be prescribed/
administered.
A_Substance_admin_master
0..* a_Substance_admin_master
classCode*: <= SBADM
moodCode*: <= DEF
id*: [1..*] (catalogue #)
definition
typeCode*: <= CSM
(N/A)
0..* participant
destination
typeCode*: <= DST
0..*
CMET: (ROL)
R_Location
[hcfac]
0..* participant
CMET: (ROL)
R_Location
[hcfac]
A_Prescription
(COCT_MT070103)
classCode*: <= ACT
moodCode*: <= ORD
id*:
destination
0..* a_Substance_administration_order
typeCode*: <= DST
component / componentOf1
0..*
(COCT_MT230000)
Note:
E.g. radioactive substance must
be administered in secured location,
oral morphine in pharmacy
Pharmacy Administration Intent
(COCT_MT070103)
Used as an entry-point when creating
or otherwise manipulating a pharmacy
intent.
0..* participant
0..*
consumable
R_Assigned_practitioner_or_device
typeCode*: <= CSM
0..* participant
typeCode*: <= PERT
triggerFor
typeCode*: <= LOC 0..* participant
(COCT_MT090302)
CMET: (ROL)
R_Location
CMET: (ALRT)
A_Alert
[universal]
typeCode*: <= TRIG
0..* a_Alert (COCT_MT260000)
inFulfillmentOf / fulfillment2
inFulfillmentOf2 / fulfillment
typeCode*: <= PERT
0..* subjectA_ObservationAnnotation
location
triggerFor
0..1 priorA_Substance_administration_order
0..1 priorA_Substance_administration_proposal
(COCT_MT090101)
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
(COCT_MT090102)
CMET: (OBS)
A_ObservationAnnotation
[detailed]
CMET: (ASSIGNED)
(COCT_MT120401)
R_AssignedDevice
[identified]
pertainsTo1
typeCode*: <= TRIG
[universal]
(COCT_MT260000) 0..* a_Alert
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
typeCode*: <= PRF
signatureCode:
signatureText:
pertinentInformation
triggerFor
Note:
Need to figure out how
to represent proposals
to supercede/revise an
order.
performer
0..* pertinentA_ObservationSupporting
CMET: (ALRT)
A_Alert
(COCT_MT070103)
(COCT_MT090102)
0..* content
(COCT_MT230000)
(COCT_MT120200)
[hcfac]
typeCode*: <= DST
CMET: (ALRT)
A_Alert
[universal]
typeCode*: <= TRIG
0..* a_Alert (COCT_MT260000)
0..*
CMET: (OBS)
A_ObservationSupporting
[universal]
CMET: (ROL)
R_Location
destination
typeCode*: <= COMP
0..1 a_Prescription
CMET: (CONT)
R_MaterialMedProduct
[universal]
CMET: (CONT)
R_MaterialMedProduct
[universal]
0..* content
consumable
typeCode*: <= INST
0..*
Note:
E.g. radioactive substance must
be administered in secured location,
oral morphine in pharmacy
[hcfac]
0..*
(COCT_MT070103)
typeCode*: <= FLFS
typeCode*: <= FLFS
0..* a_Substance_admin_intent
0..* a_Substance_administration_order
Pharmacy Administration Event
(N/A)
CMET: (ALRT)
A_Alert
triggerFor
0..* a_Substance_administration_proposal
[universal]
typeCode*: <= TRIG
0..* a_Alert (COCT_MT260000)
revisionOf / revision
0..* priorA_Substance_admin_intent
0..* a_Substance_administration_order
0..* a_Substance_administration_order
0..*
a_Substance_administration_order
component2
/
inFulfillmentOf3 / fulfillment3
componentOf
typeCode*: <= RVSN
revisionOf / revision
typeCode*: <= FLFS
typeCode*: <= COMP
typeCode*: <= COMP
Used as an entry-point for messages
related to Administration events
Note:
Administration instructions provided
at time of dispensing
0..1 priorA_Substance_administration_order
0..* priorA_Substance_administration_order
component2 /
componentOf
0..* a_Substance_admin_intent
component2 /
0..* a_Substance_admin_intent
componentOf
typeCode*: <= RVSN
typeCode*: <= COMP
0..1 a_Substance_admin_intent
trigger
typeCode*: <= TRIG
Pharmacy Supply Proposal
(N/A)
Used as an entry-point for messages
that propose the revision or replacement
of a supply order, independent of an
administration order. Generally used
for requests to extend prescription
end date or number of renewals
subject
A_Supply_proposal
classCode*: <= SPLY
typeCode*: <= SBJ
moodCode*: <= PRP
[universal]
time: (availability time)
(COCT_MT050000)
id: (defaults to Sub_admin_order.id)
code: <= ActPharmacySupplyType
(partial, trial, etc. - this would be used to
CMET: (ROL)
0..* participant
indicate
R_Location
authorization for trial/partial dispense)
destination
[hcfac]
text: (pharm. instructions)
(COCT_MT070103)
typeCode*: <= DST
0..*
effectiveTime:
(Earliest/last allowed dispense, frequency
1..*
manufacturedProduct
*
CMET: (MANU)
restrictions,
product
R_MaterialMedPackaged
etc.)
[universal]
confidentialityCode:
typeCode*: <= PRD
(COCT_MT220000)
repeatNumber: INT "1" (# refills + 1)
quantity*: PQ [1..1]
expectedUseTime: (days supply ordered)
typeCode*: <= VRF+SPV
time*: (verification or attestation)
modeCode:
signatureCode:
signatureText:
1..* patient
CMET: (PAT)
R_Patient
0..* participant
typeCode*: <= ENT
time: (time recorded)
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
(COCT_MT090101)
0..* participant
callBackContact
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
typeCode*: <= CBC
time: (availability time)
A_Supply_order
classCode*: <= SPLY
moodCode*: <= ORD
[universal]
(COCT_MT050000)
id: (defaults to Sub_admin_order.id)
code: <= ActPharmacySupplyType
(partial, trial, etc. - this would be used to
CMET: (ROL)
0..* participant
indicate
R_Location
authorization for trial/partial dispense)
destination
[hcfac]
text: (pharm. instructions)
(COCT_MT070103)
typeCode*: <= DST
0..*
effectiveTime:
(Earliest/last allowed dispense, frequency
1..* manufacturedProduct restrictions,
*
CMET: (MANU)
product
R_MaterialMedPackaged
etc.)
[universal]
typeCode*: <= PRD
confidentialityCode:
(COCT_MT220000)
repeatNumber: INT "1" (# refills + 1)
quantity*: PQ [1..1]
expectedUseTime: (days supply ordered)
R_Assigned_practitioner
dataEnterer
subject
(COCT_MT090102)
0..1 priorA_Supply_proposal
inFulfillmentOf2 / fulfillment
typeCode*: <= SBJ
time: (availability time)
typeCode*: <= FLFS
1..* patient
CMET: (PAT)
R_Patient
verifier
verifier
1..* patient
0..* participant
0..* a_Supply_order
0..* participant
0..* a_Supply_proposal
CMET: (PAT)
R_Patient
(COCT_MT050000)
dataEnterer
typeCode*: <= ENT
time: (time recorded)
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
0..* participant
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
typeCode*: <= FLFS
(COCT_MT090102)
0..1 priorA_Supply_order
CMET: (PAT)
R_Patient
[universal]
0..* participant
verifier
A_Supply_intent
classCode*: <= SPLY
moodCode*: <= INT
destination
id: (defaults to Sub_admin_order.id)
typeCode*: <= DST
code: <= ActPharmacySupplyType
(COCT_MT070103)
(partial, trial, etc. - this would be used to
0..*
1..* manufacturedProductindicate
*
CMET: (MANU)
authorization for trial/partial dispense)
product
R_MaterialMedPackaged
text: (pharm. instructions)
[universal]
typeCode*: <= PRD
effectiveTime:
(COCT_MT220000)
(Earliest/last allowed dispense, frequency
restrictions,
etc.)
confidentialityCode:
0..* a_Supply_intent repeatNumber: INT "1" (# refills + 1)
quantity*: PQ [1..1]
expectedUseTime: (days supply)
(COCT_MT090101)
callBackContact
0..1 priorA_Supply_order
typeCode*: <= CBC
inFulfillmentOf
time:
(availability time) / fulfillment2
typeCode*: <= SBJ
time: (availability time)
0..* participant
CMET: (ROL)
R_Location
[hcfac]
R_Assigned_practitioner
0..* participant
0..* a_Supply_intent
subject
[universal]
typeCode*: <= VRF+SPV
time*: (verification or attestation)
modeCode:
signatureCode:
signatureText:
typeCode*: <= VRF+SPV
time*: (verification or attestation)
modeCode:
signatureCode:
signatureText:
(COCT_MT050000)
CMET: (ROL)
R_Location
[hcfac]
R_Assigned_practitioner
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
0..* participant
dataEnterer
typeCode*: <= ENT
time: (time recorded)
(COCT_MT090101)
0..* participant
CMET: (ASSIGNED)
R_AssignedPerson
callBackContact
0..1 priorA_Supply_intent
typeCode*:
<= CBC
time:
(availability time) / fulfillment
inFulfillmentOf2
0..*
(COCT_MT070103)
CMET: (MANU)
R_MaterialMedPackaged
[universal]
1..* patient
subject
typeCode*: <= SBJ
time: (availability time)
A_Other_supply_ord
pertainsTo
typeCode*: <= PERT
0..* subjectA_ObservationAnnotation
CMET: (OBS)
A_ObservationAnnotation
[detailed]
(COCT_MT120401)
A_Formulary
0..* a_Formulary
classCode*: <= SPLY
moodCode*: <= DEF
id*: [1..*] (catalogue #)
definition
typeCode*: <= INST
Supply Order
classCode*: <= SPLY
moodCode*: <= ORD
id*: [1..*]
(N/A)
typeCode*: <= SUCC
0..* a_Other_supply_ord
product
typeCode*: <= PRD
(COCT_MT220000)
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
NOTE: This message is NOT used for
bulk-supply scenarios
[identified]
A_Other_supply_int
classCode*: <= SPLY
moodCode*: <= INT
id*: [1..*]
CMET: (OBS)
A_ObservationAnnotation
[detailed]
definition
pertainsTo
0..* priorA_Other_supply_int
predecessor
DISPENSE INTENT
typeCode*: <= PERT
0..* subjectA_ObservationAnnotation
A_Formulary
0..* a_Formulary
classCode*: <= SPLY
moodCode*: <= DEF
id*: [1..*] (catalogue #)
typeCode*: <= INST
Constraint:
0..* participant
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
Either 'qty' or
'expected_use_period'
must be present.
0..* priorA_Supply_order
R_Assigned_practitioner_or_device
0..1 priorA_Supply_order
CMET: (ASSIGNED)
R_AssignedPerson
(COCT_MT090102)
CMET: (ASSIGNED)
R_AssignedDevice
[identified]
(COCT_MT090302)
(COCT_MT270000)
(COCT_MT120401)
typeCode*: <= PERT
0..* subjectA_ObservationAnnotation
pertainsTo2
typeCode*: <= PERT
0..* subjectA_Confirmation
[detailed]
0..* a_Supply_order
0..* a_Supply_order
inFulfillmentOf1
Used as an entry-point for messages
that revise or create a supply intent,
independent of an administration intent.
typeCode*: <= FLFS
typeCode*: <= FLFS
0..1 priorA_Other_supply_ord
A_Other_supply_ord
classCode*: <= SPLY
moodCode*: <= ORD
id*: [1..*]
0..* participant
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
(COCT_MT090102)
0..* priorA_Supply_intent
R_Assigned_practitioner_or_device
typeCode*: <= RVSN
0..* a_Supply_intent
0..* participant
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
performer
receiver
typeCode*: <= PRF
signatureCode:
signatureText:
typeCode*: <= RCV
componentOf
typeCode*: <= COMP 0..* a_Encounter
CMET: (ASSIGNED)
R_AssignedPerson
CMET: (ENC)
A_Encounter
[detailed]
[identified]
(COCT_MT010101)
R_Assigned_practitioner_or_device
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
(COCT_MT090101)
0..* participant
(COCT_MT090102)
(COCT_MT090101)
CMET: (ASSIGNED)
R_AssignedPerson
[identified]
CMET: (ASSIGNED)
R_AssignedPerson
(COCT_MT090102)
(COCT_MT090102)
CMET: (ASSIGNED)
R_AssignedDevice
[identified]
(COCT_MT120401)
Either 'qty' or
'expected_use_period'
must be present.
R_Agent
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
(N/A)
revisionOf / revision
inFulfillmentOf3 / fulfillment3
CMET: (ASSIGNED)
R_AssignedPerson
CMET: (OBS)
[identified]
A_ObservationAnnotation
(COCT_MT090102)
[detailed]
DISPENSE EVENT
Constraint:
0..* participant
(COCT_MT090101)
typeCode*: <= RVSN
CMET: (AUTH)
A_Confirmation
[universal]
Either 'qty' or
'expected_use_period'
must be present.
definition
author
[detailed]
revisionOf / revision
CMET: (OBS)
A_ObservationAnnotation
[detailed]
Constraint:
CMET: (ASSIGNED)
R_AssignedPerson
(COCT_MT090101)
typeCode*: <= CBC
time: (availability time)
pertainsTo1
Supply Intent
R_Assigned_practitioner_or_device
(COCT_MT090101)
callBackContact
successor
typeCode*: <= SUCC
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
typeCode*: <= INST
CMET: (ASSIGNED)
R_AssignedPerson
[detailed]
typeCode*: <= ENT
time: (time recorded)
0..* a_Supply_event
typeCode*: <= SUCC
0..* a_Other_supply_int
(COCT_MT120401)
author
A_Formulary
R_Assigned_practitioner
0..* participant
dataEnterer
typeCode*: <= FLFS
typeCode*: <= SUCC
classCode*: <= SPLY
moodCode*: <= DEF
id*: [1..*] (catalogue #)
typeCode*: <= ASS+VRF+WIT+SPV
time*: (time of verification or attestation)
modeCode:
signatureCode:
signatureText:
(COCT_MT090102)
0..* a_Supply_event
typeCode*: <= PERT
0..* subjectA_ObservationAnnotation
predecessor
0..* a_Formulary
0..* participant
assistantPerformer
0..* participant
pertainsTo
DISPENSE ORDER
0..* priorA_Other_supply_ord
Used as an entry-point for messages
that revise or create a supply order,
independent of an administration order.
author
Used as an entry-point for messages
relating to dispense (supply) events
typeCode*: <= ORG+DST
Constraint:
DISPENSE PROPOSAL
(N/A)
origin
inFulfillmentOf1 / fulfillment1
Either 'qty' or
'expected_use_period'
must be present.
successor
Supply Event
A_Supply_event
classCode*: <= SPLY
moodCode*: <= EVN
code: <= ActPharmacySupplyType
(partial fill/trial/completion of trial, etc.)
effectiveTime*: TS (dispense time.)
confidentialityCode:
quantity*: PQ [1..1]
1..* manufacturedProduct * expectedUseTime: (days supply)
0..* participant
typeCode*: <= FLFS
0..* a_Supply_order
[identified]
(COCT_MT090102)
CMET: (ASSIGNED)
R_AssignedDevice
CMET: (ASSIGNED)
R_AssignedDevice
(COCT_MT090302)
(COCT_MT090302)
[identified]
[identified]
(COCT_MT090302)
0..* a_Sub_administration
assistantPerformer
0..* a_Substance_admin_event
typeCode*: <= INST
classCode*: <= SBADM
moodCode*: <= EVN
code*: <= ManufactureddrugTreatment
negationInd*: "False" (not administered)
text: ED
effectiveTime*: (admin. time)
priorityCode:
repeatNumber:
doseQuantity*: PQ
rateQuantity: PQ (e.g. 1 s)
Pharmacy DMIM 2003
Pharmacy Domain Model
PORX_DM000000 v11.1
Community Combined Order
Institutional Combined Order
(PORX_RM132000)
(PORX_RM232000)
Administration and Supply Order
in a community setting
Administration and Supply Order
in an institutional setting
20 March 2003
Institutional Administration Order
Updated to Rim 2.02
(PORX_RM212000)
Administration promise in an institutional setting
Institutional Administration Promise
(PORX_RM213000)
Administration promise in an institutional setting
Institutional Administration Event
(PORX_RM214000)
Administration event in an institutional setting
Note:
This Act represents the core of the act of
ordering a medication and administering to a
patient. It directly holds the route and dosage
instructions.
Note:
The patient who is going
to receive the medication
CMET: (PAT)
R_Patient
[universal]
1..* patient *
MedicationAdministration
subject
classCode*: <= SBADM
moodCode*: <= ActMood
id*:
text: (Summary of act)
effectiveTime:
activityTime:
availabilityTime:
priorityCode:
confidentialityCode: "N"
routeCode: <= RouteOfAdministration
approachSiteCode: <= ActSite
(Can't have this without a route)
doseQuantity:
rateQuantity:
doseCheckQuantity: SET<RTO<QTY,QTY>>
maxDoseQuantity: SET<RTO<QTY,QTY>>
typeCode*: <= SBJ
(COCT_MT050000)
0..* locatedEntity
destination
Note:
E.g. radioactive substance must
be administered in secured location,
oral morphine in pharmacy
Note:
The reason for the medfication order.
Eg Treatment of bronchitis
Note:
Need to redo diagnosis code
typeCode*: <= DST
0..* locatedEntity
CMET: (LOCE)
R_LocationLocatedEntity
[universal]
location
(COCT_MT070000)
0..* playedRole
typeCode*: <= LOC
ObservationIndication
0..* justifyingObservationIndication
classCode*: <= OBS
moodCode*: <= EVN
id: (used for future maintenance)
statusCode: (Complete, Superceded)
effectiveTime:
confidentialityCode:
value*: CE CWE [0..1] <= ObservationValue (e.g. ICD9)
targetSiteCode:
Note:
Eg: Use dose of 50mg
if pulse <40bpm
or
Give medication until
pain relieved
reason2
typeCode*: <= RSON
classCode*: <= OBS
moodCode*: <= EVN.CRT
code: CE CWE <= ObservationType
text*:
effectiveTime:
value:
CMET: (ENC)
A_Encounter
[universal]
(COCT_MT090100)
0..* participant
performer
typeCode*: <= PRF
signatureCode: <= ParticipationSignature
signatureText:
0..* assignedEntity
typeCode*: <= x_ParticipationVrfRespSprfWit
time*: (verification or attestation)
modeCode:
signatureCode:
signatureText:
(COCT_MT090300)
CMET: (ASSIGNED)
R_AssignedPerson
[universal]
Note:
Who confirmed the order or the admin
(COCT_MT090100)
Note:
Who entered the data saying
for the order or the admin
0..* assignedEntity
precondition
dataEnterer
typeCode*: <= PRCN
checkpointCode:
negationInd:
conjunctionCode:
typeCode*: <= ENT
0..* assignedEntity
Note:
Who should be called for clarification
typically the same as the Author.
author1
typeCode*: <= AUT
outcome
typeCode*: <= OUTC
checkpointCode:
negationInd:
conjunctionCode:
0..* a_SubstanceAdminMaster
definition
componentOf1
Note:
Used to refererence
pharmacy protocols
governing how a drug
should be prescribed/ Note:
Intended to identify problems or
administered.
warnings associated with an Act
that have previously been evaluated
and discounted.
A_SubstanceAdminMaster
classCode*: <= SBADM
moodCode*: <= DEF
id*: [1..*] (catalogue #)
typeCode*: <= INST
typeCode*: <= COMP
(COCT_MT010000) 0..* encounter
0..* pertinentObservationDx
pertinentInformation
triggerFor
typeCode*: <= PERT
typeCode*: <= TRIG
0..* alert
(COCT_MT120104)
Note:
Observations that support
the decision on which medication
or what dose to use.
Eg Body weight, Surface Area,
Allergies, Medical conditions
Note:
Who gave the medication
to the patient, typically unused in
community and a nurse in
secondary care
CMET: (ASSIGNED)
R_AssignedDevice
[universal]
overseer
0..* outcomeObservationCriteria
CMET: (OBS)
A_ObservationDx
[minimal]
Note:
Who wrote the order,
typically a doctor
AssignedPractitionerOrDevice
CMET: (ASSIGNED)
R_AssignedPerson
[universal]
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
0..* observationCriteria
ObservationCriteria
Note:
The header for the visit
to the primary care physician
or a particular hospital stay.
Includes information on the
relevant financial account
1..* participant *
author2
This CMET is missing at present
and the mechanism will not work.
CMET: (ALRT)
A_Alert
[universal]
(COCT_MT260000)
0..* medication
Medication
consumable
classCode*: <= MANU
typeCode*: <= CSM
inFulfillmentOf
typeCode*: <= FLFS
Note:
Allows relation of different
moods of the act.
0..* medicationAdministrationInstructions
0..* priorMedicationAdministration
component1
typeCode*: <= COMP
predecessor
Note:
Allows for modeling revision
of an order
1..1 manufacturedMedication
MedicationAdministrationInstructions
CMET: (MMAT)
E_Medication
[universal]
(COCT_MT231000)
classCode*: <= SBADM
moodCode*: <= ActMood
text: (Additional free text instructions)
typeCode*: <= SUCC
Note:
The medication ordered or administered
to the patient.
Eg Amoxicillin 250mg Tablets.
Note:
See Q&A 31
0..* priorMedicationAdministration
component / componentOf2
Note:
Links together a series of
orders or administrations that form
part of a series whether scheduled
or not or where an order fulfills part
of a previous order.
typeCode*: <= COMP
Will normally be specialised to Kind
0..* medicationAdministration1
pertainsTo
0..* medicationAdministration2
0..1 justifiedMedicationAdministration *
typeCode*: <= PERT
reason1 /
reasonOf
typeCode*: <= RSON
Also used for complex doses, or
multiple routes.
0..* justifyingMedicationSupply *
Note:
For a supply, where the supply
came from and where it was sent to.
Eg Pharmacy, Ward
0..* playedRole
(COCT_MT070000)
destination
typeCode*: <= DST
0..* pertinentCoverage
typeCode*: <= PERT
classCode*: <= SPLY
moodCode*: <= ActMood
id: (defaults to Sub_admin_order.id)
code: <= ActPharmacySupplyType
(partial, trial, etc. - this would be used to indicate authorization
for
trial/partial dispense)
text: (pharm. instructions)
effectiveTime: (Earliest/last allowed dispense, frequency
restrictions, etc.)
confidentialityCode:
repeatNumber: INT "1" (ie this is issue 3 (of 5))
quantity*: [1..1]
expectedUseTime: (days supply ordered)
0..* locatedEntity
CMET: (LOCE)
R_LocationLocatedEntity
[universal]
0..* locatedEntity
0..* participant
author2
AssignedPractitionerOrDevice
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
CMET: (ASSIGNED)
R_AssignedPerson
[universal]
CMET: (ASSIGNED)
R_AssignedPerson
[universal]
Note:
Who wrote the supply request
typically the doctor who wrote
the medication order,
but could also be a nurse
or ward pharmacist
(COCT_MT090100)
0..* participant
performer
typeCode*: <= PRF
signatureCode: <= ParticipationSignature
signatureText:
CMET: (ASSIGNED)
R_AssignedDevice
[universal]
(COCT_MT090300)
origin
typeCode*: <= ORG
0..* assignedEntity
Note:
Who will receive the supply.
It may be the patient, a carer.
Note:
Identifies information about an eligibility
check or authorization that has been
received in relation to an action. It is initiated
from the Supply and provides confirmation
back to the SubstanceAdministration
pertinentInformation
MedicationSupply
Note:
Changed from
COCT_MT070103, but is
the the correct CMET?
CMET: (COV)
A_Coverage
[universal]
0..* subjectCoverage (COCT_MT180000)
0..* assignedEntity
overseer
receiver
typeCode*: <= x_ParticipationVrfRespSprfWit
modeCode:
signatureCode:
signatureText:
typeCode*: <= RCV
(COCT_MT090100)
CMET: (ASSIGNED)
R_AssignedPerson
[universal]
Note:
Who confirmed the supply
typically a pharmacist
(COCT_MT090100)
0..* assignedEntity
dataEnterer
Note:
Who entered the data saying
what the supply is
typeCode*: <= ENT
Note:
The formulary which governs
what can be supplied
Formulary
0..* formulary
classCode*: <= SPLY
moodCode*: <= DEF
id*: [1..*] (catalogue #)
definition
author1
typeCode*: <= INST
typeCode*: <= AUT
0..* assignedEntity
Note:
Who should be called for clarification
typically the same as the Author.
Will normally be specialised to instance
1..* aRole *
product
Note:
Allows relation of different
moods of the act.
inFulfillmentOf
Note:
The medication that is being supplied
eg Amoxil 250mg tables, 56 tablets
MedicationDispensed
classCode*: <= MANU
typeCode*: <= PRD
typeCode*: <= FLFS
1..1 manufacturedMedication
0..* priorMedicationSupply
CMET: (MMAT)
E_Medication
[universal]
(COCT_MT231000)
Note:
Allows for modeling revision
of an order
predecessor
typeCode*: <= SUCC
0..* priorMedicationSupply
Note:
Links together a series of
supply acts that form
part of a series whether scheduled
or not or where an order fulfills part
of a previous order.
component / componentOf
typeCode*: <= COMP
0..* medicationSupply1
Note:
This act represents the act of supplying
medication to a patient or their representative.
It does NOT deal with administering it to the patient.
0..* medicationSupply2
Community Supply Event
(PORX_RM124000)
Supply Event in a community setting
Institutional Supply Order
Institutional Supply Event
(PORX_RM224000)
Supply event in an institutional setting
Institutional SupplyPromise
(PORX_RM222000)
(PORX_RM223000)
Supply promise in an institutional setting
Supply promise in an institutional setting
Pharmacy Combined Order RMIM 2004
MedicationAdministrationRequest
Community Combined Request - RMIM
PORX_RM132000
0..* locatedEntity
20th March 2004
Note:
E.g. radioactive substance must
be administered in secured location,
oral morphine in pharmacy
Updated to Rim 2.01
Note:
The patient who is going
to receive the medication
1..* patient *
CMET: (PAT)
R_Patient
[universal]
subject
(COCT_MT050000)
Note:
The header for the visit
to the primary care physician
or a particular hospital stay.
Includes information on the
relevant financial account
typeCode*: <= SBJ
typeCode*: <= DST
0..* locatedEntity
location
(COCT_MT070000)
0..* playedRole
typeCode*: <= LOC
Note:
Who wrote the order,
typically a doctor
PrescriptionHeader
classCode*: <= SBADM
moodCode*: <= RQO
id*: [1..1]
text:
destination
CMET: (LOCE)
R_LocationLocatedEntity
[universal]
Note:
This Act represents the core of the act of
ordering a medication and administering to a
patient. It directly holds the route and dosage
instructions.
classCode*: <= SBADM
moodCode*: <= RQO
id*: (placer number, etc.)
text:
(Summary of act - special instructions are in a
separate component act..)
statusCode*: "ACTIVE"
effectiveTime:
priorityCode:
confidentialityCode: "N"
routeCode: <= RouteOfAdministration
approachSiteCode: <= ActSite
(Must have a route to go with)
doseQuantity:
rateQuantity:
doseCheckQuantity: SET<RTO<QTY,QTY>>
maxDoseQuantity: SET<RTO<QTY,QTY>>
1..* assignedEntity *
author
typeCode*: <= AUT
time*: (time of creation)
modeCode:
signatureCode:
signatureText:
CMET: (ASSIGNED)
R_AssignedPerson
[universal]
(COCT_MT090100)
Note:
The medication to be administered
to the patient.
Eg Amoxicillin 250mg Tablets
0..* medication
CMET: (ENC)
A_Encounter
[universal]
therapeuticAgent
componentOf
Medication
typeCode*: <= TPA
typeCode*: <= COMP
classCode*: <= MANU
(COCT_MT010000) 0..* encounter
PriorMedicationAdministrationRequest
Note:
Allows for modeling revision
of an order
classCode*: <= SBADM
moodCode*: <= RQO
id*: [1..1]
CMET: (MMAT)
E_Medication
1..1 manufacturedMedication [identifiedKind]
(COCT_MT231101)
0..* priorPriorMedicationAdministrationRequest
predecessor
typeCode*: <= SUCC
0..* medicationAdministrationInstructions
component
Note:
Observations that support
the decision on which medication
or what dose to use.
Eg Body weight, Surface Area,
Allergies, Medical conditions
CMET: (OBS)
A_ObservationDx
[minimal]
(COCT_MT120104)
typeCode*: <= COMP
0..* pertinentObservationDx
classCode*: <= SBADM
moodCode*: <= RQO
text: (Additional free text instructions)
0..* medicationAdministrationRequest
pertinentInformation
typeCode*: <= PERT
MedicationAdministrationInstructions
component
typeCode*: <= COMP
pertainsTo
typeCode*: <= PERT
0..* subjectCoverage
reason
CMET: (COV)
A_Coverage
[universal]
(COCT_MT180000)
typeCode*: <= RSON
0..* justifyingMedicationSupply * 0..* pertinentCoverage
MedicationSupply
CombinedCommunityRequest
(PORX_RM132000)
Administration and Supply Order
in a community setting
0..* locatedEntity
PriorPrescriptionHeaderRequest
Note:
Allows for modeling revision
of an order
classCode*: <= SBADM
moodCode*: <= RQO
id*: [1..1]
0..* priorPriorPrescriptionHeaderRequest
predecessor
Note:
For a supply, where the supply
came from and where it was sent to.
Eg Pharmacy, Ward
CMET: (LOCE)
R_LocationLocatedEntity
[universal]
0..* playedRole
(COCT_MT070000)
typeCode*: <= SUCC
destination
Note:
Identifies information about an eligibility
check or authorization that has been
received in relation to an action. It is initiated
from the Supply and provides confirmation
back to the SubstanceAdministration
pertinentInformation
typeCode*: <= PERT
classCode*: <= SPLY
moodCode*: <= RQO
id:
code: <= ActPharmacySupplyType
(partial, trial, etc. - this would be used to indicate
authorization for trial/partial dispense)
text: (pharm. instructions)
effectiveTime: (Date & time of dispensing)
confidentialityCode:
repeatNumber: INT "1" (ie this is issue 3 (of 5)
quantity*: [1..1]
expectedUseTime: (days supply ordered)
typeCode*: <= DST
0..* locatedEntity
origin
typeCode*: <= ORG
0..* assignedEntity
verifier
0..* assignedEntity
Note:
Who receives the supply.
It may be the patient, a carer.
CMET: (ASSIGNED)
R_AssignedPerson
[universal]
receiver
typeCode*: <= RCV
[universal]
(COCT_MT090100)
(COCT_MT090100)
0..* medicationSupplyInstructions
component
typeCode*: <= COMP
MedicationSupplyInstructions
classCode*: <= SPLY
moodCode*: <= RQO
text: (Additional free text instructions)
1..* medicationDispensed *
Note:
Allows for modeling revision
of an order
Note:
Who confirmed the supply
typically a pharmacist
CMET: (ASSIGNED)
R_AssignedPerson
typeCode*: <= VRF
modeCode:
signatureCode:
signatureText:
PriorMedicationSupplyOrder
0..* priorPriorMedicationSupplyOrder
classCode*: <= SBADM
moodCode*: <= RQO
id*: [1..1]
predecessor
product
MedicationDispensed
typeCode*: <= PRD
classCode*: <= MANU
1..1 manufacturedMedication
Note:
The medication that is being supplied
eg Amoxil 250mg tables, 56 tablets
CMET: (MMAT)
E_Medication
[identifiedInstance]
(COCT_MT231201)
typeCode*: <= SUCC
Note:
This act represents the act of supplying
medication to a patient or their representative.
It does NOT deal with administering it to the patient.
NPfIT MIM 3.1.01 – Parent Prescription
OriginalPrescription
classCode*: <= SBADM
moodCode*: <= EVN
id*: II [1..1]
1..1 originalPrescription *
OriginalItem
0..1 priorOriginalItem *
component
classCode*: <= SBADM
moodCode*: <= RQO
id*: II [1..1]
inFulfillmentOf
typeCode*: <= COMP
typeCode*: <= FLFS
CMET: (ENC)
A_Encounter
[identifiedETP]
Constraint:
Repeat
prescriptions
only
Constraint:
MedicationAdministrationRequest
componentOf
typeCode*: <= COMP
(COCT_MT010011UK02) 0..* encounter
Provides an alternative to
the coded form
classCode*: <= SBADM
moodCode*: <= RQO
id*: II [1..1] (item ID)
effectiveTime: GTS [0..1]
routeCode: CV CNE [0..1] <= SnomedRouteOfAdministration
(VOCAB VARIANT)
approachSiteCode: CV CNE [0..1] <= SnomedActSite
(Must have a route to go with ) (VOCAB VARIANT)
doseQuantity: IVL<PQ> [0..1]
rateQuantity: IVL<PQ> [0..1]
DoseInstructions
1..1 doseInstructions *
component1
typeCode*: <= COMP
classCode*: <= SBADM
moodCode*: <= RQO
code*: CV CNE [1..1] <= PrescriptionAnnotation ""DI""
text*: ST [1..1]
PrescriptionHeader
1..1 patient *
subject
CMET: (PAT)
R_Patient
[identifiedETP]
typeCode*: <= SBJ
1..1 assignedEntity *
classCode*: <= SBADM
moodCode*: <= RQO
id*: II [1..1] (Prescription ID)
code*: CV CNE [1..1] <= PrescriptionType
reasonCode*: CV CNE [1..1] <= PrescriptionTreatmentType
(NEW VOCAB)
author
typeCode*: <= AUT
time*: TS [1..1] (time of creation)
signatureText*: ED [1..1]
CMET: (ASSIGNED)
R_AssignedPerson
[prescriber]
(COCT_MT090110UK02)
0..1 assignedEntity
(COCT_MT050012UK02)
legalAuthenticator
typeCode*: <= LA
time*: TS [1..1]
signatureText*: ED [1..1]
1..1 medication *
therapeuticAgent
typeCode*: <= TPA
Medication
classCode*: <= MANU
1..1 manufacturedMedicationKind *
CMET: (MMAT)
E_MedicationKind
[identifiedKind]
(COCT_MT230101UK02)
1..* medicationAdministrationRequest *
component
ParentPrescription
(PORX_RM132004UK03)
typeCode*: <= COMP
Administration and Supply Order
in a community setting
MedicationAdministrationInstructions
Constraint:
Relevant only for
Repeat Dispensing Prescriptions
absent otherwise
Constraint: Cardinality
0..* medicationAdministrationInstructions
1..32
0..1 reviewDate
component1
typeCode*: <= COMP
component3
ReviewDate
typeCode*: <= COMP
classCode*: <= OBS
moodCode*: <= INT
effectiveTime*: TS [1..1]
reasonOf
Constraint: Medication Update
Constraint: Medication Update
Required for Parent
prescription but not for
Medication Update
1..2 pertinentExemptionStatus
pertinentInformation
typeCode*: <= PERT
Constraint:
repeatNumber,
eEffectiveTime,
ExpectedUseTime:
Mandatory for
Repeat Dispensing Prescriptions
absent otherwise
0..1 justifiedMedicationSupplyHeader
MedicationSupplyHeader
classCode*: <= SPLY
moodCode*: <= RQO
effectiveTime: IVL<TS> [0..1]
repeatNumber: IVL<INT> [0..1]
expectedUseTime: IVL<TS> [0..1]
1..1 agent *
performer
typeCode*: <= PRF
Constraint: repeatNumber
Agent
classCode*: <= AGNT
1..1 agentOrganization *
Organization
classCode*: <= ORG
determinerCode*: <= INSTANCE
id*: II [1..1] (OCS code)
1..1 justifiedMedicationSupply *
MedicationSupply
typeCode*: <= RSON
classCode*: <= OBS
moodCode*: <= EVN
id*: II [1..1]
code: CV CNE [0..1] <= ExemptionDateType
(NEW VOCAB)
value*: TS [1..1]
typeCode*: <= RSON
Required for Parent
prescription but not for
Medication Update
reasonOf
ExemptionStatus
classCode*: <= SBADM
moodCode*: <= PRMS
code*: CV CNE [1..1] <= PrescriptionAnnotation
"AI"
text*: ST [1..1] (Additional free text instructions)
For Repeat
Prescriptions use low and high value,
for Repeat dispensing use only high value,
for acutes doo not use.
classCode*: <= SPLY
moodCode*: <= RQO
repeatNumber: IVL<INT> [0..1]
quantity*: PQ [1..1]
expectedUseTime: IVL<TS> [0..1] (days supply ordered)
0..* pertinentEndorsement
pertinentInformation
typeCode*: <= PERT
Endorsement
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation ""PE" or "JU""
text: ST [0..1]
value: CV [0..1] <= PrescriberEndorsement
NPfIT MIM 3.1.06 – Parent Prescription
Constraint: repeatNumber
Note:
PoC Event that resulted in this
prescription being generated
Absent for Acute Prescriptions
Mandatory otherwise
Prescription
classCode*: <= SBADM
moodCode*: <= RQO
id*: LIST<II> [2..2]
(1 Prescription ID, 2 Prescription ID + Check Digit)
typeCode*: <= PERT code*: CD CNE [1..1] <= SnomedCT-Administration
inversionInd*: BL [1..1] "false" (Fixed) repeatNumber: IVL<INT> [0..1]
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
1..1 pertinentDispensingSitePreference *
DispensingSitePreference
pertinentInformation1
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation "DSP" (Fixed)
value*: CV [1..1] <= DispensingSitePreference
1..1 pertinentCareEventRef
pertinentInformation6
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "false" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
templateId*: II [1..1] "CSAB_RM-NPfITUK10.sourceOf1"
CareEventRef
classCode*: <= ACT
moodCode*: <= ActMood
id*: II [1..1]
Note:
Add PTT & PT to PrescriptionAnnotation Vocab
1..1 pertinentPrescriptionTreatmentType *
pertinentInformation5
Note:
As this CMET carries the Patient ID
it is a valid according to the CSMP
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
Parent Prescription
(PORX_RM132004UK04)
Description
(COCT_MT050012UK04)
1..1 patient *
recordTarget
typeCode*: <= RCT
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
1..1 pertinentPrescription *
ParentPrescription
CMET: (PAT)
R_Patient
[identifiedETP]
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation "PTT" (Fixed)
value*: CV [1..1] <= PrescriptionTreatmentType
1..1 pertinentPrescriptionType *
pertinentInformation4
0..1 roleName
PrescriptionTreatmentType
classCode*: <= INFO
moodCode*: <= EVN
id*: II [1..1]
code*: CD CNE [1..1] <= SnomedCT
effectiveTime*: TS [1..1]
PrescriptionType
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation "PT" (Fixed)
value*: CV [1..1] <= PrescriptionType
Note:
Charlie to add effective time to
statement commentary (change name?)
pertinentInformation1
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
templateId*: II [1..1] "CSAB_RM-NPfITUK10.pertinentInformation"
0..1 pertinentTemporaryExemptionInfo
pertinentInformation3
TemporaryExemptionInfo
Constraint:
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation "EX" (Fixed)
effectiveTime*: IVL<TS> [1..1]
value*: CV [1..1] <= PrescriptionChargeExemption
Relevant only for
Repeat Dispensing Prescriptions
absent otherwise
pertinentInformation2
0..1 pertinentReviewDate
typeCode*: <= PERT
templateId*: II [1..1] "CSAB_RM-NPfITUK10.pertinentInformation1"
1..1 pertinentCareRecordElementCategory
Note:
Nominated Pharm
CareRecordElementCategory
classCode*: <= CATEGORY
moodCode*: <= EVN
code*: CV CNE [1..1] <= CREType
Constraint:
pertinentInformation11
ReviewDate
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation "RD" (Fixed)
effectiveTime*: TS [1..1]
Repeat
prescriptions
only
0..1 priorOriginalPrescriptionRef
inFulfillmentOf
component
0..1 participant *
typeCode*: <= COMP
1..* actRef
ActRef
CMET: (ROL)
R_AgentNPFITOrganizationSDS
[universal]
(UKCT_MT120501UK02)
classCode*: <= ACT
moodCode*: <= ActMood
id*: II [1..1]
typeCode*: <= FLFS
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "false" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
templateId*: II [1..1] "CSAB_RM-NPfITUK10.sourceOf1"
performer
typeCode*: <= PRF
contextControlCode*: CS CNE [1..1] <= OP
(UKCT_MT120201UK02)
classCode*: <= SBADM
moodCode*: <= RQO
id*: II [1..1]
LineItem
1..1 participant *
CMET: (ROL)
R_AgentNPFITPerson
[universal]
Note:
Dose Instructions
will be here in the original
text part of the CD code
OriginalPrescriptionRef
author
typeCode*: <= AUT
contextControlCode*: CS CNE [1..1] <= OP
time*: TS [1..1] (time of creation)
signatureText*: ED [1..1]
1..* pertinentLineItem *
pertinentInformation2
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
templateId*: II [1..1] "CSAB_RM-NPfITUK10.sourceOf2"
1..1 participant *
responsibleParty
typeCode*: <= RESP
contextControlCode*: CS CNE [1..1] <= OP
classCode*: <= SBADM
moodCode*: <= RQO
id*: II [1..1] (item ID)
code*: CD CNE [1..1]
<= SnomedCT-Administration
(Route of and approach site)
effectiveTime: GTS
(3 times a day etc.)
repeatNumber: IVL<INT>
doseQuantity: IVL<PQ>
rateQuantity: IVL<PQ>
Constraint:
Repeat
prescriptions
only
0..1 priorOriginalItemRef
inFulfillmentOf
typeCode*: <= FLFS
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "false" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
templateId*: II [1..1] "CSAB_RM-NPfITUK10.sourceOf1"
OriginalItemRef
classCode*: <= SBADM
moodCode*: <= RQO
id*: II [1..1]
1..1 pertinentDosageInstructions *
0..1 participant
legalAuthenticator
typeCode*: <= LA
contextControlCode*: CS CNE [1..1] <= OP
time*: TS [1..1]
signatureText*: ED [1..1]
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
pertinentInformation1
AdditionalInstructions
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation "AI" (Fixed)
value*: ST [1..1] (Additional Instructions)
1..1 manufacturedProduct *
product
typeCode*: <= PRD
contextControlCode*: CS CNE [1..1]
<= ContextControl "OP"
ManufacturedProduct
classCode*: <= MANU
0..1 pertinentDaysSupply
Constraint: expectedUseTime
optionional but
only for Repeat Dispensing
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation "DI" (Fixed)
value*: ST [1..1] (Dose Instructions)
0..1 pertinentAdditionalInstructions
pertinentInformation7
Constraint: effectiveTime
DosageInstructions
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
Constraint: repeatNumber
For Repeat
Prescriptions use low and high value,
for Repeat dispensing use only high value,
for acute do not use.
Mandatory for
Repeat Dispensing Prescriptions
absent otherwise
pertinentInformation4
DaysSupply
1..1 manufacturedRequestedMaterial
classCode*: <= SPLY
moodCode*: <= RQO
effectiveTime*: IVL<TS> [1..1] (Dispensing window)
expectedUseTime*: IVL<TS> [1..1] (Prescription duration)
RequestedMaterial
classCode*: <= MMAT
determinerCode*: <= KIND
code*: CE CNE [1..1] <= ManufacturedMaterialSnCT
0..* pertinentPrescriberEndorsement
pertinentInformation3
PrescriberEndorsement
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
classCode*: <= OBS
moodCode*: <= EVN
code*: CV CNE [1..1] <= PrescriptionAnnotation "PE" (Fixed)
text: ST
value*: CV [1..1] <= PrescriberEndorsement (Justification)
pertinentInformation2
typeCode*: <= PERT
inversionInd*: BL [1..1] "false" (Fixed)
contextConductionInd*: BL [1..1] "true" (Fixed)
negationInd*: BL [1..1] "false" (Fixed)
seperatableInd*: BL [1..1] "true" (Fixed)
1..1 pertinentLineItemQuantity *
LineItemQuantity
classCode*: <= SPLY
moodCode*: <= RQO
code*: CD CNE [1..1] <= SnomedCT-Supply
quantity*: PQ [1..1]
Note:
The quantity can be
either days to supply
or amount
Development & Harmonisation
Pharmacy DMIM 2002
Pharmacy DMIM 2003
Pharmacy RMIM 2004
Toronto Harmonisation Meeting
Pharmacy DMIM 2005
Do Domains Matter?
•
•
dotORG Ballot
Admin Management
– Account Billing
– Claims & Reimbursement
– Patient Administration
– Personnel Management
– Scheduling
Health & Clinical Management
– CDA
– Blood Bank
– Laboratory
– Clinical Genomics
– Medical Records
– Care Provision
– Pharmacy
– Public Health reporting
– Informative Public Health Specs
– Regulated Studies
– Therapeutic Devices
UK MIM
Mainstream
• Accident & Emergency
• Diagnostic Imaging
• eBooking
• Emergency Admissions
• GP2GP
• Medication Management
• Mental Health
• NHS Direct
• OOP Appointments
• Out of Hours
• Provision of Care
• Single Assessment
Challenges for HL7
• Absorbing new domains
• Making ballot processes work
• Defining conformance