ISO 8601

**[[Den internasjonale standardiseringsorganisasjonen|ISO]] 8601** er den internasjonale standarden for skrivemåte og utveksling av data om **[[tid]]** og **[[dato]]**. Standard skrivemåte for dato er **YYYY-MM-DD** og for tid **hh:mm:ss**, og følger dermed det samme posisjonssystem som de fleste tallsystemer forøvrig (f.eks. titallsystemet) ved at verdien til hvert siffer avhenger av posisjonen til tallet i synkende rekkefølge, for både dato og klokkeslett. Dato og klokkeslett separeres med en enkel T.

Norge har akseptert standarden og innlemmet den i Norsk Standard som **«NS-ISO 8601:2019»**.

## Historie
Internett og moderne datasystemer har gjort at kommunikasjonene verden over blir stadig raskere, enklere og mer brukt. Globale systemer (for eksempel GPS) opererer også i sanntid. 

For bedrifter der transportsystemer, kvalitetskontroll og lignende er av avgjørende betydning, er det særlig viktig med en felles forståelse av tidspunkter. Også i vitenskapelig sammenheng (astronomi, arkeologi m.v.) er det viktig at dato og tidspunkter er entydige. 

Det var i erkjennelsen av disse forhold at ISO 8601 ble konstruert.

Den eldre 2004-revisjonen tillot at et mellomrom under noen omstendigheter kunne brukes istedenfor bindestrek..

Nåværende versjon er fjerde utgave, . Den erstattet tredje utgave, ISO 8601:2004. Første utgaven var ISO 8601:1988. Standarden sammenfatter flere tidligere standarder, bl.a. ISO 2014 (numerisk notasjon for datoer) og ISO 2015 (ukenummer), som begge kom i første utgave i 1971.

## Prinsipp
Datoer og tid skal skrives utelukkende med siffer, de enkelte elementene kan separeres med gitte separatortegn. Betegnelsene kan forkortes ved at de minste elementene utelates. For eksempel **14:30** for klokken halv tre på ettermiddagen og **2006-05** for mai måned 2006. For høyere presisjon, for eksempel deler av sekunder, skal disse delene være desimaler av tallet og separeres med . (punktum) eller , (komma). For eksempel **14:30:25,32** for 32 hundredeler mere enn 25 sekunder.

Døgnet er inndelt i 24 timer.

Standarden bruker den gregorianske kalenderen.
År **0001** samsvarer med år **[[1|1 e.Kr.]]**. Året før dette er år **0000**, som samsvarer med år **[[1 f.Kr.]]**. Året før der igjen er år **-0001**, som samsvarer med år **[[2 f.Kr.]]** 

## Dato
### Kalender


### Kalenderdatoer

Standarden tillater å utelate separatortegnene i et datautvekslingsformat, for eksempel **20060515** for **2006-05-15** eller 15. mai 2006. Standarden tillater også å fjerne de minste elementene, for eksempel **2006-05** for mai 2006 eller bare **2006** for året 2006.

### Ukedatoer

Ukedatoer kan brukes i arbeidslivet, der arbeidsuker overlapper årsskiftet. **«YYYY»** indikerer et ISO-år. **«W»** indikerer at de to neste siffer (**«ww»**) er ukenummeret i dette året (01 – 52 eller 01 – 53). **«D»** markerer ukedagene fra 1 til 7, der 1 er mandag, og 7 er søndag. Ukenummereringen er slik at uken skal tilhøre det året som de fleste ukedagene er i, uka vil altså tilhøre samme år som torsdagen. For eksempel vil mandag 29. desember 2008 bli skrevet **-W01-1**, og søndag 3. januar 2010 bli skrevet **-W53-7**.

### Dagnummerdatoer

Dagnummerdatoer er ment for programmereres bruk i enkle systemer, der man for eksempel bare skal beregne differensen mellom to datoer. **YYYY** indikerer året, og **DDD** indikerer dagnummeret i året. For eksempel vil «1981-04-05» skrives **1981-095**.

## Klokkeslett

I ISO 8601 er døgnet inndelt i 24 timer. Formatet er **hhmmss** eller med separatorer **hh:mm:ss**. **hh** er timer mellom 00 og 24, hvor 24 bare blir brukt til å markere sluttpunktet på døgnet.  **mm** er minutter fra 00 til og med 59. **ss** er sekunder fra 00 til og med 59 (eller unntaksvis 60 i det tilfelle at året blir tillagt et ekstra sekund på grunn av minsket jordrotasjon – skuddsekund). Så et klokkeslett kan betegnes som **13:47:30**, eller **134730**.

Også her er det tillatt å utelate de minste elementene for mindre presisjon, for eksempel **hh:mm** eller bare **hh**.

Desimaldeler av de enkelte elementene kan også brukes. Disse skal da separeres med punktum (**.**) eller komma (**,**). Desimaldeler kan bare tildeles det mest presise (siste) elementet. For eksempel vil **14:30,5** tilsvare 14:30:30. **14:30:30,25** vil si 25 hundredeler i tillegg. 

*[[Midnatt]]* er et unntakstilfelle og kan skrives både **00:00** og **24:00**. Skrivemåten **00:00** blir brukt for begynnelsen av døgnet, og er det mest vanlig brukte. **24:00** brukes bare for å markere slutten på et døgn. **1981-04-05T24:00** er det samme tidspunktet som **1981-04-06T00:00**.

