In my opinion the holy grail of genealogical software is a system capable of taking records from any kind of source, hundreds, thousands, whatever of them, and then inferring the actual persons mentioned in those records. Putting this into GEDCOM terms, I imagine each of the records, the raw data, as being in the form of a few interconnected GEDCOM records holding the persons, dates, places and events mentioned in each source.A database would start out as a collection of all these "evidence" GEDCOM records, which then get collectively and maybe iteratively "merged" together into a final set of "real person" GEDCOM records. Persons records become the collection of all evidence you have discovered about them.
Hello Przemek,
I imagine building a pipeline of separate pieces of software that do these tasks, each task being a totally separate program:- extract data from an online database- convert data between different formats, e.g. GEDCOM <-> Gramps XML- match data to data in my database (automatic or interactive) and output a file with the matches- merge the data into my database (automatic or interactive)
Another piece I'm missing is building a database of sources that I haven't matched to my database yet and I don't know if and how they match. For example, I'd like to keep a list of all people with a certain last name who were born in a certain village. At some point it's possible that I'll connect them to my family tree. This is the part described by Tom as "a system capable of taking records from any kind of source (...) and then inferring the actual persons". In theory, this can already be done by adding disconnected individuals in family tree software but I don't see a lot of value in doing it this way.
And that's exactly what I want, because it makes our software as easy as Ancestry or FamilySearch, and that's what it should be, to work.
This should be quite easy to implement in a Gramps fork, and can be way better than the forms Gramplets, which are awful in a couple of ways, one of which is the way they store data, in source attributes.
In this model, you can have 'evidence' persons, who are not connected to families, like in the normal conclusion based GEDCOM model, but rather to sources/citations, which are the objects that Gramps already have. One may also connect event and location records to the citation, and they're also already there.
At first glance this suggests that the most import additions are some extra relations between objects, like between 'evidence' persons and 'conclusion' persons, and Tom has already suggested that there may be other ways to implement that, where one person can be derived from another one, or more, and this can be repeated in a sort of 'conclusion tree' (my term).
There is one other thing though, at least for Gramps, and that's the fact that any 'evidence' person can have associated facts, like a birth date and place for a spouse in a marriage record, and in Gramps, these can either be stored in attributes (Yuck!) or in the global event and location tables, which can be shared with other objects, which is a bit over the top. And looking back at what Tom wrote then, it's probably way easier to store all such facts inside the person object, like we already do with attributes, meaning that you store dates and locations inside facts in the 'evidence' person as they are written in the source, without drawing conclusions, like what the location (place name) actually means on a map.
This is quite easy to implement too, because the person object is flexible enough to be expanded with a list of facts, just like it has generic attributes already. And in fact some fellow developers have already suggested that we expand attributes with dates and locations.
Regards,
Enno
![]() | |
On Apr 16, 2024, at 9:27 PM, Thomas Wetmore <ttwet...@gmail.com> wrote:
Marshall,
--
---
You received this message because you are subscribed to the Google Groups "rootsdev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rootsdev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rootsdev/AACF6744-57AB-410B-94E8-19DBA9CEE8EE%40gmail.com.
Stephen Woodbridge, I had to smile at your github remark about the 3-second load time.
My first experience of databases in the 70s was with System 2000 – hierarchical!
From: root...@googlegroups.com <root...@googlegroups.com> On Behalf Of Stephen Woodbridge
Sent: Wednesday, April 17, 2024 2:53 AM
To: root...@googlegroups.com
Subject: Re: [rootsdev] $0.02
You might want to look at this:
To view this discussion on the web visit https://groups.google.com/d/msgid/rootsdev/72D9C9B8-E1E9-493E-A46C-82F2719B3C99%40gmail.com.