ISO 8601 – päivämäärät ja kellonajat: kansainvälinen standardi
ISO 8601 – päivämäärät ja kellonajat: selkeä opas kansainväliseen standardiin. Opi vuosi-kuukausi-päivä-muoto (YYYY-MM-DD), aikajärjestys ja koneystävälliset kellonajat.
ISO 8601 on kansainvälinen standardi, jonka tarkoituksena on kuvata päivämääriä ja kellonaikoja tietokoneiden ja ihmisten kannalta yksiselitteisellä, helposti käsiteltävällä tavalla. Standardi määrittelee useita vaihtoehtoja, mutta perusperiaate on yksinkertainen: suurimmat yksiköt (vuosi) kirjoitetaan ensin ja pienemmät viimeiseksi, eli järjestys on VUOSI-KUUKAUSI-PÄIVÄ.
Tämä järjestys tekee merkkijonojen aakkosjärjestyksestä suoraan aikajärjestyksen, mikä helpottaa lajittelua tiedostoissa, tietokannoissa ja lokitiedoissa.
Yleisimmin käytetyt muodot
- Peruspäivämäärä (laajennettu muoto): 2020-05-23 (YYYY-MM-DD). Tästä esimerkkinä artikkelin päivämäärä: 2020-05-23.
- Peruspäivämäärä (perusmuoto eli ilman erottimia): 20200523 (YYYYMMDD).
- Aika (laajennettu muoto): 19:29 tai 19:29:00 (hh:mm tai hh:mm:ss). Esimerkiksi: ISO-perusaika on 19:29.
- Yhdistetty päivämäärä ja aika: 2020-05-23T19:29:00. Kirjain T erottaa päivämäärän ja kellonajan.
- Ajassa ilmoitettu aikavyöhyke: 2020-05-23T19:29:00Z (UTC) tai 2020-05-23T19:29:00+02:00 (paikallinen aika suhteessa UTC:hen).
- Viikkopäivämäärä: 2020-W21-6 tai 2020W216 (vuosi + viikko + viikonpäivä, viikot alkavat maanantaista).
- Järjestysnumero (ordinal date): 2020-144 (144. päivä vuodesta 2020).
Aikavyöhyke ja UTC
ISO 8601 sallii aikavyöhykkeiden ilmaisun joko kirjaimella Z (Zulu, sama kuin UTC) tai muodossa ±hh:mm. Esimerkkejä:
- 2020-05-23T19:29:00Z (UTC)
- 2020-05-23T21:29:00+02:00 (kellonaika, joka on kaksi tuntia UTC:n edellä)
Laajempia ominaisuuksia
- Kestoja (durations): Muoto alkaa P-kirjaimella: PnYnMnDTnHnMnS. Esim. P3Y6M4DT12H30M5S = 3 vuotta, 6 kuukautta, 4 päivää, 12 tuntia, 30 minuuttia ja 5 sekuntia.
- Ajanjaksot (intervals): Ajanjakso esitetään erottimella /. Esim. 2007-03-01/2008-05-11 tai 2020-05-23T19:29:00Z/2020-05-24T19:29:00Z.
- Toistuvat jaksot: Toisto voidaan merkitä R-alkuisesti, esim. R10/2008-03-01T13:00:00Z/P1D (10 kertaa päivittäin alk. annetusta ajasta).
- Perus- vs. laajennettu muoto: Perusmuoto (ilman väliviivoja ja kaksoispisteitä) on tiiviimpi konekäyttöön; laajennettu muoto on luettavampi ihmiselle.
Hyödyt ja käytännön suosituksia
- ISO 8601 vähentää epäselvyyksiä eri maiden päiväyskäytännöissä (esim. 03/04/2020 voi tarkoittaa 3. huhtikuuta tai 4. maaliskuuta).
- Suositeltavaa käyttää yhdistettyä, aikavyöhykkeellisenä ilmoitettua muotoa tiedonsiirrossa ja lokituksessa: esim.
2020-05-23T19:29:00+02:00. - Tiedostonimissä ja tunnisteissa ilman erottimia oleva perusmuoto
YYYYMMDDon kätevä: esim. raportti_20200523.txt. - Viikkopäiväformaatti (WW) on hyödyllinen raportoinneissa, joissa viikot ovat oleellinen yksikkö.
Rajoitukset ja huomioitavaa
- Ihmiset harvoin käyttävät ISO 8601 -muotoa arkipäiväisessä käsin kirjoittamisessa; esimerkiksi Suomessa yleinen muoto on dd.mm.yyyy.
- Vaikka ISO 8601 tarjoaa useita vaihtoehtoja, on hyvä sopia järjestelmässä tai organisaatiossa yhdet käytännöt (esim. aina laajennettu muoto aikavyöhykkeellä).
- Leap second (liitettäviä sekunteja) käsitellään erikoistilanteena; useimmat järjestelmät eivät käytännössä noudata niitä käsittelyssä, joten varmistakaa vaatimukset.
Yhteenvetona: ISO 8601 tekee päivämäärien ja aikojen käsittelystä ennustettavaa ja yksiselitteistä etenkin tietojärjestelmissä. Se ei aina korvaa paikallista tapaa kirjoittaa päivämääriä ihmisten kesken, mutta on erittäin hyödyllinen tiedonvaihdossa, arkistoinnissa ja ohjelmoinnissa.
Esimerkki, joka yhdistää alkuperäiset tekstin esimerkit: 2020-05-23T19:29:00+02:00 on sama kellonaika kuin artikkelin mainitsema peruspäivämäärä 2020-05-23 ja perusaika 19:29, mutta täsmällisesti myös aikavyöhykkeeseen sidottu.
Kysymyksiä ja vastauksia
K: Mikä on ISO 8601?
V: ISO 8601 on kansainvälinen standardi, joka kuvaa päivämääriä ja kellonaikoja tietokoneiden helposti ymmärrettävällä tavalla.
K: Miten ISO 8601 -standardi perustuu numeroiden asettamiseen?
V: ISO 8601 -standardi perustuu siihen, että suurimmat numerotyypit asetetaan ensimmäiseksi ja pienimmät numerot viimeiseksi.
K: Mikä on ISO 8601 -muodon VUOSI-KUUKAUSI-PÄIVÄ -järjestys?
V: ISO 8601 -formaatissa käytetään järjestystä VUOSI-KUUKAUSI-PÄIVÄ.
K: Miltä näyttää tämän päivän ISO-peruspäiväys?
V: Tämän päivän ISO-peruspäivämäärä näyttää seuraavalta: 2022-11-10.
K: Miten ISO 8601 -päivämäärät asetetaan aakkosjärjestykseen?
V: Kun tietokone tai ihminen asettaa ISO 8601 -päivämäärät aakkosjärjestykseen, ne ovat myös aikajärjestyksessä.
K: Onko missään maassa yleistä, että ihmiset kirjoittavat päivämääriä tätä standardia käyttäen jokapäiväisessä elämässään?
V: Ei, tällä hetkellä ei ole yleistä, että ihmiset missään maassa kirjoittaisivat päivämääriä tämän standardin mukaisesti jokapäiväisessä elämässään, mutta monissa Aasian maissa noudatetaan VUOSI-KUUKAUSI-PÄIVÄ -järjestystä.
K: Mikä on ISO-perusaika?
V: ISO-perusaika on 17:36.
Etsiä