Jag medger att genomgången jag föreslår inte blir den mest rafflande.
Den har åtminstone fördelen att göra oss bekanta med standarder för datum och närliggande ämnen. Och kanske också få oss att inse att vi (jag själv först, på den här webbplatsen) inte alltid är särskilt noggranna med det som borde vara ”rätt sätt att göra”.
Lite historia
ISO (International Organization for Standardization) bildades officiellt den 23 februari 1947 genom sammanslagningen av två organisationer.
Den ena var ISA (International Federation of the National Standardizing Associations) som, trots att den var baserad i New York, hade ett verksamhetsområde som i stor utsträckning var begränsat till kontinentala Europa.
Den andra var UNSCC (United Nations Standards Coordinating Committee), administrerad från London.
Vid en konferens där medlemsländerna i båda organisationerna deltog (25 länder representerade av 65 delegater), som hölls på Institution of Civil Engineers i London den 14 oktober 1946, fattades beslutet att skapa en ny organisation. Syftet skulle vara att ”underlätta internationell samordning och enhetlighet av industriella standarder”.
Varför ISO? Man hör ofta att det skulle komma från grekiskans isos, som betyder ”lika”. Willy Kuert, den schweiziske delegaten vid Londonkonferensen 1946, uppgav att ”denna aspekt aldrig togs upp i London”. Alltså: det är ISO, punkt. Och det är ISO i alla världens länder. Det är åtminstone vad man kan förvänta sig av en organisation som arbetar med standardisering.
Var ligger ISO:s huvudkontor? Det var nära att hamna i Paris, men till slut valdes Genève med en enda rösts marginal under mötet i London.
Det var 1946 som Genève utsågs till ISO:s säte.
1956 flyttade ISO till Rue de Varembé och har sedan dess flyttat igen till en helt ny byggnad på 8 Chemin de Blandonnet i Vernier, Schweiz.
Hur fungerar ISO?
ISO är en icke-statlig organisation. Den har alltså varken uppdrag eller makt att tvinga fram tillämpning av en standard. Dess uppdrag är att skapa konsensus kring lösningar som svar på behov. Men misstolka inte detta: behoven är reella, och ett lands efterlevnad av standarder är ett tecken på tillförlitlighet och kvalitet.
Via sitt centralsekretariat i Genève samordnar ISO ett nätverk av nationella standardiseringsorgan som i dag omfattar 146 länder. Varje land representeras av en medlem.
Varje medlem kan delta i framtagandet av varje standard som landet anser relevant och har en röst oavsett landets storlek. Äntligen en organisation där jämlikhet inte bara är ett tomt ord.
Hur många standarder tas fram?
Sedan 1947 har ISO publicerat mer än 13 700 internationella standarder. Alla områden berörs:
”Utdrag ur en ISO-text: Utan standardiserade mått på fraktcontainrar skulle internationell handel vara långsammare och dyrare. Utan standardisering av telefon- och bankkort skulle livet vara mer komplicerat. Avsaknad av standardisering kan till och med påverka livskvaliteten i sig, till exempel för personer med funktionsnedsättning, om de inte kan få tillgång till konsumtionsprodukter, kollektivtrafik och byggnader därför att rullstols- och dörröppningsmått inte har standardiserats.
Även inom områden där man minst anar det: "Standardisering av gängor hjälper till vid korrekt montering av stolar, barncyklar eller flygplan och löser reparations- och underhållsproblem som tidigare berodde på bristande standardisering och som var ett verkligt huvudbry för både tillverkare och användare."
Om du söker listan över publicerade standarder finns den här.
Hur kommer en standard till?
När vissa industriella, tekniska eller ekonomiska sektorer ser ett värde i att ta fram en standard meddelar de detta till ett nationellt ISO-medlemsorgan, som i sin tur lämnar in begäran till ISO. ISO bedömer relevansen och accepterar eller avslår begäran.
Om begäran godkänns tilldelas arbetet en befintlig teknisk kommitté, eller så skapas en ny.
Den efterfrågade standarden utarbetas av en teknisk kommitté bestående av experter inom området. Andra specialister kan också medverka. Experterna, som utses av det nationella ISO-medlemsorganet i respektive land, deltar inom nationella delegationer, och i jämlikhetens namn ska delegationerna representera samtliga berörda parters intressen.
De nationella expertdelagationerna möts tills konsensus uppnås om ett utkast till överenskommelse.
Utkastet skickas sedan ut (DIS = Draft International Standard) till alla ISO-medlemmar för granskning, kommentarer och omröstning. Om utfallet är positivt skickas dokumentet och eventuella ändringar därefter ut igen (FDIS = Final Draft International Standard) för ytterligare en omröstning. Om det godkänns publiceras dokumentet som en internationell standard.
Till sist: AFNOR är Frankrikes medlemsorgan i ISO (bland annat) och ansvarar för de uppgifter som tilldelats Frankrike i den rollen.
Franska standardiseringsföreningen grundades 1926, är erkänd som allmännyttig och står under tillsyn av det ministerium som ansvarar för industrifrågor. Den har omkring 3 000 medlemsföretag.
Vill du veta mer om AFNOR, klicka här.
ISO 8601-standarden
Om vi vill vara mer precisa bör vi skriva ISO 8601:2000. Versionen från 2000 omfattar nämligen tidigare standarder (ISO8601:1988) samt ytterligare delar.
Titeln är: Data elements and interchange formats - Information interchange - Representation of dates and times.
Många länder har antagit denna standard under egna referenser. Här är en icke uttömmande lista (tack till Ian Galpin och hans information):
- Sydafrika: ARP 010:1989.
- Australien: AS 3802:1997.
- Kanada: CSA Z234.5:1989.
- Japan: JIS X 0301-1992.
- Europeisk standard: EN 28601:1992.
- USA-standard: ANSI X3.30-1985(R1991) och NIST FIPS 4-1.
Och för europeiska länder som tillämpar EN 28601:
- Tyskland: DIN EN 28601 (1993) & DIN 5008 (1996).
- Österrike: OENORM EN 28601.
- Belgien: NBN EN 28601 (1993).
- Danmark: DS/EN 28601.
- Spanien: UNE EN 28601.
- Finland: SFS-EN 28601.
- Frankrike: NF EN 28601 (1993).
- Grekland: ELOT EN 28601.
- Nederländerna: NEN ISO 8601 (1994) & NEN EN 28601 (1994).
- Island: IST EN 28601:1992.
- Irland: IS/EN 28601:1993.
- Italien: UNI EN 28601 (1993).
- Luxemburg: ITM-EN 28601.
- Norge: NS-ISO 8601.
- Polen: PN-90/N-01204.
- Portugal: EN 28601.
- Tjeckien: CSN EN 28601.
- Storbritannien: BS EN 28601:1992 (ersätter BS 7151).
- Sverige: SS-EN 28601 (1991).
- Schweiz: SN-EN 28601-1994.
Innehållet i ISO8601:2000
Standarden behandlar följande element:
- Datum
- Klockslag
- Coordinated Universal Time (UTC)
- Lokal tid med tidszonsförskjutning
- Datum och tid
- Tidsintervall
- Periodiska tidsintervall
Jag ska försöka presentera elementen i tabellform. Du har tur: du behöver bara titta på den del som intresserar dig. Själv måste jag gå igenom alltihop. Nåväl, kanske inte precis allt, eftersom jag tillåter mig att rensa lite och behålla de delar som är mest användbara.
Tre anmärkningar innan vi går in i tabellen:
1) De flesta element har en grundrepresentation och en utökad representation för bättre läsbarhet.
2) Jag behåller förkortningarna på engelska:
”Y = year
Z = UTC indicator
M = month
D = day
w = week
h = hour
m = minute
s = second
n = positiv heltalssiffra eller noll
P = time interval
R = recurring interval indicator
T = separator mellan datum- och tidselement
3) Standarden använder den gregorianska kalendern, och veckodagarnas numrering definieras så här:
| Rang | Dag |
|---|---|
| 01 | Måndag |
| 02 | Tisdag |
| 03 | Onsdag |
| 04 | Torsdag |
| 05 | Fredag |
| 06 | Lördag |
| 07 | Söndag |
Veckan identifieras i året med ett nummer. Årets första vecka (vecka 1) är den som innehåller årets första torsdag. Årets sista vecka är den som föregår nästa års första vecka. Med andra ord är årets första vecka den som innehåller den 4 januari.
I övrigt:
| Element | Grundformat | Utökat format | Kommentarer |
|---|---|---|---|
| DATUM | |||
| Aktuellt datum | YYYYMMDD 20030607 |
YYYY-MM-DD 2003-06-07 |
7 juni 2003 |
| Aktuellt datum reducerat till månad | YYYY-MM 2003-07 |
ingen | |
| År | YYYY 2003 |
ingen | |
| Århundrade | YY 20 |
ingen | Jag kan leva med det, men... |
| Aktuellt datum | YYMMDD 030607 |
YY-MM-DD 03-06-07 |
aktuellt århundrade |
| Aktuellt datum reducerat till månad | -YYMM -0306 |
-YY-MM -03-06 |
aktuellt århundrade |
| År | -YY -03 |
ingen | aktuellt århundrade |
| Dag i månaden | --MMDD --0607 |
--MM-DD --06-07 |
aktuellt år |
| Månad i året | --MM --06 |
ingen | aktuellt år |
| Dag i månaden | ---DD ---07 |
ingen | aktuell månad |
| Jag hoppar över årtal över 9999. Vi hinner återkomma till det när vi är där!! | |||
| Ordinaldatum | YYYYDDD 2003157 |
YYYY-DDD 2003-157 |
157:e dagen i år 2003 = 7 juni 2003 |
| Ordinaldatum | YYDDD 03157 |
YY-DDD 03-157 |
aktuellt århundrade |
| Aktuell dag i året | -157 | ingen | en enda bindestreck |
| Veckodatum | YYYYWwwD 2003W237 |
YYYY-Www-D 2003-W23-7 |
7:e dagen i vecka 23 år 2003 |
| År, vecka, dag | YYWwwD 03W237 |
YY-Www-D 03-W23-7 |
aktuellt århundrade |
| År och vecka | YYWww 03W23 |
YY-Www 03-W23 |
aktuellt århundrade |
| År, vecka och dag | -YWwwD -3W237 |
-Y-Www-D -3-W23-7 |
år i aktuell dekad |
| År, vecka | -YWww -3W23 |
-Y-Www -3-W23 |
år i aktuell dekad |
| Vecka, dag | -WwwD -W237 |
-Www-D -W23-7 |
aktuellt år |
| Vecka | -Www -W27 |
ingen | aktuellt år |
| Dag | -W-D -W-5 |
ingen | aktuell vecka |
| KLOCKSLAG | |||
| Lokal tid | hhmmss 151225 |
hh:mm:ss 15:12:25 |
|
| Timmar och minuter | hhmm 1512 |
hh:mm 15:12 |
|
| Timme | hh 15 |
ingen | |
| Timmar, minuter, decimalsekunder | hhmmss,s
s
151224,5 |
hh:mm:ss,s
s
151224,5 |
|
| Timmar, decimalminuter | hhmm,m
m 1512,8 |
hh:mm,m
m 15:12,8 |
|
| Decimaltimme | hh,h
h
15,25 |
ingen | |
| Vi tänker inte fördjupa oss i reducerat tidsformat. Du har redan förstått att man bara ersätter det saknade elementet med ett bindestreck (-). Samma princip som för datum. | |||
| Midnatt | 000000 | 00:00:00 | början av ett dygn |
| Midnatt | 240000 | 24:00:00 | slutet av ett dygn |
| UTC-tid | hhmmssZ hhmmZ hhZ |
hh:mm:ssZ hh:mmZ hhZ |
Samma format som lokal tid. Lägg till Z i slutet. |
| Lokal tid - UTC-förskjutning | ±hhmm ±hh |
±hh:mm |
motsvarar tidszonen: +0100 till exempel |
| Lokal tid + tidszonskorrigering | hhmmss±hhmm hhmmss±hh |
hh:mm:ss±hh:mm hh:mm:ss±hh |
exempel: 15:12:15+01:30 |
| Datum och tid: skriv helt enkelt datumet i ett av formaten ovan och lägg till tiden i ett av tidsformaten. Datumdelen och tidsdelen separeras med ett T. Se nedan. | |||
| Datum och tid | YYYYMMDDThhmmss YYYYMMDDThhmmssZ YYYYMMDDThhmmss±hhmm YYYYMMDDThhmmss±hh |
YYYY-MM-DDThh:mm:ss YYYY-MM-DDThh:mm:ssZ YYYY-MM-DThh:mm:ss±hh:mm YYYY-MM-DDThh:mm:ss±hh |
|
Intervall: ange helt enkelt starttidpunkten (datum, datum-tid...) följt av separatorn / och sedan sluttidpunkten (datum, datum-tid...), till exempel: YYY-MM-DDThh:mm:ss/YYY-MM-DDThh:mm:ss
Om du vill ange intervallens varaktighet i stället för start- och slutdatum räcker det att markera att det är ett intervall med prefixet P.
Exempel: P5Y6M3DT15H10M20S (5 år 6 månader 3 dagar 15 timmar 10 minuter 20 sekunder). Glöm inte P som markerar att det är ett tidsintervall.
P7W: 7 veckor.
Självklart kan man kombinera startdatum och varaktighet, eller varaktighet och slutdatum.
Till exempel betyder 2003-06-06T12:00:00/P0Y0M0DT00:03:00 att ett ägg vars kokning börjar den 6 juni 2003 klockan 12:00 är färdigkokt tre minuter senare. Löskokt, förstås!
Och inget hindrar dig från att skriva 2003-06-06T12:00:00/2003-06-06T12:03:00. Resultatet blir detsamma.
Om du vill ha längre koktid, skriv 20030606T120000/20030606T120300, för medan man håller på att tyda det ... har de tre minuterna redan gått!