Why does the system.alarm.queryJournal() function have different event/state filters than the Perspective Alarm Journal Table component?

Can any one explain to me why the Perspective Alarm Journal Table component allows one to filter by these event types...

  • active: Whether to display alarm events with active states. Default is true.
  • acked: Whether to display alarm events with acked states. Default is true.
  • cleared: Whether to display alarm events with cleared states. Default is true.
  • enabled: Whether to display alarm events that were generated by enabling an alarm.
  • disabled: Whether to display alarm events that were generated by disabling an alarm.

...which match event types recorded in the Alarm Journal database table (alarm_events)...

  • 0: Active
  • 1: Clear
  • 2: Acknowledgement
  • 4: An alarm was enabled
  • 5: An alarm was disabled

...but the system.alarm.queryJournal() function requires you to filter by these combination states?

String Representation Integer Representation
ClearUnacked 0
ClearAcked 1
ActiveUnacked 2
ActiveAcked 3
Enabled 4
Disabled 5

I'm attempting to make an Alarm Journal export button/script that uses the filter settings from a Perspective Alarm Journal Table component and the system.alarm.queryJournal() function to export data (in Excel format) matching data presented in the Alarm Journal Table component.

It seems to be an odd difference/deviation and I'm wondering if it might actually be a mistake in the documentation for system.alarm.queryJournal() .