Met de Mapping Wizard beschrijf je één concreet erfgoedstuk als JSON-LD-document volgens de OSLO-standaard. Per gegeven — titel, objectnummer, afmeting — bouw je het pad door de standaard en vul je de waarde in; de wizard zet alle velden samen in één geldig document dat je downloadt of kopieert.
Deze handleiding gebruikt doorlopend hetzelfde voorbeeld: Portret van Marguerite van Mons (MSK Gent), het referentiestuk uit de meemoo-kennisbank (basisregistratie als OSLO JSON-LD). Zoek je enkel het pad van een gegeven op, zonder waarden in te vullen? Gebruik dan de mappingtool (handleiding).
1 Maak een record aan
Op de pagina Mapping Wizard maak je eerst een record aan — één record per erfgoedstuk:
- Naam — hoe het record in de lijst heet, bv. Portret van Marguerite van Mons.
- Ontologie — de standaard waarin je werkt, meestal OSLO Cultureel Erfgoed.
- Root klasse — de klasse van het stuk zelf, bv.
MensgemaaktObject. Mag je ook later kiezen. - @id (root IRI) — de permanente URI van het object, bv.
https://mskgent.be/collection/work/data/1979-C. - @context IRIs — de OSLO-contexten staan al ingevuld; normaal laat je die staan.
Deze gegevens vormen de vaste kop van je JSON-LD-document:
{
"@context": [
".../cultureel-erfgoed-object-ap.jsonld",
".../cultureel-erfgoed-event-ap.jsonld"
],
"@id": "https://mskgent.be/collection/work/data/1979-C",
"@type": "MensgemaaktObject",
...
}
Na het aanmaken opent het record meteen in de wizard. Later kom je erbij terug via Openen in de lijst Bestaande mappings; die lijst kan je doorzoeken op naam zodra hij groter wordt.
2 Stap 1 — Kies je entiteit
De wizard werkt in drie stappen — Entiteit, Eigenschappen, Exporteer — die je bovenaan altijd ziet staan. In stap 1 kies je de klasse waar je pad begint, meestal het erfgoedstuk zelf. Heb je bij het record een root klasse gekozen, dan staat die hier al klaar en klik je gewoon op Starten.
3 Stap 2 — Bouw het pad naar je gegeven
Nu klik je van eigenschap naar eigenschap tot je uitkomt op de plaats waar jouw gegeven hoort. Bovenaan groeit de keten mee; met de knop stap terug naast de keten maak je de laatste stap ongedaan, en een klik op een eerdere stap brengt je daar meteen naartoe. Voor de titel is dat één stap:
Voorbeeld:
MensgemaaktObject→titel→TaalString.TaalStringis een eindpunt: hier kan je de waarde invullen en verschijnt de knop Bewaar als veld.
Sommige verwachte types zijn tussenstations met eigen eigenschappen — Dimensie, Identificator. Daar vul je nog niets in; het formulier zegt dan dat je verder moet navigeren, bv. naar Dimensie → waarde → Getal.
Heeft een verwacht type subklassen, dan kies je die uit een keuzelijstje; beweeg over een optie en een kaartje toont welke eigenschappen die keuze oplevert.

4 Sla het klikken over: zoek of kies een recept
Boven de keten staat een zoekveld. Typ waar je gegeven over gaat — voorkeursnaam, titel, schenking — en de wizard stelt volledige paden voor vanaf je startklasse; één klik bouwt de keten voor je op. De knop Recepten ernaast bevat de velden van de basisregistratie als kant-en-klare paden, met voorbeeldwaarden uit werken van de MSK-collectie. Een beheerder kan de recepten en hun voorbeelden aanpassen of nieuwe toevoegen in het beheerpaneel, onder Routeplanner.

