Ti concedo che lo studio che ti propongo non sara appassionante.
Avra almeno il vantaggio di farci conoscere le norme in materia di date e altro. E, forse, di constatare che noi (io per primo, su questo sito) non siamo sempre così rigorosi nel rispettare quello che dovrebbe essere uno standard.
Un po' di storia
L'ISO (Organizzazione internazionale per la normazione) nasce ufficialmente il 23 febbraio 1947 dall'unione di due organizzazioni.
La prima era l'ISA (Federazione internazionale delle associazioni nazionali di normalizzazione) che, pur avendo sede a New York, operava soprattutto nell'Europa continentale.
La seconda era l'UNSCC (Comitato di coordinamento della normalizzazione delle Nazioni Unite), amministrata da Londra.
Durante una conferenza che riuniva tutti i paesi membri (25 paesi rappresentati da 65 delegati) delle due organizzazioni, tenuta all'Institute of Civil Engineers di Londra il 14 ottobre 1946, venne presa la decisione di creare una nuova organizzazione. Il suo obiettivo era «facilitare il coordinamento e l'unificazione internazionale delle norme industriali».
Perché ISO? Si dice che il nome derivi dal greco isos, che significa «uguale». Willy Kuert, delegato svizzero alla conferenza di Londra del 1946, ha dichiarato che «a Londra questo aspetto non fu mai evocato». Quindi, e ISO e basta. Ed e così in tutti i paesi del mondo. Per un organismo di standardizzazione, il minimo sindacale.
Dove si trova la sede ISO? Per poco non fu scelta Parigi, ma alla fine, con un solo voto di scarto, alla riunione di Londra fu decisa Ginevra.
Nel 1946 Ginevra viene designata sede dell'ISO.
Nel 1956 l'ISO si insedia in rue de Varembe, poi si trasferisce nel nuovo edificio all'8 Chemin de Blandonnet, a Vernier, in Svizzera.
Come funziona l'ISO?
L'ISO e un'organizzazione non governativa. Non ha quindi ne la missione ne il potere di imporre l'applicazione di una norma. La sua funzione e costruire un consenso su soluzioni richieste dai settori interessati. Ma non bisogna fraintendere: queste richieste sono forti e il rispetto delle norme da parte di un paese e un segnale di affidabilita e qualita.
L'ISO coordina, tramite il suo Segretariato centrale di Ginevra, una rete di istituti nazionali di normazione che oggi coinvolge 146 paesi. Ogni paese e rappresentato da un membro.
Ogni membro può partecipare alla definizione di una norma ritenuta utile per il proprio paese e ha diritto a un voto, indipendentemente dalle dimensioni del paese. Una delle rare organizzazioni in cui l'uguaglianza non resta una parola vuota.
Quante norme vengono create?
Dal 1947, l'ISO ha pubblicato più di 13.700 norme internazionali. I settori coinvolti sono tutti:
«Estratto da un testo ISO: Senza dimensioni standard dei container per il trasporto merci, il commercio internazionale sarebbe più lento e più costoso. Senza la standardizzazione delle carte telefoniche e bancarie, la vita sarebbe più complicata. L'assenza di standard può perfino incidere sulla qualita della vita, per esempio per le persone con disabilita, se non hanno accesso a prodotti di consumo, trasporti pubblici ed edifici perché le dimensioni delle sedie a rotelle e delle aperture non sono state standardizzate.
Anche in ambiti insospettabili: "La standardizzazione delle filettature aiuta il corretto assemblaggio di sedie, biciclette per bambini o aerei e risolve problemi di riparazione e manutenzione che un tempo, per mancanza di standardizzazione, erano un vero rompicapo per produttori e utenti".
Se cerchi l'elenco delle norme pubblicate, lo trovi qui.
Come nasce una norma?
Quando alcuni settori industriali, tecnici o economici ritengono utile creare una norma, lo segnalano a un membro nazionale ISO, che presenta la richiesta all'ISO. L'ISO valuta l'interesse della proposta e la accetta o la respinge.
Se la richiesta viene accolta, lo sviluppo della norma viene affidato a un comitato tecnico già esistente oppure da creare.
La norma viene elaborata da un comitato tecnico composto da esperti del settore. Possono essere coinvolti anche altri specialisti. Gli esperti, scelti dall'istituto nazionale membro ISO per il paese interessato, partecipano ai lavori all'interno delle delegazioni nazionali e, sempre in un'ottica di equilibrio, le delegazioni devono rappresentare gli interessi di tutte le parti coinvolte.
Le delegazioni nazionali di esperti si riuniscono finche non si raggiunge un consenso su un progetto di accordo.
Questo progetto viene trasmesso (DIS = bozza di norma internazionale) all'insieme dei membri ISO per lettura, osservazioni e voto. Se il voto e favorevole, il documento e gli eventuali emendamenti vengono inoltrati (FDIS = bozza finale di norma internazionale) ai membri per un nuovo voto. Se anche questo voto e positivo, il documento viene pubblicato come Norma internazionale.
Per concludere, ricordiamo che il gruppo AFNOR e il membro francese dell'ISO (tra le altre attivita) e svolge le responsabilita attribuite alla Francia in questo quadro.
L'Association francaise de normalisation e stata creata nel 1926; e riconosciuta di pubblica utilita ed e posta sotto la vigilanza del ministero competente per l'industria. Conta circa 3.000 aziende aderenti.
Per saperne di più su AFNOR, clicca qui.
La norma iso 8601
Se volessimo essere più precisi, dovremmo scrivere ISO 8601:2000. Infatti la versione 2000 riprende norme precedenti (ISO 8601:1988) e aggiunge alcuni elementi.
Il titolo e: Elementi di dati e formati di scambio - Scambio di informazioni - Rappresentazione di data e ora.
Molti paesi hanno recepito questa norma con un proprio riferimento nazionale. Ecco un elenco non esaustivo (grazie a Ian Galpin e alle sue informazioni):
- Sudafrica: ARP 010:1989.
- Australia: AS 3802:1997.
- Canada: CSA Z234.5:1989.
- Giappone: JIS X 0301-1992.
- Norma europea: EN 28601:1992.
- Norma USA: ANSI X3.30-1985(R1991) e NIST FIPS 4-1.
E, per i paesi europei che applicano EN 28601:
- Germania: DIN EN 28601 (1993) & DIN 5008 (1996).
- Austria: OENORM EN 28601.
- Belgio: NBN EN 28601 (1993).
- Danimarca: DS/EN 28601.
- Spagna: UNE EN 28601.
- Finlandia: SFS-EN 28601.
- Francia: NF EN 28601 (1993).
- Grecia: ELOT EN 28601.
- Olanda: NEN ISO 8601 (1994) & NEN EN 28601 (1994).
- Islanda: IST EN 28601:1992.
- Irlanda: IS/EN 28601:1993.
- Italia: UNI EN 28601 (1993).
- Lussemburgo: ITM-EN 28601.
- Norvegia: NS-ISO 8601.
- Polonia: PN-90/N-01204.
- Portogallo: EN 28601.
- Repubblica Ceca: CSN EN 28601.
- Regno Unito: BS EN 28601:1992 (sostituisce BS 7151).
- Svezia: SS-EN 28601 (1991).
- Svizzera: SN-EN 28601-1994.
Contenuto di ISO 8601:2000
Questa norma tratta i seguenti elementi:
- Data
- Ora del giorno
- Tempo coordinato universale (UTC)
- Ora locale con offset di fuso
- Data e ora
- Intervalli di tempo
- Intervalli di tempo periodici
Provo a rappresentare questi elementi in forma tabellare. Tu hai fortuna: ti basta andare alla parte che ti interessa. Io, invece, devo leggermi tutto. Non proprio tutto, però: mi permetto di fare un po' di pulizia, lasciando solo gli elementi davvero utili e semplificando il resto.
Tre osservazioni prima della tabella:
1) La maggior parte degli elementi ha una rappresentazione di base e una rappresentazione estesa per facilitare la lettura.
2) Lascio le abbreviazioni in inglese, quindi:
«Y = anno
Z = indicatore UTC
M = mese
D = giorno
w = settimana
h = ora
m = minuto
s = secondo
n = cifra intera positiva o zero
P = intervallo di tempo
R = indicatore di intervallo di tempo
T = separatore tra elementi data e ora
3) La norma usa il calendario gregoriano e la numerazione dei giorni della settimana e la seguente:
| Numero | Giorno |
|---|---|
| 01 | Lunedi |
| 02 | Martedi |
| 03 | Mercoledi |
| 04 | Giovedi |
| 05 | Venerdi |
| 06 | Sabato |
| 07 | Domenica |
La settimana e identificata nell'anno da un numero. La prima settimana dell'anno (settimana 1) e quella che contiene il primo giovedi dell'anno. L'ultima settimana dell'anno e quella che precede la prima settimana dell'anno successivo. In altre parole, la prima settimana dell'anno e quella che contiene il 4 gennaio.
Per il resto:
| Elemento | Formato base | Formato esteso | Osservazioni |
|---|---|---|---|
| LE DATE | |||
| Data completa | YYYYMMDD 20030607 |
YYYY-MM-DD 2003-06-07 |
7 giugno 2003 |
| Data ridotta al mese | YYYY-MM 2003-07 |
nessuno | |
| Anno | YYYY 2003 |
nessuno | |
| Secolo | YY 20 |
nessuno | Io ci provo, ma... |
| Data completa | YYMMDD 030607 |
YY-MM-DD 03-06-07 |
secolo corrente |
| Data ridotta al mese | -YYMM -0306 |
-YY-MM -03-06 |
secolo corrente |
| Anno | -YY -03 |
nessuno | secolo corrente |
| Giorno del mese | --MMDD --0607 |
--MM-DD --06-07 |
anno corrente |
| Mese dell'anno | --MM --06 |
nessuno | anno corrente |
| Giorno del mese | ---DD ---07 |
nessuno | mese corrente |
| Sorvolo sugli anni oltre il 9999. Ci torneremo quando ci arriveremo davvero. | |||
| Data ordinale | YYYYDDD 2003157 |
YYYY-DDD 2003-157 |
157mo giorno del 2003 = 7 giugno 2003 |
| Data ordinale | YYDDD 03157 |
YY-DDD 03-157 |
secolo corrente |
| Giorno dell'anno in corso | -157 | nessuno | un solo trattino |
| Data della settimana | YYYYWwwD 2003W237 |
YYYY-Www-D 2003-W23-7 |
7mo giorno della settimana 23 dell'anno 2003 |
| Anno, settimana, giorno | YYWwwD 03W237 |
YY-Www-D 03-W23-7 |
secolo corrente |
| Anno e settimana | YYWww 03W23 |
YY-Www 03-W23 |
secolo corrente |
| Anno, settimana e giorno | -YWwwD -3W237 |
-Y-Www-D -3-W23-7 |
Anno del decennio corrente |
| Anno, settimana | -YWww -3W23 |
-Y-Www -3-W23 |
Anno del decennio corrente |
| Settimana, giorno | -WwwD -W237 |
-Www-D -W23-7 |
Anno corrente |
| Settimana | -Www -W27 |
nessuno | Anno corrente |
| Giorno | -W-D -W-5 |
nessuno | Settimana corrente |
| ORE DEL GIORNO | |||
| Ora locale | hhmmss 151225 |
hh:mm:ss 15:12:25 |
|
| Ore e minuti | hhmm 1512 |
hh:mm 15:12 |
|
| Ora | hh 15 |
nessuno | |
| Ore, minuti, secondi decimali | hhmmss,s
s
151224,5 |
hh:mm:ss,s
s
151224,5 |
|
| Ore, minuti decimali | hhmm,m
m 1512,8 |
hh:mm,m
m 15:12,8 |
|
| Ora decimale | hh,h
h
15,25 |
nessuno | |
| Non ci dilunghiamo sul "formato ridotto" delle ore. Hai già capito che basta sostituire l'elemento mancante con un trattino (-). Il principio e lo stesso usato per le date. | |||
| Mezzanotte | 000000 | 00:00:00 | inizio del giorno |
| Mezzanotte | 240000 | 24:00:00 | fine del giorno |
| Ora in UTC | hhmmssZ hhmmZ hhZ |
hh:mm:ssZ hh:mmZ hhZ |
Stesso formato dell'ora locale. Aggiungere Z alla fine. |
| Scarto tra tempo locale e UTC | +/-hhmm +/-hh |
+/-hh:mm |
corrisponde al fuso orario: +0100, per esempio |
| Tempo locale + correzione fuso | hhmmss+/-hhmm hhmmss+/-hh |
hh:mm:ss+/-hh:mm hh:mm:ss+/-hh |
es.: 15:12:15+01:30 |
| Data e ora: basta scrivere la data in uno dei formati visti e aggiungere l'ora in un formato valido. La parte data e la parte ora sono separate da una T. Vedi sotto. | |||
| Data e ora | 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 |
|
Intervalli: basta indicare l'istante iniziale (data, data-ora...) poi un separatore / e l'istante finale (data, data-ora...), per esempio: YYY-MM-DDThh:mm:ss/YYY-MM-DDThh:mm:ss
Per definire la durata dell'intervallo, e non le date di inizio e fine, basta indicare che si tratta di un intervallo con il prefisso P.
Esempio: P5Y6M3DT15H10M20S (5 anni, 6 mesi, 3 giorni, 15 ore, 10 minuti, 20 secondi). Non dimenticare la P, che segnala un intervallo di tempo.
P7W: 7 settimane.
Naturalmente si possono combinare data iniziale e durata, oppure durata e data finale.
Per esempio 2003-06-06T12:00:00/P0Y0M0DT00:03:00 significa che un uovo, la cui cottura inizia il 6 giugno 2003 a mezzogiorno, sara pronto tre minuti dopo. Cottura alla coque, ovviamente.
E nulla vieta di scrivere 2003-06-06T12:00:00/2003-06-06T12:03:00. Il risultato e lo stesso.
Se vuoi una cottura più lunga, scrivi 20030606T120000/20030606T120300, perché nel tempo necessario a decifrare la stringa... i tre minuti saranno già passati.