Allowing free Text for Death Reason


Death is a person level event. In Bahmni registration app we can mark a patient as death. But there is a compulsory field called reason of death in this section which we need to fill. This field is currently coded class. Death reasons could be multiple and there can be multiple reason based on minute differences in condition due to which a patient dies. Is it possible to convert this field into a non coded / free text field a other fields on the registration page? This will allow users add an exact diagnosis / condition due to which death happened.

1 Like

I would argue for multiple concepts and potentially for an other/free text addition, but would not recommend removing the coded concepts as this is a primary role of the EMR (to document vital statistics) and these require coded concepts.

@shubhangi, in the underlying OpenMRS Platform, Person.causeOfDeath is coded:

So, it would be possible to change this in Bahmni, but not totally straightforward. And to do so we’d probably want to extend the underlying OpenMRS platform to support free-text for this as well.

@akanter agree with you. It would be good to have ability to add other/free text along with coded reasons of death. this appears more like current diagnosis entry field. @darius how can this be achieved? Can you guide?

Like Darius mentioned, it will require forking OpenMRS Core, and also changing Bahmni. The effort is not small, and unlikely to find a place easily in the product - which means that the effort of maintenance will be large!

Simpler way might be

  • just define a form “death note” and allow someone to fill either a coded concept or a free text.
  • hide the “death information” in registration!
  • show the details from the “death note” in the patient dashboard or report

@angshuonline thanks. Was wondering if it was possible easily to create it on registration page because death is a person level event and not visit/encunter level. Template setting is easier, will probably go ahead with it.

Why is this so large?

  • Add person.caused_of_death_non_coded varchar(255) as we did for Orders’ order reason
  • In Person, add getCauseOfDeathNonCoded() and setCauseOfDeathNonCode(String).

That’s not a big PR is it? :slight_smile:


  • Set Person.CAUSE_OF_DEATH_NON_CODED to “non coded” concept (I’m assuming we have this in a global property)
  • Add a convenience method like setCauseOfDeath(String) that would automatically set the coded value to Person.CAUSE_OF_DEATH_NON_CODED
  • Consider a convenience method like isCauseOfDeathCoded() to avoid forcing a client to know about Person.CAUSE_OF_DEATH_NON_CODED

Oh, I didn’t expect OpenMRS core to agree to supporting non-coded, textual cause of death. The maintenance effort if not accepted onto the core would be big.

Making cause of death free text by default would be a mistake (make the data much harder to use compared to encouraging a codified value). But allowing an option of “Other, Non-Coded” where free text is used when there is no code available for the cause of death is reasonable (e.g., these free text entries could be monitored to discover missing concepts).

1 Like