Acts in the OpenIZ data model represent actions taken by entities to other entities. In this lens, we can say that an act represents everything that “happens” to entities. This mechanism of storage allows the OpenIZ data model to adapt to different countries with relative ease.
There are five different types of acts that are supported by the default OpenIZ schema:
Acts are classified into one of these four types based upon their ClassConcept code. This dictates what type of Act the particular tuple in the database represents. Additionally, Acts are classified by Mood via the MoodConceptId. The mood of an act identifies the mood or method of operation of the act, moods include:
Often time acts are related to one another via the ActRelationship entity. Act relationships are important, as typically acts cannot be standalone. For example, one cannot simply “Observe” something without having an encounter. An example of several types of interactions within OpenIZ are described below:
Table |
Column |
Type |
Description |
Act |
(None) |
N/A |
The act table is represents the immutable attributes of an act. |
ActId |
UUID |
A unique identifier for the act. |
|
ClassConceptId |
UUID |
Identifies a concept that classifies the act. This determines the type of act, for example an Observation, PatientEncounter, etc. |
|
MoodConceptId |
UUID |
Identifies the mood, or method of the act’s performance. |
|
ActTag |
(None) |
N/A |
A table for storing tags related to acts. A tag represents a version independent piece of data attached to a tag. |
ActTagId |
UUID |
A unique identifier for the tag. |
|
ActId |
UUID |
Identifies the act to which the tag is applied. |
|
Key |
VARCHAR |
A unique key identifier for the type of tag. A tag’s key is used to convey the type of data. |
|
Value |
VARBINARY |
Contains the binary data of the tag. |
|
CreationTime |
DATETIME |
Identifies the time when the tag became active, or was created. |
|
CreatedBy |
UUID |
Identifies the user that was responsible for the creation of the tag. |
|
ObsoletionTime |
DATETIME |
When present, identifies the time that the tag data is no longer valid. |
|
ObsoletedBy |
UUID |
Identifies the user who obsoleted the act tag. |
|
ActVersion |
(None) |
N/A |
Act events are versioned. The act version table is used to track mutable data. |
ActVersionId |
UUID |
A unique identifier for the version. |
|
ActId |
UUID |
Identifies the act to which the version data applies. |
|
CreationTime |
DATETIME |
Identifies the time when the act version became active (was created) |
|
CreatedBy |
UUID |
Identifies the user that was responsible for creating the version. |
|
ObsoletionTime |
DATETIME |
When present, identifies the time when the version of the act is no longer active. |
|
ObsoletedBy |
UUID |
Identifies the user who was responsible for the obsoletion of the version. |
|
NegationInd |
BIT |
When present, indicates that the act’s value is not true. For example, when attempting to convey that a vaccine was not given, the negationInd would be set to true. |
|
TypeConceptId |
UUID |
Identifies the type of act. This is a type that is a subclass within the major classification. For example, if the class is a substance administration, the type concept may represent an Immunization. |
|
StatusConceptId |
UUID |
Identifies the status of the act as of the current version. |
|
ActStartTime |
DATETIME |
Identifies the start time of the act. |
|
ActStopTime |
DATETIME |
Identifies the stop time of the act. |
|
ActRelationship |
(None) |
N/A |
The act relationship table is used to track the relationship of acts to one another. |
ActRelationshipId |
UUID |
Uniquely identifies the act relationship. |
|
SourceActId |
UUID |
Identifies the source act of the relationship. |
|
TargetActId |
UUID |
Identifies the target act of the relationship. |
|
EffectiveVersionId |
UUID |
Identifies the version of the source act where this relationship did become active. |
|
ObsoleteVersionId |
UUID |
Identifies the version of the source act where this relationship is no longer active. |
|
RelationshipTypeConceptId |
UUID |
Identifies the type of relationship that the two acts have to one another. |
|
ActParticipation |
(None) |
N/A |
The ActParticipation table is used to track how entities participate in a particular act. |
ActParticipationId |
UUID |
Uniquely identifies the act participation. |
|
EntityVersionId |
UUID |
Identifies the version of the entity that was active when the entity participated in the act participation. |
|
EffectiveVersionId |
UUID |
Identifies the version of the act when the participation is active. |
|
ObsoleteVersionId |
UUID |
When present, identifies the version of the act when the participation is no longer active. |
|
RoleConceptId |
UUID |
Qualifies what role the entity played in the carrying out of the act. |
|
QuantifiedActParticipation |
(None) |
N/A |
The quantified act participation table is a specialization of an act participation whereby a number of the same entity play the same role in the act. |
ActParticipationId |
UUID |
Identifies the act participation which this quantified act participation extends. |
|
Quantity |
INT |
Identifies the number of entities that are included in the playing of the role. |
|
ActIdentifier |
(None) |
N/A |
The act identifier table is used to store alternate identifiers for the act. This may include vaccine event identifiers, external order identifiers, etc. |
ActIdentifierId |
UUID |
Uniquely identifies the alternate act identifier. |
|
IdentifierTypeId |
UUID |
Identifies the type of identifier this particular identifier instance represents (order #, etc.) |
|
AssigningAuthorityId |
UUID |
Identifies the authority that assigned the identifier. |
|
IdentifierValue |
VARCHAR |
The actual external identifier value. |
|
EffectiveVersionId |
UUID |
Identifies the version of the act where the alternate identifier became active. |
|
ObsoleteVersionId |
UUID |
When present, identifies the version of the act whereby the alternate identifier is no longer active. |
|
ActExtension |
(None) |
N/A |
The act extension table is used to store extensions attached to acts. |
ActExtensionId |
UUID |
A unique identifier for the act extension. |
|
ExtensionTypeId |
UUID |
Identifies the type of extension represented. This includes information on how the extension should be serialized to/from the ExtensionValue column. |
|
ExtensionValue |
VARBINARY |
Carries the value of the extension. |
|
ExtensionDisplay |
VARCHAR |
A human comprehendible display value for the extension. |
|
EffectiveVersionId |
UUID |
Indicates the version of the act where this extension became active. |
|
ObsoleteVersionId |
UUID |
When present, indicates the version of the act where the extension is no longer active. |
|
Observation |
(None) |
N/A |
The observation table is used to store extended values related to observation act types. |
ActVersionId |
UUID |
Identifies the act version to which this extended data applies. |
|
InterpretationConceptId |
UUID |
Identifies the concept that represents the interpretation of the observation. |
|
QuantityObservation |
(None) |
N/A |
The quantity observation table is used to store extended information related to the observations that carry quantified values. |
ActVersionId |
UUID |
Identifies the observation act version to which the quantified observation data applies. |
|
Quantity |
DECIMAL |
A decimal value that contains the value of the observation quantity. |
|
QuantityPrecision |
INT |
Identifies the precision of the Quantity field. |
|
UnitOfMeasureConceptId |
UUID |
Identifies the concept that identifies the units of measurement. |
|
TextObservation |
(None) |
N/A |
The text observation table is used to store additional information related to a text valued observation. |
ActVersionId |
UUID |
Identifies the observation version id that this text observation data is attached to. |
|
TextValue |
TEXT |
A textual field that contains the observation data. |
|
CodedObservation |
(None) |
N/A |
The coded observation table is used to store additional data related to observations that are coded. Problems and Allergies would qualify as coded observations. |
ActVersionId |
UUID |
Identifies the version of the observation that this coded observation value data applies. |
|
ConceptValueId |
UUID |
Identifies the concept that represents the value of observation. |
|
SubstanceAdministration
|
(None) |
N/A |
The substance administration table is used to store data related to substance administrations to a patient. This include vaccines or any type of Epupin injections for |
ActVersionId |
UUID |
Identifies the act version to which the substance administration data applies. |
|
RouteConceptId |
UUID |
Identifies the concept that describes the route that was taken to administer the substance. This may be drawn from the default route if not supplied. |
|
DoseQuantity |
DECIMAL |
Identifies the dosage that was given to the patient. |
|
DoseQuantityPrecision |
INT |
Identifies the precision of the dose quantity. |
|
DoseUnitConceptId |
INT |
Identifies the dose unit of measure that was given to the patient. |
|
SequenceId |
INT |
Identifies the sequence of this dose if it is a part of a sequence of doses. |
|
PatientEncounter
|
(None) |
N/A |
The patient encounter table is used to store additional data related to an act that represents a patient encounter. |
ActVersionId |
UUID |
Identifies the act to which the extended patient encounter data applies. |
|
DischargeDispositionConceptId |
UUID |
Identifies the disposition in which the patient left the encounter. |
|
ActNote |
(None) |
N/A |
The act note table is used to store notes associated with an act. |
ActNoteId |
UUID |
A unique identifier for the note. |
|
EffectiveVersionId |
UUID |
The version whereby the note became effective |
|
ObsoleteVersionId |
UUID |
When populated, indicates the version of the act where the note is no longer active. |
|
AuthorEntityId |
UUID |
The identifier of the entity that wrote the note. |
|
NoteText |
TEXT |
The textual content of the note. |