9.2.11 Time Comparison with Minute Tolerance  'FieldComparatorTime'

The time field comparator assumes times are in 24-hours format given either as HHMM or HH:MM, with midnight being 00:00 and noon being 12:00. If no valid time is given an error is triggered.

Similar to the day comparator, it is possible to set two tolerance values for time A being before time B and vice-versa with the two arguments max_time_a_before_b and max_time_b_before_a, respectively. The value of these arguments must be in minutes between $0$ and $1440$ (24 hours). Default value for both arguments is $0$, which results in exact time comparison only (i.e. if the times are not the same the disagreement value will be returned).

Additionally, it is possible to set the start of a 24-hours period to a time different from midnight using the day_start (which must be of the form HHMM orHH:MM). It is assumed that both times are within the same 24-hours period. The default value for day_start is midnight (00:00).

If time A is equal to or less than max_time_a_before_b before time B the partial agreement will be calculated as follows:

\begin{eqnarray*}
partial\_agreement & = & agree\_weight - \left( \frac{time\_di...
...b+1} \right) * \\
~& ~& (agree\_weight + abs(disagree\_weight))
\end{eqnarray*}


The case where time A is after time B is calculated similarly using the value of argument max_time_b_before_a.

If the time difference between the two times is larger than the maximum of max_time_a_before_b and max_time_b_before_a then the disagreement weight will be returned.

In its current version no frequency dependent weight calculation is possible, thus the arguments frequency_table, freq_table_max_weight and freq_table_min_weight can not be used with this field comparator function.