The version date of this specification is 2023/12/16
.
There are two units of Time, the first is simply called Time and the second is called EpochTime.
Both Time and EpochTime are measured without the year but may contain a year to designate the point in the counting begins. These are both represented by a single 64-bit (unsigned) integer. The default timezone is always UTC.
The common form is intended as the non-technical form that is form common use. This may have a negative value or be more than 64-bit digits long. This is simply not expected to be interpreted as a unit of time on a computer (but nothing stops it from being interpreted).
The technical forms are limit to 64-bit unsigned for technical use but should technology advance to a point where larger bits are needed then this allows for that.
The systems should expect 64-bit and larger bits would have to become common before something larger than 64-bit is the expected or assumed default.
Negative signs can be allowed but they must not prevent the full use of the 64-bit.
The implementation of how this is done is left to the implementer except that the signs are immediately to the left of the digit.
For example 2022:-5
would be 5 units before the start of the year 2022.
Because the negative is allowed, so must the positive character (such as 2022:+5
).
A positive value is the default interpretation when no sign is valid.