The version date of this specification is 2023/12/16
.
The license (copyright) is Open Standard License 1.0 or greater.
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 limited 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.