HL7 Version 3
Veli BICER
Agenda• HL7• Problems with Version 2.x• HL7 Models• Use Case Model• Information Model• Interaction Model• Message Model
HL7• founded in 1987• To provide standards for the exchange,
management and integration of data that supports clinical patient care and the management, delivery and evaluation of healthcare services.
Problems with version 2.x• Problem: misunderstanding of specifications• Result: Different implicit information models• Problem: Misleading conformance claims• Result: No vocabulary to describe
conformance concepts
Problems with version 2.x• Implicit information model, not explicit• Need for controlled vocabularies• No explicit support for object
technologies• No explicit support for security functions• Optionality is ubiquitous and
troublesome
Contents of HL7 V2.3• Trigger events
– Actions or occurrences• Messages
– Information content• Segments
– Repeating structures• Data elements
– Data representation
HL7 Version 3.X Specification• Version 3 Methodology - MDF• Conformance Claims• to improve the internal consistency of
HL7
HL7 Models• A model is a collection of subject areas,
scenarios, classes, attributes, use cases, actors, trigger events, interactions, etc. that depict the information needed to specify HL7 Version3 messages.
• HL7 models are further divided into four specific models - a use case model, an information model, an interaction model, and a message design model.
HL7 Models
Use Case Model
Use Case Model• Describes specific situations in which
communication between healthcare entities is needed.
Information Model
Information Model• A detailed and precise definition for the
information from which all data content of HL7 messages are drawn.
• Classes, Attributes, and Relationships– Documented in the Reference Information Model,
the Domain Information Model, and the Message Information Model
• State Transition Models for certain selected classes.
• Data Types and Constraints.
Reference Information Model (RIM)
• Root of all information models.• Provides a static view of the information.• A HL7-wide common reference model that
integrates all Technical Committees’ domain views.
• Committees and SIGs generally work with a small subset of the RIM - called Domain Information Model or DIM.
Reference Information Model (RIM)
• Foundation Classes– Acts– Entities– Roles
• Communication Infrastructure – Core Infrastructure– Message Communications Control– Structured Documents
Reference Information Model (RIM)
Reference Information Model (RIM)
Reference Information Model (RIM)
Interaction Model
Interaction Model• Specifies all Trigger Events and
Message Flows.• Specifies the Application Roles.
Interaction Model• Each Interaction consists of:
– Trigger event• Initiators of Interactions.
– Message ID • Each interaction sends one particular message
– Sender role• When trigger event detected, message is sent
– Receiver role• Receiver responsibility
Interaction ModelEncounter_manager :
AR_Encounter_Encounter_tracker :
AR_Encounter_Encounter_archivist :
AR_Encounter_
1: schedule_encounter
4: admit_patient
5: admit_patient
7: activate_scheduled_encounter
8: activate_scheduled_encounter (tid)
2: delete_scheduled_encounter
13: discharge_patient (tid)
3: admit_patient
6: activate_scheduled_encounter
9: delete_active_encounter (tid)
10: delete_active_encounter (tid)
11: delete_active_encounter (tid)
12: discharge_patient (tid)
14: discharge_patient (tid)
15: cancel_discharge (tid)
16: cancel_discharge (tid)
17: cancel_discharge (tid)
Application Role -identifies an information management responsibility for one of the subject classes. Responsibilities typically are: Creator, Manager, Tracker and Archivist.
Healthcare applications are assumed to take on one or more application roles.
Interaction
Interaction ModelInteraction ID PA231 PA232
Interaction Name Send Registration toTrackers
Send Registration toArchivists
Trigger Event Name Patient Registers forEncounter
Patient Registers forEncounter
Event Dependency Account must be in theunregistered orpregistered state
Account must be in theunregistered orpregistered state
Message ID A01 A02
Sender Encounter Manager Encounter Manager
Receiver Encounter Tracker Encounter Archivist
ReceiverResponsibility
Message Model
Message Specification
Domain Information Model
Message Information Model
Reference Information Model
Interaction ModelHierarchical
Message Description
Use Case Model
Inpatient_encounteractual_days_qtyestimated_days_qtyPatient_admission
admis sion_dttmadmis sion_reas on_cdadmis sion_referral_cdadmis sion_source_cdadmis sion_type_cdpre_admit_test_indreadm ission_ind
1
1is_preceded_by
1
preceded
1
Encounter_practitionerparticipation_type_cdPerson_as_IHCP
phon : TIL
Person_name_for_IHCPcd : CVpurpose_cd : CVtype_cd : CVnm : PN
1
1
has1
is_for
1
Patient_billing_accountid : TIIstatus_cd : CVbilling_s tatus_cd : CVpatient_financial_class_cd : CVprice_s chedule_id : TII
Patient_encounterid : TIIstatus_cd : CVencounter_classification_cd : CVstart_dttmend_dttmexpected_ins urance_plan_qty : NMfi rst_sim ilar_illness_dttm
1..*
1
is_associated_with
1..*
has_as_participant 1Individual_healthcare_practitioner
id : TII
0..*
1
is_participant_for 0..*
participates_as1
1
1
is_a_ro le_of1
takes_on_role_of1
Patientid : TIIsta tus _cd : CVnewborn_baby_indmultip le_birth_indorgan_donor_ind
0..1
1
belongs_to
0..1
has1
1
1
involves
1
is _involved_in
1
0..*
0..1
has_a_primary_provider0..*
is_the_primary_provider_for0..1Person_as_Patientbirth_dttm : TSbirthplace_addr : STdeceas ed_dttm : TSeducation_level_cd : CVgender_cd : CVmarital_s tatus_cd : CVrace_cd : CVreligious_affiliation_cd : CVphon : TIL
1..1
1..1
is_a_role_of
1..1
takes _on_role_of1..1
Person_name_for_Patientnm : PNeffective_dt : TScd : CVpurpose_cd : CVtermination_dt : TStype_cd : CV
1
1..*
has
1
is_for1..*
Exactly one occurrence
Subset the RIM MIM• The RIM must first be refined by subsetting
and constraining it– Create a MIM with RIM classes needed– Develop an R-MIM from these classes
• Collection of classes with some constraints• Collection of attributes and associations to
support the R-MIM
Organizationorganization_name_type_cdorganization_nmstandard_industry_class_cd
0..*
0..1
is_a_subdivision_of0..*
has_as_a_subdivision0..1
Personbirth_dttmbirthplace_addrcitizenship_country_cdconfidentiality_constraint_cddeceased_dttmdeceased_inddisability_cdeducation_level_cdethnic_group_cdadministrative_gender_cdlanguage_cdmarital_status_cdmilitary_branch_of_service_cdmilitary_rank_nmmilitary_status_cdnationality_cdrace_cdreligious_affiliation_cdstudent_cdvery_important_person_cdstatus_cdambulatory_status_cdidhispanic_indbirth_order_nbrliving_arrangement_cdliving_dependency_cdmultiple_birth_indorgan_donor_indpreferred_pharmacy_id
Person_nameeffective_dtcdnmpurpose_cdtermination_dttype_cd
1
0..*
has1
is_for0..*
Stakeholder_affiliationaffiliation_type_cddesceffective_dttermination_dt
Stakeholderaddrcredit_rating_cdemail_address_txtphontype_cdreal_id : SET<RWII>id : SET<II>
0..*1 has_as_primary_participant
0..*participates_as_primary_in1
0..*1 has_as_secondary_participant
0..*participates_as_secondary_in1
RIMcontent
Individual_representativedues_current_ind : BL
Organizational_representative
Organizationorganization_nm : ST
0..*
1..1
sponsored_by0..*
sponsors1..1
0..*
0..1
is_a_subdivision_of
0..*
has_as_a_subdivision0..1
Stakeholderaddr : STemail_address_txt : TELid : SET<II>
Stakeholder_affiliationaffiliation_type_cd : CD
1..1
0..*participates_as_primary_in1..1 has_as_primary_participant
0..*
1..10..*participates_as_secondary_in
1..1 has_as_secondary_participant0..*
Proposed_itemballot_period_tmr : IVL<TS>content_txt : EDstandard_level_ind : BL
0..*
1..1
proposed_by
0..*
proposes1..1
Ballotcomments_txt : STdttm : TSvote_cd : CV
0..*
1..1
votes_on
0..*
receives_votes1..1
Voting_memberdraft_level_voting_ind : BLstandard_level_voting_ind : BL
0..*
1..1
cast_by
0..*
casts1..1
Personeducation_level_cd : CD
0..*
1..1
is_role_of0..*
has_as_role1..1
Person_namenm : STtype_cd : CD
1..1
0..*
has1..1
is_for0..*
MIMcontent
(a proper subsetof the RIM)
Fewerattributes
Convert the MIM R-MIM• Constrain cardinality on Associations• Constraints on Attributes
– Some may be left out– Sub-components may be individually constrained
• Classes are duplicated for different uses• May modify the Inheritance structure
– Some specializations may subsume the generalization
– Always inherit downwards to specializations
Individual_representativedues_current_ind : BL
Organizational_representative
Organizationorganization_nm : ST
0..*
1..1
sponsored_by0..*
sponsors1..1
0..*
0..1
is_a_subdivision_of
0..*
has_as_a_subdivision0..1
Stakeholderaddr : STemail_address_txt : TELid : SET<II>
Stakeholder_affiliationaffiliation_type_cd : CD
1..1
0..*participates_as_primary_in1..1 has_as_primary_participant
0..*
1..10..*participates_as_secondary_in
1..1 has_as_secondary_participant0..*
Proposed_itemballot_period_tmr : IVL<TS>content_txt : EDstandard_level_ind : BL
0..*
1..1
proposed_by
0..*
proposes1..1
Ballotcomments_txt : STdttm : TSvote_cd : CV
0..*
1..1
votes_on
0..*
receives_votes1..1
Voting_memberdraft_level_voting_ind : BLstandard_level_voting_ind : BL
0..*
1..1
cast_by
0..*
casts1..1
Personeducation_level_cd : CD
0..*
1..1
is_role_of0..*
has_as_role1..1
Person_namenm : STtype_cd : CD
1..1
0..*
has1..1
is_for0..*
MIM
Individual_representativedues_current_ind : BL
Organization_as_HL7_memberorganization_nm : STemail_address_txt : TEL
Organizational_representative
0..1
0..*
sponsors 0..1
sponsored_by0..*
Ballotcomments_txt : STdttm : TSvote_cd : CV
Voting_memberdraft_level_voting_ind : BLstandard_level_voting_ind : BL
0..*
1..1
cast_by
0..*
casts
1..1
Person_as_Votereducation_level_cd : CDemail_address_txt : TEL
0..*
1..1
is_role_of 0..*
has_as_role1..1
Proposed_itemballot_period_tmr : IVL<TS>content_txt : EDstandard_level_ind : BL
0..*
1..1
votes_on
0..*
receives_votes
1..1
Person_namenm : STtype_cd : CD
1..1
0..*
has 1..1
is_for 0..*
Organization_as_Committeeorganization_nm : ST
0..*
1..1
proposed_by
0..*
proposes1..1
0..*
0..1
is_a_subdivision_of
0..*
has_as_a_subdivision0..1
Person_as_Committee_contactemail_address_txt : TEL
1..1
0..1
has 1..1
is_for
0..1
Stakeholder_affiliationaffiliation_type_cd : CD
1..1
0..*
participates_as_primary_in
1..1
has_as_primary_participant0..*
1..1
0..*
participates_as_secondary_in1..1
has_as_secondary_participant0..*
RMIM
Individual_representativedues_current_ind : BL
Organization_as_HL7_memberorganization_nm : STemail_address_txt : TEL
Organizational_representative
0..1
0..*
sponsors 0..1
sponsored_by0..*
Ballotcomments_txt : STdttm : TSvote_cd : CV
Voting_memberdraft_level_voting_ind : BLstandard_level_voting_ind : BL
0..*
1..1
cast_by
0..*
casts
1..1
Person_as_Votereducation_level_cd : CDemail_address_txt : TEL
0..*
1..1
is_role_of 0..*
has_as_role1..1
Proposed_itemballot_period_tmr : IVL<TS>content_txt : EDstandard_level_ind : BL
0..*
1..1
votes_on
0..*
receives_votes
1..1
Person_namenm : STtype_cd : CD
1..1
0..*
has 1..1
is_for 0..*
Organization_as_Committeeorganization_nm : ST
0..*
1..1
proposed_by
0..*
proposes1..1
0..*
0..1
is_a_subdivision_of
0..*
has_as_a_subdivision0..1
Person_as_Committee_contactemail_address_txt : TEL
1..1
0..1
has 1..1
is_for
0..1
Stakeholder_affiliationaffiliation_type_cd : CD
1..1
0..*
participates_as_primary_in
1..1
has_as_primary_participant0..*
1..1
0..*
participates_as_secondary_in1..1
has_as_secondary_participant0..*
0
1
2
2a4
5 3
Implementation Technology Specification• A method of encoding and sending HL7
messages.• XML represents one of several ITS to be
developed
An HL7 V2.3 MessageMSH|^~\&|LABGL1||DMCRES||199812300100||ORU^R01|LABGL1199510221838581|P|2.3
|||NE|NEPID|||6910828^Y^C8||Newman^Alfred^E||19720812|M||W|25 Centscheap Ave^^
Whatmeworry^UT^85201^^P||(555)777-6666|(444)677-7777||M||773789090 OBR||110801^LABGL|387209373^DMCRES|18768-2^CELL COUNTS+DIFFERENTIAL TESTS
(COMPOSITE)^LN|||199812292128||35^ML|||||||IN2973^Schadow^Gunther^^^^MD^UPIN||||||||||^Once||||||CA20837^Spinosa^John^^^^MD^UPIN
OBX||NM|4544-3^HEMATOCRIT (AUTOMATED)^LN||45||39-49||||F|||199812292128||CA20837
OBX||NM|789-8^ERYTHROCYTES COUNT (AUTOMATED)^LN||4.94|10*12/mm3|4.30-5.90||||F|||199812292128||CA20837
<Ballt> <dttm V="199912052357+0100"/> <vote V="A" S="HL7001" R="3.0" PN="Abstain"/> <votesOn_PropsdItm> <standrdLevlInd V='T'/> <propsdBy_OrgnztnAsCommtte> <nm V="Humble Task Group"/> <isAsubdvsnOf_OrgnztnAsCommtte> <nm V="Grand Committee"/> </isAsubdvsnOf_OrgnztnAsCommtte> <partcpesAsPrimryIn_StkhldrAffltn> <_StkhldrAffltn> <type V="X" S="HL7004" R="3.0" PN="XXX"/> <hasSecndryPartcpnt_PrsnAsCommtteContct> <has_PrsnName> <pnm><G V="George" CLAS="R"/><G V="Woody" CLAS="C"/>
<G V="W." CLAS="RI"/> <F V="Beeler" CLAS="R"/> </pnm> </has_PrsnName> </hasSecndryPartcpnt_PrsnAsCommtteContct> </_StkhldrAffltn> </partcpesAsPrimryIn_StkhldrAffltn> </propsdBy_OrgnztnAsCommtte> </votesOn_PropsdItm>…
<ClinicalDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" …> <id root="" /> <code code="11488-4" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" … /> <statusCode code="completed" /> <effectiveTime value="20030506230256" /> <confidentialityCode code="N" /> - <component>- <documentBody>- <component>- <documentSectionEvent> <code code="10164-2" codeSystem="2.16.840.1.113883.6.1"
codeSystemName="LOINC" … /> <text /> </documentSectionEvent> </component>- <component>- <documentSectionEvent> <code code="11384-5" codeSystem="2.16.840.1.113883.6.1"
codeSystemName="LOINC" … /> <text /> - <component>- <observation> <id root="2.16.840.1.113883.9876.368.2" … />
…..
Thanks for your attention