time property

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.