Onder de motorkap van de Gouda Tijdmachine: Omeka S

Onder de motorkap van de Gouda Tijdmachine: Omeka S

24 november 2021 1
Bij de bouw van een tijdmachine speelt digitalisering een grote rol. Diverse archiefbronnen worden door vrijwilligers getranscribeerd, historische kaarten gegeorefereerd en percelen en panden via GIS-applicaties ingetekend. Idealiter wordt dit alles aan elkaar gekoppeld en ook gekoppeld aan externe bronnen. Om deze linked data te beheren is de keuze gevallen op Omeka S.

“Omeka S is a next-generation web publishing platform for institutions interested in connecting digital cultural heritage collections with other resources online.”

https://omeka.org/s/

Omeka S is een collectiebeheersysteem (CBS) waarbij de S in Omeka S staat voor semantisch. Het is een web gebaseerd, open source product en kent een rijk aanbod van extra modules. Dit artikel gaat dieper in op hoe Omeka S, via publiekskant en een beheerderskant achter een login, wordt ingezet bij de Gouda Tijdmachine.

Vastleggen van betekenis

Als beheerder kun je binnen Omeka S vocabularies toevoegen, denk aan Dublin Core, Person Name Vocabulary, WGS84 Geo Positioning, Histograph en Schema.org. Je kunt hierbij een URL opgeven of een vocabulary bestand uploaden (lees bijvoorbeeld hier wat de URL is van de schema.org vocabulary). Deze vocabularies bevatten de classes en properties die gebruikt kunnen worden bij het definiëren van de “dingen” die in het CBS vastgelegd gaan worden.

Vocabularies in Omeka S

Deze definities leg je vast in resource templates. Simpel gezegd: je specificeert welke eigenschappen het “ding” (in Omeka S een Item genoemd) gaan beschrijven, deze eigenschappen komen uit de vocabularies. De betekenis van de eigenschappen (de semantiek) wordt door gebruik van deze vocabularies betekenisvol vastgelegd. Voor de Gouda Tijdmachine zijn er resource templates gedefinieerd voor onder andere een Afbeelding, Dataset, Pand, Persoon, Perceel, Straat, Scan, Volkstelling en Wijk. Voor enkele classes en properties zijn er specifieke Gouda Tijdmachine definities gemaakt, maar voor de meerderheid is er geput uit de bestaande vocabularies zoals schema.org.

Resource templates in Omeka S

De definitie van een property bestaat onder meer uit een label en een data type. De definitie wordt gebruikt voor de invoerschermen, een alternatief label kan hierbij helpen qua gebruikersvriendelijkheid. Daarnaast kun je aangeven of een property verplicht een waarde moet hebben.

Resource template in Omeka S

Items beschrijven in het CBS

Op basis van een resource template kunnen er Items toegevoegd worden. Dit kan handmatig of via het importeren van CSV bestanden (waarbij je in de import een mapping definieert van kolommen naar properties). De invoer kan hierbij een literal zijn (=tekst/string), een URI (een unieke identificatie plus een label), een timestamp, een geometry of een andere Item in Omeka S. Door een Item te koppelen aan een Item (dus een “ding” binnen Omeka S) of een URI (een “ding” ergens anders op Internet) worden er koppelingen gelegd. Hallo linked data!

Edit Item in Omeka S (with link to Items and linking via URIs)

Er is – geïnspireerd door Adamlink – begonnen met het aanleggen van referentielijsten, voor onder andere Straten, Wijken, Percelen en Panden. Andere bronnen, zoals bijvoorbeeld de index op het volkstellingregister van 1830, kan dan aan deze referentiedata gekoppeld worden. Zo wordt bijvoorbeeld een “regel” uit de volkstelling aan een Straat, Wijk en Persoon gekoppeld (andere Items in het CBS) én aan een extern gedefinieerd beroep en gemeente.

Een Pand heeft een bepaald adres en staat op een bepaald perceel, allemaal links die gelegd kunnen worden. Straten staan ook in Wikidata en de BAG, dus ook daar kan mee gekoppeld worden. Deels kan dit alles geautomatiseerd, maar een deel van de koppelingen zal door vrijwilligers gelegd moeten worden. Een look-up voorziening in externe bronnen wordt hierbij ook ondersteund via de Value Suggest module van Omeka S (hiervan is ook een variant die het NDE Termennetwerk gebruikt!).

Naast tekst, is er ook ruimte voor afbeeldingen en geografische informatie. De presentatie van dergelijke informatie ziet er goed uit. Wanneer er bijvoorbeeld een stuk Well-known text representation of geometry (WKT) tekst vanuit een geoJSON uit QGis wordt ingevoerd, wordt deze – door standaarden – als een lijn op een kaart getekend, of een gebied, of een omtrek. Standaard wordt er een OpenStreetMap kaart als ondergrond gebruikt, maar we richten ons met de Gouda Tijdmachine toch meer op voorgaande eeuwen.

Show Item in Omeka S (with geometric view on georeferences map)

Omeka S maakt het ook mogelijk om afbeeldingen toe te voegen. Met de installatie van enkele extra Omeka S modules krijg je de beschikking over een Image Server en IIIF Server. Hierdoor worden de afbeeldingen op een gestandaardiseerde wijze weer ontsloten, waardoor je bijvoorbeeld aan de publiekskant de Universal Viewer module kunt gebruiken waarmee je eenvoudig inzoomt op een afbeelding of door een serie afbeeldingen bladert.

Intermezzo: georefereren via Allmaps.org

