Es gibt Themen, für die sich fast niemand interessiert. Andererseits gibt es wenige Themen, über die wir noch nie geschrieben haben, zumindest im Umfeld von Freier Software und Freier Gesellschaft. Heute kam ein Verwandter mit einer Ahnentafel um die Ecke. Er beschäftigt sich hobbymässig mit der Genealogie, also der Ahnenforschung. Sein PDF-Dokument mit der Ahnentafel hatte einen starken 90er-Jahre-Charme: schwer lesbar, viel Zoom-Arbeit.
Ich war wenig an meinen Vorfahren von 1800-irgendwas interessiert. Statt nachzusehen, wer mein Urururgrossvater war, kamen mir zwei andere Gedanken in den Sinn:
- Wie bildet man eine Ahnentafel mit einer JSON-Struktur ab?
- Gibt es FLOSS-Anwendungen für die Ahnenforschung, bzw. für die Abbildung der Ahnen?
Nun könnt ihr mich einen unsentimentalen Klotz nennen, weil ich mich nicht besonders für meine Vorfahren interessiere, und damit habt ihr recht. Als Nerd finde ich die Frage nach den Strukturen und Anwendungen spannender.
Anwendungen
Nach kurzer Suche bin ich auf der passenden Wikipedia-Seite gelandet. Dort findet sich eine Liste von Anwendungen für die Genealogie. Erwartungsgemäss gibt es wenige freie Programme und noch weniger aktuelle Anwendungen. Neben der Web-basierten Anwendung WebTrees, gibt es das Programm Gramps, welches einen Standard-Status inne hat, so oft wie es erwähnt wird:
Gramps wird aktiv weiterentwickelt. Die letzte Version 6.0.8 stammt vom April 2026. Auch die Funktionsliste ist beeindruckend und scheint alles abzudecken, was man sich als Ahnenforscher wünscht.
Das Programm findet man (in Version 6.0.7) als natives Paket und auch als Flatpak. Ausprobiert habe ich Gramps nicht, weil mir dafür das Interesse am Thema fehlt. Vielleicht gibt es unter den Leser:innen jemanden, der sich mit Ahnentafeln auskennt und bestätigen kann, dass Gramps die erste Wahl ist.
Formate
Die andere Frage bezieht sich auf die Datenformate. Kann man Ahnentafeln mit einer JSON-Struktur abbilden? Ja, kann man. Wer eine Genealogie-Anwendung programmieren möchte, kann sich natürlich eine eigene Datenstruktur überlegen.
Das ist keine gute Idee, weil es einen Standard gibt, der insbesondere zum Datenaustausch zwischen verschiedenen Genealogie-Apps zum Einsatz kommt. Dieser Standard heisst GEDCOM, ist rein textbasiert und enthält die Daten der einzelnen Personen eines Familienstammbaumes sowie Informationen über ihre familiären Beziehungen. Es wurde von der Kirche Jesu Christi der Heiligen der Letzten Tage (Mormonen) entwickelt, um ihre Mitglieder bei der Familienforschung zu unterstützen.
Hier seht ihr einen Auszug aus einer GEDCOM-Datei:
0 HEAD
1 SOUR PAF
2 NAME Personal Ancestral File
2 VERS 5.0
1 DATE 30 NOV 2000
1 GEDC
2 VERS 5.5
2 FORM LINEAGE-LINKED
1 CHAR ANSEL
1 SUBM @U1@
0 @I1@ INDI
1 NAME John /Smith/
1 SEX M
1 FAMS @F1@
0 @I2@ INDI
1 NAME Elizabeth /Stansfield/
1 SEX F
1 FAMS @F1@
0 @I3@ INDI
1 NAME James /Smith/
1 SEX M
1 FAMC @F1@
0 @F1@ FAM
1 HUSB @I1@
1 WIFE @I2@
1 MARR
1 CHIL @I3@
0 @U1@ SUBM
1 NAME Submitter
0 TRLR
Alles klar? Nein, nichts ist klar. Ist das COBOL oder Assembler?
Das bessere Format ist GEDCOM-X, das von der non-profit Organisation FamilySearch (Mormonen) entwickelt wird und unter einer freien Lizenz (Apache) steht. Dieses Format kennt verschiedene Ausprägungen, darunter auch ein JSON-Format. Hier ist ein Beispiel:
{
"individuals": [
{
"id": "I1",
"name": "John /Doe/",
"gender": "M",
"birth_date": "12 JAN 1980",
"death_date": null,
"parents": ["Jane /Doe/", "Robert /Doe/"],
"spouses": ["Mary /Smith/"],
"children": ["Anna /Doe/"]
},
{
"id": "I2",
"name": "Mary /Smith/",
"gender": "F",
"birth_date": "03 MAY 1982",
"death_date": null,
"parents": [],
"spouses": ["John /Doe/"],
"children": ["Anna /Doe/"]
},
{
"id": "I3",
"name": "Anna /Doe/",
"gender": "F",
"birth_date": "21 SEP 2010",
"death_date": null,
"parents": ["John /Doe/", "Mary /Smith/"],
"spouses": [],
"children": []
}
],
"families": [
{
"id": "F1",
"husband": "I1",
"wife": "I2",
"children": ["I3"]
}
]
}
Im Gegensatz zum ersten Beispiel in reinem GEDCOM-Format, ist die JSON-Variante von GEDCOM-X sofort verständlich. Es gibt eine Liste von Individuen mit Detailangaben zur Person sowie Verwandtschaftsinformationen (Eltern, Ehepartner, Kinder). Zusätzlich können Familien abgebildet werden, indem auf die IDs der Individuen referenziert und die Beziehungsart notiert wird (Ehemann, Ehefrau). Das Beispiel zeigt nur einen Ausschnitt dessen, was mit GEDCOM-X möglich ist, vermittelt aber einen Eindruck von der Einfachheit und Lesbarkeit dieses Formats.
Falls ihr mehr Ahnung von Genealogie habt als ich, freue ich mich auf eure Kommentare.
Titelbild: https://en.wikipedia.org/wiki/Genealogy#/media/File:900-158_Ahnentafel_Herzog_Ludwig.jpg
Quellen:
https://en.wikipedia.org/wiki/Genealogy
https://www.familysearch.org/innovate/gedcom-x
https://de.wikipedia.org/wiki/Liste_von_Genealogie-Programmen
https://flathub.org/de/apps/org.gramps_project.Gramps



