An entity within the SanteDB data model is used to represent a person, place, or thing. Entities represent the who, which and where aspects of an action. Entities are further classified into several sub classes illustrated in Figure 1.
Entities are further classified by their class code and determiner code. The determiner code of an entity is responsible from differentiating a type of an entity (i.e. antigen, dose number, material type, etc.) and an instance or series of instances of an entity (an actual vial of vaccine, a box of syringes, etc.). Most entities within the SanteDB system are expected to be stored as instances of entities, classes of entities will primarily be restricted to materials whereby a class of antigens (OPV for example) will have both instances (vials of OPV) and sub-classes of representing dose numbers (OPV0 – OPV3). Provides a summary of the entity classes and how they are classified in the data model.
An entity is the base class used to represent a person/place/thing in the SanteDB data model.
A material represents a physical thing to which participates in the delivery of care. For example: a syringe, a box of vaccine, etc.
A manufactured material represents a material which is manufactured such as diluent, vaccine, syringes, etc.
A place represents a physical location where health services are provided.
An organization represents an administrative structure which employs providers, operates clinics, etc.
A person represents a human being.
Represents a person who receives health services.
Represents a person who provides health services.
Represents a person who actively uses the system.
Represents a physical object on which health services data is entered, stored, etc.
Represents a piece of software which is used to access, record or update medical data.
Determiner codes are used to classify whether a tuple in the entity table represents an actual thing or a classification of things. There are three types of determiner classifications for objects listed in .
The entry in the database represents a one or more occurrences of an entity.
A patient, a facility, an organization, etc.
The entry represents a classification of entities.
A type of material, a type of organization, a type of device.
Represents a kind of object which is quantified such as X number of Y.
A dose of vaccine (5ml, etc.)
Figure 2 represents a sample information model of a kit of BCG vaccine. The model illustrates how a single tuples in the SanteDB model are related to one another to represent a kit. The material “BCG Vaccine” is comprised of one dose of “BCG Antigen”, one “Syringe”, and one dose of “BCG Diluent”. A box of “BCG Vaccine” represents 25 single doses of “BCG Vaccine” (meaning 25 syringes, 25 antigen and 25 diluent). Finally, from this we can order (via instantiation or inheriting a kind) a kit of GSK 5ml BCG vaccine. This derivation will have the same rules applied (in that this vaccine must have a syringe, antigen, and diluent.
Figure 3 represents a complex scenario of kitting a vaccine and then deriving a specific type of kit. The relationship between the instantiation and the generic concepts of the material would have a type of “Manufactured” meaning the “GSK 5 ml BCG” is a manufactured representation of the generic BCGvaccine.
The SanteDB model also supports more simplistic representation of a “BCG Vaccine” if kits are not required by the jurisdiction that is implementing SanteDB. Figure 4 illustrates a valid representation of BCG in a jurisdiction where only the antigen is tracked.
Entities also support a basic series of states which identify the current status of the entity in the SanteDB data model. Figure 7 illustrates the states of an entity and the valid transitions.
The states of the entity are:
New : The entity instance was just created, and no processing, storage, or business rules have been executed.
Active : The entity has been persisted, any necessary review and/or processing has occurred, and the entity record is active.
Nullified : Indicates that the entity was created in error, the entity never existed.
Obsolete : Indicates that the entity did exist, however it no longer is active.