# Dates, times and time zones

Part of Corner cases by Baltor.

IANA time zone tables with aliases, abbreviations and offsets, RFC 3339 helpers, date formats by country, and checkers for out-of-order timestamps and missed deadlines.

## What to watch for

- An abbreviation such as CST or IST names more than one zone, so store the IANA name.
- Some offsets are not whole hours, such as +05:30 and +05:45.
- 03/04 is March 4 in one country and 3 April in another.

## Components

- [Every IANA time zone identifier, including link names](https://baltor.ai/components/every-iana-time-zone-identifier-including-link-names-1dca627c): Every IANA time zone identifier, including link (alias) names: 418 rows with a JSON Schema, a checked loader and tests. Name `time-zones-names.json`, licence MIT, 8 files.
- [Time zones with abbreviations, UTC offsets and daylight saving](https://baltor.ai/components/time-zones-with-abbreviations-utc-offsets-and-daylight-s-0b83730d): Time zones with abbreviations, UTC offsets, daylight saving and their IANA zone names: 108 rows with a JSON Schema, a checked loader and tests. Name `timezones.json`, licence MIT, 8 files.
- [Time zone long names and their common abbreviations](https://baltor.ai/components/time-zone-long-names-and-their-common-abbreviations-a3566183): Time zone long names and their common abbreviations (e.g. Name `abbreviations.json`, licence MIT, 8 files.
- [Conventional date format by country with ISO country and language codes](https://baltor.ai/components/conventional-date-format-by-country-with-iso-country-and-269b9f49): Conventional date format by country with ISO country and language codes: 95 rows with a JSON Schema, a checked loader and tests. Name `date-formats.json`, licence MIT, 8 files.
- [US federal holidays with their date rules](https://baltor.ai/components/us-federal-holidays-with-their-date-rules-b6d57b42): US federal holidays with date rule, official name, year established and details: 11 rows with a JSON Schema, a checked loader and tests. Name `federal_holidays.csv`, licence CC0-1.0 AND MIT, 8 files.
- [datetime_utcoffset from pyRFC3339](https://baltor.ai/components/datetime-utcoffset-from-pyrfc3339-8ca19374): datetime_utcoffset from pyRFC3339: Return the UTC offset for an aware :class:`datetime.datetime` in seconds. Name `datetime_utcoffset`, licence MIT, 6 files.
- [generate from pyRFC3339](https://baltor.ai/components/generate-from-pyrfc3339-79b46a2a): generate from pyRFC3339: Generate an :RFC:`3339`-formatted timestamp from a :class:`datetime.datetime`. Name `generate`, licence MIT, 6 files.
- [parse_date_time from RDFLib](https://baltor.ai/components/parse-date-time-from-rdflib-32434b0f): parse_date_time from RDFLib (RDF terms, N3 and JSON-LD helpers): always returns seconds in UTC One tested Python function, copied with the code it needs. Name `parse_date_time`, licence MIT AND BSD-3-Clause, 6 files.
- [format_timestamp from Tornado httputil](https://baltor.ai/components/format-timestamp-from-tornado-httputil-df2ccf53): format_timestamp from Tornado httputil: Formats a timestamp in the format used by HTTP. Name `format_timestamp`, licence MIT AND Apache-2.0, 6 files.
- [jday from sgp4](https://baltor.ai/components/jday-from-sgp4-3dd37dec): jday from sgp4 (satellite orbit propagation: Julian date helpers): Return two floats that, when added, produce the specified Julian date. Name `jday`, licence MIT, 6 files.
- [Records retention and disposition date calculator](https://baltor.ai/components/records-retention-and-disposition-date-calculator-e6be8355): Apply a retention schedule to records: find each trigger date, add the retention period, and mark records due, due soon, on legal hold, waiting for their trigger or retained, with file names checked against a naming pattern. Name `records_retention_schedule`, licence MIT, 12 files.
- [Operational log completeness and order audit](https://baltor.ai/components/operational-log-completeness-and-order-audit-6e5ed774): Audit an operational log for missing required fields, unreadable or out-of-order timestamps, repeated ids, sequence gaps and repeats, and missing days or hours per group against a period, with coverage shares. Name `record_log_auditor`, licence MIT, 12 files.
- [Measure statistical release timeliness and punctuality against an advance release calendar](https://baltor.ai/components/baltor-statistical-release-timeliness): Measure statistical release timeliness and punctuality against an advance release calendar: lag from the end of the reference period, delay against the pre-announced date, announcement notice and declared maximum lags, per dataset and overall. Name `baltor_statistical_release_timeliness`, licence MIT, 9 files.
- [Audit public records request timeliness against a statutory deadline](https://baltor.ai/components/baltor-records-request-timeliness): Audit public records request timeliness against a declared statutory deadline in calendar or working days, with holidays, clock stops and extensions, reporting on-time, late and overdue open requests at an audit date. Name `baltor_records_request_timeliness`, licence MIT, 9 files.
- [Audit one stop-direction service window's departures for interior headway gaps](https://baltor.ai/components/baltor-transit-headway-audit): Audit one stop-direction service window's departures for interior headway gaps, simultaneous departures and unobserved boundary periods using explicit service-day time semantics. Name `baltor_transit_headway_audit`, licence MIT, 9 files.

Your agent downloads these through Baltor with Pro, $49 a month: https://baltor.ai/get-started
