← Back to team overview

dhis2-devs team mailing list archive

Surveillance validation rules

 

I defined a new validation rule for "Total number of yellow fever cases"

Left side was a sum of all yellow fever cases (OPD, IP discharge, deaths)
dis-aggregated by three age groups each (Total of nine data elements).

 Right side was defined as a constant (1.0). "Skip for missing values" was
unchecked for both sides. Operator was >=. Period type was set to monthly
(Same as the data collection frequency). Other options (Sequential sample
count, etc) were left blank.

I run the validation rule analysis and get violations basically everywhere

Organisation unit    Period    Importance    Left side descriptionValue
OperatorValueRight side descriptionDetailsce Foo OrgunitSeptember
2013MediumTotal
yellow fever cases0.0>=1.0Zero
  ... (many more here)


What I do not understand is why this rule is being tripped. For this data
element, (Yellow fever) we are not recording zeros, and the values
therefore should always be NULL, unless there happens to be a value entered
greater than zero.

Maybe again, this is a misunderstanding on my part of how the validation
rule analysis handles blank values. In this case, I would expect that if
"Skip for missing values" is not checked, that the NULLS would be handled
effectively as zeros, so that when the multiple data elements are summed
up, the left hand side is zero. It seems that is not the case, or else I am
missing something.

This use case is quite common for disease surveillance, whereby data
elements will typically be NULL (or perhaps zero), but most likely null,
since the values are almost always zero, and it does not make sense to
record anything other than non-zeros here.

What am I missing?

Regards,
Jason