Synchronisatie van metadata met FME

Blog

Metadata en data zijn berucht om snel te verouderen. De buitenwereld verandert namelijk snel om ons heen en het kost enige moeite om de gegevens op tijd te actualiseren.

Dit heeft verschillende oorzaken: leveringen die niet continu zijn, data/informatiemodellen die wijzigen, lage prioritering en allicht een tekort aan personeel die de werkzaamheden kunnen uitvoeren. Daarnaast wordt het verwerken van metadata als zowel belangrijk als “saai” gezien: de werkzaamheden horen er nu eenmaal bij om gegevens vindbaar te houden, maar niet iedereen is even gemotiveerd of heeft de discipline om deze gegevens ook secuur en op tijd te verwerken.

Bij een opdracht voor de Provincie Flevoland stond de implementatie van werkprocessen centraal om het hardnekkige probleem van verouderde metadata te voorkomen. Door in te zetten op een goed beheerproces, waarbij gebruik gemaakt werd van GeoNetwork als datacatalogus, wordt getracht om met minimale inspanningen de metadata actueel te houden.

Synchronisatie van metadata voor Geo data met FME

Gedeelde leed is halve leed

Afhankelijk van de organisatiegrootte kunnen werkzaamheden omtrent metadatabeheer verdeeld en belegd worden. Hiermee wordt “het leed” verdeeld en blijft er meer tijd over voor andere werkzaamheden. 

Van nature is samenwerking in metadatabeheer logisch: er is zowel kennis nodig van geodata en haar standaarden als inhoudelijke kennis over met name beleid of beheer. Deze kennis is niet altijd bij dezelfde persoon aanwezig en dat hoeft natuurlijk ook niet: om een zekere hoogte te bereiken in kennisniveau is het juist vaak handig om mensen te specialiseren in de materie. Samenwerking wordt daarbij nog belangrijker om als organisatie verder te komen.

Teksten als samenvattingen of passende titels zullen voornamelijk voortkomen uit de pen van de beleidsmedewerker, terwijl terugkerende elementen, zoals de naam van de databronhouder of het al dan niet open karakter van de data veelal ingevuld worden door technische geo-medewerkers of beheerders. Via e-mail, of door het inrichten van een workflow, wordt de informatie overgedragen naar de beheerders van de metadata.

Om de werkzaamheden prettiger te maken en de werkzaamheden niet te veel te fragmenteren kan er gekozen worden om bijvoorbeeld iedere maand een “metadatamiddag” te organiseren. Een gezellige middag waarbij even exclusief gewerkt wordt, liefst met een versnapering, aan het registreren van metadata records en het beheer daarvan. Technische vragen kunnen daarmee direct beantwoord worden door collega’s en iedereen wordt even attent gemaakt op de werkzaamheden die er liggen.

 

Het probleem van synchronisatie van metadata met data

Naast de organisatie in metadatabeheer is het goed om bewust te zijn van het feit dat het verwerkings- en opslagproces van metadata en die van data niet van nature synchroon met elkaar lopen: metadata wordt volgens standaarden in XML opgeslagen terwijl data veelal in (geo)databases apart worden opgeslagen. Raar maar waar. (Ik vraag me daarbij af of daar geen standaard of standaardaanpassing voor zou moeten komen?)

Het risico bestaat daarbij dat metadata en data qua inhoud “uit elkaar lopen”. Data is bijvoorbeeld wel aanwezig, maar niet vindbaar (voor medewerkers anders dan beheerders) en daarmee onzichtbaar. In een ander voorbeeld is de metadata wel aanwezig, maar ondertussen verouderd ten opzichte van een informatieproduct of ontsloten databron. 

Gelukkig kan een simpel maar effectief beheersysteem synchronisatieproblemen voorkomen. De volgende alinea’s wijden hierover, en over andere problemen, uit.

 

Single source of truth en metadata record management

Eén plek voor “de waarheid” en één plek om beheer van metadata records uit te voeren. Oftewel: wie heeft de waarheid in pacht en waar is deze te vinden? Niemand is erbij gebaat als informatie onvindbaar is. Voor datagedragen organisaties is het funest om het huishoudboekje op datagebied in orde te hebben.

Om effectief te zijn is het daarbij van belang om een éénduidige vocabulaire (lees: Thesaurus) en éénduidige beschrijving van data aan te houden. Dit werkt wel zo gemakkelijk bij het uitwisselen van gegevens. Gebruik maken van (Internationale) standaarden hoort daarbij. (Dit wordt al veelal gedaan in de geo-sector.)

