The MaximumActualTime2 Aggregate defined in Table 29 retrieves the maximum Good value for each interval as defined for MaximumActualTime except that Simple Bounding Values are included. The Simple Bounding Values for the interval are found according to the definition of Simple Bounding Values (see 3.1.9). Any Bad values are ignored in the computation. The Aggregate StatusCode will be determined using the StatusCode Calculation (see 5.3) for time based Aggregates. If a bounding value is returned then the status will indicate, Raw, Calculated or Interpolated.

If TreatUncertainAsBad is false and an Uncertain raw value is the maximum then that Uncertain value is used. Uncertain values are ignored otherwise.

If sloped interpolation is used and the End bound is the maximum value then End bound is used as the maximum with the timestamp set to the EffectiveEndTime of the interval. The End bound is ignored in all other cases.

Table 29 – MaximumActualTime2 Aggregate summary

MaximumActualTime2 Aggregate Characteristics



Data Type

Same as Source

Use Bounds



Time of maximum

StatusCode Calculations

Calculation Method



Set Sometimes

If an interval is not a complete interval


Not Set


Set Sometimes

If an Interpolated bound is the Maximum


Set Sometimes

If a raw value is the Maximum

Multi Value

Set Sometimes

If more than one value is equal to the Maximum

StatusCode Common Special Cases

Before Start of Data


After End of Data


No Start Bound

Treat the beginning value as Bad_NoData and compute the Aggregate

No End Bound

Treat the ending value as Bad_NoData and compute the Aggregate

Bound Bad

Use as value and compute the Aggregate as defined

Bound Uncertain

Use as value and compute the Aggregate as defined