03 september 2013

GEDCOM bestanden die niet aan de GEDCOM standaard voldoen mogen de naam GEDCOM niet dragen!

imageAls we één liter melk kopen verwachten we één liter melk. Er zijn immers duidelijke afspraken gemaakt over wat één liter is. Het is een standaard die goed gedocumenteerd is. Zo weet enerzijds een producent hoeveel er in het pak moet en anderzijds weet de klant wat er in het pak zit. Gaat u naar het buitenland, dan is één liter nog steeds dezelfde hoeveelheid. Er zijn instrumenten die we kunnen gebruiken om het volume van één liter te meten. Zit er in een liter pak melk minder dan één liter dan protesteren we en geven we de leverancier op de kop.

Als we genealogische gegevens naar een GEDCOM bestand exporteren verwachten we dat bij importeren van het GEDCOM bestand alle gegevens hieruit compleet en juist worden geïmporteerd. Er zijn immers duidelijke afspraken gemaakt over hoe een GEDCOM bestand moet worden samengesteld en gelezen. Zo weet een programmeur die een GEDCOM export functie maakt precies hetzelfde als een programmeur die een GEDCOM import functie maakt. Krijg je een GEDCOM bestand van een buitenlandse kennis of website, dan praten we nog steeds over dezelfde GEDCOM afspraken. Er zijn tools die valideren of GEDCOM bestanden aan de GEDCOM standaard voldoen. Raken we tijdens een GEDCOM export/import gegevens kwijt, dan protesteren we vaak niet, we geven hoogstens de GEDCOM standaard de schuld als zijnde niet geschikt.

Ziet u de inconsistentie? Dat is niet alleen raar, het is verkeerd!

Niet voldoen aan de GEDCOM standaard heeft informatieverlies tot gevolg

Gebruikers van stamboomprogramma's (en -websites) moeten dan ook eisen van hun softwareproducent dat, als hun software zegt een GEDCOM bestand te kunnen schrijven, dit GEDCOM bestand volgens de GEDCOM standaard wordt weggeschreven. Immers, als een producent van GEDCOM niet volgens de standaard werkt dan is het vrij zeker dat als u dit bestand inleest in een ander stamboomprogramma (of -website) er gegevens verloren gaan! Als er niet aan de GEDCOM standaard wordt voldaan dan is de claim door een product dat GEDCOM export/import mogelijk is bedrieglijk.

Mijn stelling: GEDCOM bestanden die niet aan de GEDCOM standaard voldoen mogen de naam GEDCOM niet dragen!

Om gegevensverlies tegen te gaan zouden stamboomprogramma's met incomplete/incorrecte GEDCOM exports eigenlijk deze functie moeten verwijderen. Maar een goed stamboomprogramma dient natuurlijk wel een GEDCOM export (en import) functie te hebben, anders kunt u nooit meer ergens anders met uw genealogische gegevens aan de slag en dat wilt u ook niet. Ontwikkelaars moeten dus aangespoord worden om de GEDCOM standaard goed te verwerken in programmatuur en hierover duidelijk te communiceren.

Ontwikkelaars die vinden dat de GEDCOM standaard niet goed (genoeg) is: ondersteun het dan niet, dat is vele malen beter voor gebruikers dan het gebrekkig te ondersteunen en dus valse verwachtingen te scheppen over uitwisselbaarheid. Worden bepaalde GEDCOM constructies niet ondersteund meld dit dat. Wordt er tijdens de import ongeldige GEDCOM aangetroffen, meld dit aan de gebruiker. Ontwikkelaars die uitbreidingen hebben gedefinieerd (wat op zich mag binnen GEDCOM) dienen dit goed te documenteren en te communiceren, anders zullen andere programma's deze uitbreidingen niet kunnen inlezen en is er dus weer sprake van informatieverlies!

Een voorbeeld

Stel u heeft een overlijdensakte gevonden en voegt dit in uw stamboomprogramma toe. De gegevens worden geëxporteerd naar GEDCOM en de betreffende bron ziet er in GEDCOM formaat als volgt uit:

…..
0 @S23@ SOUR
1 TITL Overlijden Hendrika Jägers
2 TYPE WieWasWie
3 REF 21

1 REFN WIE30422548
2 TYPE WieWasWie
2 NOTE Archiefnaam: Het Utrechts Archief
2 NOTE Archief: 1221-1
2 NOTE Deel/Akte: 240
2 NOTE Inventarisnr.: 1992
2 NOTE Bron type: BS Overlijden

…..

In bovenstaand stuk GEDCOM zijn de rode delen niet volgens de GEDCOM standaard. Het is dan ook vrij zeker dat als u het inleest in een ander stamprogramma (of -website), de rode delen verloren gaan. In bovenstaand voorbeeld schort het overigens niet alleen aan de structuur (syntax) maar ook aan de inhoud (semantiek).

image

Wees zuinig op uw genealogische gegevens: eis dat geproduceerde GEDCOM bestanden aan de GEDCOM standaard voldoen, eis dat GEDCOM bestanden die aan de GEDCOM standaard voldoen correct en compleet worden ingelezen.

Genealogische organisaties die programma's maken, reviewen of aanbevelen dienen aan te geven of er aan de GEDCOM standaard wordt voldaan. Geven zij dit inzicht niet, dan berokkenen zijn hun leden/gebruikers schade toe! Het betekent immers dat de met veel moeite verzamelde en in het stamboomprogramma ingevulde gegevens niet compleet en correct naar een ander stamboomprogramma (of -website) kunnen worden overgebracht.

Controle op naleven van de GEDCOM standaard

Voor het liter pak melk zijn er instituten die toezien dat producten de juiste hoeveelheden leveren van de juiste kwaliteit. Er zijn helaas geen instituten die het voldoen aan de GEDCOM standaard controleren en dus stamboomprogramma's kunnen 'certificeren'. Hier ligt een mooie taak voor genealogische organisaties zoals bijvoorbeeld HCC!genealogie, NGV of CBG.

Of uw stamboomprogramma (of -website) een correct GEDCOM bestand exporteert kunt u voor een deel ook zelf controleren: door het geëxporteerde GEDCOM bestand aan te bieden aan de website GED-inline. Worden er fouten gerapporteerd door GED-inline ten aanzien van het GEDCOM bestand: maak daar melding van naar de producent van het stamboomprogramma en meld het op dit of uw eigen blog of op een stamboom forum.

Of het GEDCOM bestand compleet (dus of al uw gegevens er in zitten) is kan deze tool u niet vertellen. Ook weet u nog niet of een valide GEDCOM bestand goed wordt ingelezen door uw stamboomprogramma (of –website). Als u iets tegenkomt waaruit blijkt dat er niet aan de GEDCOM standaard wordt voldaan: meld het dan, blog erover, protesteer.

Bescherm de genealogische gegevens!