Datarepositories kiezen en gebruiken

Versioning van datasets in repositories: hoe update je data zonder de DOI te verliezen

Lieke de Vries Lieke de Vries
· · 6 min leestijd

Stel je voor: je hebt een onderzoek gepubliceerd, je dataset staat netjes in een repository, en alles heeft een DOI — die permanente link die ervoor zorgt dat anderen je data altijd kunnen vinden en citeren.

Inhoudsopgave
  1. Waarom versioning van datasets zo belangrijk is
  2. Hoe versioning werkt in data repositories
  3. Best practices voor dataset versioning
  4. Tools en technologieën voor versioning
  5. Veelgemaakte fouten bij dataset versioning
  6. Conclusie

Tot je data moet worden bijgewerkt. Een fout gevonden, extra metingen toegevoegd, een kolom hernoemd. Geen probleem, denk je. Maar hoeveel van je onderzoekservaring heb je al gehad met het updaten van data zonder de DOI kwijt te raken?

Want als die DOI breekt, is al die moeite om je data vindbaar en citeerbaar te maken voor niets geweest. Gelukkig hoeft het geen hoofdpijn te zijn. In dit artikel lees je hoe versioning van datasets werkt, waarom het zo belangrijk is, en hoe je het aanpakt zonder je DOI te verliezen.

Waarom versioning van datasets zo belangrijk is

Onderzoeksdata verandert. Dat is gewoon zo.

Misschien ontdek je na publicatie een fout in je dataset. Misschien voeg je later extra data toe.

Of je heranalyseert bestaande metingen met een betere methode. In al die gevallen wil je de oorspronkelijke dataset bewaren, maar ook een bijgewerkte versie beschikbaar stellen. Maar hier zit het probleem: als je dataset een DOI heeft, is die DOI gekoppeld aan een specifieke versie van je data.

Als je de dataset simpelweg overschrijft, kan de DOI breken of naar de verkeerde versie verwijzen. En dat is precies wat je niet wilt. De oplossing? Versioning. Het systematisch bijhouden van verschillende versies van je dataset, waarbij elke versie traceerbaar blijft en de DOI intact blijft.

Hoe versioning werkt in data repositories

De meeste moderne data repositories bieden ingebouwde ondersteuning voor versioning. Dat betekent dat je meerdere versies van een dataset kunt bewaren, elk met eigen metadata, maar gelinkt aan elkaar.

De DOI blijft geldig voor de oorspronkelijke versie, en nieuwe versies krijgen hun eigen identifier of worden gelinkt aan de bestaande DOI. Populaire repositories zoals Zenodo, Dryad en Figshare ondersteunen versioning op verschillende manieren. Zenodo biedt bijvoorbeeld de mogelijkheid om een "versioned archive" aan te maken, waarbij alle versies van een dataset onder één DOI worden beheerd. De DOI verwijst dan standaard naar de nieuwste versie, maar eerdere versies blijven toegankelijk en traceerbaar.

DOI-behoud bij versioning

De sleutel tot succesvol versioning is het behoud van de DOI. Hier zijn de belangrijkste principes:

  • De oorspronkelijke DOI blijft altijd geldig. Die is gekoppeld aan de eerste versie van je dataset en mag niet veranderen.
  • Nieuwe versies krijgen een eigen identifier. Sommige repositories geven elke versie een unieke DOI, terwijl andere alle versies onder één overkoepelende DOI beheren.
  • De link tussen versies is traceerbaar. Gebruikers moeten altijd kunnen zien welke versies er zijn en hoe ze aan elkaar gerelateerd zijn.

Verschillende aanpakken voor versioning

Er zijn verschillende manieren om datasets te versioneren. De meest voorkomende zijn:

1. Nieuwe deposit per versie
Bij elke update maak je een nieuwe deposit aan in de repository. De oorspronkelijke deposit behoudt zijn DOI, en de nieuwe deposit krijgt een eigen DOI.

Beide deposits worden gelinkt via metadata. Dit is de meest eenvoudige aanpak, maar kan leiden tot een groot aantal aparte deposits.

2. Versioned archive
Sommige repositories, zoals Zenodo, bieden een "versioned archive" functionaliteit. Hierbij worden alle versies van een dataset beheerd binnen één archief.

De DOI verwijst naar de nieuwste versie, maar eerdere versies zijn toegankelijk via dezelfde pagina.

Dit is efficiënter en overzichtelijker. 3.