Kies je een recept, dan vult de wizard ook meteen Samenvoegen met in met de juiste groep — velden die bij elkaar horen (zoals type, waarde en eenheid van een afmeting) belanden zo vanzelf in hetzelfde blok.
5 Bewaar het veld
Klik op Bewaar als veld en er opent een venster. De naam van het veld leidt de wizard zelf af uit je pad (bv. MensgemaaktObject.titel) — die hoef je niet te typen. Je vult alleen in wat bij het eindpunt van je pad past:
- Waarde — de eigenlijke inhoud, bv. Portret van Marguerite van Mons. Onder het veld staat telkens een concreet voorbeeld.
- Taal — alleen bij een TaalString, bv. nl.
- Datatype-URI (optioneel) — alleen bij een GetypeerdeString, bv. de Wikidata-URI van "inventarisnummer".
- IRI voor … (optioneel) — een
@idvoor een tussenstation, bv. de AAT- of Wikidata-URI van een term. - Samenvoegen met (optioneel) — zie groepen.
Rechts zie je het JSON-LD-fragment live meegroeien terwijl je typt — zo controleer je meteen of je invoer op de juiste plek belandt. Voor de titel:
"MensgemaaktObject.titel": [
{
"@value": "Portret van Marguerite van Mons",
"@language": "nl"
}
]
Een veld dat niet van toepassing is, verschijnt gewoon niet: bij een Getal is er geen taalkeuze. Kies Bewaar veld om in het pad te blijven staan, of Bewaar en volgende om meteen terug bij de startklasse te beginnen voor het volgende gegeven.

Let op: mag een eigenschap maar één keer voorkomen (kardinaliteit
1of0..1) en staat er al een waarde, dan waarschuwt het venster dat bewaren de bestaande waarde vervangt.
6 Velden samenvoegen met een groep
Sommige gegevens horen samen in één blok. De hoogte van het schilderij bestaat uit drie velden — het type ("hoogte"), de waarde (89,5) en de eenheid (cm) — en die moeten in dezelfde Dimensie terechtkomen, niet in drie losse.
Geef die velden bij het bewaren dezelfde naam in Samenvoegen met, bv. hoogte. Het veld stelt bestaande groepsnamen voor terwijl je typt. Het resultaat:
"MensgemaaktObject.dimensie": [
{
"@type": "Dimensie",
"Dimensie.type": {
"@type": "Type",
"skos:prefLabel": { "@value": "hoogte", "@language": "nl" }
},
"Dimensie.waarde": { "@value": 89.5 },
"Dimensie.eenheid": "cm"
}
]
Tip: zonder groepsnaam wordt elk veld een eigen blok. Bedenk dus vooraf welke velden bij elkaar horen: per afmeting één groep ("hoogte", "breedte"), en bijvoorbeeld één groep voor de velden van het objectnummer of de vervaardiging.
7 Gecontroleerde termen en IRI's
Termen uit een thesaurus — de objectnaam, het materiaal, het hoofdmotief — leg je vast met hun voorkeursterm én hun identificatie. Eindigt je pad op zo'n type, dan biedt het bewaarvenster een waarde en taal aan voor skos:prefLabel, en kan je bij het tussenstation de URI van het concept als @id invullen. Voor de objectnaam "schilderij" (AAT-term):
"Classificatie.toegekendType": [
{
"@type": "TypeEntiteit",
"@id": "http://vocab.getty.edu/aat/300033618",
"skos:prefLabel": { "@value": "schilderij", "@language": "nl" }
}
]
De verwijzing naar de skos-vocabulaire wordt automatisch aan het @context van je document toegevoegd zodra je zo'n term gebruikt.
8 Basistypes en doodlopende paden
Elk pad eindigt op een basistype: het gele eindpunt dat bepaalt welke velden het bewaarvenster toont. Dit vragen ze:
- TaalString — tekst mét een taal, bv. de titel: waarde Portret van Marguerite van Mons + taal nl.
- String — enkel een waarde, zonder taal of datatype.
- GetypeerdeString — een waarde plus optioneel een datatype-URI die zegt wát de waarde is, bv. objectnummer 1979-C met de Wikidata-URI van "inventarisnummer".
- DateTime — een datum of tijdstip, bv.
1886-06-01T00:00:00. - URI — een webadres als waarde, bv. een RKD- of Wikidata-link.
- Taalcode — een taal als waarde, bv.
nl. - Type … (
Type Materiaal,Type Entiteit,Type Rol, …) — een term uit een gecontroleerde vocabulaire. Hier verschijnt de + skos:prefLabel-knop en vul je de voorkeursterm met taal in, met optioneel de concept-URI als@id— zie gecontroleerde termen.
Klik je een verwacht type aan dat zelf geen eigenschappen heeft, dan meldt de wizard dat:
String heeft geen eigenschappen binnen OSLO Cultureel Erfgoed. Je kan dit pad zo bewaren, dat levert een object op met enkel een type. Ga anders terug en kies een andere eigenschap.
Dat is de standaard die aangeeft dat je op een eindpunt staat: vul hier de waarde in als dit je bedoelde eindpunt is, en ga anders een stap terug. Hoe klassen, sub- en superklassen en datatypes samenhangen, lees je in de handleiding van de mappingtool.
9 Bekijk je document onderweg
Op een breed scherm staat het document permanent rechts naast je werk; op kleinere schermen open je het met de knop Document, met het aantal bewaarde velden erbij. Bovenaan staat de lijst van objecten, daaronder het volledige JSON-LD-document. Het stuk waar je aan werkt licht op; klik een lijn in de lijst en het document springt naar dat blok.
Met de knop rechtsboven klap je het document uit tot een leesweergave over het hele scherm. Verwijderen kan per object (de vuilbak naast elke lijn) of, bij een samengevoegd blok zoals een afmeting, per los veld: klik het blok aan en de onderdelen klappen open, elk met een eigen vuilbak. Velden aanpassen doe je door ze opnieuw te bewaren.

