nvs-vocabs / ArgoVocabs

A repository for the management of issues related to vocabularies managed by the Argo Data Management Team
7 stars 0 forks source link

R03: manage Argo units labels #78

Open tcarval opened 8 months ago

tcarval commented 8 months ago

R03 parameters table does not manage Argo units label. @vpaba @gwemon Violetta, Gwenaelle, can we add this label in R03 definitions ?

Example of sea water temperature TEMP The Argo unit label for TEMP is "degree_Celsius". http://vocab.nerc.ac.uk/collection/R03/current/TEMP/ has this unit : http://vocab.nerc.ac.uk/collection/P06/current/UPAA/ with a default label "Degrees Celsius" which is not the Argo unit label.

BrianKingNOC commented 8 months ago

After ADMT24 I undertook an audit of parameter units in meta files in the October 2023 tarball. As Thierry points out, the Argo units in the parameters.xlsx sheet often don't match the P06 name for units. Certainly at present the link from R03 to P06 cannot be used to check the parameter units values in Argo meta files. As part of my audit of parameter units, I set up the following unit equivalences. This was in order to be able to recognise units which clearly meant the same thing, but happened to have different values, and to distinguish those from cases where the units were in some sense wrong, ie the value of the parameter unit could not be correct for the parameter. eg Siemens/meter for PSAL W/m^2/nm for UP_RADIANCE555 (should be W/m^2/nm/sr) ml/l for DOXY (didn't check if they reported in ml/l or just assigned ml/l when reporting micromole/kg)

Here are the equivalencies I set up, cut and pasted from my matlab code. All the equivalent elements of the cell arrays occur somewhere in our meta files. Some of the extra entries may be P06 altLabels. Most of them are just things DACs have chosen to introduce, perhaps because they weren't sure at the time what was the recommended Argo unit. I think in each case the first element is what I understood to be the Argo unit from the xlsx sheet, and the rest of the elements are the alternatives that occur in the meta files.

unit_equiv{1} = {'decibar' 'dbar' 'dbars' 'decibars' }; unit_equiv{2} = {'volt' 'V' 'Volt' 'VOLT' 'volts' 'Volts'}; unit_equiv{3} = {'degree_Celsius' 'degC' 'degC(ITS-90)' 'deg C' 'degC (ITS-90)'}; unit_equiv{4} = {'micromole/kg' 'micromol/kg' 'umol/kg'}; unit_equiv{5} = {'micromole/l' 'micromole/L' 'micromole/litre' 'umol/L'}; unit_equiv{6} = {'microMoleQuanta/m^2/sec' 'microMoleQuanta/M^2/sec'}; unit_equiv{7} = {'m-1' 'm^-1'}; unit_equiv{8} = {'mg/m3' 'mg/m^3' 'mg m-3' 'micro g/l'}; unit_equiv{9} = {'mhos/m' 'mho/m'}; unit_equiv{10} = {'hertz' 'Hz'}; unit_equiv{11} = {'millibar' 'mbar'}; unit_equiv{12} = {'degree' 'degrees'};

SBS-EREHM commented 8 months ago

Note that SKOS allows you to attach multiple prefLabel-s and altLabel-s to a Concept

See https://campus.dariah.eu/resource/posts/controlled-vocabularies-and-skos#labels

Also note that some SKOS APi's allow concept lookup by altLabel or prefLabel, e.g., conceptScheme.getAllConceptsByLabel() in SKOS.js.

For validation purposes in a JSON sensor metadata schema, why not allow SDN:P06::UPDB with prefLabel = 'Decibars' altLabel = 'dbar' to also have 'decibar', 'dbars', 'decibars' as altLabels. That's one way to create "legal" synonyms, I think.

gwemon commented 8 months ago

Hello Everyone. We will discuss your requirements with @vpaba and @alko-k and see what options we have. Many thanks.