Home > Mobile >  Came across this date time format
Came across this date time format

Time:04-29

Working with data and trying to figure out what date and time this data is? Any clue? Any help is appreciated.

{
"time-base-schedule-number": 9,
"time-base-schedule-month": 8190,
"time-base-schedule-day": 4,
"time-base-schedule-date": 4294967294,
"time-base-schedule-day-plan": 2,
"day-plan-hour": 21,
"day-plan-minute": 0
}

CodePudding user response:

Some googling for those fields turns up a standard called TMDD (Traffic Management Data Dictionary). Here is the link to the latest version of this standard. Disclaimer: I know nothing about this, other than what I'm finding from searching.

In the TMDD v3.1 Volume II document, you can search for those fields, such as time-base-schedule-date, and you'll see a table that gives other forms of the names, including timeBaseScheduleDate. Search again for that, and you'll eventually stumble upon the description:

3.6.6.4 timeBaseScheduleDate

<xs:simpleType name="TimeBaseScheduleDate">
  <xs:annotation>
    <xs:documentation>
      <objectClass>Global</objectClass>
      <definition>The Day(s) Of a Month that the schedule entry shall be
        allowed. Each bit represents a specific date of the month. If the
        bit is set to one (1), then the scheduled entry shall be allowed
        during the associated date. If the bit is set to zero (0), then
        the scheduled entry shall not be allowed during the associated
        date.</definition>
      <standard>NTCIP 1201 v02.32</standard>
      <identifier>timeBaseScheduleEntry 4</identifier>
      <valueDomainTerm>nbr</valueDomainTerm>
      <units />
    </xs:documentation>
  </xs:annotation>
  <xs:restriction base="xs:unsignedInt" />
</xs:simpleType>

From this definition, and others in the same section, it seems these values are bitmasks. Your 4294967294 is a decimal number corresponding to the binary 11111111111111111111111111111110. That is - 31 ones followed by a zero. Given that there's no month with 32 days, my assumption is that that the values is zero-based. In other words, the rightmost bit corresponds to a day 0 that doesn't exist, and thus day 1 is in the second-to-last bit, day 2 in the next one over, and so forth until day 31 in the leftmost bit. So your value means, "any day of the month" (at least in that field).

Ultimately, this isn't a date format, but rather a schedule format of sorts. You'll have to read through that doc for details on the other fields, but my interpretation is as follows:

  • "time-base-schedule-number": 9
    appears to be an identifier. This is schedule number 9.
  • "time-base-schedule-month": 8190
    bitmask equal to binary 1111111111110 meaning "every month"
  • "time-base-schedule-day": 4
    bitmask equal to binary 00000100 meaning "the second day of the week". If the first day of the week is Sunday, then this would mean Monday. Or maybe it's Tuesday if Sunday is zero. (It's unclear which it is from reading the doc.)
  • "time-base-schedule-date": 4294967294
    bitmask equal to binary 11111111111111111111111111111110 meaning "any day of the month"
  • "time-base-schedule-day-plan": 2
    associated with plan 2 (whatever that means)
  • "day-plan-hour": 21
    the event time starts at the 21st hour (21 == 9 pm)
  • "day-plan-minute": 0
    the event time starts at the 0th minute

So I think, this all means that Schedule Number 9 is associated with Plan Number 2 and starts at 9:00pm every Monday. (If I got the day of week right.)

  • Related