Managing data models

In Atomik, all data models for EHR and Demographic content are defined by openEHR Operational Templates (OPTs).

There are two ways of uploading an OPT into Atomik. The first is via the Web Console by using the uploader functionality. The second is via the REST API.

Uploading OPTs by using the Web Console allows to upload several versions of the same template. All versions are stored, and only the last one is active. The Web Console also allows to deleted templates that you don't need anymore. Though if you have data store for a template, that tempalte couldn't be deleted. The delete is more for the design and development phases than for a production environment. In production we prefer to inactivate the template, which is also done from the Web Console.

When creating templates from the openEHR REST API, it doesn't allow to upload several versions of the same template. If the template exists, then a 409 Conflict response will be sent to the client. That is in compliance with the openEHR REST API specifications. So when working with templates during design and development, and using the REST API only, for deleting templates the only option is to do it from the Web Console, since there is not delete operation yet at the REST API level.

Internally, Atomik uses the OPTs to:

  1. validate committed data
  2. index data
  3. create and execute queries

So a well defined template is crucial to make the most out of all those functionalities.