DoItWithASmile
DoItWithASmile

Reputation: 3

Can / should Basic resource be used to store application settings?

At a medical device manufacturer company I work at, we are looking into consolidating our data model and APIs between products. Since I worked in the IEEE 11073 as well as HL7 Devices working group a while back, I suggested to look into HL7 FHIR for this.

We were able to map almost all concepts we are having to an existing resource or identify one where we could place an extension on.

Goals:

  1. deployment of products in clinical environments without imposing data storage requirements or custom backend solutions = no additional data storage shall be installed and maintained within the customer's environment (e.g. additional DBMS instances or databases in a DBMS)
  2. site / tenant, instance and user configuration shall be accessible through the same data model and API concept as a Patient, for example
  3. interoperability of settings is not important (and can't be achieved obviously anyway) = only our products need to understand them

Problem:

There is no technical concept of application configuration / settings in FHIR. (e.g. key-value pairs for configuring dark mode of the UI or stuff like that)

(Note: given the nature and intention of HL7, that is per-design and not a complaint!)

Possible solutions:

  1. custom resource (which is discouraged in FHIR)
  2. Basic resource and using extension(s)

Questions:

  1. Is this a "good" (advisable) approach / design to the problem at hand?
  2. Is there another concept or solution in FHIR we missed for this?

Upvotes: 0

Views: 84

Answers (1)

Lloyd McKenzie
Lloyd McKenzie

Reputation: 6793

Basic is certainly an option. A couple of other possibilities:

  • Observation (often used for name/value pairs)
  • Parameters (though this typically isn't persisted/searchable)

If you need complex nesting or need values other than those supported by Observation, Basic is your best bet. It's intended for representing data that isn't really 'healthcare' data or where there's no standardization of what the data should be. Application configuration settings would tick both boxes.

Upvotes: 0

Related Questions