Excellent! After spending quite a few weeks to set up the data structures to handle recursive GEDCOM links, it only took a couple of hours to get them working. This is a major milestone for me. I first started to work on recursive links almost a year ago. I only thought it would take a week, but it didn’t go too smoothly at the time. So after realizing that I needed some data restructuring first, I put it on the backburner. But it’s always been sitting there nagging me - until now. It’s done!
So what exactly are these “recursive links”? They are my way of referring to references that are in other references. Here’s a GEDCOM example:
1 BIRT 2 DATE 1800 B.C. 2 PLAC Bedrock, USA 2 _WITN @I5@ 3 _ROLE Saw birth 3 SOUR @S1@ 4 PAGE Cave 42, Wall 3 4 QUAY 3 4 NOTE @N1@
This is a birth event. There was a witness @I5@ who saw the birth, so this is a reference to the person @I5@. Within that reference there is a citation that refers to source @S1@. Within the citation, there is a note that refers to note @N1@. This sort of thing can theoretically continue to any depth, but practically it doesn’t happen very often.
Even so, it is important for Behold to handle this when it occurs. It involves chaining the events so that each higher level item links to the lower one, and also adding a reference back to each higher level item from the lower one.
Now that I’ve explained all this, you can forget it. Just know that it now will be handled properly in Behold.