What Fuzzy international name matching system should be added to Gramps?

0.3.1 Ready for testing

Currently it groups some surnames according to an encoding set. So, it seems to already provide something more accessible as a simple soundex variable on a tool?

By looking at these encodings, returned value sounds like a key for a proxy (privacy issue) or by going further, like an anonymisation key (with traps) around DNA stuff.

One sample with the surname Martin.

Soundex -> M635
Match Rating Approach -> MRTN
NYSIIS -> MARTAN
Metaphone -> MRTN
--
French Phonetic -> NORTIN
Custom (above one) -> MRDM
$ python3
>>> import hashlib
>>> key = 'M635'
>>> no_name = hashlib.sha384(key.encode()).hexdigest()
>>> print(no_name)
72ab5c23332454f52fffccbf335a0a7bc65594ae8b3e3985fe7709796bd9d9ac2ee57e9fac88f4924d7b98326e5bf97c
[..] # hashlib.sha384().update(key)
>>> key = 'MRTN'
>>> print(no_name) 
b1920c5ccc87413de96b10c588f75d42cf0d81adf8b58b366dbff637b9f37131e5ae717aab64d4c367dda56b1c826eda
[..]
>>> key = 'MARTAN'
>>> print(no_name)
18f67c2c20e2d29aa3b290e852dbaf85d1f6bb3f75302c65f53e090e317709509d7a61ea1d73b9b9daa056b32f4b6e5c
[..]
>>> key = 'NORTIN'
>>> print(no_name)
8825f47026ce41fd4b8b4a33ec65838db1b380b2b7d3e980ed5da0860e4931f6e5f05bce0d4227b461125441ae8dc9d4
[..]
>>> key = 'MRDM'
>>> print(no_name)
af3a8834f84f31189e691f0e046ec4a05da1f6396ba78f008642484397611ebb8dcb002587d0d4d2fe2087928074a764

No one knows the key ID except the person who sets one encoding (custom or built-in). A Passphrase-like oriented naming!

Maybe I should try to use such encodings list for fixing fuzzy translations too! eg., I use the sample of a small village where I just listed many records for having a global overview, which also means census. So, I know this specific surnames list during a large period.

If you look at automatic most translations with ORC - maybe like done by Ancestry, you could also find the same records in Europe, via a partnership with geneanet[1] - then you will see some surname variations.

https://www.geneanet.org/fonds/catalogue/collection/1168-recensements-du-bas-rhin/search/?go=1&place[0]=vendenheim&prenom_operateur=and&size=10&type_periode=between&zones__0_[_place]=vendenheim

  • BUCHREL, RICHL, ROHS, ALTZ, KOCBEL, ERNVERIER, JUMSTIER, AE, JUEKER, UMECKER, MACOHEL, LOIVENGATH, FEMMELOTZ, LEFVRE, BERBANN, BICHRÉL, HUNDLING, etc. could match one of the name system group as these exact surnames never really existed on this location (except maybe for one or two administrative typo, which could generate a match).

LEFVRE, eh? I have about 118 LeFever (Huguenots) intermarried with my refugee Ferree immigrant ancestors.

The idea of a Phonetic Fuzzy rule simultaneously looking for multiple surnames sounds useful!

I wonder if this anonymizing might be done with Name Display formats and an enhancement to the Conditional Test Replacements.

There are not many ways to auto-hide private date within the Gramps GUI. Mostly those affect exports and reports. But there ARE a couple alternatives:

Yes, this surname seems to be a good sample, as this might be a large group with: Lefèvre, Lefèbvre, Lefebvre, Lefevre, Le Febvre, LeFebvre, etc.

LeFever sounds like a Dutch translation where the vre becomes ver or related to an overseas France migration (Guiana, Caribbean Islands or so).

I see an other feature. Do you remember Tiny Tafel like report[1]?
(in french, ListeÉclair, like the gramps addon)

Well, any gramps’ user can set an encoding id with a surnames list. Multiple grey zones where matching exact surname might be a challenge for AI without the key.

[1] Tiny Tafel - Wikipedia

I’d like to wrap up a few addons before expanding scope.

I think that the Fuzzy Matching needs to be able to be used as starting point for drag’n’drop a person to drop elsewhere. And to be able to drop a person on the surname. And counts for each of surname groups under the matches.

In the meantime, could you use the FuzzyDev.md and samples in the FuzzyRules addons to see they will successfully let Claude build a compatible Phonex rule addon? (Which you can also use in the Filter Gramplet.)

At these dates, on middle-17th, Alsace/Elsass was… not yet in France. More and less, like in Germany with multiples lords and “micro-states”.

There is one ancestor (great-greatgrand parents) of a famous ‘Huguenot descendant’, living (was a teacher) on a closed village (Eckwersheim). So, an “open mind” area, but also a location of wars. I need to look at possible fix for this possible automatic translation (Ancestry-Geneanet) on this census, as one and maybe more letters could be missing on LEFVRE.

Today on this place, you may still find some old houses from 17th, but most jewish or huguenote families moved to big cities or migrated. New public or local servant will be either protestant or catholique according to the lord or king (since 1648/1681 in Elsass).

On France, see also Protestant Museum – History of Protestantism

So, if a surname sounds “french”, like LEFVRE on a 19th census, for this place and outside cities (more rural), then it often means that there was a marriage or family migration just before (eg., railroad came here, around 1850).

Marie LEFEVRE

  • Born 13 Nivose year VII (January 2, 1799) (Wednesday) - Strasbourg, 67482, Bas-Rhin, Alsace, France
  • Deceased October 4, 1856 (Saturday) - Vendenheim, 67506, Bas-Rhin, Alsace, France, aged 57 years old

Spouse of Thiébault Ertz, cordwainer, widow of Jean Irrmann, chanvrier (a worker who prepares hemp). They lived in on house/farm like this one (build on 1761).


At a glance, some places related to “Huguenots” on East of France (or West of Germany) as well as the US migration:

BAS-RHIN

Baerthal
Mühlthal
Bietlenheim
Boofzheim
Eckwersheim ← (close to Vendenheim)
Engweiler
Froeschwiller
Gertwiller
Gumbrechtshoffen
Ingwiller
Langensoultzbach
Lichtenberg
Niedermodern
Oberbronn
Oberbronn EL
Offwiller
Olwisheim ← (close to Vendenheim)
Pfaffenhoffen
Reipertsweiler
Ringerdorf
Rothbach
Sarre-Union
Strasbourg ← (close to Vendenheim)
Strasbourg St Pierre le Vieux ← parish
Uhrwiller
Wahlen
Westhoffen
Weyersheim ← (close to Vendenheim)
Windstein

Switzerland

Affolteren

Germany

Albershausen (Wurtemberg)
Burweiler
In the Castle
Giessen (Hesse)
Kirckheim sur la Teith (Wurtemberg)
Lippstadt (Westphalie)

USA

Dayton (Ohio)
New-York
Newark NJ
Ohio
Shelbyville
Venice (Ohio)

Indiana

Shelby County
Shelbyville - I thought it was not a real town (eg., a place name translation for The Simpsons TV show)! Otherwise -ville means -city in french

So, for some pioneers (“Huguenot” or not in 17th), who moved nor from Germany nor France, have a look at Switzerland and Elsass.
If need, could also list some typical place-roots for Mennonites or Amish (US migrations).