No Slide Title

Download Report

Transcript No Slide Title

CEN/TC 251 Health Informatics
Joint Working Groups Meeting
Stockholm, Sweden
2000-01-31 -- 2000-02-02
http://www.hl7.org
January 30, 2000
© 2000, HL7
1
HL7 Version 3 Tutorial taking the next step with standards
George W. Beeler, Jr., Ph.D.
Past-Chair, Health Level Seven Board
Chapter editor, HL7 Version 3 methodology
Division Chair
Information Services
Mayo Clinic
Rochester, MN USA
[email protected]
http://www.hl7.org
January 30, 2000
© 2000, HL7
2
Why standards?
• CHANGE
– Change due to medical needs
– Change driven by technology
– Change driven by growth
• Assertion
As the needs of health care have grown, and
as technology has fragmented,
it is no longer realistic for a health care provider to expect
ALL of its clinical systems to be on fully INTEGRATED
computers at ALL TIMES.
• In that case, data interfaces are a reality to be dealt with.
• In order to manage interfaces between heterogeneous systems,
THERE MUST BE STANDARDS!
January 30, 2000
© 2000, HL7
3
Our agenda
What is HL7?
Brief review of HL7 Version 2.x
Why undertake Version 3?
Version 3 - an overall standards strategy
Version 3 - Analysis Steps
RIM - in Depth
Version 3 for Messages
January 30, 2000
© 2000, HL7
4
QUICK history
• Founded by healthcare providers early in 1987
• Produced Version 1.0 late in 1987
• Produced Version 2.0 late in 1988
• Versions 2.1, 2.2, 2.3 and 2.3.1 published in 1990,
1994, 1997 and 1999 -- the “production” standards
• Accredited as a Standards Developing Organization by
the American National Standards Institute (ANSI) in
1994
• Version 2.2 through 2.3.1 are “American national
standards”
• Work on Version 3 (and 2.4) is underway
January 30, 2000
© 2000, HL7
5
HL7’s Mission (adopted 7/97)
• 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.
• …….
• The mission of HL7 encompasses the complete ‘life cycle’ of a
standards specification -- development, adoption, market
recognition, utilization and adherence. The HL7 specifications
are unified by shared reference models of the healthcare and
technical domains
January 30, 2000
© 2000, HL7
6
HL7 Activities
 Develop & publish ANSI certified specifications
 Promote the use of the standards
 Provide education
 Provide conformance certification services
 Provide methodologies for extending standard
 Encourage usage of HL7 world wide
 Collaborate with developers of healthcare and
