mdex:time properties represent an instant of
time that recurs every day.
The
mdex:time property represents the hour and minutes
of an instance of time, with the optional specification of fractional seconds.
You can specify a time value as either a universal (UTC) time or as a local
time plus a UTC time zone offset. Note that specifying just a local time is not
supported.
format for universal time
The
mdex:time format for a UTC time is:
hh ':' mm ':' ss {'.' s+} Z
where:
- hh is
a two-digit numeral that represents the hour. Note that specifying 24 is not
permitted (to represent 24, use all zeros for the time portion).
- mm is
a two-digit numeral that represents the minute.
- ss is
a two-digit numeral that represents the whole seconds.
- '.'
s+ is optional and, if present, represents the fractional seconds.
The internal representation is only precise to the millisecond, which means
that a specification of four or more digits is truncated to three digits.
- Z (added to the time
without a space) is a literal indicator that this time is Coordinated Universal
Time (UTC, sometimes called Greenwich Mean Time). Z is the zone designator for
the zero UTC offset.
A colon (':') is the separator between hours, minutes, and whole
seconds, while a period ('.') is the separator for fractional seconds. Be sure
to use a leading zero for single-digit hours, minutes, and whole seconds.
For example, to indicate 1:30 p.m. in New York City, you would
specify:
18:30:00Z
format for local time plus UTC offset
Alternatively, you can specify the value for an
mdex:time property as a local time plus a UTC
offset. The format for this representation is:
hh ':' mm ':' ss {'.' s+} zzzzzz
The meanings of the hours, minutes, and seconds specifiers are the
same as the universal time format.
zzzzzz represents the time zone. Time zones are
durations of hours and minutes. Time zones may be specified as positive or
negative durations.
The format for a time zone is:
('+' | '-') hh ':' mm
where:
- hh is
a two-digit numeral (with leading zeros as required) that represents the hours.
The value for
hh cannot be greater than 14.
- mm is
a two-digit numeral that represents the minutes. The value for
mm cannot be greater than 59. However, if
hh is 14, then
mm must be 00.
- '+' indicates a
non-negative duration.
- '-' indicates a
non-positive duration.
For example, to indicate 1:30 p.m. in New York City, you would
specify:
13:30:00+05:00
Example of ingesting time properties
The following request updates Record 624 with two time properties:
<ns:ingestChanges>
<ns:updateRecords>
<ns:recordSpecifier>FactSalesID='624'</ns:recordSpecifier>
<ns:addAssignments>
<ns1:attribute name="time1" type="mdex:time">13:25:43.261Z</ns1:attribute>
<ns1:attribute name="time2" type="mdex:time">09:00:00+05:00</ns1:attribute>
</ns:addAssignments>
</ns:updateRecords>
</ns:ingestChanges>
Note that the time2 property uses a leading zero (i.e., "09") to
specify the hour. Omitting the leading zero will cause the operation to fail.