10 Stap 3 — Exporteer
Klik bovenaan op Exporteer. Je krijgt twee kaarten, elk met een kopieerknop en een download:
- JSON-LD — het volledige document, alle velden samengebracht. Dit is het bestand dat je aan een systeem of collega bezorgt.
- OSLO-patronen — per veld het pad in de notatie van de crosswalk, om in een mappingtabel te plakken.
Beide kaarten hebben een eigen bestandsnaam; per patroon is er ook een aparte kopieerknop.

Je record blijft gewoon bewaard: via Bestaande mappings open je het later opnieuw om velden toe te voegen of opnieuw te exporteren.
Veelgestelde vragen
Waarom zie ik een invulveld voor label én waarde niet meer?
De naam van het veld wordt nu afgeleid uit het pad dat je bouwde; je vult alleen nog de waarde in (en waar van toepassing taal, datatype of IRI). Het live JSON-LD-fragment toont meteen waar je invoer terechtkomt.
Ik vind de plek voor mijn gegeven niet.
Gebruik eerst het zoekveld boven de keten: typ waar je gegeven over gaat en de wizard stelt paden voor, of kies een recept uit de basisregistratie. Vind je het zo niet, verken de standaard dan vrij in de mappingtool (handleiding) en bouw het pad daarna in de wizard na.
Mijn veld staat er dubbel in, of een waarde is verdwenen.
Kijk naar de kardinaliteit van de eigenschap. Bij 0..* mag een veld herhaald worden en komt elke bewaring erbij; bij 1 of 0..1 vervangt een nieuwe bewaring de oude — het venster waarschuwt daarvoor.
Kan iedereen mijn records zien?
Records staan in de gedeelde lijst Bestaande mappings. Verwijder je een record, dan verdwijnen ook alle velden — dat kan niet ongedaan gemaakt worden.
Handleiding mappingtool
Blader door een standaard en bouw het pad dat een gegeven volgt.