Optimales Datenmodell für eine Genealogie-Datenbank?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Waltschrat
    Erfahrener Benutzer
    • 20.07.2016
    • 151

    Optimales Datenmodell für eine Genealogie-Datenbank?

    Grüß Gott,

    ursprünglich habe ich nach einem Beispiel für eine Baumstruktur gesucht, die man im Unterricht als Beispiel nutzen kann. Daraus ist dann im Laufe der Zeit die Suche nach den Ahnen entstanden.

    Ich bin daher historisch von den Bäumen heruntergestiegen.


    Nun haben Relationale Datenbanken Schwächen bei der Modellierung von Bäumen (das sogenannte Stücklistenproblem). Beispielsweise kann man in SQL nicht fragen: "Gib mir die Wurzel zu einem Knoten = Gib mir den jüngsten Nachkommen". Genauer: Im neuesten SQL-Standard ist dazu ein Befehl vorgesehen, der aber bei den eher bescheidenen Genealogie-Datenbanken nicht realisiert ist.

    Wie man aus meinem Anmeldedatum sieht, habe ich mich erst kürzlich getraut, in dieses professionelle Forum einzutreten. Man lernt, dass es eine Vielzahl von Programmen gibt, die fast alle die Kommunikation über den Gedcom-Standard erlauben. Dieser Standard beschreibt ein Austauschformat, ist also keine Datenbank.

    Nach dieser langen Einleitung nun zu meinem Problem:

    Um in einem RDBM (Relationalen Datenbank Management)-System einen Baum darzustellen, genügt eine einfache, reflexive Tabelle (Bild 1) (eine Tabelle mit mindestens einem Fremdschlüssel auf sich selbst).

    Natürlich kann man hier bereits darüber streiten, ob die Felder p_p_aNrV (Vater) und p_p_aNrM (Mutter) als Verweise auf die Personennummer p_aNr einen Verstoß gegen die 1. Normalform (1NF) darstellen. Da es sich aber aus biologischen Gründen um genau zwei handelt, sei das erlaubt. Weiterhin sollen erst einmal alle Schmutzeleien wie gleichgeschlechtliche Ehe, unehelich geborene Personen usw. außen Acht gelassen werden.

    Sucht man nun nach einer Access-Datenbank, die Gedcom verarbeitet (einliest), so trifft man nur auf ein Template von Microsoft aus dem Jahre 2007. Das Nachfolgertemplate aus 2016 enthält interessanterweise diese Fähigkeit nicht mehr.

    Hinweis: Die Fragestellung dieses Beitrages hat weder etwas mit Microsoft noch mit Access zu tun. Also bitte keine Diskussion darüber.

    Spannend ist das zugehörige Datenmodell (Bild 2), das eine direkte Umsetzung des Gedcom-Standards ist.

    Im Zentrum von Gedcom stehen zwei Tabellen Families und Individuals, die nicht allein einen Baum realisieren können, was auch im Gedcom Standard 5.5.1. ausdrücklich dokumentiert ist.

    Die Tabelle Families könnte man nach ihren Feldern auch als Ehe bezeichnen. Die Ehe besteht aus zwei Personen, die in Individuals näher beschrieben werden. Die Felder Father und Mother sind eine schlechte Umsetzung von HUSB und WIFE aus Gedcom.

    Jede Person (Individual) hat einen Fremdschlüssel Parents auf die Ehe der beiden Eltern. Erst über diesen Weg findet man die Eltern einer Person.

    Ich stelle mir daher die Frage: Welches der beiden Datenmodelle ist (technisch gesehen) das bessere.

    Diese Frage würde ich hier gern mit DB-Analysten diskutieren. Es geht nicht darum, ob MySql besser als Access, DB 2, SQL Server usw. ist.

    Da ich mit Gedcom erst am Anfang stehe, interessieren mich die Fragen:

    1. Wie werden uneheliche Kinder behandelt?
    2. Wie werden Ahnen ohne Eltern behandelt?
    3. Wie wird die Konsistenz der Daten geprüft?
    4. Der Standard sieht gegenseitige Verweise in beiden Tabellen aufeinander vor. Wie werden Widersprüche erkannt?

    Selbstverständlich muss auch das Baum-Modell um eine Tabelle Ehe (assoziative Zwischentabelle) ergänzt werden, wenn es dieselben Daten wie das Gedcom-Modell aus Bild 2 enthalten soll.

    Diese Tabelle kann theoretisch leer bleiben, während Families für jede Familie einen Datensatz enthalten muss.

    Euer Waltschrat
    Angehängte Dateien
    Zuletzt geändert von Xtine; 10.10.2016, 21:39. Grund: off Topic Teil entfernt
  • StefOsi
    Erfahrener Benutzer
    • 14.03.2013
    • 4066

    #2
    Moin,

    bin nicht ganz sicher was du mit deiner Frage eigentlich erzielen willst, aber warum nicht einfach das Gedcom-Format 1:1 in der DB abbilden? Fremdschlüssel, Verknüpfungen ect. sind damit alle erfasst und du kannst dann nach Lust und Laune SQL-Queries erstellen die für deine Ansprüche die richtigen sind.

    Oder verstehe ich da die grundlegende Frage nicht?

    P.S: Ich hatte mir mal ein Script geschrieben, das genau das macht - meine eigene .ged in ne DB (in meinem Fall war das sqlite) packt. Dann konnte ich damit fleissig rumspielen und völlig neue Funktionen für Views schreiben die z.b. Ahnenblatt nicht hat.
    Zuletzt geändert von StefOsi; 09.10.2016, 23:18.

    Kommentar

    • Waltschrat
      Erfahrener Benutzer
      • 20.07.2016
      • 151

      #3
      Ist Gedcom optimal?

      Zitat von StefOsi Beitrag anzeigen
      Oder verstehe ich da die grundlegende Frage nicht?

      P.S: Ich hatte mir mal ein Script geschrieben, das genau das macht - meine eigene .ged in ne DB (in meinem Fall war das sqlite) packt. Dann konnte ich damit fleissig rumspielen und völlig neue Funktionen für Views schreiben die z.b. Ahnenblatt nicht hat.
      Grüß Gott, lieber StefOsi

      danke für Deine Antwort.

      Die Frage ist nicht, ob Gedcom einen Stammbaum vollständig und gut abbildet, sondern ob das Format optimal ist. Nachdem ich ged eingelesen habe, weiß meine Datenbank nichts mehr von Gedcom und ich kann fleißig herumspielen und neue, überraschende Sichten auf meine Daten erzeugen. Das ist ein, wenn auch mit der Frage nicht beabsichtigter, positiver Nebeneffekt.

      Ja, meine Frage ist grundlegend.

      Sollte beispielsweise Gedcom X im Tag INDI nicht FATH und MOTH einführen statt FAMC/FAMS? Damit wird FAM zu einer willkommenen, aber eigentlich für den Ahnenbaum überflüssige Zugabe.

      Die Frage ist ketzerisch und könnte einen Shitstorm auslösen. Ich bin auf alles gefasst.

      Wie gesagt, arbeite ich mich gerade erst ein und bin auf folgende Aussage getroffen (Quelle: www.daubnet.com Übersetzung von Gedcom 5.5.1):

      Die normalen Abstammungsverbindungen werden durch Zeiger von der Person auf eine Familie durch entweder einen FAMC-Kennzeichen oder FAMS-Kennzeichen gezeigt. Das FAMC-Kennzeichen beinhaltet einen Zeiger auf eine Familie, in der die Person Kind ist. Das FAMS-Kennzeichen beinhaltet einen Zeiger auf eine Familie, in der die Person (Ehe-)Partner oder Elternteil ist. Die <<CHILD_TO_FAMILY_LINK>> Struktur enthält einen FAMC-Zeiger, der zwingend notwendig ist, um die Verbindung eines Kindes zu seinen Eltern zu dokumentieren. Die <<CHILD_TO_FAMILY_LINK>> Struktur zeigt zudem, ob es sich um eine biologische Verbindung, Adoption oder Siegelung handelt.
      Dein Waltschrat

      Kommentar

      • gki
        Erfahrener Benutzer
        • 18.01.2012
        • 4837

        #4
        Nur mal so: Was kümmert mich das Datenmodell, wichtig ist, daß das Programm funktioniert.

        Sich an Gedcom zu orientieren nur um der Orientierung an Gedcom willen halte ich auch für vergebene Liebesmüh.

        Grundsätzlich wäre eine nicht-relationale DB das Mittel der Wahl.
        Gruß
        gki

        Kommentar

        • Waltschrat
          Erfahrener Benutzer
          • 20.07.2016
          • 151

          #5
          Bitte keine &quot;Nur mal so&quot;-Beiträge

          Grüß Gott,

          selbstverständlich ist es dem Anwender egal, wie ein Problem programmiert wird, Hauptsache es funktioniert. Aber ich dachte, dass diese Aspekte in genau diesem Forum diskutabel sind und ich hier auf Mitglieder treffe, die nicht nur reine Anwender sind. Der letzte Beitrag hilft mir nicht besonders. Also bitte keine weiteren "Nur mal so"-Beiträge.

          Vielleicht gibt es ja Mitglieder, die es schon einmal mit einer nicht-relationalen Datenbank probiert haben oder schon einmal selbst eine post-Excel-Variante programmiert haben. Auch nicht-relationale Datenbanken sind oft nur "nach Außen" nicht-relational.

          Vielleicht sollte ich meine Vorstellungen zum Begriff "optimal" noch ein wenig erläutern:

          Ein Programm, das nicht funktioniert (oder die gewünschten Ergebnisse bringt) kann nicht optimal sein (Ausschlusskriterium).

          Ein Programm ist (landläufig gesehen) optimal,

          1. wenn es speicheroptimal ist,
          2. wenn es laufzeitoptimal ist.

          Daher würde ich bei diesem Thema gern Folgendes diskutieren (Beispiele):

          Das Datenmodell xyz benötigt mehr/weniger Speicherplatz, weil beispielsweise:

          • Baum-Modell: Jede Person hat einen zweiten Fremdschlüssel (günstig/ungünstig?)
          • Gedcom-Modell: Bei einer durchschnittlichen Kinderzahl (fiktiv, nicht geprüft) von sieben, enthält die Tabelle Families nur 1/7 der Datensätze der Tabelle Individuals.
          • usw.

          Das Datenmodell xyz benötigt mehr/weniger Laufzeit, weil
          • Gedcom-Modell ungünstig: Die Eltern einer Person können nur über einen doppelten JOIN-Befehl bestimmt werden.


          Euer Waltschrat
          (nicht nur für "Insider": http://home.f1.htw-berlin.de/Scheibl...lStammbaum.htm)

          Kommentar

          • urmel_x
            Erfahrener Benutzer
            • 26.06.2015
            • 106

            #6
            Hi,

            als erstes denkt man über die dem Problem angemessenen Datenstrukturen nach,
            und erst dann über die Abspeicherung dieser Datenstrukturen - sprich:

            Die Datenbank ist das letzte Glied in der Kette.

            Gruß,

            Urmel

            Kommentar

            • JanX
              Benutzer
              • 13.12.2009
              • 92

              #7
              Ich habe auch das Gefühl, als ob die Herangehensweise etwas - unüberlegt ist.

              Erstmal: GEDOCM ist prinzipiell ein Datenaustausch-Format. Es gibt mit Ages! zwar ein Programm, das seine Daten in GEDCOM speichert, aber das ist eher die Ausnahme. Und hat hier das Problem, das bei sehr großen Genealogien (ich rede hier von mehreren 10.000 Personen) die Ladezeit extrem lang ist, da die gesamte GEDCOM-Datei eingelesen und aufgebröselt werden muß, um im weiteren Verlauf damit arbeiten zu können. Was bei so vielen Personen halt dauert.

              Dann: Wie man in einer eigenen Datenbankstruktur Kinder und Eltern mit den Personen verknüpft ist Sache der eigenen Überlegungen. In GEDCOM gibt es jedenfalls verschiedene Möglichkeiten, das zu erledigen.

              Zu den Anfangsfragen:
              • Uneheliche Kinder werden in GEDCOM erstmal nicht anders behandelt als andere Kinder.
              • Personen ohne Eltern bekommen halt keine zugewiesen. Das entsprechende Tag wird dann eben nicht verwendet (was bedeutet, das die Person nirgends als Kind einer Familie eingetragen ist).
              • GEDCOM selber prüft die Konsistenz der Daten überhaupt garnicht,. Weil GEDCOM kein Programm ist sondern nur eine Aneinanderreihung von entsprechend formatierten Textzeilen. Für die Konsistenz ist das schreibende Programm zuständig. Das kann da also stapelweise falsche Tags einbauen, fehlerhafte Formatierungen, gebrochen Links zu Partnern, Kindern, Orten, Quellen, ... Passiert ja auch in manchen Programmen stapelweise.
              • Der Standard (solange hier GEDCOM gemeint ist) sieht überhaupt keine zwei Tabellen, sonddern eine einzelne Textdatei. Kann also auch nicht mit Widersprüchen umgehen. Familien werden in dieser Textdatei verknüpft (Person, Ehe, Kinder zur Familie) aufgeführt.

              JanX

              Kommentar

              • Waltschrat
                Erfahrener Benutzer
                • 20.07.2016
                • 151

                #8
                Zitat von urmel_x Beitrag anzeigen
                Hi,

                als erstes denkt man über die dem Problem angemessenen Datenstrukturen nach,
                und erst dann über die Abspeicherung dieser Datenstrukturen - sprich:

                Die Datenbank ist das letzte Glied in der Kette.

                Gruß,

                Urmel
                Grüß Gott, lieber Urmel,

                Deine Antwort verstehe ich nicht. Nach dem "Nachdenken" über ein angemessenes Datenmodell muss sich doch der DB-Analyst fragen, welcher der beiden (oder mehr) Entwürfe optimal ist.
                Natürlich gibt es viele Kriterien wie "Anpassungsfähigkeit an Änderungen in der Umwelt, Wartungsfreundlichkei usw.), aber bei einer Genealogie-Datenbank sehe ich weiterhin die Hauptkriterien
                1. Platzbedarf
                2. Laufzeit

                im Vordergrund stehen (ok, Speicherplatz ist heute billig wie noch nie). Macht meine Anfrage nicht genau dieses Anliegen deutlich?

                Das Datenmodell zementiert ein Programm/eine Firma auf Jahrzehnte.

                Gedcom ist keine Datenbank, impliziert aber mittelbar eine Datenstruktur.

                Hallo, auf Anregung dieses Themas habe ich mal meine Datenbank Script durchwühlt. Hab mir auch schon eine Struktur überlegt. kurz einige Komments zu Bild 1: mehr als die Hälte ist eine Quelle? Mit Handy Nr wirkt es etwas aufgebläht. Veränderliche Daten (Wohnung) sollte in eine eigene Tabelle; Normalformen würde das ganze sehr abspecken... Ich würde mich mehr an den Gedcom Standard halten. Weiters finde ich den GRAMPS Ansatz mit Personen, Erreignissen, Orte und Quellen sehr gut. Leider betrachtet kaum jemand, dass die Orte das Beständigste sind. Sie ändern max. den Namen und die Bestimmung, bleiben aber, solange die Plattendektonik nicht schneller wird, am selben Platz.
                (Heraushebung durch mich)

                Ein wenig ratlos hat mich der Beitrag
                die Forschung in meiner Gemeinde (2.300 EW, ländlich geprägt) zieht immer weitere Kreise. Aufgrund des Daten- / Archivbestandes reift die Idee eine digitale Gemeindechronik zu erstellen. In der Gemeinde geistern einige Ahnenstammblätter rum, sie haben teilweise Überschneidungen, jeder kocht jedoch seine eigene Suppe.

                zurückgelassen, da hier "alte Scripts" hervorgeholt werden, um ein Datenmodell zu beurteilen. Dort findest Du übrigens auch mein aktuelle Datenmodell mit der Baumstruktur.

                Dein Waltschrat
                (nicht nur für "Insider": http://home.f1.htw-berlin.de/Scheibl...lStammbaum.htm)

                Kommentar

                • StefOsi
                  Erfahrener Benutzer
                  • 14.03.2013
                  • 4066

                  #9
                  Na dann gehe doch einfach den Weg jeder DB und bringe alles in die NF's. Da gibt es feste Regeln. Ob du bis zur 4. oder 5. NF gehst sei dann dir überlassen.

                  Kommentar

                  • urmel_x
                    Erfahrener Benutzer
                    • 26.06.2015
                    • 106

                    #10
                    Hi Waltschrat,

                    wie hier schon erläutert wurde, ist GEDCOM ein Datenaustauschformat - niemand ist gezwungen, dieses Format als Vorlage einer Datenstruktur für ein Genealogie-Programm zu benutzen. Aber ein Genealogie-Programm sollte dieses Format einlesen können und in seine eigenen Datenstrukturen übersetzen können - desgleichen sollte es seine Daten im GEDCOM-Format ausgeben können. Die vom Genealogie-Programm verwendeten Datenstrukturen sollten dem Problem angemessen sein - und das Problem ist nicht, wie man die Daten optimal abspeichert. Der eine Schritt ist, dem Problem angemessene Datenstrukturen zu finden und der zweite Schritt ist, wie diese Datenstruktur optimal abgespeichert werden kann. Von einer optimalen Datenabspeicherung auszugehen, heißt das Pferd von hinten aufzuzäumen. Es kann dann leicht passieren, dass dann das Genealogie-Programm von der Art der Datenabspeicherung bestimmt wird - was leicht eine schlechte Software ergibt.

                    N.B. benutzt ein Genalogie-Programm nicht nur real tatsächlich vorhandene Relationen, sondern eigentlich nur mehr oder weniger Quellen-belegte Relationen, was insbesonder bedeutet, dass z.B. eine Person mehrere Mütter besitzen kann, jede mit entsprechender Wahrscheinlichkeit, oder mehrere Geburtsdaten oder Geburtsorte ...

                    Gruß

                    Urmel.

                    Kommentar

                    • Waltschrat
                      Erfahrener Benutzer
                      • 20.07.2016
                      • 151

                      #11
                      Grüß Gott, lieber JanX

                      Zitat von JanX Beitrag anzeigen
                      Ich habe auch das Gefühl, als ob die Herangehensweise etwas - unüberlegt ist.
                      Verstehe ich nicht. Aber viele Deiner folgenden Aussagen hätte ich nicht besser formulieren können.
                      Erstmal: GEDOCM ist prinzipiell ein Datenaustausch-Format.
                      Ich habe und werde auch hoffentlich in meinem Leben nie behaupten, dass Gedcom oder auch XML eine Datenbank ist. Die gewählte Struktur in den Tags impliziert aber ganz deutlich eine Zwei-Tabellenstruktur (ggf. mit weiteren Tabellen aus den weiteren Tags (records)).
                      ... da die gesamte GEDCOM-Datei eingelesen und aufgebröselt werden muß, um im weiteren Verlauf damit arbeiten zu können. Was bei so vielen Personen halt dauert.
                      Beim ersten Lesen habe ich Personen = Benutzer gedacht, aber Du meinst sicher Personen = Datensätze. Was somit die fehlende Multiuserfähigkeit bestätigt.

                      Dann: Wie man in einer eigenen Datenbankstruktur Kinder und Eltern mit den Personen verknüpft ist Sache der eigenen Überlegungen. In GEDCOM gibt es jedenfalls verschiedene Möglichkeiten, das zu erledigen.
                      Den ersten Punkt will ich ja gerade zur Optimierung diskutieren. Die "verschiedenen Möglichkeiten" sehe ich jedoch nach Standard nicht. Du interpretierst "enthält einen FAMC-Zeiger, der zwingend notwendig ist, um die Verbindung eines Kindes zu seinen Eltern zu dokumentieren"
                      also so, dass der Zeiger optional ist und nur dann obligat ist, wenn man Eltern zuordnen will.

                      Genau diese "verschiedenen Möglichkeiten" interessieren mich. Kannst Du das näher ausführen.

                      • Uneheliche Kinder werden in GEDCOM erstmal nicht anders behandelt als andere Kinder.

                      Warum die Frage?: Fehlt ein Elternteil (meist der Vater), so möchte ich unterscheiden zwischen "unbekannt, noch nicht gefunden, also weitersuchen usw." und "dokumentiert unehelich". Dazu führe ich einen Dummy-Vater "unehelich" ein. Ist das optimal? Intern sollte die DB natürlich die referentielle Integrität der Eltern überwachen. Dieser Dummy-Vater hat inzwischen übrigens viele Kinder.
                      Ganz abwegig scheint das nicht zu sein, da es in einigen Kirchenbücher ein extra Kapitel für diese Kinder gibt.

                      Der Standard (solange hier GEDCOM gemeint ist) sieht überhaupt keine zwei Tabellen, sonddern eine einzelne Textdatei. Kann also auch nicht mit Widersprüchen umgehen. Familien werden in dieser Textdatei verknüpft (Person, Ehe, Kinder zur Familie) aufgeführt.
                      Gut, hier hätte ich "Sammlung von Tags in einer Textdatei im Sinne einer Tabelle, die über textuelle Zeiger miteinander verknüpft sind" schreiben sollen.

                      Jetzt fällt mir aber eine neue Frage an Gedcom-Spezialisten ein:

                      Kann man Gedcom-Dateien zusammenführen bzw. in eine bestehende Datenbank mit vorhandenen Primärschlüsseln integrieren? Die Gedcom-Zeiger müssen dabei angepasst werden. Ist hier ein Algorithmus mit einem Durchlauf:

                      Zeiger gefunden
                      Rest der Textdatei durchsuchen und Zeiger ändern

                      oder einer mit mehreren Durchläufen:

                      1. Durchlauf
                      Zeiger sammeln
                      Zeiger extern umsetzen
                      2. Durchlauf
                      Zeiger in der Datei ändern

                      sinnvoll. Die Frage habe ich noch nicht gegoogelt. Auch die Voraussetzung, ob die Reihenfolge INDI und FAM festgelegt ist, ist mir unklar

                      LG Dein Waltschrat
                      (nicht nur für "Insider": http://home.f1.htw-berlin.de/Scheibl...lStammbaum.htm)
                      Zuletzt geändert von Waltschrat; 12.10.2016, 10:21. Grund: 'sinnvoll' ergänzt

                      Kommentar

                      • JanX
                        Benutzer
                        • 13.12.2009
                        • 92

                        #12
                        Hallo Urmel,

                        Zitat von urmel_x Beitrag anzeigen
                        N.B. benutzt ein Genalogie-Programm nicht nur real tatsächlich vorhandene Relationen, sondern eigentlich nur mehr oder weniger Quellen-belegte Relationen, was insbesonder bedeutet, dass z.B. eine Person mehrere Mütter besitzen kann, jede mit entsprechender Wahrscheinlichkeit, oder mehrere Geburtsdaten oder Geburtsorte ...
                        *grins* Tolle Sache, das.

                        Aber im Ernst: Sowas KANN natürlich schon mal vorkommen. Wenn verschiedene Quellen etwas unterschiedliches aussagen. Sollte aber vermutlich zumindest in den Fällen eher sehr sehr selten sein.

                        Es ist aber richtig, das es in einem Genealogieprogramm viele Ralationen gibt. Nicht nur zu Kindern. Eltern, Partnern. Jenachdem, wie das Programm geschrieben ist, auch zu Orten, Quellen, Ereignissen, usw. Das kann man bis zum Exzess fortführen. Ob das immer sinnvoll ist, sei mal dahingestellt. Kommt vermutlich auch auf die Tiefe des Programms drauf an - bei Hobby-Genealogen meist nicht so tief notwendig, bei Profis eventuell schon mal.

                        JanX

                        Kommentar

                        • JanX
                          Benutzer
                          • 13.12.2009
                          • 92

                          #13
                          Hallo Waldschrat,

                          das war jetzt mal eine sehr ausführliche Antwort auf einige meiner Aussagen. Die an manchen Stellen frühere, mir manchmal nicht ganz klare Ausagen etwas verständlicher macht.

                          Ich stelle da mal eine ganz prinzipielle Frage: Worum geht es hier eigentlich? Ein neues Genealogieprogramm zu schreiben? Wenn ja: Warum? Der Markt ist ansich schon übersättigt damit. So sehr, das in den vergangenen Jahren eine ganze Reihe davon nicht mehr weiter entwickelt wird, weil das einfach keinen Sinn mehr ergeben hat bei den Userzahlen.

                          Und: So eine Software selber zu schreiben kostet sehr, sehr, sehr viel Arbeit und Zeit! Ich spreche da aus Erfahrung. Ist es das wirklich wert?

                          Aber zu den Antworten:

                          Natürlich meinte ich mit Personen die gespeicherten Ahnen. Und eine GEDCOM-Datei ist niemals mehruserfähig. Wie auch? Das ist eine Textdatei, nicht mehr. Auch ohne jede Relationsfähigkeit. Wenn man die Links dadrin nicht als Relation bezeichnet.

                          Und selbstverständlich muß ich ein FAMC oder FAMS nur angeben, wenn es da wirklich was gibt. Ansonsten führt das nur zu Einlesefehlern. Das gilt auch für viele andere Tags. Es gibt z. B. drei verschiedene Namens-Tags, von denen aber ansich nur eines Pflicht ist - das mit dem vollständigen Namen. Die Tags für Vorname und Nachname sind optional. Wie auch für Notizen, Quellen, Medien, und einen Haufen anderer Sachen. Ich meinte damit aber eher was anderes. Notizen und Quellen z. B. kann man direkt im "Personensatz" angeben unter dem passenden Tag. Aber auch als Link in einem eigenen Quellen- bzw. Notizen-"Satz". GEDOCM ist da an sehr vielen Stellen flexibel. Es gibt nicht genau DIE richtige Vorgehensweise. Manchmal sind das sogar drei Varianten, die möglich sind, das Gleiche abzuspeichern.

                          Das mit den fehlenden Eltern halte ich in mehrfacher Hinsicht für falsch. man sollte keine Personen "erfinden". Wenn es keinen Vater dokumentiert gibt dann gibt es keinen (die Amis sind da Weltmeister drin in den großen Online-Datenbanken. Ist die Frau unbekannt, wird da einfach der Name des Mannes mit vorgestelltem Mrs. eingetragen. Das ist sowas von übel!). GEDCOM kann auch sowas verwalten. Aber wenn man sowas macht (das Programm, mit dem ich arbeite, macht das aus systematischen Gründen), dann sollten natürlich nicht alle unehelichen Kinder einem Phantomvater zugeordnet werden. Wie will man das jemals wieder auseinanderziehen? Also wenn schon, dann mindestens jeder einzelnen Mutter unehelicher Kinder genau einen Phantompartner zur Seite stellen.

                          Es gibt GEDCOM-Tools, die sowas können. Mir kommt da mind. eines in den Sinn, das aber soweit ich weiß kostenpflichtig ist. Der Punkt ist, das da ja alle Links angepasst werden müssen. Denn wie gesagt, Familien, Kinder, Partner, Quellen, Mediendaten, ..., können alle als Link eingetragen werden.

                          Standardmäßig kommen in einer GEDCOM erst die INDI, dann die FAM. Ich habe aber gerade gestern erst eine GEDCOM in die Finger bekommen, die das genau umdreht. Die war aber auch sonst eher seltsam formatiert. Ob das alles noch GEDCOM-Konform ist kann ich spontan leider nicht sagen.

                          Eine gute Quelle für GEDCOM-Fragen ist übrigens die Mailingliste des compgen dazu. Die arbeiten seit Ende 2009 daran, zumindest für die deutschsprachigen Entwickler GEDCOM auf eine gemeinsame Basis zu stellen. Ich glaube, da waren zu Spitzenzeiten 22 Leute involviert. Und die haben auch eine deutsche Übersetzung der GEDCOM-Doku zur freien Verfügung gestellt. Sowie alle oftmals heftig diskutierten Entscheidungsfindungen zu den verschiedensten Tags sauber dokumentiert.

                          JanX

                          Kommentar

                          • Waltschrat
                            Erfahrener Benutzer
                            • 20.07.2016
                            • 151

                            #14
                            Lieber JanX, lieber Urmel, lieber StefOsi,

                            danke für die vernünftig Diskussion (habe auch schon anderes erlebt).

                            Na dann gehe doch einfach den Weg jeder DB und bringe alles in die NF's. Da gibt es feste Regeln. Ob du bis zur 4. oder 5. NF gehst sei dann dir überlassen.
                            Oh, war das jetzt als freundlicher Rat gemeint oder soll ich mich mit der Frage vom Acker machen? Der Entwurf ist doch schon geschehen. Aus diesem habe ich einen winzigen Ausschnitt herausgelöst (Bild 1). Daraus kommt ja die Frage, ob es ein besseres Datenbankmodell gibt oder nicht.

                            Ja, ich bin unzufrieden mit einigen der am Markt befindlichen Programme und ich gehe auch nicht das Risiko der Einstellung ein. Also entwickle ich einfach so vor mich hin. Da ich mir die Pflege nicht aufhalsen will, wird es auch keine verbreitbare Version geben. Aber vielleicht gibt es ja Mitglieder, die eigene Erfahrungen haben und sich nicht auf fremde Programmierer verlassen (obwohl es hier genügend Aufrufe dazu gibt).

                            Die "unscharfe Logik" (http://home.f1.htw-berlin.de/Scheibl/KI/index.htm) im Rahmen der KI mit der Wahrscheinlichkeitsbewertung einer Quelle und damit einer Aussage ist durchaus andenkbar. Beispiel:

                            Abschätzung des Geburtsdatum eines Elternteils im statistischen Generationenabstand wird mit 60 % bewertet.
                            Die einfache Multiplikation der Wahrscheinlichkeiten ergibt dann in der zweiten Generation 36 % usw.

                            Auch die Widersprüche sind mir schon über den Weg gelaufen (http://forum.ahnenforschung.net/show...=139758&page=3). So hat ein Mann fünf Kinder. In den Quellen sind die Nachnamen der Frauen ergänzt worden, nur leider drei verschiedene. Theoretisch müsste es ja Eheschließungen und Sterbedaten zu diesen Frauen geben, die ich aber noch nicht gefunden habe.

                            Was fehlt mir nun an einigen der Programm und warum mach ich es selbst:

                            Hauptsächlich die Dokumentzuordnung, um die oben genannten Widersprüche vielleicht doch noch aufzulösen. Ein Anwender von Ahnenblatt setzt beispielsweise die Geburtsurkunde statt eines Personenbildes ein. Weiterhin markiert er die Nachnamen der Person, um die Zugehörigkeit zu eigenen Linie darzustellen. Interessant ist daher immer die Diskussion mit Anwendern über ihre "Krücken": Was nutzen sie nicht nach Vorgaben des Handbuchs. Das führt zu neuen Ideen

                            Nach Euren ersten Antworten habe ich bemerkt, dass noch mehr in den Ahnenbaum investiert werden muss, zuerst mit Datumsangaben (Bild 3),
                            aber auch mit den Quellen (Bild 4).

                            So jetzt mache ich mich wirklich vom Acker.

                            LG Euer Waltschrat
                            (nicht nur für "Insider": http://home.f1.htw-berlin.de/Scheibl...lStammbaum.htm)
                            Angehängte Dateien

                            Kommentar

                            • offer
                              Erfahrener Benutzer
                              • 20.08.2011
                              • 1731

                              #15
                              Hallo JanX!
                              Zitat von JanX Beitrag anzeigen
                              ...
                              Das mit den fehlenden Eltern halte ich in mehrfacher Hinsicht für falsch. man sollte keine Personen "erfinden". Wenn es keinen Vater dokumentiert gibt dann gibt es keinen ...
                              In diesem Punkt möchte ich Dir widersprechen.
                              Wenn für ein Kind ein FAM-Tag vorhanden ist, weil die Mutter (oder der Vater) bekannt sind, sollte meiner Meinung nach auch immer der counterpart eingetragen sein und ein eigenes INDI-Tag besitzen.
                              Das hat doch nichts mit Personen "erfinden" zu tun. Die eingeschlechtliche Zeugung hat es in der Vergangenheit der Menschheit nicht gegeben, auch wenn der fehlende Elternteil nicht dokumentiert ist.
                              Die Handhabnung dieser Situation ist aber bei den verschiedenen Genealogieprogrammen uneinheitlich.
                              Die Frage nach einer "optimalen" Datenbank ist hier wohl eher rein "akademisch" zu betrachten. Deshalb wurde sie hier auch von einem Professor gestellt.
                              Praktisch ist es eher wichtig zu erreichen, daß ich alle Informationen einer GEDCOM-Datei unabhängig von dem erstellenden Genalogieprogramm übernehmen kann und diese (nach einer möglichen Bearbeitung) auch wieder in eine für alle Genealogieprogramme ohne Datenverlust übernehmbare GEDCOM-Datei zurückschreiben kann.
                              Damit wären die größten Probleme, welche die Nutzer der verschiedenen Genealogieprogramme bei einem Austausch der Dateien oder bei einem Umstieg von einem zu einem anderen Programm haben behoben.
                              This is an offer you can't resist!

                              Kommentar

                              Lädt...
                              X