Tetralogy of Fallot database representation

Tetralogy of Fallot is a significant and complex congenital heart disease. It consists of four heart malformations. So if a patient is described to have TOF, it means that she/he has all those four malformations together.

However, the separate malformations are already present on the diagnoses list, as separate entities. From a data-modeling perspective, it’s a redundancy on the factors (malformations, diseases) list. This leads to problems with interpretation. As the VSD is one of TOF’s components, is already present on the diseases list, and users are allowed to enter both VSD and TOF diagnoses, there are patients with all four combinations in the database.

People might write it like this:

  • TOF
  • VSD
  • TOF and VSD
  • None

But I would prefer the tabular notation:

| TOF | VSD |
|  -  |  -  |
|  X  |  -  |
|  -  |  X  |
|  X  |  X  |

It should be clear now, why there are exactly four combinations. And all four are present in the database. The TOF and VSD combination is invalid, because VSD is already present in TOF. Well, it’s doctors who know that, because the data structure doesn’t reflect this knowledge.

Now, how to fix it? Should the data entry software prohibit entering both TOF and VSD? No. It would mean implementing an exceptional behaviour of the application, and leave the weak data structure. Instead, I would make an alternative data structure:

| VSD | Pulmonary stenosis | Overriding aorta | Right ventric. hypertrophy |
|  -  | -                  | -                | -                          |
|  X  | -                  | -                | -                          |
|  X  | X                  | X                | X                          |
|  X  | X                  | X                | X                          |

It doesn’t mean that the data entry software users would have to enter every component separatery. For such complex diseases a presets would be helpful: click the TOF button, the four factors jump in. But if you have an exceptional patient, you can tweak every single factor independently.

The reports

When viewing information about VSD and related diseases, surgeon doesn’t want to see, what percent of patients with VSD also have TOF. Also, when viewing TOF-related diseases, the surgeon doesn’t want to see VSD, because all patients with TOF have VSD by definition.

New relation

So I have to add new data structures. There will be new relation between the diseases:

  • Is part of

The results in the reports will be:

  • When viewing the superior disease (here: TOF), patients who have the inferior disease (here: VSD) will be shown, but the information about the inferior disease will be discarded, so they will appear as they wouldn’t have it.
  • When viewing the inferior disease (here: VSD), the patients with the superior disease (here: TOF) as well will not be included and/or shown.

Author: automatthias

You won't believe what a skeptic I am.

One thought on “Tetralogy of Fallot database representation”

  1. I keep wanting to comment on your blog as you keep visiting mine, however your research goes right over my head! Greetings from the other side 🙂

Comments are closed.