Mir ging es vor einer Weile ähnlich, als ein Verwandter mit einem JPG (!) und seiner Ahnentafel ankam. Mit welchem Programm er das bastelt ist mir nicht bekannt, aber es sah schwer nach Word mit "Word Art" Elementen aus, was mich immer wieder zum Schütteln bringt…
Mein eigenes Interesse an dieser Thematik ist begrenzt, daher stecke ich da auch nicht viel Aufwand rein. Inzwischen will ich auch nicht mehr für jeden Zweck eine Anwendung nutzen, sondern schaue oft, ob ich das z.B. mit Obsidian abbilden kann.
Für meine Zwecke reicht ein Obsidian Vault, in dem ich jede Person anlege und über Meta-Daten verlinke. Theoretisch sollte man das im Graph dann auch sehen können, ist mir aber nicht so wichtig. Für jede Person gibt es eine Markdown-Datei, da kann ich auch ein paar "lose" Notizen integrieren.
Webtrees ist super. Von Gramps gibt es übrigens auch eine (zur Desktopversion) kompatible selbst-hostbare Version namens Grampsweb. Beide empfehlenswert. Mir gefällt Webtrees aber besser.
Das Thema ist nicht uninteressant, und in den handelsüblichen "Sozialen Netzwerken" dürfte es vermutlich keinen Mangel an Scharlatanen geben, die Dir jederzeit bescheinigen, daß Du –und nur Du!– direkt von Karl dem Großen und/oder Dschingis Khan abstammst.
Aus meiner Klasse war jemand "von Adel", und –nachdem ich Bettgeschichten aus dem 18. Jahrhundert vermutete– zeigte sich, daß es die Familie –seit der Einnahme und Christianisierung einer der Ostseeinseln durch die Dänen– seit dem 12. Jhdt. gibt.
Nun, anscheinend ging die Christianisierung des Baltikums weiter, und nach lediglich 20 weiteren Minuten hatte ich einen vermeintlichen Verwandten gefunden, der Passagen aus dem Alten Testament in eine Art Deutsch übersetzt hatte, jemanden 1640 als Burgvogt -i.e. Hausverwalter von eher niederem Adel- von "Kroaten" massakrierten, und es gab an der Ostsee noch eine Wüstung samt Holzschild und meinem Namen in kyrillisch.
Indes herrscht Entropie:
In der genealogischen Realität dürften die Dinge eher nicht fertig aufbereitet auf Datenträgern liegen. Schon vom Geburtsort meines eigenen Vaters existiert gar nichts mehr außer Sand, Gras, und es gibt noch ein paar zerbrochene Ziegel. Wer da also mit wem (nicht) verwandt wäre, muss ich getrost der NACHWELT hinterlassen 😇️
Irgendwo sind wir alle verwandt :)
Weil mein Stammbaum bis ca. 1500 zurückreicht, habe ich mich auch schon damit beschäftigt. Mein Interesse galt aber eher einer effizienten Art, die Daten in einer Datenbank ordentlich abzulegen. Nach längerem Experimentieren bin ich zu dem Schluss gekommen, dass nicht das Verheiratet-Sein die richtige Beziehung abbildet, sondern nur die Vererbung (also immer genau 1 Mutter und 1 Vater). Dann wird es auch leichter, abzubilden, wenn es verschiedene Eltern gibt - Halbgeschwister, uneheliche Kinder usw.
Mein Stand war so eine Tabellenstruktur:
Damit sollte aus der Struktur ein Baum aufbaubar sein, der alle Vererbungen abbilden kann.
Schlussendlich habe ich das aber am Ende doch aufgegeben, da die Familie so sehr zerstritten ist, dass ich einfach keine Lust mehr hatte, mich da reinzuinvestieren.
Gramps importiert und exportiert auch aus dem und ins GEDCOM-Format.
Eine große Community hat übrigens auch Ancestris (https://www.ancestris.org/index.html). Französischen Ursprungs (Ich habe das Gefühl, dass gute Software von unseren westlichen Nachbarn leider gerne übersehen wird.) Es wird regelmäßig entwickelt und läuft auf den drei großen Systemen.
... Genana ... ? Was ? Es kommt immer auf die Situation an. Als 2008 eine Tante von mir starb, war ich gezwungen mich um das Erbe zu kümmern. Die wichtigste zu klärende Frage war, wer gehört denn alles zur Erbengemeinschaft ? Seit 1950 hatte sich niemand gekümmert. Und da war ein Stammbaum die beste Hilfe. Damals hatte ich noch Windows und Linux parallel auf dem PC, was beruflich auch Sinn ergab. GRAMPS habe ich damals verworfen - zu umständlich und unübersichtlich für meine Zwecke. Es gab aber damals für Windows AHNENBLATT - eine FreeWare, mit der ich einfacher zum Ziel kam. Ahnenblatt hat auch eine GEDCOM-Schnittstelle, so daß ich die Daten zwischen Windows →← Linux hin und herschieben konnte. Mit etwas Geduld liefert es auch Stammbäume als PDF im A3-Format ... wegen der Übersicht. Kürzlich kam eine Bekannte auf mich zu, die eben auch sowas suchte. Es gibt zwar einige Ahnenforschungsprogramme für Linux, aber es kostete zuviel Zeit, alle zu testen. Ahnenblatt gibt es immer noch (V.2.99-kostenlos) und es läuft mit Hilfe von Wine auch unter Linux. Es mag sein, daß GRAMPS das professionellere Produkt ist, aber die Mehrheit der Freizeit-Genealogen kommt wohl mit Ahnenblatt besser zurecht. Schönen Männertag wünsch ich noch allen (Frauen + Männern) !
Jetzt habe ich mal Gramps ausprobiert und es macht wirklich sehr Spaß. Die Anwendung ist schön, die Graphen sind schön, man kann es schnell mal ausprobieren ohne viel lerrnen zu müssen. Danke für den Tipp