Algemene implementatie richtlijnen voor OSLO voor Erfgoed
Principes Naamgeving
1. Entiteiten worden zowel in de Specificatie als de Context in Upper Camel Case geschreven.
bvb. "MensgemaaktObject", niet: "Mensgemaakt Object", "Mensgemaakt object"
2. Eigenschappen worden zowel in de Specificatie als in de Context in Lower Camel Case geschreven:
bvb "heeftTitel", niet "heeft titel", "heeft-titel"
3. Namen in de Specificatie zijn identiek aan namen in de Context.
bvb. "heeftTitel" in de specificatie, wordt in de @context gedefinieerd als:
4. Namen van eigenschappen vormen een actieve of passieve zinsconstructie.
bvb "heeftTitel", "isTitelVan", niet "titel"
5. Namen van eigenschappen zijn een zo nauwkeurig mogelijke vertaling van de broneigenschap uit CIDOC-CRM, LRM of RIC.
bvb CIDOC CRM: "P1 is identified by (identifies)" wordt OSLO: :wordtGeïdentificeerdDoor
(Let op: @context mapt op in dit geval naar ""http://www.w3.org/ns/adms#identifier".
Basispatronen
1. Types
Gebruik @type om de Entiteit te identificeren waarop het JSON-object betrekking heeft.
Gebruik "heeftType" / CIDOC-CRM P2: has type / is type als OSLO geen nauwkeurig matchende Entiteit beschikbaar heeft en je de Entiteit zelf nader wil karakteriseren.
Gebruik "heeftType" / CIDOC-CRM P2: has type / is type ook om een Entiteit te mappen met een 'veld' uit het Invulboek dat beschrijvingsregels bevat voor de inhoud van het JSON-object.​
Gebruik "isGeclassificeerdDoor" en een "Classificatie" om de "objectnaam" (i.e. het type erfgoedobject) of anderen trefwoorden voor de Entiteit te documenteren.
Gebruik @value om Entiteiten van een mensleesbaar label te voorzien.
{"@type":"ZelfstandigeExpressie","@id":"https://data.cagnet.be/item/F95043","@value":"Frischer Wind In Streudorf"}
Wanneer je een Entiteit van meerdere namen wil voorzien, of informatie over de toekenning van de naam wil documenteren, gebruik de eigenschap "heeftNaam" en "Naam" (cf. CRM E35 Title) om vervolgens eigenschappen van de naam te documenteren.
{"@type":"ZelfstandigeExpressie","@id":"https://data.cagnet.be/item/F95043","@value":"Frischer Wind In Streudorf","heeftNaam":[{"@type":"Naam","@value":"Frischer Wind In Streudorf", }, {"@type":"Naam","@value":"Een Frisse Wind In Strodorp" }] }
Gebruik @language om de taal van namen te documenteren.
{"@type":"ZelfstandigeExpressie","@id":"https://data.cagnet.be/item/F95043","@value":"Frischer Wind In Streudorf","heeftNaam":[{"@type":"Naam","@value":"Frischer Wind In Streudorf","@language":"de" }, {"@type":"Naam","@value":"Een Frisse Wind In Strodorp","@language":"nl", }] }
Gebruik de eigenschap "heeftType" om het soort naam te karakteriseren.
{"@type":"ZelfstandigeExpressie","@id":"https://data.cagnet.be/item/F95043","heeftNaam":[{"@type":"Naam","@value":"Frischer Wind In Streudorf","@language":"de","heeftType":{"@type":"Type","heeftVoorkeursterm":{"@type":"TaalString","@value":"originele titel","@language":"nl" } } } }
Gebruik de eigenschap "isToegekendDoor" en "Toekenning" om uit te drukken wie en wanneer een naam werd toegekend.
Het gebruik van @id is verplicht wanneer je een Entiteiten wil mappen naar een Veld in het Invulboek Objecten waar zich de beschrijvingsregels bevinden voor de inhoud van het JSON-object.