HL7 Version 3 Veli BICER. Agenda HL7 Problems with Version 2.x HL7 Models Use Case Model Information...

Post on 17-Jan-2018

226 views 0 download

description

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.

Transcript of HL7 Version 3 Veli BICER. Agenda HL7 Problems with Version 2.x HL7 Models Use Case Model Information...

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