ISO 8601: Kako pravilno zapisovati datume in čase (LETO-MESEC-DAN)
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.
Vprašanja in odgovori
V: Kaj je ISO 8601?
O: ISO 8601 je mednarodni standard, ki opisuje datume in čase na način, ki ga računalniki zlahka razumejo.
V: Kako standard ISO 8601 temelji na postavljanju številk?
O: Standard ISO 8601 temelji na tem, da so največje vrste števil najprej in najmanjše številke zadnje.
V: Kakšen je vrstni red letnice, meseca in dneva v formatu ISO 8601?
O: V formatu ISO 8601 se uporablja vrstni red LETO-MESEC-DAN.
V: Kako je videti osnovni datum ISO za današnji dan?
Osnovni datum ISO za današnji dan je videti kot 2022-11-10.
V: Kako so datumi v formatu ISO 8601 razvrščeni po abecednem vrstnem redu?
O: Ko računalnik ali človek postavi datume ISO 8601 v abecedni vrstni red, so ti tudi v kronološkem vrstnem redu.
V: Ali ljudje v kateri koli državi v vsakdanjem življenju običajno pišejo datume z uporabo tega standarda?
O: Ne, trenutno ni običajno, da bi ljudje v kateri koli državi v vsakdanjem življenju zapisovali datume z uporabo tega standarda, vendar številne azijske države upoštevajo vrstni red LETO-MESEC-DAN.
V: Kaj je osnovni čas ISO?
O: Osnovni čas ISO je 17:36.