-
Notifications
You must be signed in to change notification settings - Fork 33
Description
In the Destatis-Fächerklassifikation Vocab there are now english prefLabels and in order to add them with metamorph/fix we need to use different mapping files for each language in order to get the prefLabels we want like https://gitlab.com/oersi/oersi-etl/-/blob/master/data/maps/subject-labels.tsv
For an english version we would need an additional list, that would need to be cared about.
But since we have a ScoHub Vocabs/Skos-‘ttl‘-files it would be nice to use them as lookup so that we do not need to create and update additional lists.
For the lookup should ttl file should be the target: e.g.: https://github.com/dini-ag-kim/hochschulfaechersystematik/blob/master/hochschulfaechersystematik.ttl
(Other skos serialization could follow)
Nice would be something like the following with mock code:
@base <https://w3id.org/kim/hochschulfaechersystematik/> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix schema: <http://schema.org/> .
@prefix vann: <http://purl.org/vocab/vann/> .
...
<n4> a skos:Concept ;
skos:prefLabel "Mathematik, Naturwissenschaften"@de, "Mathematics, Natural Sciences"@en ;
skos:narrower <n36>, <n37>, <n39>, <n40>, <n41>, <n42>, <n43>, <n44> ;
skos:notation "4" ;
skos:topConceptOf <scheme> .
...Idea for Fix function:
skos_lookup("element-path" ,file="[path/url]",
[match="attribute that should be matching", matchLanguage="language of the replaced value"],
target="attribute to be replace with", targetLanguage="language of replacing value")
file= could be a URL or a local file,
match= is default id
match= and matchLanguage= are optional
target= and targetLanguage= are always needed
Use case 1:
Find matching subject and return object of targeted predicate.
in: https://w3id.org/kim/hochschulfaechersystematik/n4
skos_lookup("path", file="https://raw.githubusercontent.com/dini-ag-kim/hochschulfaechersystematik/master/hochschulfaechersystematik.ttl", target="prefLabel", targetLanguage="de")
out: Mathematik, Naturwissenschaften
Use case 2:
Find matching object value in selected predicate and return its subject.
in: Mathematics, Natural Sciences
skos_lookup("path", file="https://raw.githubusercontent.com/dini-ag-kim/hochschulfaechersystematik/master/hochschulfaechersystematik.ttl",match="prefLabel", matchLanguage="en", target="id")
out: https://w3id.org/kim/hochschulfaechersystematik/n4
Use case 3:
Find matching object value in selected predicate and return object of targeted and connected predicate.
This could be also interesting if we have SKOS files with hiddenLabels or altLabels.
in: Mathematics, Natural Sciences
skos_lookup("path", file="https://raw.githubusercontent.com/dini-ag-kim/hochschulfaechersystematik/master/hochschulfaechersystematik.ttl", match="prefLabel", matchLanguage="en", target="prefLabel", targetLanguage="de")
out: Mathematik, Naturwissenschaften