information technology standards in leveraging our
respective skills, knowledge and standards
January 30, 2000
© 2000, HL7
7
Who is HL7?
• About 470 organizational members
• About 1000 total members
• Up to 500 attend the Working Group Meetings
• International affiliates in:
–
–
–
–
–
Australia
Finland
India
Netherlands
Southern Africa
January 30, 2000
-- Canada
-- Germany
-- Japan
-- New Zealand
-- United Kingdom
© 2000, HL7
8
Being ANSI accredited means:
• Consensus driven
– Ballots must pass by 90%
– With 60% quorum and “balance”
– Open membership & one vote per member
Board of Directors
Business affairs
Elected
Technical Steering Committee
Technical affairs
Appointed officers plus chairs
of the committees & SIGs
The Working Group
"real"
The
HL7
Any member can register
for any committee or SIG
Technical Committees
Special Interest Groups
Create normative specifications
or chapters in the standard
January 30, 2000
Collaborate in area of interest to
contribute to the work of the TCs
© 2000, HL7
9
Committees & SIGs of HL7
Committees
Special Interest Groups (SIG)
Architectural Review Board
Acountablity, Quality, Performance
Clinical Decision Support & Arden Syntax
Blood Banking
Control/Query
Claims Attachments
Education & Implementation
Community-based Health Systems
Medical Records
Component based messaging
Modeling and Methodology
Conformance
Orders and Observations
Data warehousing
Patient Admin./Financial Management
Government Projects
Patient Care
Image management
Scheduling & Logistics
Lab Automation
XML (PRA)
MPI Mediation
Visual Integration (CCOW)
Secure transactions
Vocabulary
January 30, 2000
Red - groups creatingspecifications
Blue - groups specifying infrastructure
Green - Groups defining HL7 process & methodology
© 2000, HL7
10
Key to HL7 success - The Working Group
• Draws equally from providers, software vendors, and
consultants
• Group sets aside their individual interests, rolls up their
sleeves and collaborate to get the tough work done
• Most arguments stem either
– violent agreement, but failure to see the agreement
– passionate beliefs
• Fortunately there are also good facilitators in the
working group that help to resolve these
• HARD WORK - five, 12-hour days, three times a year
plus active electronic collaboration in between
January 30, 2000
© 2000, HL7
11
Versions 2.x
• Widely used:
– secondary and tertiary facilities (>90% use HL7)
– large practices
• Broad functional coverage:
– clinical: laboratory, pharmacy, radiology, dietary,
most other diagnostic services, patient care, public
health
– clinical administrative: patient registration,
admission; patient accounts; medical document life
cycle; master file maintenance, HIPAA attachments
• Designed in 1987
– Based on older messaging formats such as X12
January 30, 2000
© 2000, HL7
12
Our agenda
What is HL7?
Brief review of HL7 Version 2.x
Why undertake Version 3?
Version 3 - an overall standards strategy
Version 3 - Analysis Steps
RIM - in Depth
Version 3 for Messages
January 30, 2000
© 2000, HL7
13
What does “HL7” stand for?
A domain-specific, common protocol for the exchange of health
care information.
Function
Communication
7
6
5
4
3
2
1
Application
Presentation
Session
Transport
Network
Data Link
Physical
ISO-OSI Communication Architecture Model
January 30, 2000
© 2000, HL7
14
The HL7 basic transaction model
Mr. Jones is admitted to the hospital
trigger event
Lab system
(external) admit
event
Receive A01
send ACK
send
HL7 A01 msg
receive
ACK msg
network
Admission
System
January 30, 2000
© 2000, HL7
15
HL7 acknowledgment paradigms
ORM message
Accept ACK (opt)
System B
System A
ORR (opt)
Application Ack
Accept ACK (opt)
January 30, 2000
© 2000, HL7
16
HL7 Admit Patient Example
• Admit patient Sam Jones, whose wife (and next-of-kin)
is Barbara, and whose primary care physician is Dr.
LeBauer, to the Emergency room because of trauma
• Question: how did we get from this business process to
an HL7 message?
January 30, 2000
© 2000, HL7
17
Sample Trigger Event definition
• When
– “An A01 event is sent as a result of a patient undergoing the
admission process which assigns the patient to a bed. It
signals the beginning of a patient's stay in a healthcare
facility.”
• What
– “Normally, this information is entered in the primary Patient
Administration system and broadcast to the nursing units and
ancillary systems.”
• Usage examples
– “For example, an A01 event can be used to notify: the
pharmacy system that a patient has been admitted and may be
legitimately prescribed drugs; …. the clinical repository that
an admission has taken place for the EMR (electronic medical
record).”
January 30, 2000
© 2000, HL7
18
The anatomy of an HL7 V2.3 message
MSH|^~\&|ADT1|MCM|LABADT|MCM|199807201126||ADT^A01|
MSG00001|P|2.3|<cr>
EVN|A01|199807201123|<cr>
PID|1||PATID1234^5^M11||Jones^Sam^Houston||19670329|M|
|C|1200 N ELM STREET^^GREENVILLE^NC^27401-1020|GL|
(919)379-1212|(919)271-3434||S||X454337 ^2^M10|
123456789|987654^NC|<cr>
NK1|1|JONES^BARBARA^K|WIFE||||CP^Contact person|<cr>
PV1|1|I|2000^2012^01|E||||004777^LEBAUER^SARA^J.||
TRMA||||ADM|A0|<cr>
A message is the unit of data transferred between information systems. It is
composed of a group of segments in a defined sequence. Each message has a
message type that defines its purpose. A three-character code contained within each
message identifies its type. The first segment (MSH) in each message identifies the
message type and the trigger event type that caused the message to be sent.
January 30, 2000
© 2000, HL7
19
Message - segments, data fields, components
A segment is a logical grouping of data fields. Segments of a message may be required
or optional. They may occur only once in a message or they may be allowed to repeat.
A name and a unique three-character code known as the Segment ID identify each
MSH|^~\&|ADT1|MCM|LABADT|MCM|199807201126||ADT^A01|
segment. Segments are sent within messages as the Segment ID followed by a sequence
MSG00001|P|2.3|<cr>
of data
fields. The last field ends with the end-of-segment character, a carriage return.
EVN|A01|199807201123|<cr>
Data fields are transmitted as character strings separated by characters that are data field
separators (the “|” character in the example). Each data field has an assigned datatype.
PID|1||PATID1234^5^M11||Jones^Sam^Houston||19670329|M|
Many
of the datatypes
are STREET^^GREENVILLE^NC^27401-1020|GL|
compound – made up of components. (The “^” character is
|C|1200
N ELM
the usual
component separator.)
(919)379-1212|(919)271-3434||S||X454337
^2^M10|
123456789|987654^NC|<cr>
NK1|1|JONES^BARBARA^K|WIFE||||CP^Contact person|<cr>
Segment
PV1|1|I|2000^2012^01|E||||004777^LEBAUER^SARA^J.||
Data field
TRMA||||ADM|A0|<cr>
Component
January 30, 2000
© 2000, HL7
20
An HL7 V2.3 Message
MSH|^~\&|ADT1|MCM|LABADT|MCM|199807201126||ADT^A01|
MSG00001|P|2.3|<cr>
EVN|A01|199807201123|<cr>
PID|1||PATID1234^5^M11||Jones^Sam^Houston||19670329|M|
|C|1200 N ELM STREET^^GREENVILLE^NC^27401-1020|GL|
(919)379-1212|(919)271-3434||S||X454337 ^2^M10|
123456789|987654^NC|<cr>
NK1|1|JONES^BARBARA^K|WIFE||||CP^Contact person|<cr>
PV1|1|I|2000^2012^01|E||||004777^LEBAUER^SARA^J.||
TRMA||||ADM|A0|<cr>
January 30, 2000
© 2000, HL7
21
V2.3 Abstract Message - ADT
MSH
EVN
PID
[PD1]
[{NK1}]
PV1
[PV2]
[{DB1}]
[{OBX}]
. . . . . . .
[{GT1}]
[{IN1
[IN2]
[IN3]
}]
[ACC]
[UB1]
[UB2]
January 30, 2000
Message Header
Event Type
Patient Identification
Additional Demographics
Next of Kin /Associated Parties
Patient Visit
Patient Visit - Add’l Info.
Disability Information
Observation/Result
[ ] optional
Guarantor
{ } may repeat
Insurance
Insurance Additional Info.
Insurance Add'l Info - Cert.
Accident Information
Universal Bill Information
Universal Bill Information
© 2000, HL7
23
V2.3 Segment - MSH
SEQ LEN DT OPT RP/# TBL# ITEM #
1
1 ST
R
00001
2
4 ST
R
00002
3
180 HD
O
00003
4
180 HD
O
00004
5
180 HD
O
00005
6
180 HD
O
00006
7
26 TS
O
00007
8
40 ST
O
00008
SEQ - position within segment
9
7 CM
R
00009
LEN
of fieldR
10 - length
20 ST
00010
11
3 PT
R
00011
DT
- data type
for field
12
8 ID
R
0104
00012
OPT
13 - optionality
15 NM forOfield
00013
14 - repeatability
180 ST
O
00014
RP/#
15
2 ID
O
0155
00015
TBL#
16 - table
2 number
ID
O for codes 0155
00016
17
2 field
ID number
O
00017
ITEM#
- HL7
18
6 ID
O
Y/3
0211
00692
ELEMENT
NAME
name
19 January60
CE - O
00693
30, 2000
© 2000, HL7
ELEMENT NAME
Field Separator
Encoding Characters
Sending Application
Sending Facility
Receiving Application
Receiving Facility
Date/Time Of Message
Security
Message Type
Message Control ID
Processing ID
Version ID
Sequence Number
Continuation Pointer
Accept Acknowledgment Type
Application Ack. Type
Country Code
Character Set
Principal Language Of Message
24
Our agenda
What is HL7?
Brief review of HL7 Version 2.x
Why undertake Version 3?
Version 3 - an overall standards strategy
Version 3 - Analysis Steps
RIM - in Depth
Version 3 for Messages
January 30, 2000
© 2000, HL7
25
Versions 2.x
Strengths
Challenges
– broad functional
coverage
– highly adaptable
– broad functional
coverage
– highly adaptable
• IS environments differ
• system capabilities
variations
– vocabulary independent
– least common
denominator
technological base
January 30, 2000
© 2000, HL7
• “Seen one? Seen one.”
• vendor capability
mismatch
– vocabulary independent
– least common
denominator
technological base
26
What is computer interoperability?
• Although an intuitive answer is easy, a specific
response is more complex
• Institute of Electrical and Electronics Engineers (IEEE)
dictionary:
"The ability of two or more systems or components
to exchange information and to use the information
that has been exchanged.”
[IEEE Standard Computer Dictionary: A Compilation of IEEE Standard
Computer Glossaries, IEEE, 1990]
Functional
interoperability
January 30, 2000
Semantic
interoperability
© 2000, HL7
27
What must be specified for communication?
HL7 specifications
Nouns
Adjectives
Verbs
Things or entities that are
Descriptors and
Actions being requested
being communicated.
relationships of the nouns.
or communicated.
The semantics of the communication
The semantics convey the actual "meaning" of the message. The semantics is conveyed
via a set of symbols contained within the communication. An external "dictionary",
thesaurus, or terminology explains the meaning of the symbols as they occur.
A syntax for communication
The syntax defines the structure and layout of the communication. Common syntax
representations include ASN.1, XML, X.12, HL7, IDL, etc.
Services to accomplish the communication
Examples include the post office, a telephone switchboard, SMTP, FTP, Telnet, RPC, ORB
services, etc.
A channel to carry the communication
Examples of channels include written documents, telephones, network connections, satellite links,
etc.
January 30, 2000
© 2000, HL7
28
Object-based messaging methodology
January 30, 2000
© 2000, HL7
29
Ancestry of message design methodology
• IEEE P1157 - MEDIX
– Formed during 1986 MEDINFO Conference by an international
group, representing both end users and systems vendors
– Scope: "Specify and establish a robust and flexible
communications standard for the interchange of data between
heterogeneous healthcare information systems."
– Goals:
• Do not assume a particular decomposition of the healthcare system into
subsystems
• Structure the standard in a flexible manner, so that multiple subsets of
features are allowed
– International participation
January 30, 2000
© 2000, HL7
30
IEEE MEDIX - Base assumptions
• Will specify an Information Model -- an abstraction of
the real healthcare environment defining the semantics
of the domain of discourse
• Will specify a Computational/Communication Model
which defines:
– a) Requirements imposed upon the services which must be
offered to Healthcare IT applications to enable medical data
interchange in the open environment.
– b) Interchange formats and the mapping rules from the
information model to the interchange formats to the
interchange formats
– c) Communications profiles based upon the ISO/OSI base
standards
January 30, 2000
© 2000, HL7
31
IEEE P1157 - MEDIX - Open Issues
By 1990, MEDIX still faced several critical questions:
• How to determine what sub-set of the objects and
attributes in the information model should be part of a
message
• How to specify when a message should be sent
• How to specify how to assemble the data into a message
for communication
January 30, 2000
© 2000, HL7
32
CEN Methodology
January 30, 2000
© 2000, HL7
33
V-3 Methodology
Use Case
Model
Reference
Information
Model
Domain
Information
Model
Message
Information
Model
Interaction
Model
Refined
Message
Information
Model
Common
Message
Element
Definition
Hierarchical
Message
Description
January 30, 2000
Supports conformance
testing
© 2000, HL7
Supports design reuse
34
Our agenda
What is HL7?
Brief review of HL7 Version 2.x
Why undertake Version 3?
Version 3 - an overall standards strategy
Version 3 - Analysis Steps
RIM - in Depth
Version 3 for Messages
January 30, 2000
© 2000, HL7
35
What is Version 3?
• New kinds of standards
– Messaging standards that are logically consistent with
Versions 2.x, and have important semantic improvements
– Document standards based on SGML/XML document
architecture
– Component standards
– Knowledge representation
AND
• A new process or methodology for developing
those standards
– A wholly new approach to the way HL7 develops its
standards
January 30, 2000
© 2000, HL7
36
Version 3 as a methodology
• Is a new approach to developing HL7 standards. The
methodology:
– Is based on models and and a common repository, which
provides better control and consistency of the standards
– Defines trigger events using state diagrams in the information
model
– Includes more detail, clarity and precision of specification
– Decreases options by providing more messages
– Includes standard vocabularies, terminologies and code sets.
January 30, 2000
© 2000, HL7
38
Methodology - Phases, Models & Applications
Requirements
Analysis
Application
Design
Analysis
Domain
Analysis
Interaction
Design
2-nd Order
1 choice of
0-n Drug
0-1 Nursing
C Code
a art
b blue
c color
Use Case
Model
(UCM)
Messaging
Message
Design
Documents
Medical logic
TYPE MPSLOC
CONTAINS {
id[id].TYPE IID
<!ENTITY %DT_MPSLOC
nm[name].TYPE ST
“MPSLOC.id,
ad[addr].TYPEdata:
XAD
MPSLOC.name?,
ph[phon].TYPElocation_of_action
XTN
MPSLOC.addr?,
email_address := READ LAST
MPSLOC.phon?,
[emlAdr].TYPE XTNMPSLOC ;
MPSLOC.emlAdr?">
‘ {patient
}
location}
c Code
Information
Model &
Vocabulary
(RIM)
Interaction
Model
(IM)
Hierarchical
Message
Descriptions
(HMD)
Message Types
for use
with
Document
XML, ER7,
etc
TypesVariable
for
(MET)
HL7
PRA for
definition
Reference Model Repository
January 30, 2000
© 2000, HL7
(DTD)
Arden syntax
(AVD)
39
HL7 Version 3 Methodology in words
1. Define a consensus reference information model (RIM) that defines
the data of interest in the healthcare domain.
2. Assemble the terminologies and data types necessary to express the
attributes of the RIM
3. Apply the model, vocabulary and types to:
messages, patient record DTDs, medical logic modules,
component specifications, etc.
4. For any particular application, draw from the RIM to construct an
abstract message structure - the Hierarchical Message Description
(HMD)
5. For any particular implementation technology, HL7 will define an
implementation technology specification (ITS) for mapping the
HMD to that technology.
6. When the message (or equivalent) is sent, the HMD is used to
marshal the data, and the ITS is used to format the data for
communication.
January 30, 2000
© 2000, HL7
40
Version 3 Goals
• Provide a framework for coupling events,
data elements and messages
• Improve clarity and precision of specification
• Improve adaptability of standards to change
• Begin to approach “plug and play”
January 30, 2000
© 2000, HL7
41
HL7 Version 3 Characteristics
• Design based on consensus Reference
Information Model - ties message elements to
explicit semantic definitions
• Adaptable to current and future technology
bases - requires abstract expression of
standard data structure
• Vocabulary-level interoperability - requires
robust data type(s) for coded data
• Explicit conformance model - means that
optional elements in the specification must be
eliminated where ever possible
January 30, 2000
© 2000, HL7
42
Version 3 is a change to the HL7 Architecture
• The HL7 2.x specifications have:
– Segments that suggest information entities
– Events that indicate implied behaviors
– And descriptive content that suggests use cases
but never formally documents these
• Version 3 seeks to formalize this by applying object analytic
methods
– to improve the internal consistency of HL7
– to provide sound semantic definitions
– to enable future architectures
– to produce an evolution not a revolution
Done by applying MODELING to the HL7 process
January 30, 2000
© 2000, HL7
43
HL7 Modeling
Abstractions:
Activities
(Use Case
Model)
Objects
(Information
Model)
By demanding
Perform Lab
Review
Tests
Utilization
analysis
of
the
Version 2.x focused its
requirements and
energies at the communication
information
level and covered
the other content,
Version
3inassures
abstractions
only
loosely
the
Account
Encounter
Order
Patient Provider
consistency
in
and
specifications.
enhances the value
of the resulting
messages.
Dispense
Medications
Communication
(Interaction
Model)
January 30, 2000
Manage
Care
HL7 message
Finance
HL7 message
ADT
© 2000, HL7
Pharmacy
44
HL7 V3 Deliverables
• Use case model
• Vocabulary
– Hierarchy of tasks and actors
– Domains for all coded
attributes
– Enumerated codes for HL7
structural tables
• Interaction model
– Trigger events, abstract
messages & application profiles
• Message design model
– Abstract message definitions
(HMDs)
• Information model
– Classes, relationships, states,
and lifecycles
• Implementation Specification
– Implementation Technology
– Specification (ITS)
January 30, 2000
© 2000, HL7
45
Models developed in Phases
Develop Scope
Create
Use Cases
Identify
Actors &
Events
Information Model
Use Case Model
Spec
Spec
DIM Spec
Class Diagram State Diagram
Define
Interactions
Create
Conformance
Claims
January 30, 2000
Model new
concepts
UCM Spec
Use Case Diagram
Harmonize with
Vocabulary
Domains & RIM
Define Trigger
Events
Define Application
Roles
Draw initial
contents from
RIM
Interaction Model
Spec
Inter Spec
Interaction Diagram
Message Design
2-nd Order
1 choice of
0-n Drug
0-1 Nursing
h//mt:50”d”
…
…
…
Develop Message
Information Model
Develop Refined
Message
Information Model
Specify HMD
© 2000, HL7
46
Our agenda
What is HL7?
Brief review of HL7 Version 2.x
Why undertake Version 3?
Version 3 - an overall standards strategy
Version 3 - Analysis Steps
RIM - in Depth
Version 3 for Messages
January 30, 2000
© 2000, HL7
47
Domain Analysis
Develop Scope
Create
Use Cases
Identify
Actors &
Events
Information Model
Use Case Model
Spec
Spec
DIM Spec
Class Diagram State Diagram
Define
Interactions
Create
Conformance
Claims
January 30, 2000
Model new
concepts
UCM Spec
Use Case Diagram
Harmonize with
Vocabulary
Domains & RIM
Define Trigger
Events
Define Application
Roles
Draw initial
contents from
RIM
Interaction Model
Spec
Inter Spec
Interaction Diagram
Message Design
2-nd Order
1 choice of
0-n Drug
0-1 Nursing
h//mt:50”d”
…
…
…
Develop Message
Information Model
Develop Refined
Message
Information Model
Specify HMD
© 2000, HL7
48
Domain Analysis
Information Model
Spec
DIM Spec
Class Diagram State Diagram
Draw initial
contents from
RIM
Model new
concepts
Harmonize with
Vocabulary
Domains & RIM
January 30, 2000
© 2000, HL7
49
HL7 core requirement - Common semantic models
Table 18: Classes
Abbr
Laboratory Term Classes
Abbr
Clinical Term Classes
ABXBACT Antibiotic susceptibility Service_intent_or_order
BDYCRC 0..*Body circumference
filler_order_id : IID
ALLERGY
Response to
antigens
Body height
has_as_participant
is_entered_at
participates_in
filler_txt : TX BDYHGT
Active_participation
order_id
BC : ID 0..*
Cell counts (blood, CSF,
BDYSURF Body surface area
participation_type_cd
0..1 order_placed_dttm : DTM
pleuritic fluid)
0..*
order_quantitytiming_qt : TQ
0..* participates_in
0..*
is_assigned_to
placer_order_id
: IID
BLDBK
Blood bank
BDYTMP
Body temperature
has_as_participant
placer_txt : TX
is_an_instance_of
has_as_target
CELLMAR Cell surface models
BDYWGT
Body weight
is_assigned
1
report_results_to_phone
: XTN
0..1
0..*
intent_or_order_cd : ID
K
Stakeholder participates_in
0..1
addr : XAD
CHAL
Challenge tests
BP
Blood pressure
1
0..* Collected_specimen_sample
phon : XTN
0..1
body_site_cd
:
CE
CHALSKIN
Skin
challenge
tests
BP.CENT
Blood pressure – central
is_fulfilled_by
collects
is_collected_by
collection_end_dttm : DTM
CHEM
Chemistry
BP.PSTN
Blood pressure – positional
collection_start_dttm : DTM
COAG
Coagulation study
BP.TIMED Blood pressure – timed
collection_volume_amt
: CQ
handling_cd : ID
CYTO
Cytology
BP.VENOU
Blood pressure – venous
id : IID
Observation_intent_or_order
Organization
S
method_of_collection_desc : TX
patient_hazard_code
Person
organization_name_type_cd : CNE
specimen_additive_txt : ST
DRUG
Drug levels
CLIN reason_for_study_cd
Clinical NEC
organization_nm : ST
birth_dttm : DTM
specimen_danger_cd : ID
relevant_clinical_information_txt
1 standard_industry_class_cd
gender_cd : CNE
DRUGDOS
Drug dose (for transmitting
ED reporting_priority_cd
Emergency department
specimen_source_cd
: CE
0..*
marital_status_cd : CNE
specimen_action_cd
E
doses
for
pharmacokinetics)
primary_name_representation_cd
:
CNE
is_a_subdivision_of
0..1
0..*
0..1
has_as_active_participantEKG
primary_name_type_cd : CNE
Fertility
Electrocardiogram
is_sourced_from FERT
takes_on_role_of has_as_a_subdivision
primary_prsnm : PN
is_target_of
fulfills
is_target_of
HEM
Hematology
(excluding
EKG.IMP
Electrocardiogram
0..1
race_cd : CNE
is_source_for
0..*
has_as_target
1..*
delivers
0..1
0..1
coagulation
&
differential
impression
Service_event
0..*
1
1
Patient
has_as_target service_desc : ST
count)
0..*
0..*
takes_on_role_of
Tar
get_par
ticipation
takes_on_role_of
is_instantiated_as
0..1 ambulatory_status_cd
: CE 0..* antigensservice_event_desc
HLA tissue typing
EKG.MEAS Electrocardiogram measures
birth_order_number HLA
has_as_targetparticipation_type_cd
specimen_received_dttm : DTM is_delivered_during
Healthcare_service_provider
is_a_role_ofliving_arrangement_cd
1
MICRO
Microbiology is_target_of name : CE EYE
Eye 1
0..1
specialty_cd : CNE
Master_service
living_dependency_cd
0..*
0..*
Pathology
FUNCTION Functional
status
(e.g.
is_target_of
multiple_birth_ind PATH
method_cd : CE
has_as_target
is_performed_at
newborn_baby_ind Vocabularies
method_desc : TX
Glasgow)
Information
models
has_a_primary_providerorgan_donor_ind
service_desc : TX
SERO
Serology (antibodies and most Assessm
H&P ent
History
and physical : CE
preferred_pharmacy_id
target_anatomic_site_cd
0..*
universal_service_id
: CE
antigens
except
blood
bank
and
is_the_primary_provider_for
is_a_role_of
is_a_role_of
0..*
0..1
infectious agents)
0..1
0..1
has_as_primary_facility
Individual_healthcare_practitioner
SURGPAT Sugical pathology
HEMODYN Hemodynamics
Healthcare_provider_organization
Clinical_observation
desc : TX
H
abnormal_result_ind
: ID
practitioner_type_cd : CNE
1..*
last_observed_normal_values_dttm : DTM
TOX
Toxicology
HRTRATE
Heart rate
nature_of_abnormal_testing_cd : CE
is_primary_facility_for
clinically_relevant_begin_dttm
: DTMInput/Output
UA
Urinalysis
IO
0..1
clinically_relevant_end_dttm : DTM
provides_patient_services_at
is_target_forVeterinary Medicine
VET
NEONAT
Neonatal measures
0..*
..* Master_patient_service_location
0..1
provides_services_on_behalf_of0
observation_value_txt : NM
addr : XAD
probability_number
: NM
OB.US
Obstetric ultrasound
0..1
references_range_text : ST
0..* email_address : XTN
OBGYN
Obstetrics/gynecology
id : ID
value_units_code
:
CE
is_location_for
is_included_in
nm : ST
RESP
Respiration
phon : XTN
is_entry_location_for
SKNFLD
Skinfold measurements
includes 0..1
1
US.URO
Urological ultrasound
VOLUME
Volume (specimens)
Domain expertise
Stakeholder_identifier
id : ST
identifier_type_cd : ID
Domain expertise
Vocabulary developers,
professional societies, government
agencies, HL7 committees
HL7 committees, affiliates,
members & collaborators
Table 18: Classes
Stakeholder_identifier
id : ST
identifier_type_cd : ID
participates_in
Active_participation
participation_type_cd : ID 0..*
0..*
is_assigned_to
is_assigned
1
0..1
Stakeholder participates_in
addr : XAD
1
phon : XTN
collects
Organization
organization_name_type_cd : CNE
organization_nm : ST
1 standard_industry_class_cd
0..*
takes_on_role_of
0..*
has_as_participant
0..*
is_collected_by
Person
birth_dttm : DTM
gender_cd : CNE
marital_status_cd : CNE
is_a_subdivision_of primary_name_representation_cd : CNE
0..1
primary_name_type_cd : CNE
has_as_a_subdivision
primary_prsnm : PN
race_cd : CNE
0..*
participates_in
Service_intent_or_order
0..*
filler_order_id : IID
has_as_participant filler_txt : TX
is_entered_at
order_id
0..1 order_placed_dttm : DTM
order_quantitytiming_qt : TQ
placer_order_id : IID
placer_txt : TX
is_an_instance_of
has_as_target
report_results_to_phone : XTN
0..*
intent_or_order_cd : ID
0..1
Collected_specimen_sample
body_site_cd : CE
collection_end_dttm : DTM
collection_start_dttm : DTM
collection_volume_amt : CQ
handling_cd : ID
id : IID
method_of_collection_desc : TX
specimen_additive_txt : ST
specimen_danger_cd : ID
specimen_source_cd : CE
0..*
is_sourced_from
0..1
is_fulfilled_by
Observation_intent_or_order
patient_hazard_code
reason_for_study_cd
relevant_clinical_information_txt
reporting_priority_cd
specimen_action_cd
0..1
has_as_active_participant
is_target_of
fulfills
0..1
0..*
delivers
0..1
Service_event
has_as_target service_desc : ST
0..*
0..*
Tar get_par ticipation
is_instantiated_as
0..1 ambulatory_status_cd
service_event_desc
0..*
birth_order_number
has_as_targetparticipation_type_cd : CE
specimen_received_dttm : DTM is_delivered_during
Healthcare_service_provider
is_a_role_ofliving_arrangement_cd 0..1
1
1
is_target_of
name : CE
specialty_cd : CNE
Master_service
living_dependency_cd
0..*
0..*
is_target_of
multiple_birth_ind
method_cd : CE
has_as_target
is_performed_at
newborn_baby_ind
method_desc : TX
has_a_primary_providerorgan_donor_ind
service_desc : TX
Assessm ent
preferred_pharmacy_id
target_anatomic_site_cd : CE
0..*
universal_service_id : CE
is_the_primary_provider_for
is_a_role_of
is_a_role_of
0..*
0..1
0..1
0..1
has_as_primary_facility
Individual_healthcare_practitioner
Healthcare_provider_organization
Clinical_observation
desc : TX
abnormal_result_ind
:
ID
practitioner_type_cd : CNE
1..*
last_observed_normal_values_dttm : DTM
nature_of_abnormal_testing_cd : CE
is_primary_facility_for
clinically_relevant_begin_dttm : DTM
0..1
clinically_relevant_end_dttm : DTM
provides_patient_services_at
is_target_for
0..*
..* Master_patient_service_location 0..1
provides_services_on_behalf_of0
observation_value_txt : NM
addr : XAD
probability_number : NM
0..1
references_range_text : ST
0..* email_address : XTN
id : ID
value_units_code : CE
is_location_for
is_included_in
nm : ST
phon : XTN
is_entry_location_for
1
takes_on_role_of
1
takes_on_role_of
includes 0..1
is_source_for
0..1
is_target_of
has_as_target
0..*
Patient
Abbr
ABXBACT
ALLERGY
BC
Laboratory Term Classes
Antibiotic susceptibility
Response to antigens
Cell counts (blood, CSF,
pleuritic fluid)
Blood bank
Cell surface models
BLDBK
CELLMAR
K
CHAL
Challenge tests
CHALSKIN Skin challenge tests
CHEM
Chemistry
COAG
Coagulation study
CYTO
Cytology
DRUG
DRUGDOS
E
FERT
HEM
1..*
HLA
MICRO
PATH
SERO
SURGPAT
H
TOX
UA
VET
Drug levels
Drug dose (for transmitting
doses for pharmacokinetics)
Fertility
Hematology (excluding
coagulation & differential
count)
HLA tissue typing antigens
Microbiology
Pathology
Serology (antibodies and most
antigens except blood bank and
infectious agents)
Sugical pathology
Toxicology
Urinalysis
Veterinary Medicine
1
Abbr
BDYCRC
BDYHGT
BDYSURF
Clinical Term Classes
Body circumference
Body height
Body surface area
BDYTMP
BDYWGT
Body temperature
Body weight
BP
BP.CENT
BP.PSTN
BP.TIMED
BP.VENOU
S
CLIN
ED
Blood pressure
Blood pressure – central
Blood pressure – positional
Blood pressure – timed
Blood pressure – venous
EKG
EKG.IMP
Electrocardiogram
Electrocardiogram
impression
Clinical NEC
Emergency department
EKG.MEAS Electrocardiogram measures
EYE
Eye
FUNCTION Functional status (e.g.
Glasgow)
H&P
History and physical
HEMODYN Hemodynamics
HRTRATE
IO
NEONAT
OB.US
OBGYN
RESP
SKNFLD
US.URO
VOLUME
Heart rate
Input/Output
Neonatal measures
Obstetric ultrasound
Obstetrics/gynecology
Respiration
Skinfold measurements
Urological ultrasound
Volume (specimens)
Messaging, Document structures, Clinical templates, Arden
syntax, Component specification, …..
Applications
January 30, 2000
© 2000, HL7
50
The Information Model
• A detailed and precise definition for the information
from which the data content of HL7 messages are
drawn.
• Follows object-oriented modeling and diagramming
techniques, and is centered on a depiction of the
classes that form the basis for the objects in HL7
messages.
• Provides a means for expressing and reconciling
differences in data definition independent of
message structure.
• Forms a shared view of the information domain used
across all HL7 messages.
January 30, 2000
© 2000, HL7
51
The Reference Information Model (RIM)
• Used to express the information content for the
collective work of the HL7 Working Group.
• A coherent, shared information model that is the source
for the data content of all HL7 messages.
• Maintained by a collaborative, consensus building
process involving all Technical Committees and Special
Interest Groups.
• RIM change proposals are debated, enhanced, and
reconciled by technical committee representatives and
applied to the RIM during the model harmonization
process
January 30, 2000
© 2000, HL7
52
Committee Vs. HL7 Model
• What is the RIM?
– A HL7-wide common
reference model that
integrates all Technical
Committees’ domain views
• Why do we need a
common model?
– To ensure consistency of
concepts
– To ensure consistent
vocabulary
January 30, 2000
• How will we coordinate
these efforts?
– Iterative reviews
– Harmonization meetings
• Who controls RIM?
– The M&M committee
• Format, syntax, style
• Revision histories
– The Technical Steering
Committee
• Dispute resolution
• Overseer
© 2000, HL7
53
RIM Class Diagram - v0.94
DATATYPES
<<Data_type>>
Any_data_type : ANY
<<Data_type>>
Quantity : QTY
<<Data_type>>
Discrete : DSCR
Text
<<Data_type>>
Ordered : ORD
Thing
HEALTH LEVEL 7
REFERENCE INFORMATION MODEL
RIM_0094
Authentication
authentication_dttm : TS
type_cd : CV
0..*
is_source_of
0..*
is_part_of
is_authenti cated_by
Heal thcare_finances
Patient_encounters
Heal thcare_finances
Healthcare_finances
authenticates
1
has_originati ng_organi zati on
0..*
1
created_by
Healthcare_document_authenticator
Heal thcare_finances
Patient_encounters
Patient_service_material
Heal thcare_stakeholders
Healthcare_stakeholders
Clinical_document
has_parts
released January, 2000
reflects agreements made through harmonization in November, 1999
0..1
is_a
Document_recipient
Heal thcare_finances
Patient_encounters
Patient_service_event
0..1
0..1
is_role_of
of
0..*
has_been_received_by
1..* of
1..*
has_been_originated_by
Originator
is_role_of
0..1
is_transcri bed_by
Transcriptionist
0..1
is_role_of
0..*
<<Data_type>>
Concept_role_relationship : CRR
name : CV
inversion_ind : BL
value : CDPH
1
contai ned_in
0..*
Patient_information_disclosure
disclosure_dttm
info_disclosed_desc
info_requested_desc
reason_cd
requested_dttm
is_parent_document_for
urgency_cd
pertains_to
0..*
0..1
is_provi ded_to
0..*
has_as_a_parent_document
is_the_recipi ent_of
requests
requests
is_requested_by
0..*
Resource_request
allowable_substitutions_cd
duration_qty
start_dttm
start_offset_qty
status_cd
has
1
1
takes_on_role_of
has_as_secondary_participant
has_as_primary_parti ci pant
1
parti ci pates_as_primary_in
1
1
takes_on_role_of
takes_on_role_of
takes_on_role_of
1
1
takes_on_role_of
Stakeholder
addr : SET<AD>
credit_rating_cd
email_address_txt
phon : SET<TEL>
type_cd
real_id : SET<II>
id : SET<II>
1
Individual_healthcare_practitioner_request
practitioner_type_cd
requests
parti ci pates_as
0..*
refers_to_person_by
is_used_by
0..*
0..1
Person_name
effective_dt
cd
nm
purpose_cd
termination_dt
type_cd
is_for
0..1
Employer
<>> effective_tmr
provides_contact
Organization
nm : SET<ON>
standard_industry_class_cd
takes_on_role_of
1
is_role_of
0..1
takes_on_role_of
1
assigns
1
0..*
requests
is_em pl oyer_of
Quantity/ Time
<<Data_type>>
No_information : NULL
Generalizations
Durable_medical_equipment_request
requested_qty
type_cd
T
Patient_appointment_request
requests
Patient_service_location_request
type_cd
0..*
<<Data_type>>
Postal_and_residential_address : AD
T
<<Data_type>>
Interval : IVL
requests 0..*
<<Data_type>>
Organization_name : ON
type_cd : CV
value : ST
<<Data_type>>
Address_part : ADXP
<<Data_type>>
Uncertain_value-narrative : UVN
T
<<Data_type>>
Uncertain_discrete_value_using_probability : UDVP
T
T, R
<<Data_type>>
History : HIST
<<Data_type>>
List : LIST
0..*
0..*
0..*
<<Data_type>>
General_timing_specification : GTS
<<Data_type>>
Integer : INT
<<Data_type>>
Telecommunication_address : TEL
0..*
requests
T
<<Data_type>>
Annotated : ANT
<<Data_type>>
Set_ON : SET<ON>
T
<<Data_type>>
Parametric_probability_distribution : PPD
T
T, R
requests
<<Data_type>>
Set : SET
0..*
Health_chart_deficiency
assessment_dttm
desc
level_cd
type_cd
takes_on_role_of
0..*
enters
0..*
<<Data_type>>
History_item : HXIT
<<Data_type>>
Person_name_part : PNXP
T
<<Data_type>>
Person_name_type : PN
<<Data_type>>
Non-parametric_probability_Distribution : NPPD
0..1
Health_chart
health_chart_id
health_chart_type_cd
status_cd
is_the_source_of
0..*
is_housed_at
0..*
belongs_to
contai ns
is_requested_by
Resource_slot
offset_qty
allocated_qty
resource_type_cd
status_cd
start_dttm
0..1
0..1
Durable_medical_equipment_group
id
0..*
CONTROL_QUERY
contai ns
0..*
is_managed_by
0..*
1
is_reserved_by
1
is_acknowledged_by
Message_header
manages
Patient_slot
is_assessed_against
0..*
Patient_service_location_slot
is_a_schedul eable_uni t_for 0..*
is_represented_by
Demographic
<<Data_type>>
Binary_data : BIN
T, S, R
0..1
is_requested_by
is_role_of
Accident_information_source
contai ns
categori zes
1
1
is_role_of
1..*
1
<<Data_type>>
ISO_object_identifier : OID
Individual_healthcare_practitioner_pool
id
Entering_person
0..1
is_a_rol e_of
enters
0..1
0..*
represents
takes_role_of
1
0..1
<<Data_type>>
Number : N
Generic
<<Data_type>>
Point_in_time : TS
<<Data_type>>
Physical_quantity : PQ
owns
1
has_an_assessment_of
Stakeholder_affiliate
family_relationship_cd
<<Data_type>>
Monetary_amount : MO
<<Data_type>>
Boolean : BL
<<Data_type>>
Bag : BAG
is_a_rol e_of
0..1
takes_on_role_of
1
0..*
parti ci pates_as_secondary_i n
<<Data_type>>
Real : REAL
<<Data_type>>
Instance_identifier : II
T, R
takes_on_role_of
acts_as
1
1
1
<<Data_type>>
Concept_descriptor : CD
<<Data_type>>
Collection : COLL
0..*
is_requested_by
is_entered_by
0..*
1
1
1
requests
0..*
<<Data_type>>
Code_phrase : CDPH
<<Data_type>>
Universal_resource_identifier : URI
Service_scheduling_request
allowable_substitutions_cd
duration_qty
start_dttm
start_offset_qty
status_cd
Patient_information_recipient
Stakeholder_affiliation
affiliation_type_cd
desc
effective_dt
termination_dt
<<Data_type>>
Code_value : CV
has_as_contact
Appointment_request
reason_cd
administrative_type_cd
equip_selection_criteria_expr
id
location_selection_criteria_expr
priority_cd
repeating_interval_duration_qty
repeat_pattern_expr
change_reason_cd
duration_qty
start_tmr
time_selection_criteria_expr
explicit_time_interval_expr
appointment_rqst_category_cd
status_cd
dttm
0..*
0..*
<<Data_type>>
Code_translation : CDXL
<<Data_type>>
Set_CRR : SET<CRR>
documents
0..*
transcribes
0..1
<<Data_type>>
Character_string : ST
1
Clinical_document_header
availability_status_cd
change_reason_cd
completion_status_cd
confidentiality_status_cd
content_presentation_cd
document_creation_dttm : TS
file_nm : ST
id : II
last_edit_dttm
reporting_priority_cd
results_report_dttm
storage_status_cd
transcription_dttm
type_cd : CD
document_change_cd : CV
version_nbr : INT
version_dttm : TS
<<Data_type>>
Ratio : RTO
<<Data_type>>
Encapsulated_data : ED
Individual_healthcare_practitioner_slot
is_scheduleabl e_unit_for 0..*
is_scheduleabl e_unit_for
0..*
is_a_subdivision_of
books
Durable_medical_equipment_slot
1..*
Query_by_selection_spec
Row_table_data
Query_subscription_spec
is_scheduleabl e_unit_for
0..*
Query_by_parameter_spec
0..1
acknowl edges
0..*
Message_ack
1
Schedule
id
Query_ack
0..1
has_as_a_subdivision
0..*
is_contact_for
0..*
is_contact_for
0..*
Contact_person
contact_reason_cd
is_contact_for
is_a_contact_for
is_contact_for
is_a_contact_for
0..1
0..1
0..1
0..*
Response_conrol_spec
is_a_rol e_of
has
0..*
is_contact_for
has_as_empl oyer
0..1
provides_contact
0..1
Insurer
effective_tmr
1
0..*
Guarantor
0..1 is_role_of
financial_class_cd
guarantees_paym ent_under
household_annual_income_amt
household_size_nbr
1
provides_contact
0..1
is_role_of
1
issues
1
issues
offers
Insurance_certification_contact
participation_type_cd
Person_employment
addr
effective_dt
hazard_exposure_txt
job_class_cd
job_title_nm
phon
protective_equipment_txt
salary_qty
salary_type_cd
status_cd
termination_dt
occupation_cd
job_status_cd
0..1
0..*
0..*
is_contact_for
Insurance_certification
appeal_reason_cd
certification_duration_qty
effective_tmr
id
insurance_verification_dttm
modification_dttm
non_concur_cd
non_concur_effective_dttm
penalty_amt
report_of_eligibility_dttm
report_of_eligibility_ind
includes
0..*
1
1
1
enters
is_role_of
1
has_contact
affirms_insurance_coverage_for
1
has_coverage_affi rmed_by
provides_vali dation_for
1
Guarantor_contract
billing_hold_ind
billing_media_cd
charge_adjustment_cd
contract_duration_cd
contract_type_cd
effective_tmr
interest_rate_nbr
periodic_payment_amt
priority_ranking_cd
provides_payment_guarantee_for
0..*
is_entered_by
0..*
is_categorized_by
provides_opi ni on_on
Certification_additional_opinion
effective_dttm
status_cd
1
Employee
1..*
has_payment_guaranteed_by
0..*
1
is_source_for
0..1
1..*
0..*
takes_on_role_of
takes_on_role_of
has_as_empl oyee
is_em pl oyee_i n
1
1
takes_on_role_of
is_role_of
is_issued_by
acts_in_role_of
0..*
0..*
is_provi ded_by
covers
0..*
1
Person
birth_dttm : TS
birthplace_addr
citizenship_country_cd
confidentiality_constraint_cd
deceased_dttm
deceased_ind
disability_cd
education_level_cd
ethnic_group_cd
administrative_gender_cd
marital_status_cd
military_branch_of_service_cd
military_rank_nm
military_status_cd
nationality_cd
race_cd
religious_affiliation_cd
student_cd
very_important_person_cd
status_cd
ambulatory_status_cd
birth_order_nbr
living_arrangement_cd
living_dependency_cd
multiple_birth_ind
organ_donor_ind
preferred_pharmacy_id
Financial_transaction
alternate_desc
desc
extended_amt
fee_schedule_cd
insurance_amt
posting_dt
qty
transaction_batch_id
transaction_cd
transaction_dttm
transaction_id
transaction_type_cd
unit_amt
unit_cost_amt
1
0..1
takes_on_role_of
is_subject_of
1 has
com muni cates_i n
1
Language
0..*
1 is_speci fied_by
Administrative_patient_death
death_certificate_id
death_certificate_recorded_dttm
death_classification_cd
death_dttm
death_location_txt
death_notification_source_nm
death_verification_cd
death_verification_dttm
death_verification_nm
is_communicated_by
Notary_public
effective_interval_tmr
notary_county_cd
notary_state_cd
is_a_rol e_of
specifi es_abi lity_i n
0..*
Language_ability
mode_cd
proficiency_level_cd
0..1
is_role_of
0..1
Healthcare_benefit_product_purchaser
1
Healthcare_benefit_coverage_item
service_category_cd
service_cd
service_modifier_cd
authorization_ind
network_ind
assertion_cd
covered_parties_cd
qty
quantity_qualifier_cd
time_period_qualifier_cd
range_low_qty
range_high_qty
range_units_cd
assertion_effective_tmr
eligibility_cd
policy_source_cd
eligibility_source_cd
copay_limit_ind
0..1
1..1
is_the_purchaser_of
is_covered_by
0..*
has_as_purchaser
is_offered_by
0..*
0..1
Master_healthcare_benefit_product
assignment_of_benefits_ind
benefit_product_desc
id
benefit_product_nm
benefit_product_type_cd
benefits_coordination_ind
cob_priority_nbr
combine_baby_bill_ind
effective_tmr
group_benefit_ind
mail_claim_party_cd
release_information_cd
status_cd
coverage_type_cd
agreement_type_cd
policy_category_cd
access_protocol_desc
is_a_rol e_of
is_vali dated_by
0..*
insures
1
is_instantiated_as
is_a_i nstance_of
0..*
governs
is_governed_by
0..*
parti ci pates_as
0..1
1
takes_on_role_of
0..*
has
0..*
pertains_to
has
0..*
is_for
0..*
provides_coverage_for
1
1
0..*
is_assi gned
0..*
Bad_debt_billing_account
bad_debt_recovery_amt
bad_debt_transfer_amt
transfer_to_bad_debt_dttm
transfer_to_bad_debt_reason_cd
has_as_care_recipient
0..*
has_as_a_pri or_account
1
0..*
belongs_to
1
1
1
has_a_pri mary_provider
0..*
has_as_primary_facili ty
0..*
Patient_billing_account
account_id
adjustment_cd
authorization_information_txt
billing_status_cd
certification_required_ind
current_unpaid_balance_qty
delete_dttm
deleted_account_reason_cd
expected_insurance_plan_qty
expected_payment_source_cd
notice_of_admission_dttm
notice_of_admission_ind
patient_financial_class_cd
price_schedule_id
purge_status_cd
purge_status_dttm
report_of_eligibility_dttm
retention_ind
signature_on_file_dttm
special_program_cd
stoploss_limit_ind
suspend_charges_ind
total_adjustment_qty
total_charge_qty
total_payment_qty
separate_bill_ind
is_issued_by
0..1
pertains_to
Administrative_birth_event
baby_detained_ind
birth_certificate_id
birth_method_cd
birth_recorded_county_cd
birth_recorded_dttm
newborn_days_nbr
stillborn_ind
authorizes
is_booked_in
0..*
reserves
0..*
is_entered_by
has_as_a_contact
0..1
is_part_of
0..*
schedul es
0..*
0..*
0..1
Appointment
appointment_duration_qty
appointment_timing_qt
event_reason_cd
expected_service_desc
expected_start_dttm
id
status_cd
urgency_cd
is_parent_of
0..1
0..*
owned_by
1
Service_list
id : SET<II>
type_cd : CV
name : ST
desc : ED
0..*
is_chil d_of
0..1
parti ci pates_as
is_about
is_source_for
0..*
1
has_parts
is_requested_by
has_parts
1
is_invol ved_i n
has
involves
is_authori zed_by
pertains_to
0..*
Disability
effective_dttm
return_to_work_auth_dttm
termination_dttm
unable_to_work_effective_dttm
1..*
is_obtai ned_from
0..*
is_identifi ed by
Diagnostic_related_group
base_rate_amt
capital_reimbursement_amt
cost_weight_amt
id
major_diagnostic_category_cd
operating_reimbursement_amt
reimbursement_amt
standard_day_qty
standard_total_charge_amt
trim_high_day_qty
trim_low_day_qty
0..*
Administrative_patient_accident
accident_death_ind
accident_desc
accident_dttm
accident_location_desc
accident_state_cd
accident_type_cd
job_related_accident_ind
assessment_dttm
is_present_in
0..*
has
is_assi gned_as
1
is_scheduled_by
0..1
1..*
Patient_encounter
administrative_outcome_txt
cancellation_reason_cd
desc
encounter_classification_cd
expected_insurance_plan_qty
first_similar_illness_dttm
follow_up_type_cd
id : II
classification_cd
purpose_cd
special_courtesies_cd
active_tmr
status_cd
urgency_cd
triage_classification_cd
medical_service_cd
publicity_constraint_cd
reason_cd
referral_cd
source_cd
patient_valuables_desc
pre_admit_test_ind
readmission_ind
valuables_location_desc
acuity_level_cd
actual_discharge_disposition_cd
discharge_location_id
expected_discharge_disp_cd
birth_encounter_ind
desc
episode_type_cd
id
list_closed_ind
outcome_txt
recurring_service_ind
is_part_of
1..*
is_part_of
0..*
1
represented_as
Episode_of_condition
Episode_of_care
0..*
pertains_to
0..*
0..*
is_assi gned_to
parti ci pation_of
has
0..*
0..1
as_assigned to it
Risk_management_incident
incident_cd
incident_dttm
incident_severity_cd
incident_type_cd
Actor
type_cd : SET<CV>
tmr : IVL<TS>
note : ED
signature_cd : CV
is_charged_to
is_associated_wi th
is_covered_by
1
0..1
is_a_component_of
is_the_pri or_account_for
0..*
1
identifies
1
1
is_known_to
knows_of
0..*
1..*
Patient_provider_association
is_primary_facili ty_for 0..1
ori gi nates
houses
0..1
0..1
Healthcare_provider_organization
Champus_coverage
handicapped_program_cd
non_avail_cert_on_file_ind
retirement_dttm
station_id
provides_services_on_behal f_of
is_scheduled_by
provides
1
1
1
1..* provides_patient_services_at
0..1
is_role_of
Individual_healthcare_practitioner
fellowship_field_cd
graduate_school_nm
graduation_dttm
position_cd
practitioner_type_cd
primary_care_ind
residency_field_cd
slot_size_increment_qty
id
1
0..1
is_the_pri mary_provider_for
parti ci pates_as
0..*
Master_patient_service_location
addr : AD
open_tmr
desc
email_address
id : II
licensed_bed_nbr
nm
phon
service_specialty_cd
slot_size_increment_qty
status_cd
type_cd
equipment_type_cd
includes
1..*
1
1..*
has
uti lizes
has_target
Referral
authorized_visits_qty
desc
reason_txt
Transportation
1
is_assi gned_to
is_assi gned
1
parti ci pation_of
1
1
0..1
is_scheduled_by
pertains_to
has
0..*
1..*
0..*
0..*
Target
type_cd : SET<CV>
tmr : SET<CV>
awareness_cd : CV
1..*
parti ci pation_of
Encounter_practitioner
participation_type_cd
0..*
is_participant_for
is_target_for
Responsibility
type_cd : CV
tmr : IVL<TS>
material_id : SET<II>
of
0..1
parti ci pates_as 0..1
for
is_the
belongs_to
1
is_requested_by
contai ns
0..*
1
Consent
defines
1
Material_relationship
type_cd : CV
inversion_ind : BL
tmr : IVL<TS>
position_nmb : LIST<N>
qty : PQ
0..*
1
Material
id : SET<II>
type_cd : CD
form_cd : CV
danger_cd : CD
qty : PQ
1
is_target_for
0..1
is_subject_of
takes_on_role 1
takes_on_role 1
takes_on_role 1
0..1
takes_on_role 1
is_a_rol e_of
takes_on_role 1
takes_on_role 1
takes_on_role_of 1
Patient_service_location_group
id
has_source
Device
slot_size_increment_qty : PQ
is_a_rol e_of
is_requested_by
Medication
form_cd : CD
route_cd : CD
dose_qty : PQ
strength_qty : PQ
rate_qty : PQ
check_qty : PQ
0..*
is_a_rol e_of
1..*
Observation
value : ANY
derivation_expr : ST
property_cd : CV
Condition_node
0..*
0..*
Location_encounter_role
accommodation_cd
effective_tmr
location_role_cd
status_cd
transfer_reason_cd
usage_approved_ind
Supply
qty : PQ
Diet
energy_qty : PQ
carbohydrate_qty : PQ
0..*
has_target
is_associated_wi th
pertains_to
Procedure
entry_site_cd : CD
precedes
0..*
0..*
0..1
is_target_for
1
is_util ized_during
0..*
fol lows
Container
capacty_qty : PQ
height_qty : PQ
diameter_qty : PQ
barrier_delta_qty : PQ
bottom_delta_qty : PQ
seperator_type_cd : CD
cap_type_cd : CD
0..1
is_incl uded_in
0..*
0..1
1
1
Inpatient_encounter
actual_length_of_stay_qty
estimated_days_qty
is_chil d_of
0..*
is_parent_of
is_role_of
0..*
1
Service
id : SET<II>
mood_cd : SET<CV>
universal_service_cd : CD
descr : ED
status_cd : CV
total_time : GTS
critical_time : GTS
method_cd : CD
body_site_cd : CD
interpretation_cd : SET<CV>
confidentiality_cd : CV
max_repeat_nmb : INT
interruptible_ind : BL
substitution_cd : CV
priority_cd : SET<CV>
orderable_ind : BL
is_an_assignment_of
Encounter_drg
approval_ind
assigned_dttm
confidential_ind
cost_outlier_amt
desc
grouper_review_cd
grouper_version_id
outlier_days_nbr
outlier_reimbursement_amt
outlier_type_cd
identifies
0..1
1
has
0..* for
parti ci pation_of
0..*
1
is_documented_by
is_defined_by
0..1
1
0..*
represents
is_source_for
has_parts
has_as_participant
parti ci pates_in
Service_relationship
type_cd : CV
inversion_ind : BL
sequence_nmb : INT
priority_nmb : INT
pause_qty : PQ
checkpoint_cd : CV
split_cd : CV
join_cd : CV
negation_ind : BL
conjunction_cd : BL
has_source
0..*
in
1
has
0..*
Healthcare_service_provider
board_certification_type_cd
board_certified_ind
certification_dttm
effective_tmr
license_id
recertification_dttm
specialty_cd
is_about
has_charges_for
has_as_care_provider
is_assi gned_by
has_as_components
0..*
List_item
sequence_nmb : REAL
priority_nmb : REAL
note_txt : ED
Episode
0..*
has
pertains_to
0..1
1
1..*
1
1
0..1
0..1
Preauthorization
authorized_encounters_qty
authorized_period_begin_dt
authorized_period_end_dt
id
issued_dttm
requested_dttm
restriction_desc
status_cd
status_change_dttm
0..*
1
is_known_by
pertains_to
Bad_debt_collection_agency
1
has
has
0..1
0..*
0..*
parti ci pates_in
0..* is_associated_wi th
Preferred_provider_participation
role_cd
effective_dt
termination_dt
1
0..1
is_insured_by
takes_on_role_of
Billing_information_item
condition_cd
occurrence_cd
occurrence_dttm
occurrence_span_cd
occurrence_span_from_dttm
occurrence_span_thru_dttm
quantity_nbr
quantity_type_cd
value_amt
value_cd
1
Patient
0..1
has
is_a_rol e_of
is_assi gned_to
0..1
1
pertains_to
takes_on_role_of
1
1
has
has_as_a_contact
0..1
1
has_payment_guaranteed_by
provides_contact
is_scheduled_by
has
Living_subject
birth_dttm
birthplace_addr
origin_country_cd
taxonomic_classification_cd
breed_txt
strain_txt
eye_color_cd
coat_or_feather_coloring_txt
confidentiality_constraint_cd
deceased_dttm
deceased_ind
euthanasia_ind
gender_cd
gender_status_cd
primary_name_type_cd
primary_nm
importance_status_txt
qty
production_class_cd
0..1
0..1
1
is_scheduled_by
1..*
belongs_to
1
is_requested_by
Access
gauge_qty : PQ
entry_site_cd : CD
body_site_cd : CD
is_a_rol e_of
0..1
is_a_rol e_of
0..1
is_a_rol e_of
Food
preference_cd : CD
Therapeutic_agent
0..1
belongs_to
is_requested_by
is_sourced_from
0..*
is_sourced_from
0..*
Specimen
body_site_cd : CD
is_a_rol e_of
0..1
January 30, 2000
© 2000, HL7
54
Security_authorization
Current 0.94 RIM Statistics
• 114 Classes
• 542 Attributes
• 160 Association Relationships
• 27 Inheritance Relationships
• 2 Aggregation Relationships
• 37 Subject Areas
– 19 Domain, 8 Work-in-Progress, 10 Administrative
• 34 Data types
• Maintained in an Access database, expressed in UML, and
annotated with a literary expression.
January 30, 2000
© 2000, HL7
55
RIM Domain Subject Areas
• Stakeholders
– Patient
– Person
– Stakeholder
– Healthcare_service_
provider
– Organization
• Patient_encounters
– Clinical Documents
– Scheduling
– Patient_service_material
– Patient_encounter
– Patient_service_event
• Healthcare finances
– Patient_billing_account
– Healthcare_benefit_plan
– Guarantor_contract
January 30, 2000
• Master_tables
• Message_control
© 2000, HL7
56
RIM Literary Expression
Description of: Inpatient_encounter
A patient encounter involving an admission to an inpatient facility.
Class: Encounter_practitioner
Associations for: Inpatient_encounter
HL7 steward: Patient Administration
Associated with:
is_assigned (0,M) :: Encounter_drg :: is_assigned_to (1,1)
Individual_healthcare_practitioner
Patient_encounter
is_preceded_by (1,1) :: Patient_admission :: preceded (1,1)
Description of: Encounter_practitioner
An association between a Healthcare practitioner and a patient
encounter.
is_terminated_by (0,1) :: Patient_departure :: terminates (1,1)
Associations for: Encounter_practitioner
Attributes of: Inpatient_encounter
is_participant_for (1,1) :: Individual_healthcare_practitioner ::
participates_as (0,M)
actual_days_qty
The number of actual days of an inpatient stay. The actual days
quantity can not be calculated from the admission and discharge
dates because of possible leaves of absence.
is_associated_with (1,1) :: Patient_encounter :: has_as_participant
(1,M)
|Datatype^NM |
| PV2^11^00712^Actual Length of Inpatient Stay |
estimated_days_qty
The estimated number of days in an inpatient encounter.
Attributes of: Encounter_practitioner
|Datatype^NM |
| PV2^10^00711^Estimated Length of Inpatient Stay |
participation_type_cd
A code depicting the role of the type of participation the healthcare
practitioner assumes in the encounter (e.g. attending physician,
admitting physician, consulting physician, referring physician).
Class: Patient_encounter
HL7 steward: Patient Administration
Class: Inpatient_encounter
Supertype of:
Inpatient_encounter
HL7 steward: Patient Administration
Is part of:
Episode
Subtype of:
Patient_encounter
Composite of:
Patient_service_event
Person_birth_event
Associated with:
Encounter_drg
Patient_admission
Patient_departure
Associated with:
Appointment
Encounter_practitioner
DRAFT HL7 Reference Information Model
January 30, 2000
Version: V 0-84 19980103 Copyright 1998. All rights reserved.
© 2000, HL7
page 1
57
Sources of Models for Harmonization
Others
Information Model
Use Case Model
HL7
Technical
Committees
Spec
Spec
DIM Spec
Class Diagram State Diagram
UCM Spec
Use Case Diagram
Interaction Model
Spec
Inter Spec
Interaction Diagram
2-nd Order
1 choice of
0-n Drug
0-1 Nursing
HL7
Member
Organizations
Other Standard Development
Organizations
January 30, 2000
© 2000, HL7
58
RIM Harmonization Process
Change Proposal Preparation
Review RIM
Change Proposal
w/ Stewards
Prepare RIM
Change Proposal
Document Rationale
for not supporting
RIM change proposal
Revise or Withdraw
RIM Proposal
Notify HL7 Members
of RIM Change
Proposal Posting
Provide Comment
on RIM Change
Proposals
Post RIM Change Proposals
Submit
RIM Change
Proposal
Post RIM
Change Proposal
Harmonization Meeting
Discuss the RIM
Change Proposal
Revise, withdraw,
or Table RIM
Change Proposal
Vote on RIM
Change Proposal
Apply Approved
Changes to RIM
Hold TSC and/or
Board Appeals
Finalize
Revised RIM
Apply Technical
Coorections
Post Harmonization Meeting Review
Present RIM
Harmonization Report
to TSC
January 30, 2000
© 2000, HL7
59
Information Model Facilitators
• A team of model facilitators was recruited from within the HL7
working group.
• The model facilitators are provided focused training in the HL7
modeling methods and tools.
• The model facilitators provide modeling assistance to the
technical committees and special interest groups.
• The facilitators meet as a team at each working group meeting to
update each other on progress and to identify modeling or
process issues.
• The facilitators prepare change proposals for the RIM and attend
RIM harmonization meetings.
January 30, 2000
© 2000, HL7
60
Domain Specialists and Data Stewards
• The members of the message producing technical committees
and message content special interest groups are the domain
specialists for the HL7 RIM.
• The technical committees are assigned stewardship responsibility
for components of the information model, based upon their
domain expertise.
• The technical committee designates a domain specialist from
among its members to represent their stewardship interest at RIM
harmonization meetings.
• Data steward representatives and model facilitators collaborate
with each other to prepare RIM change proposals.
• Data steward representatives attend RIM harmonization
meetings.
January 30, 2000
© 2000, HL7
61
November 1999 Harmonization Meeeting
• What:
• From:
–
–
–
–
–
–
–
–
–
Physicians
Data administrators
System developers
Informaticists
January 30, 2000
© 2000, HL7
Very large software companies
Five-person firms
Consultancies
Large provider organizations
Solo practices
62
State Transition Diagrams
Scheduled
delete_scheduled_encounter ^C00XMT006
Deleted
schedule_encounter ^C00XMT003
delete_active_encounter ^C00XMT007
start_encounter ^C00XMT005
null
delete_discharged_encounter
start_encounter ^C00XMT004
Active
discharge_patient ^C00XMT008
Discharged
cancel_discharge ^C00XMT009
State diagram: Patient_encounter
Transitions include reference
to the trigger event.
January 30, 2000
© 2000, HL7
63
Our agenda
What is HL7?
Brief review of HL7 Version 2.x
Why undertake Version 3?
Version 3 - an overall standards strategy
Version 3 - Analysis Steps
RIM - in Depth
Version 3 for Messages
January 30, 2000
© 2000, HL7
64
eflects agreements made through harmonization in November, 1999
RIM - 0.94 -- In depth
Heal thcare_finances
Patient_encounters
Heal thcare_finances
Healthcare_finances
DATATYPES
<<Data_type>>
Any_data_type : ANY
<<Data_type>>
Quantity : QTY
<<Data_type>>
Discrete : DSCR
Text
<<Data_type>>
Ordered : ORD
Thing
HEALTH LEVEL 7
REFERENCE INFORMATION MODEL
RIM_0094
released January, 2000
reflects agreements made through harmonization in November, 1999
0..*
is_source_of
0..*
is_part_of
is_authenti cated_by
Heal thcare_finances
Patient_encounters
Heal thcare_finances
Healthcare_finances
authenticates
1
has_originati ng_organi zati on
0..*
1
created_by
Healthcare_document_authenticator
Heal thcare_finances
Patient_encounters
Patient_service_material
Heal thcare_stakeholders
Healthcare_stakeholders
Clinical_document
has_parts
Authentication
authentication_dttm : TS
type_cd : CV
0..1
is_a
Heal thcare_stakeholders
Healthcare_stakeholders
Document_recipient
Heal thcare_finances
Patient_encounters
Patient_service_event
0..1
0..1
is_role_of
of
0..*
has_been_received_by
1..* of
1..*
has_been_originated_by
Originator
is_role_of
0..1
is_transcri bed_by
Transcriptionist
0..1
is_role_of
0..*
contai ned_in
0..*
Patient_information_disclosure
disclosure_dttm
info_disclosed_desc
info_requested_desc
reason_cd
requested_dttm
is_parent_document_for
urgency_cd
pertains_to
0..*
0..1
is_provi ded_to
0..*
0..*
has_as_a_parent_document
is_the_recipi ent_of
1
requests
is_requested_by
0..*
Service_scheduling_request
allowable_substitutions_cd
duration_qty
start_dttm
start_offset_qty
status_cd
Resource_request
allowable_substitutions_cd
duration_qty
start_dttm
start_offset_qty
status_cd
1
1
has_as_secondary_participant
1
parti ci pates_as_primary_in
1
1
takes_on_role_of
takes_on_role_of
takes_on_role_of
1
1
takes_on_role_of
Stakeholder
addr : SET<AD>
credit_rating_cd
email_address_txt
phon : SET<TEL>
type_cd
real_id : SET<II>
id : SET<II>
1
requests
requests
parti ci pates_as
0..*
refers_to_person_by
is_used_by
0..*
0..1
Person_name
effective_dt
cd
nm
purpose_cd
termination_dt
type_cd
0..1
Employer
<>> effective_tmr
provides_contact
Organization
nm : SET<ON>
standard_industry_class_cd
takes_on_role_of
1
is_role_of
0..1
contai ns
0..*
Health_chart_deficiency
assessment_dttm
desc
level_cd
type_cd
categori zes
1
takes_on_role_of
1
assigns
1
takes_on_role_of
is_role_of
1
0..*
requests
is_represented_by
is_em pl oyer_of
0..*
0..*
T
Durable_medical_equipment_request
requested_qty
type_cd
Patient_service_location_request
type_cd
Patient_appointment_request
requests
0..*
0..*
0..*
<<Data_type>>
Postal_and_residential_address : AD
T
<<Data_type>>
Interval : IVL
requests 0..*
<<Data_type>>
Organization_name : ON
type_cd : CV
value : ST
<<Data_type>>
Address_part : ADXP
<<Data_type>>
Uncertain_value-narrative : UVN
T
<<Data_type>>
Uncertain_discrete_value_using_probability : UDVP
T
T, R
<<Data_type>>
History : HIST
<<Data_type>>
List : LIST
0..*
0..*
requests
T
<<Data_type>>
Annotated : ANT
<<Data_type>>
Set_ON : SET<ON>
T
<<Data_type>>
Parametric_probability_distribution : PPD
T
T, R
requests
<<Data_type>>
Set : SET
<<Data_type>>
History_item : HXIT
<<Data_type>>
Person_name_part : PNXP
T
<<Data_type>>
Person_name_type : PN
<<Data_type>>
Non-parametric_probability_Distribution : NPPD
0..1
Health_chart
health_chart_id
health_chart_type_cd
status_cd
Heal thcare_finances
Patient_encounters
Patient_service_event
is_the_source_of
0..*
is_housed_at
0..*
belongs_to
0..1
is_a_subdivision_of
0..*
0..1
Durable_medical_equipment_group
id
CONTROL_QUERY
contai ns
0..*
is_managed_by
0..*
1
is_reserved_by
1
Patient_slot
is_assessed_against
0..*
contai ns
is_requested_by
Resource_slot
offset_qty
allocated_qty
resource_type_cd
status_cd
start_dttm
Patient_service_location_slot
is_a_schedul eable_uni t_for 0..*
1..*
1
Generalizations
<<Data_type>>
General_timing_specification : GTS
T, S, R
<<Data_type>>
Bag : BAG
enters
Accident_information_source
1
is_role_of
Quantity/ Time
<<Data_type>>
No_information : NULL
<<Data_type>>
Integer : INT
Individual_healthcare_practitioner_pool
id
Entering_person
0..1
is_a_rol e_of
enters
0..1
0..*
represents
takes_role_of
has_an_assessment_of
0..1
<<Data_type>>
Monetary_amount : MO
Demographic
<<Data_type>>
Binary_data : BIN
owns
1
is_for
Stakeholder_affiliate
family_relationship_cd
<<Data_type>>
Real : REAL
<<Data_type>>
Instance_identifier : II
T, R
0..1
is_requested_by
is_a_rol e_of
0..1
takes_on_role_of
1
0..*
parti ci pates_as_secondary_i n
<<Data_type>>
Concept_descriptor : CD
<<Data_type>>
ISO_object_identifier : OID
<<Data_type>>
Collection : COLL
0..*
is_requested_by
Individual_healthcare_practitioner_request
practitioner_type_cd
is_entered_by
0..*
1
1
takes_on_role_of
acts_as
1
1
1
<<Data_type>>
Code_phrase : CDPH
Generic
<<Data_type>>
Point_in_time : TS
<<Data_type>>
Physical_quantity : PQ
<<Data_type>>
Number : N
<<Data_type>>
Telecommunication_address : TEL
Patient_information_recipient
has
takes_on_role_of
has_as_primary_parti ci pant
0..*
<<Data_type>>
Code_value : CV
<<Data_type>>
Universal_resource_identifier : URI
requests
Stakeholder_affiliation
affiliation_type_cd
desc
effective_dt
termination_dt
<<Data_type>>
Code_translation : CDXL
<<Data_type>>
Boolean : BL
has_as_contact
Appointment_request
reason_cd
administrative_type_cd
equip_selection_criteria_expr
id
location_selection_criteria_expr
priority_cd
repeating_interval_duration_qty
repeat_pattern_expr
change_reason_cd
duration_qty
start_tmr
time_selection_criteria_expr
explicit_time_interval_expr
appointment_rqst_category_cd
status_cd
dttm
Heal thcare_finances
Patient_encounters
Patient_service_material
0..*
<<Data_type>>
Character_string : ST
<<Data_type>>
Set_CRR : SET<CRR>
documents
0..*
<<Data_type>>
Ratio : RTO
<<Data_type>>
Encapsulated_data : ED
1
1
Clinical_document_header
availability_status_cd
change_reason_cd
completion_status_cd
confidentiality_status_cd
content_presentation_cd
document_creation_dttm : TS
file_nm : ST
id : II
last_edit_dttm
reporting_priority_cd
results_report_dttm
storage_status_cd
transcription_dttm
type_cd : CD
document_change_cd : CV
version_nbr : INT
version_dttm : TS
transcribes
0..1
<<Data_type>>
Concept_role_relationship : CRR
name : CV
inversion_ind : BL
value : CDPH
is_acknowledged_by
Message_header
manages
Individual_healthcare_practitioner_slot
is_scheduleabl e_unit_for 0..*
Durable_medical_equipment_slot
is_scheduleabl e_unit_for
0..*
books
1..*
acknowl edges
0..*
Message_ack
Row_table_data
1
Schedule
id
Query_by_selection_spec
Query_subscription_spec
is_scheduleabl e_unit_for
0..*
Query_ack
Query_by_parameter_spec
0..1
0..1
has_as_a_subdivision
0..*
is_contact_for
0..*
is_contact_for
0..*
Contact_person
contact_reason_cd
is_contact_for
is_a_contact_for
is_contact_for
is_a_contact_for
0..1
0..1
0..1
0..*
Response_conrol_spec
has
0..*
is_contact_for
has_as_empl oyer
0..1
provides_contact
0..1
0..*
Guarantor
0..1 is_role_of
financial_class_cd
guarantees_paym ent_under
household_annual_income_amt
household_size_nbr
1
provides_contact
Insurer
effective_tmr
1
0..1
is_role_of
1
issues
1
issues
offers
Insurance_certification_contact
participation_type_cd
Person_employment
addr
effective_dt
hazard_exposure_txt
job_class_cd
job_title_nm
phon
protective_equipment_txt
salary_qty
salary_type_cd
status_cd
termination_dt
occupation_cd
job_status_cd
0..1
0..*
acts_in_role_of
is_issued_by
is_contact_for
includes
0..*
is_role_of
1
enters
Employee
1
has_contact
affirms_insurance_coverage_for
1
has_coverage_affi rmed_by
provides_vali dation_for
1
Guarantor_contract
billing_hold_ind
billing_media_cd
charge_adjustment_cd
contract_duration_cd
contract_type_cd
effective_tmr
interest_rate_nbr
periodic_payment_amt
priority_ranking_cd
provides_payment_guarantee_for
0..*
is_entered_by
0..*
is_categorized_by
provides_opi ni on_on
Certification_additional_opinion
effective_dttm
status_cd
1
1
is_source_for
1..*
1..*
0..*
1
takes_on_role_of
0..1
has_payment_guaranteed_by
0..*
1
takes_on_role_of
has_as_empl oyee
is_em pl oyee_i n
1
1
takes_on_role_of
is_role_of
0..*
Insurance_certification
appeal_reason_cd
certification_duration_qty
effective_tmr
id
insurance_verification_dttm
modification_dttm
non_concur_cd
non_concur_effective_dttm
penalty_amt
report_of_eligibility_dttm
report_of_eligibility_ind
0..*
0..*
is_provi ded_by
covers
0..*
1
Person
birth_dttm : TS
birthplace_addr
citizenship_country_cd
confidentiality_constraint_cd
deceased_dttm
deceased_ind
disability_cd
education_level_cd
ethnic_group_cd
administrative_gender_cd
marital_status_cd
military_branch_of_service_cd
military_rank_nm
military_status_cd
nationality_cd
race_cd
religious_affiliation_cd
student_cd
very_important_person_cd
status_cd
ambulatory_status_cd
birth_order_nbr
living_arrangement_cd
living_dependency_cd
multiple_birth_ind
organ_donor_ind
preferred_pharmacy_id
Financial_transaction
alternate_desc
desc
extended_amt
fee_schedule_cd
insurance_amt
posting_dt
qty
transaction_batch_id
transaction_cd
transaction_dttm
transaction_id
transaction_type_cd
unit_amt
unit_cost_amt
1
0..1
takes_on_role_of
is_subject_of
1 has
com muni cates_i n
1
Language
0..*
1 is_speci fied_by
Administrative_patient_death
death_certificate_id
death_certificate_recorded_dttm
death_classification_cd
death_dttm
death_location_txt
death_notification_source_nm
death_verification_cd
death_verification_dttm
death_verification_nm
is_communicated_by
Notary_public
effective_interval_tmr
notary_county_cd
notary_state_cd
is_a_rol e_of
specifi es_abi lity_i n
0..*
Language_ability
mode_cd
proficiency_level_cd
0..1
provides_contact
is_role_of
Healthcare_benefit_product_purchaser
1
1..1
is_the_purchaser_of
is_covered_by
0..*
has_as_purchaser
is_offered_by
0..*
0..1
Master_healthcare_benefit_product
assignment_of_benefits_ind
benefit_product_desc
id
benefit_product_nm
benefit_product_type_cd
benefits_coordination_ind
cob_priority_nbr
combine_baby_bill_ind
effective_tmr
group_benefit_ind
mail_claim_party_cd
release_information_cd
status_cd
coverage_type_cd
agreement_type_cd
policy_category_cd
access_protocol_desc
is_a_rol e_of
is_vali dated_by
Healthcare_benefit_coverage_item
service_category_cd
service_cd
service_modifier_cd
authorization_ind
network_ind
assertion_cd
covered_parties_cd
qty
quantity_qualifier_cd
time_period_qualifier_cd
range_low_qty
range_high_qty
range_units_cd
assertion_effective_tmr
eligibility_cd
policy_source_cd
eligibility_source_cd
copay_limit_ind
0..1
takes_on_role_of
1
takes_on_role_of
0..*
insures
1
is_instantiated_as
is_a_i nstance_of
0..*
governs
is_governed_by
0..*
0..*
is_for
0..*
provides_coverage_for
has
1
has_as_a_contact
parti ci pates_as
0..1
1
Billing_information_item
condition_cd
occurrence_cd
occurrence_dttm
occurrence_span_cd
occurrence_span_from_dttm
occurrence_span_thru_dttm
quantity_nbr
quantity_type_cd
value_amt
value_cd
takes_on_role_of
1
0..1
0..*
pertains_to
1
pertains_to
1
0..1
0..*
is_assi gned
0..*
Bad_debt_billing_account
bad_debt_recovery_amt
bad_debt_transfer_amt
transfer_to_bad_debt_dttm
transfer_to_bad_debt_reason_cd
has_as_care_recipient
0..*
has_as_a_pri or_account
1
0..*
belongs_to
1
1
1
has_a_pri mary_provider
0..*
has_as_primary_facili ty
0..*
Patient_billing_account
account_id
adjustment_cd
authorization_information_txt
billing_status_cd
certification_required_ind
current_unpaid_balance_qty
delete_dttm
deleted_account_reason_cd
expected_insurance_plan_qty
expected_payment_source_cd
notice_of_admission_dttm
notice_of_admission_ind
patient_financial_class_cd
price_schedule_id
purge_status_cd
purge_status_dttm
report_of_eligibility_dttm
retention_ind
signature_on_file_dttm
special_program_cd
stoploss_limit_ind
suspend_charges_ind
total_adjustment_qty
total_charge_qty
total_payment_qty
separate_bill_ind
is_issued_by
0..1
Administrative_birth_event
baby_detained_ind
birth_certificate_id
birth_method_cd
birth_recorded_county_cd
birth_recorded_dttm
newborn_days_nbr
stillborn_ind
authorizes
is_booked_in
0..*
reserves
0..*
is_entered_by
has_as_a_contact
0..1
is_part_of
0..*
schedul es
0..*
0..*
0..1
Appointment
appointment_duration_qty
appointment_timing_qt
event_reason_cd
expected_service_desc
expected_start_dttm
id
status_cd
urgency_cd
is_parent_of
0..1
0..*
owned_by
is_chil d_of
0..1
1
Service_list
id : SET<II>
type_cd : CV
name : ST
desc : ED
0..*
parti ci pates_as
is_about
is_source_for
0..*
1
has_parts
is_requested_by
has_parts
1
1
is_invol ved_i n
involves
has
pertains_to
pertains_to
Disability
effective_dttm
return_to_work_auth_dttm
termination_dttm
unable_to_work_effective_dttm
1..*
is_obtai ned_from
0..*
is_identifi ed by
Diagnostic_related_group
base_rate_amt
capital_reimbursement_amt
cost_weight_amt
id
major_diagnostic_category_cd
operating_reimbursement_amt
reimbursement_amt
standard_day_qty
standard_total_charge_amt
trim_high_day_qty
trim_low_day_qty
0..*
Administrative_patient_accident
accident_death_ind
accident_desc
accident_dttm
accident_location_desc
accident_state_cd
accident_type_cd
job_related_accident_ind
assessment_dttm
is_present_in
0..*
has
is_assi gned_as
1
is_scheduled_by
0..1
1..*
Patient_encounter
administrative_outcome_txt
cancellation_reason_cd
desc
encounter_classification_cd
expected_insurance_plan_qty
first_similar_illness_dttm
follow_up_type_cd
id : II
classification_cd
purpose_cd
special_courtesies_cd
active_tmr
status_cd
urgency_cd
triage_classification_cd
medical_service_cd
publicity_constraint_cd
reason_cd
referral_cd
source_cd
patient_valuables_desc
pre_admit_test_ind
readmission_ind
valuables_location_desc
acuity_level_cd
actual_discharge_disposition_cd
discharge_location_id
expected_discharge_disp_cd
birth_encounter_ind
is_part_of
1..*
is_part_of
0..*
represents
1
represented_as
Episode_of_condition
Episode_of_care
0..1
0..*
parti ci pation_of
pertains_to
0..*
0..*
is_assi gned_to
as_assigned to it
has
1
0..*
0..1
Risk_management_incident
incident_cd
incident_dttm
incident_severity_cd
incident_type_cd
Actor
type_cd : SET<CV>
tmr : IVL<TS>
note : ED
signature_cd : CV
is_charged_to
is_associated_wi th
is_covered_by
1
0..*
1
Healthcare_service_provider
board_certification_type_cd
board_certified_ind
certification_dttm
effective_tmr
license_id
recertification_dttm
specialty_cd
has_as_components
identifies
1
1
is_known_to
knows_of
0..*
1..*
Patient_provider_association
0..*
is_primary_facili ty_for 0..1
is_parent_of
is_role_of
0..1
ori gi nates
0..1
houses
Healthcare_provider_organization
provides_services_on_behal f_of
is_scheduled_by
akeholder_affiliation
iation_type_cd
sc
ective_dt
mination_dt
provides
0..*
January 30, 2000
1
1
1
1..* provides_patient_services_at
0..1
is_role_of
Individual_healthcare_practitioner
fellowship_field_cd
graduate_school_nm
graduation_dttm
position_cd
practitioner_type_cd
primary_care_ind
residency_field_cd
slot_size_increment_qty
id
0..*
Master_patient_service_location
addr : AD
open_tmr
desc
email_address
id : II
licensed_bed_nbr
nm
phon
service_specialty_cd
slot_size_increment_qty
status_cd
type_cd
equipment_type_cd
1
0..1
fol lows
parti ci pation_of
1
Transportation
1
is_assi gned_to
is_assi gned
1
0..*
0..*
is_associated_wi th
1
1
0..1
1..*
is_scheduled_by
pertains_to
has
0..*
1..*
Encounter_practitioner
participation_type_cd
0..*
is_participant_for
is_target_for
Responsibility
type_cd : CV
tmr : IVL<TS>
material_id : SET<II>
of
0..1
0..*
parti ci pates_as 0..1
for
has
is_the
contai ns
0..*
Patient_service_location_group
id
is_requested_by
0..1
takes_on_role_of
Container
capacty_qty : PQ
height_qty : PQ
diameter_qty : PQ
barrier_delta_qty : PQ
bottom_delta_qty : PQ
seperator_type_cd : CD
cap_type_cd : CD
is_incl uded_in
0..1
1
0..*
1
Material
id : SET<II>
type_cd : CD
form_cd : CV
danger_cd : CD
qty : PQ
1
is_target_for
0..1
is_subject_of
1
takes_on_role 1
takes_on_role_of 1
1
0..1
is_a_rol e_of
0..1
is_a_rol e_of
0..1
is_a_rol e_of
parti ci pates_as
0..1
is_requested_by
is_sourced_from
0..*
is_sourced_from
0..*
Specimen
body_site_cd : CD
parti ci pates_as_primary_in
takes_on_role_of
takes_on_role_of
takes_on_role_of
takes_on_role_of
© 2000, HL7
Medication
form_cd : CD
route_cd : CD
dose_qty : PQ
strength_qty : PQ
rate_qty : PQ
check_qty : PQ
Consent
defines
is_a_rol e_of
0..1
1
1
1
1
1
has_source
Stakeholder
addr : SET<AD>
credit_rating_cd
email_address_txt
phon : SET<TEL>
type_cd
real_id : SET<II>
id : SET<II>
Device
slot_size_increment_qty : PQ
is_a_rol e_of
belongs_to
has_as_primary_parti ci pant
Condition_node
1
takes_on_role 1
takes_on_role 1
takes_on_role 1
0..1
takes_on_role 1
is_a_rol e_of
takes_on_role 1
is_a_rol e_of
belongs_to
is_requested_by
1
1..*
Diet
energy_qty : PQ
carbohydrate_qty : PQ
Observation
value : ANY
derivation_expr : ST
property_cd : CV
Material_relationship
type_cd : CV
inversion_ind : BL
tmr : IVL<TS>
position_nmb : LIST<N>
qty : PQ
parti ci pation_of
0..*
Location_encounter_role
accommodation_cd
effective_tmr
location_role_cd
status_cd
transfer_reason_cd
usage_approved_ind
Supply
qty : PQ
0..*
has_target
pertains_to
Procedure
entry_site_cd : CD
0..*
Target
type_cd : SET<CV>
tmr : SET<CV>
awareness_cd : CV
0..*
0..*
0..1
Referral
authorized_visits_qty
desc
reason_txt
is_util ized_during
is_the_pri mary_provider_for
includes
1..*
has
has_target
is_target_for
1
precedes
0..*
0..1
1
1
1..*
uti lizes
0..*
Inpatient_encounter
actual_length_of_stay_qty
estimated_days_qty
identifies
0..1
0..*
1
Service
id : SET<II>
mood_cd : SET<CV>
universal_service_cd : CD
descr : ED
status_cd : CV
total_time : GTS
critical_time : GTS
method_cd : CD
body_site_cd : CD
interpretation_cd : SET<CV>
confidentiality_cd : CV
max_repeat_nmb : INT
interruptible_ind : BL
substitution_cd : CV
priority_cd : SET<CV>
orderable_ind : BL
is_an_assignment_of
Encounter_drg
approval_ind
assigned_dttm
confidential_ind
cost_outlier_amt
desc
grouper_review_cd
grouper_version_id
outlier_days_nbr
outlier_reimbursement_amt
outlier_type_cd
is_chil d_of
Champus_coverage
handicapped_program_cd
non_avail_cert_on_file_ind
retirement_dttm
station_id
1
has
0..* for
parti ci pation_of
0..1
1
is_documented_by
is_defined_by
has_as_participant
0..*
is_a_component_of
Service_relationship
type_cd : CV
inversion_ind : BL
sequence_nmb : INT
priority_nmb : INT
pause_qty : PQ
has_source checkpoint_cd : CV
split_cd : CV
0..*
join_cd : CV
negation_ind : BL
conjunction_cd : BL
0..*
is_source_for
has_parts
in
1
has
is_the_pri or_account_for
is_assi gned_by
0..*
is_about
has_charges_for
has_as_care_provider
parti ci pates_in
0..*
List_item
sequence_nmb : REAL
priority_nmb : REAL
note_txt : ED
Episode
desc
episode_type_cd
id
list_closed_ind
outcome_txt
recurring_service_ind
0..*
has
0..*
0..1
1
is_authori zed_by
1..*
1
0..1
0..1
Preauthorization
authorized_encounters_qty
authorized_period_begin_dt
authorized_period_end_dt
id
issued_dttm
requested_dttm
restriction_desc
status_cd
status_change_dttm
0..*
pertains_to
1
has
0..* is_associated_wi th
0..*
1
is_known_by
has
1
Patient
0..1
has
has
0..*
Living_subject
birth_dttm
birthplace_addr
origin_country_cd
taxonomic_classification_cd
breed_txt
strain_txt
eye_color_cd
coat_or_feather_coloring_txt
confidentiality_constraint_cd
deceased_dttm
deceased_ind
euthanasia_ind
gender_cd
gender_status_cd
primary_name_type_cd
primary_nm
importance_status_txt
qty
production_class_cd
pertains_to
parti ci pates_in
Bad_debt_collection_agency
0..*
1
is_a_rol e_of
has
Preferred_provider_participation
role_cd
effective_dt
termination_dt
has
is_insured_by
is_assi gned_to
0..1
is_scheduled_by
0..1
1
has_payment_guaranteed_by
0..1
Security_authorization
is_a_rol e_of
1
is_scheduled_by
1..*
belongs_to
1
is_requested_by
Access
gauge_qty : PQ
entry_site_cd : CD
body_site_cd : CD
Food
preference_cd : CD
Therapeutic_agent
65
1
1
1
1
1
1
0..*
Information Modeling Language
• Class defines things
• Attributes are the data we
record about classes
• Associations describe the
way things relate
“Reading” associations in plain English:
Patient
name
: PN
DOB
: Date
address : AD
0..*
provides care for
Doctor
name
: PN
1..* specialty : CD
phone
: TEL
seeks care at
“Every Patient … seeks care at … 1 to many … Doctors”
“Every Doctor … provides care for ... zero to many … Patients”
January 30, 2000
© 2000, HL7
66
RIM - in-depth -- Unified Service Action Model
• USAM
– is the Unified Service Action Model
– has been introduced to the RIM in stages over the last 24
months
– seeks to bind the core concepts underlying clinical care and
patient management into a unified set of classes
– still a ‘work in progress’, although definitely nearing the
finish line
January 30, 2000
© 2000, HL7
67
The Service Action Oriented Perspective
Service_relationship
type_cd : CV
inversion_ind : BL
0..1
sequence_nmb : INT
priority_nmb : INT
has_target
pause_qty : PQ
checkpoint_cd : CV
split_cd : CV
join_cd : CV
negation_ind : BL
conjunction_cd : BL
Service_list
id : SET<II>
type_cd : CV
name : ST
desc : ED
1
has_parts
Target
type_cd : SET<CV>
tmr : SET<CV>
0..* awareness_cd : CV
in
is_target_for
1
1
has
Service
id : SET<II>
mood_cd : SET<CV>
universal_service_cd : CD
descr : ED
0..*
has_source
status_cd : CV
1 total_time : GTS
has
critical_time : GTS
is_source_for method_cd : CD
1
body_site_cd : CD
interpretation_cd : SET<CV>
confidentiality_cd : CV
max_repeat_nmb : INT
interruptible_ind : BL
substitution_cd : CV
priority_cd : SET<CV>
1 orderable_ind : BL
represents
is_part_of
0..*
List_item
sequence_nmb : REAL 0..*
priority_nmb : REAL
note_txt : ED
• Covers all health care
related services.
• Unifies all services in a
common
“super-class.”
Actor
type_cd : SET<CV>
tmr : IVL<TS>
note : ED
0..*
signature_cd : CV
for
• Models the detail in
specializations of the
service.
– observation: value
– medication: dose, form, route
represented_as
Condition_node
Observation
value : ANY
derivation_expr : ST
property_cd : CV
Procedure
entry_site_cd : CD
January 30, 2000
Medication
form_cd : CD
route_cd : CD
dose_qty : PQ
strength_qty : PQ
rate_qty : PQ
check_qty : PQ
• Relates to actors, targets,
Supply
and other
services through
qty : PQ
the super-class.
Transportation
© 2000, HL7
– tracking of responsibilities
– tracking
of resources
Diet
energy_qty : PQ
–carbohydrate_qty
tracking
: PQof reason, etc.
68
Service and Context
• who is the actor?
• provider, individual or organization
• patient, relative, neighbors in home health
• what is the service?
• observation, judgement, medication, surgery, physiotherapy
• consents, advanced directives, education, consultation
• on whom or what (recipient)?
Service_relationship
type_cd : CV
inversion_ind : BL
0..1
sequence_nmb : INT
priority_nmb : INT
has_target
pause_qty : PQ
checkpoint_cd : CV
split_cd : CV
join_cd : CV
negation_ind : BL
conjunction_cd : BL
is_target_for
1
1
has
Service
id : SET<II>
mood_cd : SET<CV>
universal_service_cd : CD
descr : ED
0..*
has_source
status_cd : CV
1 total_time : GTS
has
critical_time : GTS
is_source_for method_cd : CD
1
body_site_cd : CD
interpretation_cd : SET<CV>
confidentiality_cd : CV
max_repeat_nmb : INT
interruptible_ind : BL
substitution_cd : CV
priority_cd : SET<CV>
1 orderable_ind : BL
represents
• people: patient, relative, neighbor (caring person), community
• things: specimen, food, environmental samples
Service_list
id : SET<II>
type_cd : CV
name : ST
desc : ED
– indirect recipient, beneficiary (“for whom”)
• patient, community (population)
1
has_parts
is_part_of
0..*
List_item
sequence_nmb : REAL 0..*
priority_nmb : REAL
note_txt : ED
• when?
Condition_node
January 30, 2000
© 2000, HL7
Actor
type_cd : SET<CV>
for
tmr : IVL<TS>
note : ED
0..*
signature_cd : CV
represented_as
• where? (facility, location)
• with what? (material resources)
Target
type_cd : SET<CV>
tmr : SET<CV>
0..* awareness_cd : CV
in
Observation
value : ANY
derivation_expr : ST
property_cd : CV
Procedure
entry_site_cd : CD
Supply
qty : PQ
Medication
form_cd : CD
route_cd : CD
dose_qty : PQ
strength_qty : PQ
rate_qty : PQ
check_qty : PQ
Transportation
Diet
energy_qty : PQ
carbohydrate_qty : PQ
69
?? b-b-but where is
Service_relationship
type_cd : CV
inversion_ind : BL
0..1
sequence_nmb : INT
priority_nmb : INT
has_target
pause_qty : PQ
checkpoint_cd : CV
split_cd : CV
join_cd : CV
negation_ind : BL
conjunction_cd : BL
Service_list
id : SET<II>
type_cd : CV
name : ST
desc : ED
1
has_parts
Target
type_cd : SET<CV>
tmr : SET<CV>
0..* awareness_cd : CV
in
Service catalog entry?
is_target_for
1
1
has
Service order or plan?
Service
id : SET<II>
mood_cd : SET<CV>
universal_service_cd : CD
descr : ED
0..*
has_source
status_cd : CV
1 total_time : GTS
has
critical_time : GTS
is_source_for method_cd : CD
1
body_site_cd : CD
interpretation_cd : SET<CV>
confidentiality_cd : CV
max_repeat_nmb : INT
interruptible_ind : BL
substitution_cd : CV
priority_cd : SET<CV>
1 orderable_ind : BL
represents
Service event?
Actor
type_cd : SET<CV>
for
tmr : IVL<TS>
note : ED
0..*
signature_cd : CV
Result of service?
is_part_of
0..*
List_item
sequence_nmb : REAL 0..*
priority_nmb : REAL
note_txt : ED
Clinical goal?
represented_as
Condition_node
Observation
value : ANY
derivation_expr : ST
property_cd : CV
Procedure
entry_site_cd : CD
January 30, 2000
???
Supply
qty : PQ
Medication
form_cd : CD
route_cd : CD
dose_qty : PQ
strength_qty : PQ
rate_qty : PQ
check_qty : PQ
Transportation
© 2000, HL7
Diet
energy_qty : PQ
carbohydrate_qty : PQ
70
Service class & Mood code
• A service is an intentional action ... A Service instance
is a record of such an intentional action.
• The mood of an action tells whether the action
represents a fact (event) an order, a plan (intent), a goal,
a risk, a potential (definition) or the like.
• A service instance represents an action in one and only
one such mood. Thus, service definitions (master),
orders, plans, and performance records (events) are all
represented by an instance of class Service.
• Any instance of a Service assumes one and only one
mood and will not change its mood along its life cycle.
... the mood of a service instance is static and not part
of the state.
January 30, 2000
© 2000, HL7
71
Examples of constructs enabled by USAM
• Condition Node and Condition Thread
– Managing patient problems collaboratively and continuously.
• Representing Knowledge
– Defining service concepts and semantic relationships
– Take a stab at the vocabulary problem
• Workflow Management
– Defining and managing collaborative processes.
– Timed and conditioned care plans and clinical guidelines.
• Accountability, security, privacy
– Application layer-based approaches
– Integrated in the information model
January 30, 2000
© 2000, HL7
72
Data types vis-à-vis Classes - the basics
• A data type is represented as a UML class
• Both have descriptions
• A primitive data type has no components and is defined
solely by its description
• Data types may have components, as classes have attributes
• Components and attributes are each assigned a data type
• “Abstract” data types may not be assigned to attributes.
They are reserved for use in defining other data types
January 30, 2000
© 2000, HL7
73
Quantity data types
Integer : INT
Physical_quantity : PQ
value : REAL
unit : CV
Boolean : BL
Binary_data : BIN
Number : N
Monetary_amount : MO
value : REAL
currency_unit : CV
Ratio : RTO
numerator : QTY
denominator : QTY
No_information : NULL
flavor : CD
Real : REAL
value : N
precision : N
January 30, 2000
© 2000, HL7
Null is not a type to be
assigned an attribute, but rather
one that is communicated
(sent) when the information is
missing
The flavor of the null value.
Can be interpreted as the
reason why the information is
missing.
74
Time-related data types
• Point in time - very similar to the
Version 2.x time stamp -- a scalar
defining a point on the axis of natural
time.
Point_in_time : TS
General_timing_specification : GTS
• General timing specification is a primitive data type that
is conceptually an arbitrary set of points in time. It is any
combination of (1) a point in time, and/or (2) an interval of
time. This includes uncertain points and intervals of time.
Values are defined in terms of a literal expression syntax.
Regardless of how complex the literal definition is, it will
always decompose into an ordered sequence of points or
intervals of time.
• Primarily used for scheduling of events to allow concepts
like “the last Tuesday of each month” (Poker night)
January 30, 2000
© 2000, HL7
75
Text-related data types
Character_string : ST
• Encapsulated data
–
–
–
–
–
Encapsulated_data : ED
media descriptor - MIME types
media_descriptor : CV
data : BIN
compression : CV
data - the pay-load
charset : CV
reference : TEL
compression - code for compression algorithm
thumbnail : BIN
integrity_check : BIN
charset - character encoding if other than default ic_algorithm : CV
reference - the telecommunication address to the pay-load in
cases where the pay-load is too large to include
– thumbnail - a logical precis of the pay-load
– integrity_check - a cryptographically strong sum-check for
use in signing, authenticating, etc.
– ic_algorithm - the algorithm used to create the integrity check
January 30, 2000
© 2000, HL7
76
Demographic data types
Postal_and_residential_address : AD
purpose : CV
bad_ind : BL
value : LIST<ADXP>
• Postal address is a list of
address parts whose roles
are things like ZIP code,
city, country, post box, etc.
Address_part : ADXP
value : ST
role : CV
Person_name_type : PN
value : LIST<PNXP>
Person_name_part : PNXP
value : ST
classifiers : SET<CV>
Organization_name : ON
type_cd : CV
value : ST
• Person_name is a similar
construct, where the classifiers are may
express multiple dimensions such as given name vs.
family name and name in public records vs. nickname.
January 30, 2000
© 2000, HL7
77
“Thing” data types (1)
• OIDs - HL7 can issue OIDs and can
enable a member or user organization to
create OIDs ‘underneath’ the HL7 root.
• In the Instance Identifier, the
combination of assigning_authority and
value_text must be unique.
ISO_object_identifier : OID
Instance_identifier : II
assigning_authority : OID
assigning_authority_print_nm : ST
value_txt : ST
type_cd : CV
valid_tmr : IVL<TS>
Telecommunication_address : TEL
address : URI
use_cd : SET<CV>
valid_time : GTS
• The universal resource identifier is
defined and maintained by the IETF and
W3C. Refers to addresses of
communicating entities used to transmit information.
Might be: (a) Web servers (HTTP), (b) File Transfer
Protocol servers (FTP), (c) Telephone numbers, (d)
Telefax numbers, (e) Dialup Modem connections.
Universal_resource_identifier : URI
January 30, 2000
© 2000, HL7
78
“Thing” data types (2)
• A code value is exactly oneISO_object_identifier
symbol in a: code
system. The
OID
meaning of the symbol is defined exclusively and completely
by the code system that the symbol
is from.
Instance_identifier
: II
assigning_authority : OID
assigning_authority_print_nm : ST
value_txt : ST
type_cd : CV
valid_tmr : IVL<TS>
Code_value : CV
value : ST
code_system : OID
code_system_version : ST
print_name : ST
replacement : ST
• A concept descriptor communicates a real world concept
(such as a finding or a diagnosis). A given concept may be
Concept_descriptor : CD
expressed in multiple terms where each term is a translation of translations : SET<CDXL>
original_text : ED
some other term, or is a (re-)encoding of the original human
Telecommunication_address : TEL
readable text.
Code_translation : CDXL
address : URI
use_cd : SET<CV>
valid_time : GTS
• Code_translation is one translation in a set of translations
describing a concept. Components point to the source code
used in the translation process and describe who or what
Universal_resource_identifier : URI
performed the translation and
what the quality of this
translation is.
• A code phrase is a list of code values which all together make
up a meaning. This can be used for example in SNOMED,
where you can combine multiple codes into a new composite
meaning. HL7 V2.x combines codes and modifiers for the
OBR specimen source.
January 30, 2000
© 2000, HL7
term : CDPH
origin : CDXL
producer : II
quality : REAL
Code_phrase : CDPH
primary_cd : CV
modifier_cd : SET<CRR>
Concept_role_relationship : CRR
name : CV
inversion_ind : BL
value : CDPH
79
Generic data types
• Provide a means for applying an operation (such as an
interval or a probability distribution) to values
expressed in another data type.
• Examples – interval - of time, of values, etc.
– list - of addresses, of person name parts
– set - of codes
• Interval applies to any ordered type
• List - an ordered collection of items
• Set - an unordered collection of unique items
T
Interval : IVL
low : T
low_closed : BL
high : T
high_closed : BL
T, R
List : LIST
T, R
Set : SET
T, R
Bag : BAG
• Bag - an unordered collection of items
January 30, 2000
© 2000, HL7
80
Our agenda
What is HL7?
Brief review of HL7 Version 2.x
Why undertake Version 3?
Version 3 - an overall standards strategy
Version 3 - Analysis Steps
RIM - in Depth
Version 3 for Messages
January 30, 2000
© 2000, HL7
81
Information Modeling Language
• Class defines things
• Objects are instances
Person
name
: PN
DOB
: Date
address : AD
• Associations relate things
Coded attributes
• Associative classes
• Generalization
classes
Over 40% of RIM attributes
are coded!
• Reflexive associations
Patient
gender : CD
donor : BL
V.I.P.
: BL
0..*
1
Encounter
type
: CV
time
: IVLTS
reason : CD
1
1..*
Doctor
specialty : CD
phone
: TEL
privileges: CV
0..1
follow-up
0..1
• Reflexive associations structure instances of one class
– chain (predecessor-successor,) hierarchy (parent-child,) or network
January 30, 2000
© 2000, HL7
82
Goals of Vocabulary Technical Committee
• Decrease time and cost of implementations
• Approach “plug-and-play”
• Enable data sharing
– Mergers due to managed care
– Regional or national clinical studies
– Disease prevention and control
• Enable sharing of decision support modules
– Alerts
– Protocols
– Clinical pathways
January 30, 2000
© 2000, HL7
83
HL7 Vocabulary Development Strategy
• Reference existing vocabularies
• Collaborate with other SDO’s
– DICOM
– ASTM
– X12
• Add value by creating linkage between HL7
messages and existing vocabularies
• Only add items that do not already exist
• Collaborate with vocabulary developers
January 30, 2000
© 2000, HL7
84
Vocabulary domain
• “The set of all concepts that can be taken as valid
values in an instance of a coded field or attribute.”
• Concept - “A unit of thought constituted through
abstraction on the basis of characteristics common to a
set of objects.” ISO 1087
• Each concept in the domain can be represented using a
specific vocabulary/terminology
January 30, 2000
© 2000, HL7
85
Each coded attribute has a domain specification
Class: Patient
Description: A person who may receive, is
receiving, or has received healthcare services.
Associations
is_a_role_of (1,1) :: Person
is_source_for (0,n) :: Specimen_sample
Attributes
birth_order_number
birth_dttm (from Person)
gender_cd <Gender, Ext:CWE>
January 30, 2000
© 2000, HL7
86
Vocabulary Domain Specification
• One and only one domain for each coded RIM attribute
• General form:
– <domain name, list of domain qualifiers>
– <Gender, Ext:CWE>
• Currently two types of domain qualifiers
– Extensibility (Extensibility)
• CNE - Coded No Exceptions
• CWE - Coded With Exceptions
– Realm (RealmOfUse)
•
•
•
•
Universal
USA?
Europe?
Others
January 30, 2000
© 2000, HL7
87
Specialization of Domains
• Used in specifying message
– MIM, MET, CMET, HMD, Clinical Templates(?)
• Example:
– MyGender = (“Gender:USA:HL7” - “Other:USA:HL7-001”)
• General Form
– “value set name” <set operator> “value set name”
• Value set name
– “Domain name:Realm:Terminology”
• Allowed set operators
– “+” Union ()
– “-” Difference (sometimes represented as “\”)
– “*” Intersection ()
January 30, 2000
© 2000, HL7
88
General process of maintaining domains
• Follow pattern of RIM harmonization
• Vocabulary TC appoints facilitators
• Message development TCs have stewardship
– Ultimate authority for domain contents
– Follow RIM harmonization rules
• Vocabulary Facilitators
– Insure that good vocabulary practices are followed
– Actual maintenance of domain specification database
– Submit new concepts to vocabulary providers
• All vocabulary/terminology providers can provide
mappings to HL7 domains
January 30, 2000
© 2000, HL7
89
Interaction Design
Develop Scope
Create
Use Cases
Identify
Actors &
Events
Information Model
Use Case Model
Spec
Spec
DIM Spec
Class Diagram State Diagram
Define
Interactions
Create
Conformance
Claims
January 30, 2000
Model new
concepts
UCM Spec
Use Case Diagram
Harmonize with
Vocabulary
Domains & RIM
Define Trigger
Events
Define Application
Roles
Draw initial
contents from
RIM
Interaction Model
Spec
Inter Spec
Interaction Diagram
Message Design
2-nd Order
1 choice of
0-n Drug
0-1 Nursing
h//mt:50”d”
…
…
…
Develop Message
Information Model
Develop Refined
Message
Information Model
Specify HMD
© 2000, HL7
90
Interaction Design
Define Trigger
Events
Define Application
Roles
Define
Interactions
Create
Conformance
Claims
January 30, 2000
Interaction Model
Spec
Inter Spec
Interaction Diagram
© 2000, HL7
91
Interaction Model Contents
• Each Interaction consists of:
– Trigger event
• Event dependency usually expressed as the state of one or more
classes
– Message ID
• Each interaction sends one particular message
– Sender role
– Receiver role
– Receiver responsibility
• A specific functional responsibility for the receiver to initiate
another (consequential) interaction
January 30, 2000
© 2000, HL7
93
Interaction Model Example
Encounter_manager :
AR_Encounter_
Encounter_tracker :
AR_Encounter_
Encounter_archivist :
AR_Encounter_
1: schedule_encounter
2: delete_scheduled_encounter
3: admit_patient
4: admit_patient
Application Role identifies an information
management responsibility for
one of the subject classes.
Responsibilities typically are:
Creator, Manager, Tracker
and Archivist.
Interaction 5: admit_patient
Healthcare applications are
Trigger Event causes a Message
assumed to take on one or
to be sent by a Sending role to a
more application roles.
Receiving role for which there may
be a Receiver responsibility
January 30, 2000
© 2000, HL7
94
Application Roles and Conformance Claims
• A conformance claim is a commitment to fulfill one or more
Application Roles
• For each Role, the application must send and receive all of the
interactions (messages) specified for that Role:
– At specified trigger events
– Obeying specifications about conditionality, required presence, etc.
• Provides a consistent, unambiguous vocabulary for pre-contract
understanding of vendor capabilities
• The collection of these roles is an Application Profile
January 30, 2000
© 2000, HL7
97
Message Design
Develop Scope
Create
Use Cases
Identify
Actors &
Events
Information Model
Use Case Model
Spec
Spec
DIM Spec
Class Diagram State Diagram
Define
Interactions
Create
Conformance
Claims
January 30, 2000
Model new
concepts
UCM Spec
Use Case Diagram
Harmonize with
Vocabulary
Domains & RIM
Define Trigger
Events
Define Application
Roles
Draw initial
contents from
RIM
Interaction Model
Spec
Inter Spec
Interaction Diagram
Message Design
2-nd Order
1 choice of
0-n Drug
0-1 Nursing
h//mt:50”d”
…
…
…
Develop Message
Information Model
Develop Refined
Message
Information Model
Specify HMD
© 2000, HL7
99
Message Design
Message Design
2-nd Order
1 choice of
0-n Drug
0-1 Nursing
h//mt:50”d”
…
…
…
Develop Message
Information Model
Develop Refined
Message
Information Model
Specify HMD
January 30, 2000
© 2000, HL7
100
Our agenda
What is HL7?
Brief review of HL7 Version 2.x
Why undertake Version 3?
Version 3 - an overall standards strategy
Version 3 - Analysis Steps
RIM - in Depth
Version 3 for Messages
January 30, 2000
© 2000, HL7
101
Problem statement
• Domain facts:
– HL7 Voting Members are either: (a) individual members, or (b) sponsored by
an organizational member, usually their employer.
– Items for balloting are proposed by HL7 Committees or Subcommittees, and
the proposing committee designates an individual to serve as their contact for a
particular proposal.
– Voting members submit ballots on items proposed as HL7 standards.
– Each ballot may vote aye, nay or abstain, and all negative ballots must be
accompanied by a supporting comment.
• Messaging requirements:
– HL7 has a ballot acceptance system, and a ballot notification system.
– HL7 seeks a message to go from the ballot acceptance system to the ballot
notification system.
– This message will be sent upon receipt of a completed ballot.
– The message will allow the notification system to send a confirming e-mail to
each of: the voter, the voter’s sponsor organization (if any) and the contact
person for the item being voted upon.
January 30, 2000
© 2000, HL7
102
What’s in a message
January 30, 2000
© 2000, HL7
103
What’s in a message - below the attribute
January 30, 2000
© 2000, HL7
104
Message basics (1)
• Every part of the message, from the entire message
down to the smallest subcomponent of a subcomponent
of a data type, is a message element.
• Every message element has a type.
• Every message element that is an attribute of a RIM has
a type that is an HL7 data type.
• Every message element that represents a component of
an HL7 data type also has a type that is an HL7 data
type.
• Every message that represents a class has a type that is
based on that class or a Common Message Element
Type.
January 30, 2000
© 2000, HL7
105
Message basics (2)
• Every message element that represents an association
has a type that is based on the distal class of the
association or a Common Message Element Type.
• Every message element type is one of these four
metatypes: primitive, composite, collection, or choice.
• Primitives have no subordinate components.
• Composites do have heterogeneous subordinate
components, each with its own name.
• Collections have repetitions of a homogeneous message
element. The name of the repeating message element is
derived from its type.
January 30, 2000
© 2000, HL7
106
V-3 Methodology - working the process
Use Case
Model
Reference
Information
Model
Domain
Information
Model
Subset &
Message
constrain
Information
Model
Hierarchical
Message
Description
January 30, 2000
Interaction
Model
Refined
Message
Information
Model
Specialize &
constrain
Order, select
& constrain
© 2000, HL7
Common
Message
Element
Definition
107
Message Information Model (MIM)
• Expressed as a UML model
• All parameters are same as an information model
• Constrained subset of the RIM
• Possible constraints:
–
–
–
–
Selected set of classes
Selected set of attributes for classes
Selected set of associations
Optionality reduces in attributes & associations
January 30, 2000
© 2000, HL7
108
Refined-MIM - compared to the MIM
• Additional constraints on cardinality of attributes and
associations
• Specialization - when a class will be used with
different semantics, it may be shown as two separate
classes (clones), with different constraints – eg. Person_as_patient vs. Person_as_practitioner
• Attributes and associations of general classes may be
subsumed into specializations, with different attributes
or associations chosen
January 30, 2000
© 2000, HL7
109
New parameters contained in R-MIM
• This has all the information of the HMD except
the path resulting from the tree-walk
• Classes are in an arbitrary order; no semantic
significance
• For each class and attribute, records:
– domains - specification of the domain specification for
message elements that contain codes
– default values - a value that the receiver should use when it
receives a message instance that does not contain the message
element
– inclusion (following)
– update (following)
January 30, 2000
© 2000, HL7
110
RMIM -- Inclusion parameter
• Parameter determines when and how an element must
be valued.
• Mandatory - element may never be null
• Required - element may be null
• Not required - a vendor may choose not to support, this
element, must must so decalre as part of vendor’s
conformance claim
• Not permitted - Element must always be null (occurs
because multiple messages are defined from a single RMIM and HMD)
January 30, 2000
© 2000, HL7
111
Update semantics
• Defines the receiver's processing of the element as:
–
–
–
–
–
–
–
–
–
R
D
I
K
V
replace
Delete
Ignore
(Key) element is a key to a collection of elements
(Verify) that this element matches a value already in
the receiving systems database
ESA Edit set add, add the element to the collection of items
ESD Edit set delete, delete item that corresponds to this
message element
ESC Edit set change, change the item that corresponds to this
message element
ESAC Edit set add or change, change the item or if a
matching element does not exist, add it
January 30, 2000
© 2000, HL7
112
Hierarchical Message Description
• Reflects the
– path through the R-MIM
– choices
– interpolated items for collections
• Special treatment for generalizations that are not
subsumed in the R-MIM
• Other than the path, there is no additional semantic
content in the HMD, when compared to the R-MIM
(the other differences are algorithmically developed)
January 30, 2000
© 2000, HL7
113
Message element Type definitions
• Determined by the order of selecting classes in R-MIM
• HMD expresses the type definitions for all message
elements
• Sources for message types are:
–
–
–
–
–
–
N - new type defined in the HMD
D - an HL7 data type.
C - refers to an HL7 Common Message Element Type.
U - use same type as previously defined in this HMD
R - recursive reuse of the type that contains this row.
I - refers to a previous instance of the same type
January 30, 2000
© 2000, HL7
114
HMD components (1)
•
The Information Model Mapping.
•
The Message Element Type definitions.
•
General constraints and defaults provides the ‘default’ for message-specific columns
•
Message-specific constraints and defaults section repeats, once for each message type
defined in the HMD. These describe one or more message types. Each message type is
identified with one or more interactions in the interaction model. If a value in a column is left
empty, it will be the same as in the general constraints section. Any particular row may be
excluded from the specific message type being defined.
Repeat this set of nine
columns for each
message type defined
January 30, 2000
© 2000, HL7
115
V-3 Methodology - working the process
Use Case
Model
Reference
Information
Model
Domain
Information
Model
Message
Information
Model
Interaction
Model
Refined
Message
Information
Model
Common
Message
Element
Definition
Hierarchical
Message
Description
January 30, 2000
© 2000, HL7
116
Problem statement
• Domain facts:
– HL7 Voting Members are either: (a) individual members, or (b) sponsored by
an organizational member, usually their employer.
– Items for balloting are proposed by HL7 Committees or Subcommittees, and
the proposing committee designates an individual to serve as their contact for a
particular proposal.
– Voting members submit ballots on items proposed as HL7 standards.
– Each ballot may vote aye, nay or abstain, and all negative ballots must be
accompanied by a supporting comment.
• Messaging requirements:
– HL7 has a ballot acceptance system, and a ballot notification system.
– HL7 seeks a message to go from the ballot acceptance system to the ballot
notification system.
– This message will be sent upon receipt of a completed ballot.
– The message will allow the notification system to send a confirming e-mail to
each of: the voter, the voter’s sponsor organization (if any) and the contact
person for the item being voted upon.
January 30, 2000
© 2000, HL7
117
Portion of Reference Information Model (RIM)
Person_name
effective_dt
cd
nm
purpose_cd
termination_dt
type_cd
Stakeholder
addr
credit_rating_cd
email_address_txt
phon
type_cd
real_id : SET<RWII>
id : SET<II>
participates_as_primary_in
0..*
has_as_primary_participant
1
0..*
participates_as_secondary_in
1
has_as_secondary_participant
Stakeholder_affiliation
affiliation_type_cd
desc
effective_dt
termination_dt
0..* is_for
has_as_a_subdivision
0..1
1
has
Person
birth_dttm
birthplace_addr
citizenship_country_cd
confidentiality_constraint_cd
deceased_dttm
deceased_ind
disability_cd
education_level_cd
ethnic_group_cd
administrative_gender_cd
language_cd
marital_status_cd
military_branch_of_service_cd
military_rank_nm
military_status_cd
nationality_cd
race_cd
religious_affiliation_cd
student_cd
very_important_person_cd
status_cd
ambulatory_status_cd
id
hispanic_ind
birth_order_nbr
living_arrangement_cd
January 30, 2000
Organization
0..*
organization_name_type_cdis_a_subdivision_of
organization_nm
standard_industry_class_cd
© 2000, HL7
118
Initial message information model (MIM)
0..*
participates_as_primary_in
Stakeholder
1..1
has_as_primary_participant Stakeholder_affiliation
addr : ST
email_address_txt : TEL participates_as_secondary_in
0..* affiliation_type_cd : CD
id : SET<II>
1..1
has_as_secondary_participant
Person_name
nm : ST
type_cd : CD
0..*
is_for
1..1
has
Person
education_level_cd : CD
January 30, 2000
has_as_a_subdivision
0..1
Organization
0..*
organization_nm : ST
is_a_subdivision_of
© 2000, HL7
119
Message information model (MIM)
Person_name
effective_dt
cd
nm
purpose_cd
termination_dt
type_cd
Stakeholder
addr
credit_rating_cd
email_address_txt
phon
type_cd
real_id : SET<RWII>
id : SET<II>
participates_as_primary_in
0..*
has_as_primary_participant
1
0..*
participates_as_secondary_in
1
has_as_secondary_participant
Stakeholder_affiliation
affiliation_type_cd
desc
effective_dt
termination_dt
0..* is_for
has_as_a_subdivision
0..1
1
has
Person
Organization
0..*
organization_name_type_cdis_a_subdivision_of
organization_nm
standard_industry_class_cd
RIM
content
birth_dttm
birthplace_addr
citizenship_country_cd
confidentiality_constraint_cd
deceased_dttm
deceased_ind
disability_cd
0..*
education_level_cdStakeholder
participates_as_primary_in
Person_name
ethnic_group_cd
1..1
has_as_primary_participant Stakeholder_affiliation
addr : ST
nm : ST
administrative_gender_cd
email_address_txt : TEL participates_as_secondary_in
0..* affiliation_type_cd : CD
type_cd : CD
language_cd id : SET<II>
1..1
has_as_secondary_participant
marital_status_cd
0..* is_for
military_branch_of_service_cd
military_rank_nm
military_status_cd
nationality_cd
race_cd
has_as_a_subdivision
1..1
religious_affiliation_cd
has
0..1
student_cd
Person
Organization
very_important_person_cd
0..*
status_cd
education_level_cd : CD
organization_nm : ST
is_a_subdivision_of
ambulatory_status_cd
id
1..1
1..1 proposes
1..1
has_as_role
hispanic_ind
sponsors
birth_order_nbr
0..* is_role_of
living_arrangement_cd
January 30, 2000
© 2000, HL7
Proposed_item
living_dependency_cd
Fewer
attributes
MIM
content
(a proper subset
of the RIM)
120
Add voters to MIM
0..*
participates_as_primary_in
Stakeholder
1..1
has_as_primary_participant Stakeholder_affiliation
addr : ST
email_address_txt : TEL participates_as_secondary_in
0..* affiliation_type_cd : CD
id : SET<II>
1..1
has_as_secondary_participant
Person_name
nm : ST
type_cd : CD
0..*
is_for
has_as_a_subdivision
0..1
1..1
has
Person
education_level_cd : CD
Organization
0..*
organization_nm : ST
is_a_subdivision_of
1..1
has_as_role
sponsors
1..1
0..* is_role_of
Voting_member
draft_level_voting_ind : BL
standard_level_voting_ind : BL
0..* sponsored_by
Individual_representative
dues_current_ind : BL
Organizational_representative
HL7 Voting Members are either: (a) individual
members, or (b) sponsored by an organizational
member, usually their employer.
January 30, 2000
© 2000, HL7
121
Message information model (MIM)
0..*
0..*
participates_as_primary_in
Stakeholder
participates_as_primary_in
Stakeholder
Stakeholder_affiliation
1..1
has_as_primary_participant Stakeholder_affiliation
addr :: ST
ST
1..1
has_as_primary_participant
addr
participates_as_secondary_in
email_address_txt
:
TEL
affiliation_type_cd
CD
0..* affiliation_type_cd :: CD
email_address_txt : TEL participates_as_secondary_in
0..*
id :: SET<II>
SET<II>
1..1
id
has_as_secondary_participant
1..1
has_as_secondary_participant
Person_name
Person_name
nm :: ST
ST
nm
type_cd
CD
type_cd :: CD
0..*
0..*
1..1
is_for
is_for
has_as_a_subdivision
has_as_a_subdivision
0..1
0..1
has
Person
education_level_cd : CD
has_as_role
Organization
Organization
0..*
0..*
organization_nm :: ST
ST
organization_nm
is_a_subdivision_of
is_a_subdivision_of
1..1
sponsors
1..1
1..1
1..1 proposes
0..* is_role_of
Proposed_item
ballot_period_tmr : IVL<TS>
proposed_by content_txt : ED
standard_level_ind : BL
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
0..*
casts
0..* sponsored_by
0..*
sponsored_by
Individual_representative
dues_current_ind : BL
Organizational_representative
Organizational_representative
cast_by
0..*
January 30, 2000
1..1
receives_votes
Items for balloting are proposed by HL7
Committees or Subcommittees, Voting
votes_on
members submit ballots on items. Each ballot
Ballot
comments_txt : ST 0..* may vote aye, nay or abstain, and all negative
dttm : TS
ballots must be accompanied by a supporting
vote_cd : CV
© 2000, HL7 comment.
122
V-3 Methodology - working the process
Use Case
Model
Reference
Information
Model
Domain
Information
Model
Message
Information
Model
Interaction
Model
Refined
Message
Information
Model
Common
Message
Element
Definition
Hierarchical
Message
Description
January 30, 2000
© 2000, HL7
123
Message information model (MIM)
0..*
participates_as_primary_in
Stakeholder
1..1
has_as_primary_participant Stakeholder_affiliation
addr : ST
email_address_txt : TEL participates_as_secondary_in
0..* affiliation_type_cd : CD
id : SET<II>
1..1
has_as_secondary_participant
Person_name
nm : ST
type_cd : CD
0..*
is_for
has_as_a_subdivision
0..1
1..1
has
Person
education_level_cd : CD
Organization
0..*
organization_nm : ST
is_a_subdivision_of
1..1
has_as_role
sponsors
1..1 proposes
1..1
0..* is_role_of
Proposed_item
ballot_period_tmr : IVL<TS>
proposed_by content_txt : ED
standard_level_ind : BL
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
0..*
casts
0..* sponsored_by
Individual_representative
dues_current_ind : BL
Organizational_representative
cast_by
Ballot
comments_txt
: ST
0..*
dttm : TS
vote_cd : CV
January 30, 2000
1..1
receives_votes
votes_on
0..*
© 2000, HL7
124
Partially morphed MIM
Person_name
nm : ST
type_cd : CD
0..*
has_as_secondary_participant
Stakeholder_affiliation
affiliation_type_cd : CD
0..*
0..*
1..1
has_as_primary_participant
is_for
1..1 participates_as_primary_in
has participates_as_secondary_in
1..1
Person
education_level_cd : CD
email_address_txt : TEL
has_as_role
has_as_a_subdivision
0..1
Organization
0..*
organization_nm : ST
is_a_subdivision_of
email_address_txt : TEL
1..1
sponsors
0..* is_role_of
1..1 proposes
1..1
Proposed_item
ballot_period_tmr : IVL<TS>
proposed_by content_txt : ED
standard_level_ind : BL
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
0..*
casts
0..* sponsored_by
Individual_representative
dues_current_ind : BL
Organizational_representative
cast_by
Ballot
comments_txt
: ST
0..*
dttm : TS
vote_cd : CV
January 30, 2000
1..1
receives_votes
votes_on
0..*
© 2000, HL7
125
Remove inconsequential inheritance
0..*
participates_as_primary_in
Stakeholder
1..1
has_as_primary_participant Stakeholder_affiliation
addr : ST
email_address_txt : TEL participates_as_secondary_in
0..* affiliation_type_cd : CD
id : SET<II>
1..1
has_as_secondary_participant
Person_name
nm : ST
type_cd : CD
is_for
0..*
has_as_a_subdivision
0..1
1..1
has
Person
education_level_cd : CD
Organization
0..*
organization_nm : ST
is_a_subdivision_of
1..1
has_as_role
sponsors
1..1
1..1 proposes
0..* is_role_of
Subsume inherited attributes
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
Person_name
nmcasts
: ST
type_cd : CD
0..*
is_for
Individual_representative
dues_current_ind : BL
1..1
January 30,
Proposed_item
Transfer
inherited
associations
0..*
ballot_period_tmr : IVL<TS>
proposed_by content_txt : ED
0..*
standard_level_ind : BL
Stakeholder_affiliation
has_as_secondary_participant
affiliation_type_cd : CD
1..1
0..*
receives_votes
has_as_primary_participant
0..* sponsored_by
Organizational_representative
1..1 participates_as_primary_in
has participates_as_secondary_in
1..1
has_as_a_subdivision
0..1
Person
Organization
0..*
votes_on
education_level_cd : CDcast_by
organization_nm
: ST
Ballot
is_a_subdivision_of
email_address_txt : TEL
email_address_txt : TEL
0..* comments_txt : ST 0..*
dttm : TS
1..1
vote_cd : CV
has_as_role
2000
© 2000,1..1HL71..1 proposes
sponsors
126
Partially morphed MIM
Person_name
nm : ST
type_cd : CD
0..*
has_as_secondary_participant
Stakeholder_affiliation
affiliation_type_cd : CD
0..*
0..*
1..1
has_as_primary_participant
is_for
1..1 participates_as_primary_in
has participates_as_secondary_in
1..1
Person
education_level_cd : CD
email_address_txt : TEL
has_as_role
has_as_a_subdivision
0..1
Organization
0..*
organization_nm : ST
is_a_subdivision_of
email_address_txt : TEL
1..1
sponsors
0..* is_role_of
1..1 proposes
1..1
Proposed_item
ballot_period_tmr : IVL<TS>
proposed_by content_txt : ED
standard_level_ind : BL
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
0..*
casts
0..* sponsored_by
Individual_representative
dues_current_ind : BL
Organizational_representative
cast_by
Ballot
comments_txt
: ST
0..*
dttm : TS
vote_cd : CV
January 30, 2000
1..1
receives_votes
votes_on
0..*
© 2000, HL7
127
Refined Message Information Model (R-MIM)
Person_name
is_for
nm : ST
type_cd : CD
0..1
is_for
0..*
has
1..1
has_as_secondary_participant
0..*
Stakeholder_affiliation
affiliation_type_cd : CD
0..*
participates_as_secondary_in
has_as_primary_participant
1..1
has 1..1
Person_as_Committee_contact
email_address_txt : TEL
participates_as_primary_in has_as_a_subdivision
0..1
1..1
Person_as_Voter
education_level_cd : CD
email_address_txt : TEL
Organization_as_Committee
organization_nm : ST
1..1
has_as_role
1..1
is_role_of 0..*
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
is_a_subdivision_of
proposes
proposed_by
Organization_as_HL7_member
organization_nm : ST
email_address_txt : TEL
casts
sponsors
Individual_representative
dues_current_ind : BL
0..*
0..1
0..* sponsored_by
Organizational_representative
0..*
Proposed_item
ballot_period_tmr : IVL<TS>
content_txt : ED
standard_level_ind : BL
1..1
receives_votes
votes_on
Ballot
0..*
0..* comments_txt : ST
dttm : TS
vote_cd : CV
cast_by
January 30, 2000
© 2000, HL7
128
Refined Message Information Model (R-MIM)
has_as_secondary_participant
0..*
Person_name
is_for
nm : ST
type_cd : CD
0..1
is_for
0..*
has
1..1
0..*
participates_as_secondary_in
has_as_primary_participant
1..1
has 1..1
Person_as_Committee_contact
email_address_txt : TEL
participates_as_primary_in has_as_a_subdivision
0..1
1..1
Person_as_Voter
education_level_cd : CD
email_address_txt : TEL
Organization_as_Committee
organization_nm : ST
1..1
has_as_role
Person_name
nm : ST
type_cd : CD
0..*
1..1
0..*
is_a_subdivisi
proposes
0..*
is_role_of 0..*
Stakeholder_affiliation
proposed_by
has_as_secondary_participant
Proposed
Voting_member affiliation_type_cd : CD
0..*
Organization_as_HL7_member
ballot_period_tm
0..*
draft_level_voting_ind : BL
organization_nm : ST
content_txt : ED
standard_level_voting_ind : BL
1..1
has_as_primary_participant
email_address_txt : TEL
standard_level_i
casts
is_for
Specialize cloned views of Person
to meet specific requirements
sponsors
has_as_a_subdivision
1..1 participates_as_primary_in
has participates_as_secondary_in
1..1
0..1
Individual_representative
Person
Organization
0..* : BL
dues_current_ind
education_level_cd : CD
organization_nm : ST
is_a_subdivision_of
email_address_txt : TEL
email_address_txt : TEL
1..1
has_as_role
Stakeholde
affiliation_typ
1..1
0..* is_role_of
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
January 30, 2000
sponsors
1..1
1..1 proposes
0..1
1..1
receives
0..* sponsored_by
Organizational_representative
votes_on of associations
Constrain
Ballot navigability
cast_by
0..*
Proposed_item
0..* comments_txt : ST
dttm :: IVL<TS>
TS
ballot_period_tmr
vote_cd
: CV
content_txt
:
ED
proposed_by
standard_level_ind
:
BL
2000, HL7
0..*
©
129
Refined Message Information Model (R-MIM)
Person_name
is_for
nm : ST
type_cd : CD
0..1
is_for
0..*
has
1..1
has_as_secondary_participant
0..*
Stakeholder_affiliation
affiliation_type_cd : CD
0..*
participates_as_secondary_in
has_as_primary_participant
1..1
has 1..1
Person_as_Committee_contact
email_address_txt : TEL
participates_as_primary_in has_as_a_subdivision
0..1
1..1
Person_as_Voter
education_level_cd : CD
email_address_txt : TEL
Organization_as_Committee
organization_nm : ST
1..1
has_as_role
1..1
is_role_of 0..*
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
is_a_subdivision_of
proposes
proposed_by
Organization_as_HL7_member
organization_nm : ST
email_address_txt : TEL
casts
sponsors
Individual_representative
dues_current_ind : BL
0..*
0..1
0..* sponsored_by
Organizational_representative
0..*
Proposed_item
ballot_period_tmr : IVL<TS>
content_txt : ED
standard_level_ind : BL
1..1
receives_votes
votes_on
Ballot
0..*
0..* comments_txt : ST
dttm : TS
vote_cd : CV
cast_by
January 30, 2000
© 2000, HL7
130
V-3 Methodology - working the process
Use Case
Model
Reference
Information
Model
Domain
Information
Model
Message
Information
Model
Interaction
Model
Refined
Message
Information
Model
Common
Message
Element
Definition
Hierarchical
Message
Description
January 30, 2000
© 2000, HL7
131
Refined Message Information Model (R-MIM)
Person_name
is_for
nm : ST
type_cd : CD
0..1
5
is_for
0..*
has_as_secondary_participant
0..*
3
0..*
participates_as_secondary_in
has_as_primary_participant
1..1
has 1..1
Person_as_Committee_contact
email_address_txt : TEL
4
has
Stakeholder_affiliation
affiliation_type_cd : CD
1..1
Person_as_Voter
education_level_cd : CD
email_address_txt : TEL
2a
participates_as_primary_in has_as_a_subdivision
0..1
1..1
Organization_as_Committee
organization_nm : ST
2
1..1
has_as_role
1..1
is_role_of 0..*
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
is_a_subdivision_of
proposes
proposed_by
Organization_as_HL7_member
organization_nm : ST
email_address_txt : TEL
casts
sponsors
Individual_representative
dues_current_ind : BL
0..*
0..1
0..* sponsored_by
Organizational_representative
0..*
Proposed_item
ballot_period_tmr : IVL<TS>
content_txt : ED
standard_level_ind : BL
1
1..1
receives_votes
votes_on
Ballot
0..*
0..* comments_txt : ST
dttm : TS
vote_cd : CV
cast_by
January 30, 2000
© 2000,0HL7
132
Refined Message Information Model (R-MIM)
has_as_secondary_participant
0..*
Person_name
is_for
nm : ST
type_cd : CD
0..1
is_for
0..*
has
1..1
Stakeholder_affiliation
affiliation_type_cd : CD
0..*
participates_as_secondary_in
has_as_primary_participant
1..1
has 1..1
Person_as_Committee_contact
email_address_txt : TEL
participates_as_primary_in has_as_a_subdivision
0..1
1..1
Person_as_Voter
education_level_cd : CD
email_address_txt : TEL
Organization_as_Committee
organization_nm : ST
7
1..1
has_as_role
1..1
is_role_of 0..*
Voting_member
draft_level_voting_ind : BL
1..1 standard_level_voting_ind : BL
Organization_as_HL7_member
organization_nm : ST
email_address_txt : TEL
6
10
sponsors
8
is_a_subdivision_of
proposes
proposed_by
casts
Individual_representative
dues_current_ind : BL
0..*
0..1
0..*
Proposed_item
ballot_period_tmr : IVL<TS>
content_txt : ED
standard_level_ind : BL
1..1
0..* sponsored_by
Organizational_representative
receives_votes
9
votes_on
Ballot
0..*
0..* comments_txt : ST
dttm : TS
vote_cd : CV
cast_by
January 30, 2000
© 2000,0HL7
133
Walk gives HMD structure
January 30, 2000
© 2000, HL7
134
HMD adds constraints, defaults, cardinality, etc.
Link to RIM
Vocab domain
constraints,
cardinality,
etc.
January 30, 2000
© 2000, HL7
135
Conversion from HMD to a DTD is algorithmic
DTD for-->
HMD C00_RIM_0092Da_1
<!-- HL7-generated
Element Definitions
19991205 -->
<!ELEMENT Ballt
%Ballt-cont.model;>
<!ENTITY %Ballt
V3DT SYSTEM "V3DT991006a.dtd">
<!ATTLIST
%Ballt-attrib.list;
HL7_NAME
CDATA
#FIXED 'Ballot'
%V3DT;
>
<!-- Entity
Definitions -->
<!ELEMENT
IndvdlReprsntv
%IndvdlReprsntvcont.model;>
<!ENTITY %IndvdlReprsntv
Ballt-cont.model
"(commntsTxt?,
<!ATTLIST
%IndvdlReprsntvdttm?, vote, votesOn_PropsdItm, castBy_VotngMembr)?">
attrib.list;
<!ENTITY
% Ballt-attrib.list
HL7_NAME
CDATA "#FIXED
T
CDATA
#FIXED 'Ballt'
'Individual_representative'
NULL
%null.code.set; #IMPLIED
>
NOTE
CDATA
#IMPLIED
….
UPDATE_MODE %update.mode.code.set;
'R'
<!ELEMENT balltPeriodTmr
%IVL_TS-cont.model;>
">
<!ATTLIST
balltPeriodTmr
%IVL_TS-attrib.list;
HL7_NAME
CDATA
#FIXED 'balltPeriodTmr'
<!ENTITY % PropsdItm-cont.model
"(balltPeriodTmr?,
>
contntTxt?, standrdLevlInd?,
propsdBy_OrgnztnAsCommtte)?">
<!ELEMENT
castBy_VotngMembr
%VotngMembr<!ENTITY % PropsdItm-attrib.list "
cont.model;>
T
CDATA
#FIXED 'PropsdItm'
<!ATTLIST castBy_VotngMembr
%VotngMembr%null.code.set; #IMPLIED
attrib.list; NULL
CDATA #FIXED #IMPLIED
HL7_NAME NOTE
CDATA
'castBy_VotngMembr'
UPDATE_MODE %update.mode.code.set; 'R'
>
">
<!ELEMENT emailAddrssTxt
%TEL-cont.model;>
<!ENTITY %emailAddrssTxt
OrgnztnAsHL7Membr-cont.model
"(nm,
<!ATTLIST
%TEL-attrib.list;
emailAddrssTxt?)?">
HL7_NAME
CDATA
#FIXED 'emailAddrssTxt'
<!ENTITY % OrgnztnAsHL7Membr-attrib.list "
>
T
CDATA
#FIXED 'OrgnztnAsHL7Membr'
NULL
%null.code.set; #IMPLIED
NOTE
CDATA
<!ELEMENT vote
%CV-cont.model;>
#IMPLIED
<!ATTLIST vote
%CV-attrib.list;
%update.mode.code.set;
'R'
HL7_NAME UPDATE_MODE
CDATA
#FIXED 'vote'
">
>
January 30, 2000
© 2000, HL7
136
V-3 Methodology - sending a message instance
Hierarchical
Message
Description
1. Use HMD to collect & structure data
2. Use ITS to format message instance
3. Communicate the instance
4. Use ITS to parse message instance
ITS
5. Use HMD to disassemble and store data
Implementation
Technology
Specifications
Data
HL7
Message
Creation
Message
Instance
HL7-Conformant
Application
January 30, 2000
HL7
Message
Parsing
Data
HL7-Conformant
Application
© 2000, HL7
137
Message instance
<?xml version="1.0"?>
<!DOCTYPE Ballt SYSTEM "Ballot_C00_RIM_0092Da_1.dtd" [ ]>
<Ballt>
<dttm V="199912052357+0100"/>
<castBy_VotngMembr T="OrgnztnlReprsntv">
<vote V="A" S="HL7001" R="3.0" PN="Abstain"/>
<OrgnztnlReprsntv>
<votesOn_PropsdItm>
<isRoleOf_PrsnAsVotr>
<standrdLevlInd V='T'/>
<has_PrsnName>
<propsdBy_OrgnztnAsCommtte>
<pnm>
<nm V="Humble Task Group"/>
<G V="George" CLAS="R"/>
<isAsubdvsnOf_OrgnztnAsCommtte>
<G V="W." CLAS="R I"/>
<nm V="Grand Committee"/>
<F V="Beeler" CLAS="R"/>
</isAsubdvsnOf_OrgnztnAsCommtte>
</pnm>
<partcpesAsPrimryIn_StkhldrAffltn>
</has_PrsnName>
<_StkhldrAffltn>
<has_PrsnName>
<type V="X" S="HL7004" R="3.0" PN="XXX"/>
<pnm>
<hasSecndryPartcpnt_PrsnAsCommtteContct>
<G V="Woody" CLAS="C"/>
<has_PrsnName>
<G V="W." CLAS="R I"/>
<pnm>
<F V="Beeler" CLAS="R"/>
<G V="George" CLAS="R"/>
</pnm>
<G V="Woody" CLAS="C"/>
</has_PrsnName>
<G V="W." CLAS="R I"/>
</isRoleOf_PrsnAsVotr>
<F V="Beeler" CLAS="R"/>
<sponsrdBy_OrgnztnAsHL7Membr>
</pnm>
<nm V="Mayo Clinic"/>
</has_PrsnName>
<emailAddrssTxt v=“[email protected]”/>
</hasSecndryPartcpnt_PrsnAsCommtteContct>
</sponsrdBy_OrgnztnAsHL7Membr>
</_StkhldrAffltn>
</OrgnztnlReprsntv>
</partcpesAsPrimryIn_StkhldrAffltn>
</castBy_VotngMembr>
</propsdBy_OrgnztnAsCommtte>
</Ballt>
</votesOn_PropsdItm>
January 30, 2000
© 2000, HL7
138
Auditability - Message
DTD Entity
Hierarchical
Refined
Element
Message
instance
Information
definitions
Message
definition
Info.Model
Description
Model
0..*
participates_as_primary_in
DTD for-->
HMD C00_RIM_0092Da_1
<!-- HL7-generated
Element Definitions
Stakeholder
has_as_secondary_participant
Person_name
<?xml version="1.0"?>
19991205
-->
Stakeholder_affiliation
1..1
has_as_primary_participant
is_for addr : ST
0..*
nm : ST
<!ELEMENT
Ballt
%Ballt-cont.model;>
<!DOCTYPE Ballt
SYSTEM
"Ballot_C00_RIM_0092Da_1.dtd"
[
]>
participates_as_secondary_in
email_address_txt
:
TEL
affiliation_type_cd
CD
:: CD
type_cd : CD
0..*0..*affiliation_type_cd
0..1
<!ENTITY
%
V3DT
SYSTEM
"V3DT991006a.dtd">
<!ATTLIST
Ballt
%Ballt-attrib.list;
id : SET<II>
1..1
participates_as_secondary_in
has_as_secondary_participant
has_as_primary_participant
HL7_NAME
CDATA
#FIXED 'Ballot'
<Ballt>
1..1
is_for
0..*
%V3DT;
>
is_for 0..*
has 1..1
<dttm V="199912052357+0100"/>
Person_as_Committee_contact
<vote V="A" S="HL7001"
R="3.0" PN="Abstain"/> <!ELEMENT
<!-- Entity
Definitions -->
IndvdlReprsntv
%IndvdlReprsntvemail_address_txt
:
TEL
cont.model;>
<castBy_VotngMembr T="OrgnztnlReprsntv">
<votesOn_PropsdItm>
<!ENTITY
%IndvdlReprsntv
Ballt-cont.model
"(commntsTxt?,
<!ATTLIST
%IndvdlReprsntvparticipates_as_primary_in
<OrgnztnlReprsntv>
<standrdLevlInd
has_as_a_subdivision
1..1V='T'/>
has 1..1
has_as_a_subdivision castBy_VotngMembr)?">
dttm?, vote, votesOn_PropsdItm,
attrib.list;
has
0..1
<propsdBy_OrgnztnAsCommtte>
0..1 <isRoleOf_PrsnAsVotr>
1..1
<!ENTITY
% Ballt-attrib.list
HL7_NAME
CDATA "#FIXED
Person_as_Voter
<has_PrsnName>
<nm V="Humble Task
Group"/>
Person
Organization
Organization_as_Committee
T
CDATA
#FIXED 'Ballt'
'Individual_representative'
0..*
0..*
education_level_cd : CD
<pnm>
<isAsubdvsnOf_OrgnztnAsCommtte>
NULL
%null.code.set;
#IMPLIED
>
education_level_cd
organization_nm
: ST
organization_nm
: ST
email_address_txt
: TEL : CD
is_a_subdivision_of
is_a_subdivision_of
NOTE
CDATA
#IMPLIED
….
<G V="George" CLAS="R"/>
<nm V="Grand Committee"/>
UPDATE_MODE
<!ELEMENT balltPeriodTmr
%IVL_TS-cont.model;>
1..1
<G %update.mode.code.set;
V="W." CLAS="R
I"/>'R'
</isAsubdvsnOf_OrgnztnAsCommtte>
1..1 proposes
1..1
1..1 proposes
1..1
has_as_role
">
<!ATTLIST
balltPeriodTmr
%IVL_TS-attrib.list;
has_as_role
sponsors
<F
V="Beeler"
CLAS="R"/>
<partcpesAsPrimryIn_StkhldrAffltn>
HL7_NAME
CDATA
#FIXED 'balltPeriodTmr'
is_role_of
</pnm>
<_StkhldrAffltn>
0..*
<!ENTITY % PropsdItm-cont.model
"(balltPeriodTmr?,
>
is_role_of 0..*
proposed_by
</has_PrsnName>
<type V="X"
S="HL7004"
R="3.0"
PN="XXX"/>
Proposed_item
contntTxt?,
standrdLevlInd?,
Voting_member
0..*
0..*
Organization_as_HL7_member
propsdBy_OrgnztnAsCommtte)?">
<!ELEMENT
castBy_VotngMembr
%VotngMembr<has_PrsnName>
<hasSecndryPartcpnt_PrsnAsCommtteContct>
ballot_period_tmr : IVL<TS>
draft_level_voting_ind : BL
<!ENTITY
%
PropsdItm-attrib.list
"
cont.model;>
organization_nm : ST
content_txt : ED
<pnm>
proposed_by
standard_level_voting_ind : BL
1..1
1..1<has_PrsnName>
T
CDATA
#FIXED 'PropsdItm'
<!ATTLIST
castBy_VotngMembr
%VotngMembremail_address_txt
: TEL
standard_level_ind
<G %null.code.set;
V="Woody": BLCLAS="C"/>
<pnm>
casts
#IMPLIED
attrib.list; NULL
<G
V="W."
CLAS="R
I"/>
<G V="George" CLAS="R"/> 0..1 HL7_NAME NOTE
CDATA
#IMPLIED
CDATA
#FIXED
'castBy_VotngMembr'
sponsors
1..1
<F %update.mode.code.set;
V="Beeler"
CLAS="R"/>
<G V="Woody" CLAS="C"/>
1..1
UPDATE_MODE
'R'
>
">
</pnm> receives_votes
<G V="W." CLAS="R I"/> 0..*
receives_votes
sponsored_by
0..* sponsored_by
<!ELEMENT emailAddrssTxt
%TEL-cont.model;>
</has_PrsnName>
<F V="Beeler" CLAS="R"/>
<!ENTITY
%
OrgnztnAsHL7Membr-cont.model
"(nm,
<!ATTLIST
emailAddrssTxt
%TEL-attrib.list;
Organizational_representative
Individual_representative
</isRoleOf_PrsnAsVotr>
</pnm>
emailAddrssTxt?)?">
HL7_NAME
CDATA
#FIXED
'emailAddrssTxt'
dues_current_ind :: BL
BL
dues_current_ind
</has_PrsnName>
<!ENTITY %<sponsrdBy_OrgnztnAsHL7Membr>
OrgnztnAsHL7Membr-attrib.list "
>
V="Mayo#FIXED
Clinic"/>
</hasSecndryPartcpnt_PrsnAsCommtteContct>
T <nm CDATA
'OrgnztnAsHL7Membr'
NULL
%null.code.set;
#IMPLIED
<emailAddrssTxt v=“[email protected]”/>
</_StkhldrAffltn>
NOTE
CDATA
<!ELEMENT
vote
%CV-cont.model;>
</sponsrdBy_OrgnztnAsHL7Membr>
</partcpesAsPrimryIn_StkhldrAffltn>
#IMPLIED
<!ATTLIST
vote
%CV-attrib.list;
votes_on
votes_on
</OrgnztnlReprsntv>
</propsdBy_OrgnztnAsCommtte> cast_by
Ballot
%update.mode.code.set;
'R'
HL7_NAME UPDATE_MODE
CDATA
#FIXED 'vote'
</castBy_VotngMembr>
</votesOn_PropsdItm>
0..*
">
comments_txt
:
ST
>
0..*
0..*
0..*
</Ballt>
dttm : TS
vote_cd : CV
January 30, 2000
© 2000, HL7
139
V-3 Methodology - defining abstract message
Use Case
Model
Reference
Information
Model
Domain
Information
Model
Message
Information
Model
Interaction
Model
Refined
Message
Information
Model
Common
Message
Element
Definition
Hierarchical
Message
Description
January 30, 2000
© 2000, HL7
140
Questions?
January 30, 2000
© 2000, HL7
141