If you use the difference for dates in past and future to have a countdown or something like that, positive and negative values make totally sense. How many days until the defined date is reached or how many days have already passed.
That make sense to me. For the other use I’ll simply add the abs() function.
By the order of the attributes you are able to decide whether you want to have positive or negative values.
Yes. However, my suggestion is to change the calculation so, that
diffDate(startDate, endDate) yields a positive value if
startDate < endDate. Hope, this makes sense