Andere zienswijzen over de waarheid kunnen ervoor zorgen dat er binnen de organisatie, of beter gezegd, tussen personen, andere waarheden kunnen bestaan. Er valt niet aan te onderkomen dat er discussies ontstaan. Aan de ene kant kan tot één werkende waarheid gekomen worden door simpelweg gedachten uit te wisselen. Aan de andere kant zal, net zoals dat gebeurt met bijvoorbeeld beleid en beheer, eigenaarschap belegd moeten zijn om zo een deel van de discussies te voorkomen.

Vanuit technisch perspectief is het relatief makkelijk om een single source of truth en een single source of metadata record management aan te houden. De gegevens worden op een vaste plek, zoals bijvoorbeeld in een centrale database, opgeslagen. Technische beheerders zijn daarbij aangewezen om de metadata records volgens een protocol te registreren en te beheren. Duidelijke instructies zijn hierbij essentieel zodat er niet voortdurend afstemming tussen beheerders nodig is.

Automatisering van een vaststaand werkproces kan de single source of truth deels bijhouden en controleren. Daarnaast kan hiermee een deel van het werkproces uit handen worden genomen. Bij de Provincie Flevoland is er voor gekozen om een interne node van GeoNetwork aan te houden als single source of truth en tegelijkertijd de metadata te registreren en te beheren. Door gebruik te maken van harvesting wordt de (open) data gedeeld met andere datacatalogussen zodat ook daar, na verversing, dezelfde versies van de waarheid worden aangehouden.

 

‘Leuker kunnen we het niet maken, wel makkelijker.’ moet Jochgem hebben gedacht bij het bedenken en implementeren van het automatiseren van het wegschrijven van metadata. Dit scheelt een hoop werk en zorgt ervoor dat wij meer tijd hebben voor het zetten van de laatste puntjes op de i op het gebied van metadatabeheer’

Het automatisch aanmaken van een metadata record na opslag van databronnen

Metadata beschrijft de data van een databron of een informatieproduct. Databronnen worden normaliter geborgen in een geo-informatievoorziening voor verdere verwerking of analyse. Het verschil tussen een databron en een informatieproduct is dat de laatste een afgeleide is van een of meerdere databronnen. Denk aan een zogenaamde “View” waarbij de resultaten van een bevraging aan een geodatabase ontsloten worden in bijvoorbeeld een Viewer-applicatie om de gegevens te kunnen bekijken. Of denk aan een samengestelde kaart waaraan meerdere databronnen ten grondslag liggen. De Provincie heeft ten eerste ten doel gesteld om het automatisch aanmaken van metadata van databronnen mogelijk te maken. Uitbreidingen en verbeteringen zijn dan achteraf nog mogelijk.

Het aanmaken van het metadata record gebeurt hier automatisch direct na het wegschrijven van een databron. Dit gebeurt aan de hand van een metadata XML-template bestand. Daarna zal de desbetreffende metadata beheerder de gegevens nog verder moeten verrijken of corrigeren om zo het metadata record te complementeren.

Voor de Provincie Flevoland is een begin gemaakt voor een beheersysteem. Hierbij wordt metadata automatisch weggeschreven direct na het wegschrijven van de databronnen naar de geodatabase. Hierbij wordt gebruik gemaakt van:

  • FME Desktop gebruikt om de gegevens weg te schrijven;
  • een template XML-bestand dat als basis dient om metadata weg te schrijven;
  • FME Desktop om een nieuwe XML-bestand aan te maken;
  • De REST API van GeoNetwork om het metadata record op te nemen in de datacatalogus.

Voor dit proces is enkel FME Desktop nodig en geen FME Server. Processen om gegevens weg te schrijven, een nieuw XML-bestand aan te maken en de metadata te uploaden worden hierbij verbonden door slim gebruik te maken van uitgangspoorten.

Door gebruik te maken van een FeatureWriter is het gemakkelijk om, direct na het wegschrijven van een databron, het volgende proces te starten. Door de uitgangspoort van de FeatureWriter te verbinden met de volgende stap, het aanmaken van een metadata XML-bestand, wordt dit laatste proces direct gestart na het wegschrijven van de databron. Vervolgens kan via een uitgangspoort van de laatste functie met de HTTP-Caller de REST API-aanroep uitgevoerd worden om het metadata record daadwerkelijk op te nemen in de datacatalogus.

Op zich zijn deze stappen ook voor een leek goed te begrijpen. Toch bestaan er enkele aandachtspunten waar rekening mee gehouden moet worden.

