Note: The class description below has been excerpted from the Hl7 2.3.1 documentation. Sectional
references made below also refer to the same documentation.
In prior versions of HL7, this data type was always specified to be in the
format HHMM[SS[.SSSS]][+/-ZZZZ] using a 24 hour clock notation. In the
current and future versions, the precision of a time may be expressed by
limiting the number of digits used with the format specification as shown
above. By site-specific agreement, HHMM[SS[.SSSS]][+/-ZZZZ] may be used where
backward compatibility must be maintained.
Thus, HH is used to specify a precision of "hour," HHMM is used to specify a
precision of "minute," HHMMSS is used to specify a precision of seconds, and
HHMMSS.SSSS is used to specify a precision of ten-thousandths of a second.
In each of these cases, the time zone is an optional component. The fractional
seconds could be sent by a transmitter who requires greater precision than whole
seconds. Fractional representations of minutes, hours or other higher-order units
of time are not permitted.
Note: The time zone [+/-ZZZZ], when used, is restricted to legally-defined time zones
and is represented in HHMM format.
The time zone of the sender may be sent optionally as an offset from the coordinated
universal time (previously known as Greenwich Mean Time). Where the time zone
is not present in a particular TM field but is included as part of the date/time
field in the MSH segment, the MSH value will be used as the default time zone.
Otherwise, the time is understood to refer to the local time of the sender.
Midnight is represented as 0000.
Examples:|235959+1100| 1 second before midnight in a time zone eleven hours
ahead of Universal Coordinated Time (i.e., east of Greenwich).
|0800| Eight AM, local time of the sender.
|093544.2312| 44.2312 seconds after Nine thirty-five AM, local time of sender.
|13| 1pm (with a precision of hours), local time of sender.