stamboomforum

Forum logoGenealogie software / GEDCOMs » Index via gedfile importeren in (o.a.) Gramps



Profiel afbeelding

In plaats van copy/paste van de gegevens van een index in mijn genealogische database, heb ik nog eens een poging gedaan om dat via een GED-file te doen. Hulpmiddel hierbij is het gratis Windowsprogramma notepad++, dat zogenaamde reguliere expressie en macros ondersteunt. 

De gedachte achter deze aanpak is, dat een index niets meer of minder is dan een verzameling koppels - ter onderscheiding met vet en cursief aangegeven - "KEY en VALUE". Met een zoekstring die is opgebouwd met reguliere expressies, zoek je alle (index)-key-value-koppels. In de - eveneens met reguliere expressies opgebouwde - zoekstring vul je dan de values in in de overeenkomende Ged-keys. Elke index zet je zo om in een ged-file, die je in je database (voor mij Gramps) importeert. 

Bij voorbeeld: de zoekstring voor de naam van de bruidegom in een huwelijksakte druk je uit met de reguliere expressie: 

Bruidegom\R

(?<BRMNM>

(?<BRMGVN>([A-Z][a-z]+\x20)+)

(?<BRMSFX>van der\x20|van de\x20|van\x20|(?:))

(?<BRMSRN>[A-Z][a-z]+)

)\R

De overeenkomende vervangstring is: 

0 @I03@ INDI
1 NAME $+{BRMGVN}/$+{BRMSFX}$+{BRMSRN}/
2 GIVN $+{BRMGVN}
2 SPFX $+{BRDSFX}
2 SURN $+{BRMSRN}

Merk op, dat de volgende gegevens vanzelfsprekend zijn: de bruidegom is een man, in de index komt hij in twee gezinnen voor, het gezin, dat hij met de bruid gaat voren en het gezin van zijn ouders. In een ged-file is de key bruidegom dus impliciet aangegeven door de gezinsstructuren op te geven. 
1 SEX M
1 FAMC @F02@
1 FAMS @F01@

Mijn werkwijze en dus het voorlopige toepassingsgebied is het volgende. Ik zoek in wiewaswie een index op; click op de knop AFDRUKKEN, waardoor in een nieuwe webpagina de index wordt geopend; de tekst bestaat uit regels, die afwissselend een key en een value bevatten; daarna wordt met copy/paste de index in een nieuw leeg bestand van notepad++ geplaatst waarna de search/replace plaatsvindt. Hierna word de geconverteerde tekst als plattetekstfile met achtervoegsel .ged opgeslagen; deze gedfile wordt vervolgens geïmporteerd in mij  database. 

In Gramps werkt deze import goed,omdat je heel gemakkelijk twee incidenties van één persoon kunt samenvoegen.

Voorts is deze aanpak gemakkelijk uit te breiden. Heb je een index waarin de KEY en VALUE als volgt op dezelfde regel staan: KEY: VALUE, dan bouw je een alternatief einde in. "\R" wordt "\R|: ". Mochten er nog andere veldscheiders zijn, dan voeg je die op dezelfde wijze toe. Als er in bepaalde index een nog niet eerder voorgekomen KEY/VALUE combinatie voorkomt, dan voeg je die ook gewoon toe aan de zoekstring. Als een andere database, zoals Aldfaer bij voorbeeld, een ander gebruik van de Ged-conventies nodig heeft, dan zijn die redelijk eenvoudig aan te passen. 

Qua inspanning het volgende: het aanleren en begrijpen van reguliere expressies kost wel enige moeite (eerder dagen dan uren). De conversie van een geboorteakte heeft me ook enkele dagen gekost. Maar een huwelijksakte kon op basis van de opgedane ervaring in nog geen vier uur worden opgesteld.

Notepad++ is open source, zodat een hulpfunctie voor de ontwikkelaars niet altijd hoogste prioriteit heeft. Bij een foutmelding bij iets wat je nog niet begrijpt of iets wat niet doet wat je verwacht, zoek je je soms het schompus. 

Waarom dit hele verhaal op dit forum? Ik ga voorlopig door. Misschien wordt het nog ooit acceptabel publiceerbaar. Ik zou het echter plezierig vinden als ik een sparring partner zou kunnen vinden. Iemand belangstelling? 

Maashoeven - 24 jul 2017 - 16:58







Plaats een reactie

Om reacties (en nieuwe onderwerpen) te plaatsen op het Stamboom Forum dient u eerst in te loggen! Nog geen lid? Registratie is gratis en snel!


Inloggen Registreer nu