ISO 8601 je mednarodni standard za zapisovanje datumov in časov na jasen, nedvoumen in računalniško prijazen način. Glavno načelo standarda je, da so enote urejene od največje do najmanjše (LETO-MESEC-DAN), kar omogoča enostavno sortiranje in primerjanje nizov.

Zakaj uporabljati ISO 8601?

  • Je neodvisen od lokalnih navad (npr. DD.MM.YYYY ali MM/DD/YYYY), zato preprečuje dvoumnosti.
  • Če računalnik ali človek postavi datume ISO 8601 v abecedni vrstni red, so ti tudi v kronološkem vrstnem redu.
  • Primeren je za izmenjavo podatkov, shranjevanje v bazah, imena datotek, dnevnike (logs) in API-je.

Osnovni zapisi

Datum (razširjena oblika): YYYY-MM-DD — npr. 2020-05-23.

Čas (razširjena oblika): hh:mm ali hh:mm:ss — npr. 19:29 ali 19:29:00.

Združeni datum in čas: YYYY-MM-DDThh:mm[:ss][Z|±hh:mm] — npr. 2020-05-23T19:29:00Z (UTC) ali 2020-05-23T19:29+02:00 (lokalni čas z zamikom).

Osnovne (compact) oblike: brez ločil: YYYYMMDD, hhmmss — npr. 20200523 ali 192900. Te so uporabne tam, kjer so ločila nezaželena (npr. v imenih datotek).

Druge oblike, ki jih določa standard

  • Tedenski datum: YYYY-Www-D — npr. 2020-W21-6 (teden številčen po ISO, teden se začne v ponedeljek).
  • Ordinalski datum (dan v letu): YYYY-DDD — npr. 2020-144 (144. dan leta).
  • Frakcije sekunde: dovoljena je decimalna delitev sekund, ločilo je lahko pika ali vejica — npr. 12:30:15.123 ali 12:30:15,123.

Časovni pas in UTC

Za natančno določitev časa v mednarodnem prometu ali računalniških sistemih vedno vključite časovni pas. Uporabite:

  • Z za UTC (npr. 2020-05-23T17:29:00Z).
  • ali zamik v obliki ±hh:mm (npr. 2020-05-23T19:29:00+02:00).

Priporočila in dobre prakse

  • Vedno uporabite štirimestno leto (YYYY), da se izognete dvoumnostim z dvomestnimi leti.
  • Uporabljajte vodilne ničle za mesece, dneve, ure, minute in sekunde (npr. 2020-05-03, 09:05:00).
  • Za človeško berljivost v dokumentih uporabljajte razširjeno obliko (z vezaji in dvopičji), za računalniške potrebe ali imena datotek pa kompaktne oblike brez ločil.
  • Vedno vključite informacijo o časovnem pasu, kadar je pomembna natančnost ali ko podatki potujejo med različnimi regijami.

Najpogostejše napake

  • Mešanje lokalnih zapisov in ISO oblike (npr. 05/06/2020 lahko pomeni 5. ali 6. maj ali junij).
  • Izpuščanje časovnega pasu, kar vodi do napačne interpretacije mednarodnih časov.
  • Uporaba dvoštevilčnega leta (YY), kar lahko povzroči napačno leto pri dolgoročnem shranjevanju.

Primeri

  • Datum: 2020-05-23
  • Čas: 19:29 (brez sekund)
  • Datum in čas v UTC: 2020-05-23T17:29:00Z
  • Datum in čas z lokalnim zamikom: 2020-05-23T19:29:00+02:00
  • Kompatna kompaktna oblika za datoteko: 20200523T192900

Ljudje lahko uporabljajo ISO 8601 tudi v vsakdanjem življenju, vendar v mnogih državah še ni običaj, da bi vsakdanji zapisi nadomestili lokalne formate. Kljub temu je ISO 8601 močno priporočljiv pri izmenjavi podatkov, v programiranju, dokumentaciji in za imena datotek zaradi svoje jasnosti in zanesljivosti.