Zo zal elke parameter die FME gebruikt om gegevens in het metadata bestand weg te schrijven en die als variabele opgegeven kunnen worden, zoals bijvoorbeeld de titeltekst of de samenvattingtekst van metadata, ook zodanig opgenomen moeten worden in het metadata XML-template bestand.  Dit betekent dat zowel de FME Workspace als het metadata XML-template bestand een wijziging moeten doorgaan. Bij het niet synchroon aanpassen van de een of de ander zullen fouten optreden.

Daarnaast zal niet onderschat moeten worden dat om toegang te krijgen tot GeoNetwork er een systeemaccount  aangemaakt moet worden voor FME. Alleen dan kan de REST API-aanroep goed uitgevoerd worden. Dit betekent in de regel dat er een en ander afgestemd moet worden met systeembeheerders.

Het berekenen en controleren van (overschrijding van) een houdbaarheidsdatum

De REST API-functionaliteit van GeoNetwork kan ook gebruikt worden om te controleren op houdbaarheidsdatum van metadata. Op deze manier wordt er informatie gegeven om inzicht te krijgen welke metadata (binnenkort) geactualiseerd moet gaan worden.

De houdbaarheidsdatum zal daarbij wel eerst berekend moeten worden. Door het moment van publicatie (eventueel automatisch) weg te schrijven en de herzieningsfrequentie, de frequentie waarin de metadata (en allicht de dataset) gecontroleerd dient te worden, is de houdbaarheidsdatum eenvoudig af te leiden.

Door vervolgens de houdbaarheidsdatum te controleren met de datum van “vandaag”, de dag dat het algoritme in uitvoering wordt gebracht, kan vervolgens een verschil in tijd berekend worden. 

Dit kan iedere dag uitgevoerd worden. Voor ieder metadata record. Door de gegevens te ontsluiten in bijvoorbeeld een rapportage of een Dashboard kan het inzicht gevisualiseerd worden.

 

‘Inzicht en overzicht van de metadata ondersteunt enorm bij het verhogen van de kwaliteit van metadata. Zonder is het als zoeken naar een speld in een hooiberg.’

Validatie van metadata

Het hierboven beschreven beheersysteem is niet voltooid. Het ondervangt bijvoorbeeld geen systeemfouten die hun weergave kennen op de metadata. Ook kunnen metadata beheerders nog altijd fouten maken, waar zij bewust danwel onbewust van zijn. Al met al kunnen er fouten insluipen waarmee het aanbieden van correcte en actuele metadata in een datacatalogus belemmerd wordt.

Een datagedreven organisatie doet er goed aan om signalen te registreren over afwijkingen in data en metadata. Het principe is eenvoudig en bestaat al decennia. We zijn immers al jaren bekend dat er signalen worden verzameld over softwareapplicaties en facilitaire zaken. Signalering van afwijkingen in data en metadata gebeurt echter nog te weinig, en is broodnodig om een hogere volwassenheidsstatus te bereiken.

Afhankelijk van de aard van deze fouten kunnen ook automatische controlemechanismen      gebruikt worden om onregelmatigheden te ontdekken. Zo kan er gecontroleerd worden of vereiste velden gevuld zijn of kunnen logische tekststructuren aangehouden en gecontroleerd worden. Door gebruik te maken van een vaste combinatie van tekstkarakters, zoals bijvoorbeeld “Datakwaliteit:[spatie]“, kan geborgen worden dat er altijd een tekst wordt opgenomen over datakwaliteit.

Ook andere informatie over datakwaliteit kan opgenomen worden in metadata. Denk hierbij aan bijvoorbeeld de validatie van vulling van velden, vlakdekkendheid van kaartmateriaal of het gebruik van verouderde domeincodes. Zowel statistische gegevens, zoals het percentage van velden dat gevuld is, als geclassificeerde waarden, zoals “op enkele velden na volledig gevuld”, kunnen daarbij duiding meegegeven over de datakwaliteit in metadata. 

Allicht kan daarmee de informatisering van datakwaliteit, op basis van de huidige standaarden, ook beter onderschreven worden?

Samengevat

In dit artikel hebben we het probleem van synchronisatie tussen data en metadata uitgelicht en hebben we verschillende instrumenten besproken die ingezet kunnen worden om metadata actueel en correct te houden. Zowel richtlijnen over informatie management als het realiseren van automatisering in dataverwerking dragen bij aan een effectief beheersysteem. Een uitlichtend voorbeeld voor de Provincie Flevoland in het opzetten van zo’n beheersysteem is hier uitgebreid beschreven.