De historische kaarten kunnen gegeorefereerd worden waardoor je ze kunt “projecteren” op hedendaagse kaart (met coördinatensysteem WGS84). Via Allmaps.org (een set tools door Bert Spaan) kunnen kaarten gegeorefereerd worden. Je geeft het “IIIF-adres” van een historische kaart op, geeft aan waar bepaalde punten op de historische kaart op de hedendaagse staan en het resultaat kun je aan een Tile server geven. Deze maakt van de kaart kleine stukjes zodat je, net als bij de eerder genoemde afbeeldingen kunt inzoomen. Heerlijk die standaarden! Door de PHP-code van Datatype Geometry module van Omeka S iets aan te passen, wordt er nu in het CBS een historische kaart als ondergrond getoond bij geometrieën.

Duurzaam identificeren van items

Elk Item in Omeka S heeft één of twee identifiers. Automatisch wordt er een persistente Archival Resource Key (ARK) identifier aangemaakt. Zo’n identifier ziet er uit als ark:/60537/bKoz8H. Hierbij is 60537 de organisatie identifier van de Gouda Tijdmachine en specificeert bMSXW9 het Item. Via een ARK resolver kun je het Item dan benaderen, zo heb je dus automatisch een permalink als https://n2t.net/ark:/60537/bKoz8H (naast een deel techniek bestaat duurzame toegankelijkheid ook uit een stuk organisatie!).

Er wordt ook een cool-URI variant toegevoegd, bijv. de identifier van de Tuinstraat in Gouda is https://www.goudatijdmachine.nl/data/referentie/document/straat/tuinstraat (de permalink bracht je ook naar de straat). Genoemde functies zijn beschikbaar na installatie van de CleanUrl en Ark modules in Omeka S.

Linked open data

Alle data wordt out-of-the-box ook als JSON-LD beschikbaar gemaakt (dit is overigens de enige RDF serialisatie). Via een API (zie bijv. de Tuinstraat in JSON-LD) en “onder water” in de publieke HTML pagina’s. Met het semantisch vast leggen van data, het identificeren van Items via een URI en leggen van links en publiceren in JSON-LD heb je dus 5-sterren linked data!

De Gouda Tijdmachine gaat open te werk: bestanden van de vrijwilligers worden als open data beschikbaar gesteld. Door dit op de juiste wijze te beschrijven worden deze datasets ook vindbaar via het NDE Datasetregister. Een en ander is beschreven in Managing datasets in Omeka S.

Alhoewel Omeka S een API heeft om de data te doorzoeken en op te vragen, heeft Omeka S geen SPARQL endpoint. Omdat SPARQL je de meeste rijke query-taal geeft om linked data te bevragen wordt de JSON-LD vanuit Omeka S geharvest (via de API) en geïmporteerd in GraphDB, een triplestore met SPARQL-endpoint. Dit is een toevoeging waardoor de linked open data van de Gouda Tijdmachine nog bruikbaarder wordt.

Publiekskant Omeka S

De publiekskant van Omeka S is vanuit Omeka S goed in te richten, qua look-and-feel, doorzoekbaarheid en weergave van data. Je krijgt er ook een mini-CMS bij, zodat de mogelijkheden voor weergave ver reiken. Zo zijn nu de onderdelen Afbeeldingen, Referentiedata (voor Percelen, Panden, Straten, Wijken, Personen en Organisatie worden getoond), Linked data en Datasets op de website ingericht.

Er is bij de Gouda Tijdmachine voor gekozen om voor de website WordPress in te zetten als content management system (CMS). Door de API van Omeka S en de Image, IIIF en Tile Server kan content die beheerd wordt via Omeka S ook binnen het CMS zichtbaar gemaakt worden.

Solide basis en eerste stap

Omeka S vormt de basis van de Gouda Tijdmachine. Voor het opslaan van de data op basis van (semantische) standaarden en ook voor het ontsluiten van de open data. De infrastructuur is op dit moment nog in ontwikkeling. Zo moeten diverse resource templates nog uitgebreid worden, met name het aspect tijd moet nog beter gemodelleerd worden. Terwijl vrijwilligers doorgaan met het creëren van data op basis van archiefbronnen (die ook netjes in het CBS moet komen, uiteraard gekoppeld), moet er ook nagedacht worden over de volgende stap: Hoe geef je deze data op een aantrekkelijk manier weer? Welke vragen kunnen er op basis van de linked data beantwoord worden? Hoe ziet een Tijdmachine eruit? Is het een app, een 3D-reconstructie, …? Hier wordt ook zeker aangehaakt bij andere tijdmachines in Nederland en Europa.

Wil je meehelpen – aan de techniek & LOD-kant – met de Gouda Tijdmachine? Neem contact met ons op.

Wil je aan de slag met de linked open data? Dat kan, we zijn geïnteresseerd in je ervaringen en resultaten die we graag in de etalage zetten, bijvoorbeeld in ons Lab.

Ook horen we graag je reactie hieronder over onze keuze voor en inrichting van Omeka S!

Eén reactie

  1. Reem schreef:

    Bedankt voor het delen. Wat goed om te lezen dat er al zoveel goed werkt en mogelijk is!. Wij zijn bij Tresoar ook bezig met het testen Omeka-S. Waarschijnlijk wordt het binnenkort voor een project ingezet en kunnen we van daaruit verder.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze site wordt beschermd door reCAPTCHA en het Google privacybeleid en servicevoorwaarden zijn van toepassing.