Imvertor / Imvertor-Maven

Mavenized version of Imvertor
http://www.imvertor.org
9 stars 12 forks source link

Het managen van de iri van een skos:Concept(Schema) #540

Open fzand opened 2 months ago

fzand commented 2 months ago

In de skos.ttl is de iri van een skos;Concept(Schema) opgebouwd als volgt:

http://definities.geostandaarden.nl//id/concept/Registratie/naam

a. Dat is een / teveel. b. Graag zou ik het {domain} deel (nu: definities.geostandaarden.nl) zelf willen bepalen.

ArjanLoeffen commented 2 months ago

Aha, nee, je mist een afkorting voor het model. Dan wordt het

http://definities.geostandaarden.nl/[AfkortingVanHetModel]/id/concept/Registratie/naam

Dat geef je op als tagged value Afkorting = AfkortingVanHetModel op het informatiemodel package, of (afhankelijk van de owner) deze wordt bepaald op basis van de URI van het model; in MIM 1.2 is dat de laatste naam van de Basis-URI.

Maar je hebt de vrijheid de URI geheel zelf samen te stellen. dat gaat via

/src/main/resources/input/Logius/cfg/skosrules/Logius.xml

Zie daarin:

<base>http://definities.geostandaarden.nl/[afkorting]/id/[type]/[naam]</base>

Je kunt dat laten omzetten in een eigen template voor de URI's.

NB De SKOS output is deels gebaseerd op de wensen van BRO. Het is me niet duidelijk of BRO deze nog gebruikt. Overleg tussen BRO en Logius zou dan wel goed zijn. @jacobvosimpronotion Wat jij?

fterpstra commented 2 months ago

De BRO gebruikt deze zeer incidenteel voor het vullen van definities.geostandaarden.nl en aanlevering aan de stelselcatalogus van Logius.

ArjanLoeffen commented 2 months ago

@fzand Kan ik deze sluiten? De oplossing voor je vragen staat m.i. in de reacties.

fzand commented 2 months ago

Helaas niet. Ik heb tagged value Afkorting op het informatiemodel package (en het domeinmodel package) een waarde gegeven, maar ik krijg nog steeds dit http://definities.geostandaarden.nl//id/concept/Registratie. Ik heb echter nog geen tagged valeu voor de Basis-URI in mijn toolbox.

M.b.t. tot het zelf instellen van het {domein} zou je het issue inderdaad kunnen sluiten. Waarbij ik er wel vanuit ga dat de domein van de mim en de skos export kunnen verschillen.

ArjanLoeffen commented 2 months ago

Er lopen zo te zien twee "eigenschappen" door elkaar. In de code komt de property appinfo/model-abbreviation voor. Deze wordt initieel gezet op de Afkorting tagged value. Dit is de wens van BRO geweest, en is nodig voor Respec naar Github export. Deze afkorting wordt echter per klant mogelijk overschreven door de laatste naam in de bases URI van het informatiemodel (voor bijv. http://www.geonovum.nl/schemas/voorbeeld wordt dat 'voorbeeld'). Dus dat bijt elkaar:

Deze moeten denkelijk worden gescheiden, het betreft twee niet gerelateerde zaken.

Blijft de vraag: hoe gaan we de afkorting tbv. SKOS vastleggen? Of is dat wel nodig, en kunnen we het gewoon af door in de configuratie

<base>http://definities.geostandaarden.nl/[afkorting]/id/[type]/[naam]</base> te vervangen door <base>http://definities.geostandaarden.nl/STC/id/[type]/[naam]</base> of moeten we toch een aparte tagged value introduceren: <base>http://definities.geostandaarden.nl/[domein-afkorting]/id/[type]/[naam]</base>

Ik vermoed dat we naar dat laatste moeten. Graag overleg.

jacobvosimpronotion commented 2 months ago

@ArjanLoeffen Wat betreft de tag 'Afkorting': die vullen we inderdaad in onze modellen. Ik lees in info uit 2020: "Tagged value Afkorting toevoegen op het niveau van het Basismodel met de code van de GitHub repository". Dus het nut - voor BRO - van 'Afkorting' lijkt helder. Maar: voor de modellen SAD en SLD hebben we deze tag niet gevuld (per ongeluk). Dit lijkt de werking richting GitHub niet in de weg te zitten - althans we hebben hier niets van gemerkt. Hoe kan dat? Dit is relevant om te weten, want als het inmiddels (ook) op een andere manier is geregeld, dan is die tag 'Afkorting' misschien niet meer nodig.

Is de tag 'Afkorting' speciaal in het leven geroepen door/voor de BRO, en daarna ook bij andere gebruikers terechtgekomen? Of is het een tag met een andere herkomst (i.i.g. niet MIM, want daarin komt ie niet voor) en is de BRO 'm gaan ge/misbruiken?

ArjanLoeffen commented 2 months ago

De tag is echt voor de BRO opgenomen komt terecht in het pad voor de Respec output op Github.

Korte uitleg: De location tagged value op referentie/codelijsten geeft aan waar de inhoud van de lijst op te halen is. Als die niet is gevuld wordt een alternatieve aanpak gevolgd. Daarbij moet de afkorting van het model bekend zijn. Configuratie parameter doclist-xml-url heeft de vorm https://raw.githubusercontent.com/BROprogramma/[appinfo/model-abbreviation]/gh-pages/lists/[temp/latest-list-key].xml en daar wordt dan ook verwacht dat de lijst inhoud op te halen is. Let wel, dat is nu nog alléén voor BRO beschikbaar! Alleen de BRO heeft aangegeven lijstinhoud beschikbaar te stellen via Github en deze op te laten nemen in de Respec documentatie. Maar inmiddels willen andere gebruikers dit ook.

Wat betreft SAD en SLD: als er geen locatie is opgegeven wordt dit mechanisme ingezet. Model-abbreviation kan ook zijn gevuld uit de laatste naam van de URL zoals eerder beschreven. Dan zou het mechanisme dus wel kunnen werken.

Misschien moet e.e.a. dus toch nog strakker/helderder worden geregeld, de vraag is namelijk of de analist nog weet wat zij moet doen.

jacobvosimpronotion commented 2 months ago

@ArjanLoeffen Waar wordt [temp/latest-list-key] (zie je vorige bericht) mee gevuld? Ik verwachtte 'SLD'. Maar dit lijkt niet zo te zijn. Met SLD heb ik namelijk getest (zie https://imvertor.armatiek.nl//download/dat/2024-09-13-13-25-46-553/work/app/doc/index.html) door bij de referentielijst de tag 'Locatie' leeg te laten en bij het package 'Domein' de tagged value 'Afkorting' te vullen met 'SLD'. Toch kan Imvertor de referentielijst niet vinden.

ArjanLoeffen commented 2 months ago

De latest-list-key wordt bepaald door de van de tagged value Locatie het laatste deel te lezen. Dus van

Locatie = GeologischeEenheid
Locatie = /EPL/lists/GeologischeEenheid

wordt vastgesteld dat latest-list-key is: GeologischeEenheid

Als je een complete URL (start met http...) opgeeft als in:

Locatie = https://raw.githubusercontent.com/BROprogramma/EPL/gh-pages/lists/GeologischeEenheid.xml

wordt geen gebruik gemaakt van deze URL-template, en dus ook niet van latest-list-key, maar wordt die URL gebruikt.