Der Martin: Y2K-Problem

Beitrag lesen

Hallo,

Allerdings bezieht sich die Spezifikation an der Stelle auf ein uraltes RFC (1982) welches in Abschnitt 5 Daten definiert:
date        =  1*2DIGIT month 2DIGIT
Das RFC sagt also klipp und klar: "Jahr" hat zwei Stellen!

das ist blöd, keine Frage. Ich mein, man hätte auch 1982 schon vorausschauend das Jahr vierstellig festlegen können; dass man sich aber heute bzw. beim Ausarbeiten der RSS-Spezifikation auf ein altes Dokument beruft, das seinerseits schon längst überholt ist, finde ich reichlich ungeschickt.

In the wild habe ich ehrlich gesagt noch kein RSS-Feed gesehen, welches sich daran hält

Das heißt was? Setzen die das Jahr meist doch vierstellig ein?

aber es könnte ja sein. Die Frage ist: Wie gehe ich am Besten damit um?

Flexibel. Aber das hast du ja schon erkannt, dass das dann wohl nötig ist. ;-)

Es hat sich ja ein bisschen eingebürgert, dass man Werte >1999 tendenziell eher vierstellig schreibt. Also _KÖNNTE_ ich annehmen dass zweistellige immer älter als 2k sind.

Nein. Ich weiß nicht, wie RSS-Ersteller "ticken", aber ich kenne eine Menge Leute, die auch heute, lange nach 2000, die Jahreszahl nur zweistellig schreiben.

Dritte Lösung (die mir beim Schreiben dieses Beitrags einfällt): Man könnte auch ein Stich-Datum machen an dem es sich scheidet. Am Ehesten böten sich wohl '50 (Mitte) oder '70 (Timestamp-Refferenz) an. Will sagen dass ich Daten vor dem Stich-Datum den 2000ern und nach dem Stich-Datum den 1900ern zuordne.

So macht es Windows, wenn eine zweistellige Jahreszahl interpretiert werden soll. Ich finde diese Lösung gut, sie kommt der Wirklichkeit vermutlich am nächsten. Zusätzlich so flexibel parsen, dass vierstellige Jahreszahlen auch richtig verstanden werden.

(Und ich find's blöd dass sich RSS scheinbar auf dieses uralte RFC bezieht ohne eine Änderung zu spezifizieren, man hätte auch einfach das XML-Datums-Format nehmen können, welches YYYY-MM-DDThh:mm:ss zzgl. Timezone verwendet *grummel*)

So als würde man bei der Neufassung eines deutschen Gesetzes auf eine Vorschrift aus dem römischen Reich verweisen.

So long,
 Martin

--
Denken ist wohl die schwerste Arbeit, die es gibt. Deshalb beschäftigen sich auch nur wenige damit.
  (Henry Ford, amerikanischer Industriepionier)