Datum und Zeit

Intern nutzt GFFamily die Datums- und Zeitfunktion von SQLite. Hier sind die Besonderheiten dazu aufgeführt.

Datumsformat

Intern wird das Datums- und Zeitformat nach ISO 8601 verwendet. Das heißt die Speicherung erfolgt in folgenden Formaten:

Format Positiv

Beispiel Positiv

Format Negativ

Beispiel Negativ

JJJJ-MM-TT

2004-07-11

−JJJJ-MM-TT

−0333-07-11

Bemerkung

Hinweis für GFAhnen-Nutzer:
Dies unterscheidet sich von GFAhnen, welches verschiedene Formate verwendet! In der Ahnen.db wird das Format JJJJ.MM.TT verwendet. In der Ehen.db und der LebPhasen.db das Format TT.MM.JJJJ.

Ist ein Datum nur teilweise vorhanden, werden die nicht vorhandenen Bereiche durch Leerzeichen aufgefüllt. Ein Datum kann dann z.B. wie folgt aussehen 2004-   -  .

Die Eingabe im Programm erfolgt regulär und wie gewohnt im Format TT.MM.JJJJ. Die Konvertierung wird jeweils vom Programm durchgeführt.

Zeitformat

Das Zeitformat hält sich ebenfalls an die ISO 8601, ist jedoch auf Stunden und Minuten beschränkt. Die Eingabe und Speicherung erfolgt hier im Format hh:mm (z.B. 16:27).

Kalenderberechnung

SQLite arbeitet intern mit einem sogenannten Proleptischen-gregorianischen Kalender. Dieser hat diverse Vor- und Nachteile, auf einige soll hier eingegangen werden:

  • der Kalender erlaubt Datumsberechnungen bis zum 24. November 4714 v. u. Z.; damit sollten die meisten Forschungen direkt abbildbar sein.

  • Jahr 0 Problem: der Kalender beinhaltet ein Jahr 0. Dieses kommt in der Wissenschaft nicht vor. Auch die Genealogie kennt dieses Jahr nicht. Das hat zur Folge, dass sich Ereignisse um ein Jahr verschieben (Caesar würde nicht 44 v. u. Z. sterben, sondern 43 v. u. Z.).

Um einige Probleme zu umgehen, werden intern folgende Funktionen verwendet:

  • Bei Berechnungen mit Jahreszahlen vor dem Jahr 1 wird ein Jahr abgezogen. Das heißt, das Jahr 0 wird entsprechend korrigiert und somit die Jahre wieder bereinigt.