MAJW 2024-01-22 to 2024-01-26
to : Martin Holmes
Minutes: 120
On Monday and Tuesday had some brief discussions with DA on how to proceed with the relationship trees.
On Wednesday, wrote the first implementation of code to generate intermediate generations, in cases where we have grandparent/grandchild relations but no intermediate parents. Haven’t yet implemented tests for this, and the initial results look like they might be over-generating, but I’ll come back to it when other work allows.
On Thursday morning, took another look at the code and the results, and commented it out until I can write some clean and simple tests. But there’s still the problem of whether you generate one dummy parent for every collection of grandchildren, or one dummy parent for each child; either will be guaranteed to be wrong some of the time.
There’s also the issue of a grandparent/grandchild relation where the child has no parent, but the grandparent does have a child. Should we attach the grandchild to that existing parent, or generate a new dummy one? Again, guaranteed to be wrong some of the time whichever we pick.
All in all, I’m beginning to come around to these conclusions:
- Doing this in a completely automated way is going to result in overly-complex trees which are both confusing and manifestly wrong in many respects.
- For any given person, we have lots of clear evidence a human can interpret to fill in many of the missing relations anyway (someone called
Wayne son of Waynetta
is probably the son of Waynetta, assuming we know from other evidence which Waynetta it’s likely to be; but only a human can really make a reliable judgement on which Waynetta it is, or whether it’s an unknown Waynetta). - Since we’re focusing on the featured women only, I think what we should do is pick one and manually create all of the inferred relations we can justifiably create, placing inferred relations in a separate location from the events, since they’re not directly attested by events, and marking them as inferred.
- We should then be able to look at the resulting tree and see where there are holes; we could fill those with a third category,
conjectured relations
, which seem reasonable based on the tree.
None of this has any direct bearing on the code to draw the actual trees; whatever collection of relationships we end up with, they need to be rendered into a tree anyway.