ISO 8601
| |||
Bereich | Datumsangabe | ||
Titel | Datenelemente und Austauschformate – Informationsaustausch – Darstellung von Datum und Uhrzeit (ISO 8601:2019) | ||
Kurzbeschreibung: | Schreibregeln des Datumsformats | ||
Teile | 1, 2 | ||
Erstveröffentlichung | Juni 1988 | ||
Letzte Ausgabe | Februar 2019 |
ISO 8601 ist ein internationaler Standard der ISO, der Empfehlungen über numerische Datumsformate und Zeitangaben enthält. Der Titel der Norm ist Data elements and interchange formats – Information interchange – Representation of dates and times, (deutsch: Datenelemente und Austauschformate – Informationsaustausch – Darstellung von Datum und Uhrzeit).
Durch die Übernahme in die Europäische Norm EN 28601:1992 galten die Empfehlungen von ISO 8601 über Datums- und Zeitangaben soweit sie rein numerisch sind, also insbesondere keinen ausgeschriebenen oder abgekürzten Monatsnamen enthalten – gemäß ISO 8601:1988 auch in Deutschland, Österreich und der Schweiz. Im September 2006 löste DIN ISO 8601 diese Normen sowie die älteren DIN 1355 und DIN 1355-1 für den Bereich des deutschen Normenwerkes ab. Außerdem ist die Norm auch in die DIN 5008 (Schreib- und Gestaltungsregeln für die Text- und Informationsverarbeitung) eingeflossen.
Am 25. Februar 2019 wurde eine neue Version der Norm in zwei Teilen, ISO 8601-1:2019 und ISO 8601-2:2019, veröffentlicht.
ISO 8601 verwendet meist den gregorianischen Kalender, in seltenen Fällen den julianischen Kalender und die 24-Stunden-Zählung für jeden Tag.
Zusammenfassung
[Bearbeiten | Quelltext bearbeiten]Die Norm enthält verschiedene Datums- und Zeitformate, die jedoch rein formal und in den meisten Fällen schon durch die Anzahl der verwendeten Ziffern unterscheidbar sind. Die Norm ist vor allem bekannt für das Datumsformat YYYY-MM-DD, das oft auch als „internationales Datumsformat“ bezeichnet wird. Das üblichste Zeitformat der Norm ist hh:mm:ss. Ein Beispiel für das Datum ist 2004-06-14 (14. Juni 2004) und für die Uhrzeit 23:34:30 (23 Uhr, 34 Minuten und 30 Sekunden) und für beides zusammen 2004-06-14T23:34:30. Zur internationalen Kommunikation von Tageszeiten kann der Unterschied der verwendeten Zonenzeit zur koordinierten Weltzeit (UTC) angefügt werden, in der Form +01:00, +0100 oder +01 für mitteleuropäische Zeit und z. B. −04:30 oder −0430 für die ehemalige Standardzeit in Venezuela.
Ein Einsatz dieser Formate wird vor allem im Bereich der Naturwissenschaften, Softwareentwicklung, Dokumentation und für internationale Korrespondenz empfohlen, da hier das größte Fehlerpotential durch länderspezifische Formate existiert. Als Beispiel seien hier verschiedene länderspezifische Schreibweisen für den 2. April 2008 (2008-04-02) genannt: 2/4/08, 4/2/08, 08/4/2, 4/2/2008.
Darüber hinaus ist das Datumsformat nach DIN EN 28601 in Deutschland am 1. Mai 1996 zum einzigen normgerechten numerischen Datumsformat (z. B. 1996-05-01) erhoben worden und löste damit das traditionelle Format nach DIN 1355-1 (1.5.1996) ab. Alle Einrichtungen, die im Einflussbereich der DIN-Normen stehen (so auch alle Bildungseinrichtungen und öffentliche Einrichtungen), sind zur Benutzung des neuen Formats angehalten. Allerdings verwendeten große Teile der Bevölkerung im Alltag weiterhin das alte Format, was durch die Neuregelung der DIN 5008 im Jahr 2001 zur Wiederzulassung des üblichen Formats führte, wenn damit keine Missverständnisse entstehen. Die 2020 erschienene Fassung sieht diese Schreibweise mit stets vierstelliger Jahreszahl nur für Schreiben an inländische Empfänger vor.[1]
Außerdem definiert die Norm, wie ihre Vorläufer seit den 1970er Jahren, den Montag als ersten Tag der Kalenderwoche. Als erste Kalenderwoche im Jahr wird die Woche mit dem ersten Januar-Donnerstag definiert. Dadurch fällt der 4. Januar immer in die erste Kalenderwoche. Mit dieser Regel wird verhindert, dass die erste Arbeitswoche keinen einzigen Arbeitstag enthält. Als Grundlage dient der gregorianische Kalender, auch rückgerechnet für die Zeit vor dem Jahr 1582 (proleptisch).
Grundsätze
[Bearbeiten | Quelltext bearbeiten]- In allen mit der Norm konformen Formaten werden Datums- und Zeitangaben in der Reihenfolge von der höchsten zur kleinsten Einheit geschrieben („fallende Schreibung“). Die Reihenfolge der Ziffern entspricht der „natürlichen“ Wertigkeit in Stellenwertsystemen der Mathematik, da die größeren Einheiten vor den kleineren stehen (Jahr vor Monat usw.). Das hat den Vorteil, dass die lexikographische und die chronologische Sortierung von Listen von Datums- und Zeitwerten zum gleichen Ergebnis führen. (Dies gilt nur dann nicht, wenn in der Liste negative Jahreszahlen oder eine Mischung der durch die Norm definierten Datumsformate verwendet werden.)
- In jedem Format sind Datums- oder Zeitwerte in verschiedene Einheiten unterteilt (etwa Jahr, Monat, Tag oder Stunde, Minute, Sekunde). Jede Einheit muss dabei mit einer festen Ziffernanzahl wiedergegeben werden, die gegebenenfalls durch vorangestellte Nullen zu erreichen ist.
- Für jedes Format existiert eine kurze Version mit einer minimalen Anzahl von Trennzeichen und eine erweiterte Version, die weitere Trennzeichen zur besseren menschlichen Lesbarkeit enthält. Der Standard empfiehlt, in Texten nur die erweiterten Versionen zu verwenden. Zwischen Datumseinheiten wird der Kurzstrich („Bindestrich-Minus“, U+002D) und zwischen Zeiteinheiten der Doppelpunkt als Trennzeichen verwendet. Zum Beispiel wird der 3. Juni 2014 in Kurzform als 20140603 und in erweiterter Form als 2014-06-03 geschrieben.
- Falls Werte mit geringerer Genauigkeit angegeben werden sollen, können die Werte einzelner Zeiteinheiten weggelassen werden, jedoch nur beginnend mit den kleinsten Einheiten (also „von hinten“). Die Angabe 2004-06 ist zum Beispiel ein gültiger Datumswert und bezeichnet den Juni (6. Monat) des Jahres 2004. Diese Angabe bezeichnet weder den 6. Tag irgendeines Monats im Jahr 2004 noch die Zeitspanne vom Jahr 2004 bis zum Jahr 2006. Für den 6. Tag des Jahres 2004 würde man hier 2004-006 schreiben, die 6. Woche des Jahres 2004 mit 2004-W06 und den Zeitraum von 2004 bis 2006 mit 2004/2006 bezeichnen.
- Falls eine Anwendung es erfordert, kann der Wert der kleinsten dargestellten Zeiteinheit auch durch einen Dezimalbruch präzisiert werden. Als Trennzeichen für die Dezimalstellen kann ein Punkt oder ein Komma verwendet werden.
- Die chronologische Sortierung der Zeitangaben nach ISO 8601 gleich der alphanumerischen Sortierung, wenn keine Sekundenbruchteile und keine Zeitzonen verwendet werden.[2]
Darstellung
[Bearbeiten | Quelltext bearbeiten]Hier verwendete Variablen, stets gegebenenfalls mit führenden Nullen:
Variable | Darstellung | Werte | Erläuterung |
---|---|---|---|
Y | YYYY | 0000…9999 | Jahr
|
M | MM | 01…12 | Monat |
w | ww | 01…53 | Woche des Jahres |
D | D | 1…7 | Tag der Woche, Montag bis Sonntag |
DD | 01…31 | Tag des Monats | |
DDD | 001…366 | Tag des Jahres, 366 nur in Schaltjahren | |
h | hh | 00…24 | Stunde, 24 nur in 24:00 als Endzeit |
m | mm | 00…59 | Minute |
s | ss | 00…60 | Sekunde, 60 nur als Schaltsekunde |
f | f | (0…9)+ | dezimale Bruchteile, in der Regel von Sekunden beliebiger Genauigkeit |
Verwendete Zeichen
[Bearbeiten | Quelltext bearbeiten]Trenner bei festen Datumsangaben
[Bearbeiten | Quelltext bearbeiten]Trenner | Erläuterung |
---|---|
P | Trenner von Datum und Angabe einer Zeitspanne (von englisch period) |
T | Trenner von Datum und Uhrzeit (time) |
W | Zur Angabe einer Woche (week) |
− | verbindliches Vorzeichen für Daten vor der Epoche (Minuszeichen) |
+ | wählbares Vorzeichen für Daten nach der Epoche (Pluszeichen) |
- | Trenner von Datumselementen (oft wählbar, aber empfohlen) (Bindestrich) |
: | Trenner von Zeitelementen (oft wählbar, aber empfohlen) (Doppelpunkt) |
, oder . | Trenner von Ganzzahl und dezimalem Bruchteil (Komma oder Punkt) |
Trenner bei Angaben von Zeitspannen
[Bearbeiten | Quelltext bearbeiten]Trenner | Erläuterung |
---|---|
Y | Jahr (year) |
M | Monat (month) |
W | Woche (week) |
D | Tag (day) |
T | Trenner zwischen Datum und Zeit |
H | Stunde (hour) |
M | Minute (minute) |
S | Sekunde (second) |
, oder . | dezimale Bruchteile einer Sekunde (fraction) |
/ | Trenner von Start- und Enddatum (bis) |
Datum
[Bearbeiten | Quelltext bearbeiten]Datumsbeispiele mit Positivangaben | Datumsbeispiele mit Negativangaben | ||
---|---|---|---|
Format | Beispiel | Format | Beispiel |
YYYY-MM-DD | 2004-07-11 | −YYYY-MM-DD | −0333-07-11 |
YYYYMMDD | 20040711 | −YYYYMMDD | −03330711 |
YYYY-MM | 2004-07 | −YYYY-MM | −0333-07 |
YYYY | 2004 | −YYYY | −0333 |
YYYY-Www | 2004-W28 | −YYYY-Www | −0333-W28 |
YYYYWww | 2004W28 | −YYYYWww | −0333W28 |
YYYY-Www-D | 2004-W28-7 | −YYYY-Www-D | −0333-W28-7 |
YYYYWwwD | 2004W287 | −YYYYWwwD | −0333W287 |
YYYY-DDD | 2004-193 | −YYYY-DDD | −0333-193 |
YYYYDDD | 2004193 | −YYYYDDD | −0333193 |
Das Monat-Tag-Format wurde vor ISO 8601:1988 in ISO 2014 kodifiziert, das Woche-Tag-Format samt Wochenzählung in ISO 2015 und das Tag-Format in ISO 2711.
Tageszeit
[Bearbeiten | Quelltext bearbeiten]Format | Beispiel |
---|---|
hh:mm:ss | 16:43:16 |
hhmmss | 164316 |
hh:mm | 16:43 |
hhmm | 1643 |
hh | 16 |
hh:mm:ss,f | 16:43:16,2345 |
Zeitzonen
[Bearbeiten | Quelltext bearbeiten]Laut Empfehlung wird nach einer zusammenhängenden Datums- und Zeitangabe die Differenz zur Koordinierten Weltzeit (UTC) angegeben. Das Format ist „±hh:mm“, „±hhmm“ oder „±hh“ und berücksichtigt damit sowohl die Zeitzone als auch die Sommerzeit. Als spezieller Wert kann auch „Z“ oder „z“ für UTC (+00:00) eingetragen werden. Um aus einer lokalen Zeitangabe die Zeit in UTC zu bestimmen, muss der Wert nach einem „+“ subtrahiert, der nach einem „−“ addiert werden.
Beispiel | Erläuterung |
---|---|
2007-08-31T16:47+00:00 | 16:47 Uhr am 31. August 2007 in der Zeitzone UTC. |
2007-12-24T18:21Z | 18:21 Uhr am 24. Dezember 2007, ebenfalls in der Zeitzone UTC. |
2008-02-01T09:00:22+05 | 09:00:22 Uhr am 1. Februar 2008 in einer Zeitzone, die UTC 5 Stunden voraus ist, beispielsweise in der in Pakistan festgelegten Zonenzeit. Dies entspricht 2008-02-01T04:00:22Z, also 04:00:22 Uhr am 1. Februar 2008 in der Zeitzone UTC. |
2009-01-01T12:00:00+01:00 | 12:00:00 Uhr am 1. Januar 2009 in Wien (MEZ). |
2009-06-30T18:30:00+02:00 | 18:30:00 Uhr am 30. Juni 2009 in Wien (MESZ – Sommerzeit). |
2010-01-01T12:00:00.001+01:00[3] | Eine Millisekunde nach 12:00:00 Uhr am 1. Januar 2010 in Wien (MEZ). |
Zeitspannen
[Bearbeiten | Quelltext bearbeiten]Eine Zeitspanne wird in dem Format [Startdatum]/P[YY][MM][WW][DD][T[hH][mM][s[.f]S]]
dargestellt. Das P zeigt dabei als anführender Informationsbuchstabe an, dass eine Zeitspanne (englisch period) folgt. Zeitspannen, die einen Uhrzeitanteil enthalten, werden wie in der Angabe des Anfangszeitpunktes durch ein T abgegrenzt. Daher sind die Angaben der Monate und Minuten (M) unterscheidbar. Für die Formatierung des Anfangszeitpunktes gelten dieselben Regeln wie für die normale Datumsangabe.
Alternativ können, wenn möglich, Start- und Enddatum getrennt von einem Schrägstrich (/) angegeben werden. Der Standard erlaubt auch die Verwendung von zwei Kurzstrichen (--) statt des Schrägstrichs.
- Beispiele
- 2005-08-09T18:31:42/P3Y6M4DT12H30M17S: bestimmt eine Zeitspanne von 3 Jahren, 6 Monaten, 4 Tagen, 12 Stunden, 30 Minuten und 17 Sekunden ab dem 9. August 2005 „kurz nach halb sieben Abends“.
- P3Y6M4DT12H30M17S: die gleiche Zeitspanne wie das erste Beispiel, allerdings ohne ein bestimmtes Startdatum zu definieren
- P1D: „Bis morgen zur jetzigen Uhrzeit.“
- PT24H: „Bis in 24 Stunden ab jetzt.“, was im Falle einer Zeitumstellung vom vorherigen Beispiel abweicht
- 2005-08-09/P14W: „Die 14 Wochen beginnend ab dem 9. August 2005.“
- 2005-08-09/2005-08-30: „Vom 9. zum 30. August 2005.“
- 2005-08-09--2005-08-30: „Vom 9. zum 30. August 2005.“
- 2005-08-09/30: „Vom 9. bis 30. August 2005.“
Nationale Implementierungen
[Bearbeiten | Quelltext bearbeiten]Die Implementierung in den verschiedenen Staaten erfolgt nach nationalen Standards.
Geltungsbereich der Jahreszahlen
[Bearbeiten | Quelltext bearbeiten]Die Norm lässt nur die Jahreszahlen von 1583 (dem Jahr nach Einführung des gregorianischen Kalenders) bis 9999 ohne weitere Vereinbarung zu.
- Die Interpretation von Daten vor dem 15. Oktober 1582 ist nicht durch die Norm festgelegt, sie ist daher nur von der getroffenen Vereinbarung abhängig.
- Sowohl zur Verwendung der Jahreszahlen 0000 bis 1582 als auch für die Ausdehnung des Darstellungsformates, mit der ein größerer Bereich von Jahreszahlen darstellbar wird, sind Vereinbarungen der Datenaustauschpartner erforderlich.
- Bei ausgedehnter Darstellung ist die Angabe eines Vorzeichens, auch des positiven, zwingend erforderlich. Die Anzahl etwa zusätzlicher numerischer Stellen ist zu vereinbaren. Beispielsweise ist bei vereinbarten zwei zusätzlichen Stellen der 12. April 1985 im erweiterten Format als +001985-04-12 darzustellen.
- Möglich ist das Vereinbaren der Anwendung des üblichen julianischen Kalenders, die Norm sieht alternativ den proleptischen gregorianischen Kalender vor.
Proleptischer gregorianischer Kalender
[Bearbeiten | Quelltext bearbeiten]ISO 8601 sieht die Möglichkeit vor, den gregorianischen Kalender auch für die Zeit vor seiner Einführung am 15. Oktober 1582 anzuwenden, allerdings nur bei entsprechender Vereinbarung zwischen den Datenaustauschpartnern. In diesem proleptischen gregorianischen Kalender existiert im Gegensatz zum julianischen Kalender (siehe Jahr null) das Jahr mit der Bezeichnung „0000“, das ein Schaltjahr ist. In einer ausgedehnten Darstellung nach ISO 8601 entspricht in diesem Fall „–0001“ dem julianischen Jahr 2 v. Chr. usw.
Weblinks
[Bearbeiten | Quelltext bearbeiten]- Date and time format - ISO 8601. Internationale Organisation für Normung, Februar 2019, abgerufen am 28. März 2019 (englisch).
- „A summary of the international standard date and time notation“ von Markus Kuhn (englisch)
- Extended Date/Time Format (EDTF) Specification. Library of Congress, Februar 2019, abgerufen am 28. März 2019 (englisch, All of the features of EDTF are supported by Part 2 [of ISO 8601:2019].).
- Linkkatalog zum Thema ISO 8601 bei curlie.org (ehemals DMOZ) (englisch)
- G. Klyne, C. Newman: RFC: – Date and Time on the Internet: Timestamps. Juli 2002 (für die Benutzung im Internet vorgesehene Teilmenge von ISO 8601, englisch).
- Microsoft Learn: Standard date and time format strings
- Microsoft Learn: datetime (Transact-SQL)
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ DIN 5008:2020-03 Schreib- und Gestaltungsregeln für die Text- und Informationsverarbeitung, Abschnitt 11.4 Datumsangaben, Teilabschnitt 11.4.1 Numerische Schreibung
- ↑ workflowy.zendesk.com: Support ISO 8601 Date formatting for display of dates and times
- ↑ Microsoft Learn: UTC date/time string with complete representation for calendar date