### Tidssoner

Hvis ingen tidssone er angitt er det underforstått at tiden er angitt i den lokale tidssonen. Ved utveksling av tidspunkt mellom ulike soner er det imidlertid nødvendig å angi hvilken sone som tidspunktet gjelder for. 

#### UTC
Hvis tidspunktet er angitt i UTC, er det enkelt å angi dette ved å tilføye en Z umiddelbart etter tidspunktet (uten mellomrom). «09:30 UTC» vil derfor skrives som **09:30Z** eller **0930Z**. «14:45:15 UTC» skrives enten **14:45:15Z** eller **144515Z**.

#### Andre tidssoner
Andre tidssoner blir spesifisert relativt til UTC, med formatet **±hh:mm**, **±hhmm**, vanligst bare **±hh**. Så hvis tidssonen er en time foran UTC (som for eksempel i Norge om vinteren) blir tilføyelsen **+01:00**, **+0100**, vanligst **+01**. Dette blir tilføyd på samme sted som Z ovenfor (umiddelbart etter klokkeslettet). Om sommeren (sommertid) skal man i Norge tilføye **+02**. Tidspunktet **18:30Z** og **20:30+02** er altså nøyaktig det samme.

## Kombinerte presentasjoner

Når *dato* og *tid* skal presenteres samtidig, skilles de med bokstaven T.  Formatet blir da **dato>T<tid>**. I den tidligere ISO 8601:2004 standarden var det tillatt å bruke et enkelt mellomrom, men det ble ikke lenger tillatt fra 2019-revisjonen av standarden.  

Et fullstendig tidspunkt (inkludert tidssone vil da bli **YYYY-MM-DDThh:mm:ss±hh**, eksempel:  **1981-04-05T14:30:30+02** eller  **YYYY-MM-DDThh:mm:ss±hh**, eksempel:  **1981-04-05T14:30:30+02**.

## Varighet (periode)

Varighet blir presentert i formatet **PnYnMnDTnHnMnS** (nM kan erstattes med nW ved bruk av  *uke datoformat*.)  I denne presentasjonen skal **n** være antallet i det etterfølgende element (utfyllende nuller kan brukes for å avklare tvetydige tidspunkter)  De store bokstavene (**P**, **Y**, **M**, **W**, **D**, **T**, **H**, **M**, og **S**) skal alltid brukes som de står.  Slik vil **P3Y6M4DT12H30M0S** definere en periode på "tre år, seks måneder, fire dager, tolv timer, tretti minutter og null sekunder".  Elementer kan utelates hvis verdien er null.  Alternativt kan et format mere likt *kombinert presentasjon* benyttes. Eksempelet over kan da skrives som **P0003-06-04T12:30:00**.

## Tidsintervall

Tidsintervaller kan skrives på fire måter:

#Start og slutt, for eksempel: **2002-03-01T13:00:00Z/2003-05-11T15:30:00Z**
#Start og intervall, for eksempel: **2002-03-01T13:00:00Z/P1Y2M10DT2H30M**
#Intervall og slutt, for eksempel: **P1Y2M10DT2H30M/2003-05-11T15:30:00Z**
#Bare intervall, for eksempel: **P1Y2M10DT2H30M**

De tre første må separeres med en indikator som vanligvis er en skråstrek  (**/**).  Dobbel bindestrek (**--**) er også tillatt, men anbefales ikke. Et eksempel på korrekt skrivemåte er:  **1981-04-05T14:30:30-05:00/2004-07-14T15:30:30-05:00**. Hvis noen elementer i den siste delen mangler, antas de å ha samme verdier som i første element (inkludert tidssone). 

### Gjentatte intervaller
Gjentatte intervaller blir uttrykt ved å tilføye **Rn/** i begynnelsen av uttrykket, hvor **R** viser at det er en gjentagelse og **n** angir antallet repetisjoner.  Dersom **n** utelates, angir verdien et uendelig antall repetisjoner. Dersom intervallet **P1Y2M10DT2H30M** skal gjentas fem ganger med start  **2002-03-01T13:00:00Z**, blir uttrykket **R5/2002-03-01 13:00:00Z/P1Y2M10DT2H30M**.

## Utgåtte standarder
Standardene ISO 2014, ISO 2015, ISO 2711, ISO 3307 og ISO 4031 er alle blitt erstattet av ISO 8601.

## Annet
En problemstilling man unngår med bruk av denne standarden:

## Se også
* Ukedager
* Ukenummer
* Påskeformelen
* Søndagsbokstav
* Gyldentall
* Solsyklus

## Referanser


## Eksterne lenker
* ISO 8601:2004(E) fra OMG (pdf, 294KB)
* ISO 8601:2004(E) fra ISO (zip-pdf, 228KB)
* Oppsummering av standarden ISO 8601 av ISO
* Technical Committee ISO/TC 154, Processes, data elements and documents in commerce, industry and administration.
* International Date Format Campaign for ISO 8601
* ISO 8601 Land som har akseptert ISO 8601
* ISO 8601 Åpen diskusjon om praktisk bruk/nytte av ISO 8601