Health Level Seven (HL7) Data Types and Top-Level Reference
Information Model (RIM) Classes
HL7 version 3
RIM is
a comprehensive model being developed by HL7 to satisfy the information needs of
creating and maintaining interoperable messages and documents in health care.
The official HL7 RIM methodology uses Unified Modeling Language. In creating a
Protege-2000 version, I have separated out the definition of HL7 data types as a
separate project that is included in the HL7 RIM project.
I have only modeled the top-level classes of the RIM (Entity, Role,
Participation, Act, Act_relationship, Relationship_link). If you are interested
in filling out the subclasses of these classes, please contact
me so that we can create and maintain
one consistent ontology.
Please note that the Protege-2000 representation of the RIM has no official
status.
In creating this Protege-2000 ontology of HL7 data types and top-level RIM
classes, I had to make a number of modeling decisions:
- All HL7 data types are modeled as classes in Protege-2000
- All Protege-2000 classes representing HL7 data type are modeled as
instances of the HL7_Data_Type metaclass
- Instances of Concept Descriptors (CD) are concepts that can be organized
in classification hierarchy. Thus the CD data type and its subtypes are
modeled as Protege-200 metaclasses, whose instances are classes
- Protege-2000 doesn't support template constructs such as set, list, bag,
and interval. Each template is modeled as a class with a 'members' slot.
Instantiations of templates with specific classes (e.g., BAG<TELECOM> are
modeled as subclasses of template classes (e.g. BAG), where the allowed values
of the members slot are constrained to be instances of specific classes.
- The HL7 practice of 'restricting' a subclass by making certain attributes
not applicable for the subclass is modeled in Protege-2000 as a subclass where
these attributes are constrained to have cardinality zero. (Somebody should
create a template-slot widget that does not show slots that are constrained to
have cardinality zero.)
- Associations and attributes of HL7 classes are all slots of Protege-2000
classes
- The has_source, has_target, is_source_for, and is_target_for relationships
between Act and Act_relationship have been renamed has_souce_act,
has_target_act, is_source_for-act_relationship, and
is_target_for_act_relationship. This renaming is necessary so that they are
not confused with similar set of relationships between Role and
Relationship_Link
- Constraints on the classes, attributes, and relationships have not been
consistently modeled in this version of Protege-2000 representation of HL7 RIM
data types and classes..
Contact: Samson Tu, Stanford Medical
Informatics, Stanford University School of Medicine.
Download the HL7 data type and top-level RIM classes