Semantic versioning
Voor meer geavanceerde gebruikers is semantic versioning een optie. Hierbij gebruik je een versienummering systeem (bijvoorbeeld 1.0, 1.1, 2.0) om aan te geven hoe significant de wijzigingen zijn.

Kleine correcties krijgen een patch versie (1.0.1), grotere updates een minor versie (1.1), en fundamentele wijzigingen een major versie (2.0).

Best practices voor dataset versioning

Om versioning goed te laten werken, zijn een aantal best practices essentieel: Houd bij elke nieuwe versie een changelog bij.

Documenteer je wijzigingen

Leg uit wat er is veranderd, waarom, en wat de impact is op eerdere analyses. Dit maakt het voor gebruikers — en voor jezelf in de toekomst — veel gemakkelijker om te begrijpen wat er is gebeurd. Geef elke versie een duidelijk versienummer en datum, en bekijk via onze repository statistieken de impact van je dataset.

Gebruik duidelijke versienummers

Dit helpt gebruikers om snel de juiste versie te vinden en te begrijpen welke versie zij gebruiken.

Zorg voor consistente metadata

Elke versie van je dataset moet consistente metadata hebben. Denk aan titel, auteur(s), beschrijving, en licentie. Pas de metadata aan waar nodig, maar houd de kerninformatie consistent. Voordat je begint met het versionen van belangrijke datasets, test je strategie eerst met een kleine dataset. Controleer of de DOI's correct blijken, of de links werken, en of alle versies toegankelijk zijn.

Test je versioning strategie

Tools en technologieën voor versioning

Naast de ingebouwde functionaliteit van repositories zijn er andere tools die kunnen helpen bij versioning, of bij het koppelen van je dataset aan een artikel:

  • Git en GitHub/GitLab: Hoewel vooral bedoeld voor code, kunnen Git en platforms zoals GitHub of GitLab ook worden gebruikt voor versioning van datasets, vooral voor kleinere bestanden.
  • DVC (Data Version Control): Een open-source tool specifiek ontworpen voor versioning van grote datasets en machine learning modellen.
  • Zenodo: Een open access repository die uitstekende versioning ondersteunt en automatisch DOIs toekent.
  • Dryad: Een repository gericht op wetenschappelijke data, met ondersteuning voor versioning en DOI-behoud.
  • Figshare: Een platform voor het delen van onderzoeksdata, ook met versioning mogelijkheden.

Veelgemaakte fouten bij dataset versioning

Onderzoekers maken regelmatig dezelfde fouten bij versioning. Hier zijn de meest voorkomende:

Overschrijven van de originele dataset. Dit is de grootste fout. Als je de originele dataset overschrijft, kan de DOI breken en gaat de traceerbaarheid verloren. Geen changelog bijhouden. Zonder duidelijke documentatie van wijzigingen is het voor gebruikers onmogelijk te begrijpen wat er is veranderd.

Inconsistente versienummering. Willekeurig versienummeren zorgt voor verwarring. Houd je aan een consistent systeem.

Vergeten om nieuwe versies te linken. Zorg ervoor dat nieuwe versies expliciet gelinkt zijn aan de oorspronkelijke dataset en DOI.

Conclusie

Versioning van datasets is geen optionele extra — het is een fundamenteel onderdeel van goed data management. Door het systematisch bijhouden van versies, het behoud van DOIs, en het documenteren van wijzigingen, zorg je ervoor dat je data betrouwbaar, traceerbaar en reproduceerbaar blijft.

De meeste moderne repositories maken het makkelijker dan ooit om versioning correct te implementeren. Het kost wat extra aandacht, maar de baten — in termen van transparantie, reproduceerbaarheid en wetenschappelijke integriteit — zijn het meer dan waard. Dus de volgende keer dat je dataset een update nodig heeft, of als je besluit je data naar een nieuwe repository te migreren, weet je precies wat te doen: versioneer slim, behoud je DOI, en houd je wijzigingen goed bij. Je toekomstige zelf — en je collega's — zullen je dankbaar zijn.


Lieke de Vries
Lieke de Vries
Expert in Open Science principes

Lieke adviseert onderzoekers over het publiceren van FAIR data volgens de nieuwste normen.

Meer over Datarepositories kiezen en gebruiken

Bekijk alle 38 artikelen in deze categorie.

Naar categorie →
Lees volgende
Wat is een datarepository en waarom mag jij er niet zomaar één kiezen
Lees verder →