This is crossposted with minor editing from my recent contribution to the AMIA Implementation Group list.
The challenge for today’s systems developers is to take a new approach to interoperability that removes the barriers of the old ways of working on the generation of software built from the 1970s onwards. The relational data model demanded that the tables for storage be defined by the programmer, whilst the definition of the data fields was produced by the systems analyst. Hence, the definition of data was separated from its storage organisation. If the storage variables (table names and field names) had been kept strongly linked to field definitions in the first place, then the interoperability problem would be much less than it is today.
Keys to better interoperability today are:
- Properly defining the meaning of fields of data by engagement of clinicians or clinical terminologists in the data definition process.
- Removing the dependency on understanding tables and attribute naming by removing that step entirely from the development process – that is, automatically create the data structures for storage from the design, so there is only one point of data definition: in the design.
- Providing the names to fields of data by a taxonomically stable source of names e.g. SNOMED CT or like taxonomies.
- Accessing the data by its definitional name and providing tools such as APIs that enable one system to learn another systems naming conventions.
- Ultimately, data should be transferred by reference to its stable name without the needed for HL7 message to create a payload, or without ODBC calls to directly access data tables.