A Date & Time value like 2010-02-05 18:12:24 is ambiguous, depending on the Time Zone in which that value is interpreted it would express different points in time. While we are usually interpreting Date & Time values in the Time zone we live in and we therefore usually do not have to deal with the ambiguous character of those Date & Time values. But as soon as we have to deal with date & time values originating from different time zones things get more difficult.
To be able to handle date originating from different time zones Redbex uses Date-Time-Offset values. Date-Time-Offset values like 2010-02-05 18:12:24 +01:00 represent instantaneous time (or absolute time) relative to Coordinated Universal Time, they are universal and unambiguous for everyone (not accounting for leap seconds, or the relativistic effects of time dilation).
Note that even if you are usually working in only one time zone you might be confronted with data coming from different time zones. Some sensors for example do not switch between summer time and winter time and therefore define their own 'artificial' time zone.
The offset part of the value (+01:00) can take values from -14:00 to +14:00 and expresses the offset that has to be subtracted from the date part in order to get UTC.
Example: Using Date-Time-Offset The date time value of 2010-02-05 18:12:24.198 expressed in MST (Mountain standard time) would be stored by the Application Server as 2010-02-05 18:12:24.198 -06:00.
Using Date-Time-Offset makes data originating from different Time zones comparable:
•2010-02-05 18:12:24 +01:00 = 2010-02-05 19:12:24 +02:00 = 2010-02-05 17:12:24 +00:00
•2010-02-05 18:12:24 +01:30 > 2010-02-05 18:12:24 +02:00
•2010-02-05 18:12:24.198 -06:00 = 2010-02-06 00:12:24.198 00:00
•2010-02-05 18:12:24.198 +04:00 = 2010-02-06 14:12:24.198 00:00
•2010-02-05 18:12:24.198 -04:00 = 2010-02-05 23:12:24.198 01:00
Date-Time-Offset values are always expressed in the Gregorian calendar. The system supports date values ranging from 0001-01-01 and 9999-12-31, however values might be restricted in the context where you are using them. Time values can range from 00:00:00 through 23:59:59.9999999 therefore giving you a theoretical maximum precision of 100 nanoseconds, again the maximum precision can be restricted in the context where you use the Date-Time-Offset value.