This wiki has undergone a migration to Confluence found Here

Template Implementation

From HL7Wiki
Jump to navigation Jump to search


Given the ever-increasing reliance on Templates (a conformance construct), how does one use them (in RIMBAA applicatations, RO-square) for both validation of object structures, or for the process of creating template-conformant object structures? How to support "select a-structure-of-template(x) from DB where patient=x and encounter=y"?


  • If there ideas as to how the issue can be dealt with, or multiple options how things can be solved, please include them in this section.
  • (Ewout Kramer) I am contemplating building a template-based storage layer on top of a relational database. This means that a template is my basic unit of transaction, validation and update. The individual acts/entities/roles of the template are still stored as individual records so it is easy to resolve links (by id) to specific acts/entities/roles within the template. Fetching such records will still fetch the whole template (with the desired act/entity/role as its root!), so changing and recommitting it is a more easily defined operation. I also make snapshots per template, so it is easy to store (and retrieve) the historical state of the whole template after an update. This feels als a mid-point between a database storing individual acts as its atoms and a message-database storing whole messages. It requires you to split messages into its constituent templates, but for most of my usecases (related to storing patient records, rather than messagecontent) this feels quite natural.

See also Validating in RIMBAA.