SPW-DIG / metawal-core-geonetwork

Metawal - Catalogue pour l'information géographique de Wallonie
http://metawal.wallonie.be
GNU General Public License v2.0
3 stars 1 forks source link

Validation keywords IACS #867

Open marceaulouis opened 9 months ago

marceaulouis commented 9 months ago

J'ai des erreurs avec le validateur IACS (version en ligne), au niveau des keywords

J'ai l'impression que le validateur ne gère pas le multilingue, mais avant de faire un ticket sur leur GitHub et passer pour une nouille, est-ce que vous pourriez jeter un œil ? Je loupe p-e une évidence

fiche testée : https://metawal.wallonie.be/geonetwork/srv/eng/catalog.search#/metadata/314690bf-016c-4f07-a6d2-de894ba8020b

csw : https://metawal.wallonie.be/geonetwork/inspire/fre/csw?REQUEST=GetRecordById&SERVICE=CSW&version=2.0.2&elementSetName=full&outputSchema=http://www.isotc211.org/2005/gmd&id=314690bf-016c-4f07-a6d2-de894ba8020b

résultat du test : https://inspire.ec.europa.eu/validator/test-run/details.html?id=EIDd768a28d-2c30-4083-9028-e0df82aa201d

fxprunayre commented 9 months ago

Un truc bizarre déjà c'est l'URL image

https://inspire.ec.europa.eu/theme/lc/lc n'existe pas. https://inspire.ec.europa.eu/theme/lc/lc.fre.xml échoue alors que https://inspire.ec.europa.eu/theme/lc.fre.xml

Ce n'est peut être pas la cause de l'erreur - difficile de vérifier sans installer le validateur et le modifier.

fxprunayre commented 9 months ago

Le code source du test doit être https://github.com/inspire-eu-validation/ets-repository/blob/v2023.3/metadata/2.0/datasets-and-series/ets-md-iacs-bsxets.xml#L61

Le message est "Land cover INSPIRE data theme is not declared for LPIS data." alors qu'on a dans la fiche

<gmd:MD_Keywords>
<gmd:keyword>
<gmx:Anchor xlink:href="http://inspire.ec.europa.eu/theme/lc">Occupation des terres</gmx:Anchor>
</gmd:keyword>

Nous sommes sur ce message d'erreur

https://github.com/inspire-eu-validation/ets-repository/blob/v2023.3/include-metadata/TranslationTemplateBundle-EID70a263c0-0ad7-42f2-9d4d-0d8a4ca71b52.xml#L1962-L1964

Donc dans ces tests

https://github.com/inspire-eu-validation/ets-repository/blob/833c27e8a2197b3123ee5b24661cf836c9865ab2/metadata/2.0/datasets-and-series/ets-md-iacs-bsxets.xml#L156-L159

let $invalidLPIS := 
    if((count(distinct-values($keywordCharacterString[.=$lpisLabels]))) > 0
           and (count(distinct-values($keywordCharacterString[.=$lcLabels])) = 0))then
        local:addMessage('TR.dataThemeNotDeclared', map {'filename': local:filename($record), 'featureType':local-name($record), 'gmlid': string($record/@*:id), 'theme': 'Land cover', 'property': 'LPIS'}) 
    else if(count(index-of($keywordAnchor, 'http://inspire.ec.europa.eu/metadata-codelist/IACSData/lpis')) > 0 
                   and (count(index-of($keywordAnchor, 'https://www.eionet.europa.eu/gemet/en/inspire-theme/lc')) = 0 
                   and count(index-of($keywordAnchor, 'http://inspire.ec.europa.eu/theme/lc')) = 0 
                   and count(index-of($keywordAnchor, 'https://www.eionet.europa.eu/gemet/en/concept/4612')) = 0))
        then
        local:addMessage('TR.dataThemeNotDeclared', map {'filename': local:filename($record), 'featureType':local-name($record), 'gmlid': string($record/@*:id), 'theme': 'Land cover', 'property': 'LPIS'}) 
    else ()

Le premier if se base sur les CharacterString et $lcLabels qui est probablement incorrect (cf. commentaire précédent). Cependant le second if check:

Donc dans notre fiche on a bien http://inspire.ec.europa.eu/theme/lc mais pas http://inspire.ec.europa.eu/metadata-codelist/IACSData/lpis - c'est pas ça le problème ?

marceaulouis commented 8 months ago

Réponse obtenue sur le GitHub du validateur, c'est tout une question d'ancres (outre le mot clé libre identifié par François) https://github.com/INSPIRE-MIF/helpdesk-validator/issues/1031

fxprunayre commented 8 months ago

TODO: Add anchor encoding for IACS vocabulary

marceaulouis commented 7 months ago

TODO: Add anchor encoding for IACS vocabulary

and GEMET http://geonetwork-opensource.org/gemet

fxprunayre commented 7 months ago

Fait. A déployer en test @GeryNi @marceaulouis par contre il te faudra réimporter le thésaurus à partir du registre pour avoir le bon code, car tu as dû faire un import de fichier image

Il faut avoir : image

marceaulouis commented 5 months ago

Je ne parviens pas à réimporter le thésaurus IACS Data (certainement moi qui ne sait pas quelle URL utiliser)

J'ai l'impression que l'option anchor pour les mots clé GEMET n'est pas activée

fxprunayre commented 5 months ago

Je ne parviens pas à réimporter le thésaurus IACS Data (certainement moi qui ne sait pas quelle URL utiliser)

image

fonctionne pour moi. Mais j'imagine que le serveur de test n'a peut être pas les droits d'accèder aux registres INSPIRE ? A voir dans les logs @GeryNi

fxprunayre commented 5 months ago

J'ai l'impression que l'option anchor pour les mots clé GEMET n'est pas activée

Cf. https://github.com/SPW-DIG/metawal-core-geonetwork/blob/metawal-4.4.x/schemas/iso19115-3.2018/src/main/plugin/iso19115-3.2018/layout/config-editor.xml#L1077

donc pour GEMET oui, pour GEMET theme non.

Dans l'éditeur, la présence du contrôle de l'encodage permet de savoir ce qu'il en est:

image

A voir si on change l'encoding (mais ça veut dire migrer l'existant aussi) ? (dans un ticket dédié)

marceaulouis commented 5 months ago

point gemet migré ici #886

vbombaerts commented 1 month ago

Le validateur ne passe tjrs pas. Les 3 types de mots-clés (INSPIRE, IACS et GEMET Concept) sont indiqués avec des ancres MAIS

Après correction manuelle de ces valeurs, ça ne passe tjrs pas. J'ai pas mal cherché, mais je ne trouve pas.

Il y a aussi des erreurs de validation de base, dont une double date de publication pour le thésaurus GEMET #870 (non résolu dans la BD de prod-temp, donc, mais semble OK dans les autres)

L'encodage de la Time Extent n'est pas conforme non plus à ce qui est attendu.

https://metawal-temp.wallonie.be/geonetwork/srv/fre/csw?REQUEST=GetRecordById&SERVICE=CSW&version=2.0.2&elementSetName=full&outputSchema=http://www.isotc211.org/2005/gmd&id=314690bf-016c-4f07-a6d2-de894ba8020b

fxprunayre commented 1 month ago

Pour le Mot-clé IACS : les infos sur les thésaurus ne sont pas bonnes. Date de publication attendue 2021-06-08 alors que Metawal indique 2024-02-14

La date est fixé lors de l'import depuis le registre INSPIRE https://github.com/geonetwork/core-geonetwork/blob/main/web/src/main/webapp/xslt/services/thesaurus/registry-to-skos.xsl#L90-L92

Solutions : suppression et réimport du thésaurus (mais on a un pb de proxy pour les imports de 2nd niveau sur le registre INSPIRE).

Pour le mot-clé GEMET : la validateur attend l'ancre https://www.eionet.europa.eu/gemet/en/concept/1600 et Metawal renvoie https://www.eionet.europa.eu/gemet/concept/1600

eg. https://www.eionet.europa.eu/gemet/fr/concept/449

image

Donc je dirai pas de langue dans l'ancre.

Il y a aussi des erreurs de validation de base, dont une double date de publication pour le thésaurus GEMET https://github.com/SPW-DIG/metawal-core-geonetwork/issues/870 (non résolu dans la BD de prod-temp, donc, mais semble OK dans les autres)

Corrigé sur metawal-temp en exportant le thésaurus, correction des dates dans le fichier, suppression du thésaurus et réimport.

fxprunayre commented 1 month ago

Sur la fiche en question, je n'ai que des tests avec "Manual review..." https://yzyiqfakm4.execute-api.eu-west-1.amazonaws.com/validator/v2/TestRuns/EID3c414996-9628-4ea5-b752-6915cae9c78d.html

L'erreur est bizarre:

System error in the Executable Test Suite. Please contact a system administrator. Error information:[err:XPTY0004] $element: Cannot promote empty-sequence() to node(). 
 (45/33)
vbombaerts commented 1 month ago

J'ai retesté et j'avais toujours des erreurs. Après avoir cherché, j'ai trouvé les éléments suivants :

  1. Pour l'erreur image

    Time Extent --> doit être encodé avec des beginPosition/endPosition et pas TimeInstant --> Donc : étendue temporelle > Période > Informations sur la période > Date de début/Date de fin (et pas Début/Fin)

  2. Pour l'erreur image

Le mot-clé IACS (SIGC) doit être d'office présent ==> l'ajouter en plus de LPIS ou GSAA.

  1. Pour l'erreur image

J'ai réussi à passer le test en corrigeant 2 éléments.

vbombaerts commented 1 month ago

Et donc une ressource utile pour la correction de fiches en erreur, c'est les fiches types publiées sur le github du validateur

https://github.com/INSPIRE-MIF/helpdesk-validator/tree/7e401607179bdf087ef0cb45f695a09e889d6201/examples

fxprunayre commented 1 month ago

Avec

<gco:CharacterString>Common Agricultural Policy</gco:CharacterString>

ou

<gmx:Anchor xlink:href="http://www.eionet.europa.eu/gemet/en/concept/1600">politique agricole commune</gmx:Anchor>

image

https://yzyiqfakm4.execute-api.eu-west-1.amazonaws.com/validator/v2/TestRuns/EIDb618ad4c-f634-442f-81b8-b4a14a9373a1.html

A suivre selon la réponse https://github.com/INSPIRE-MIF/helpdesk-validator/issues/1115

vbombaerts commented 1 month ago

Pris en charge par le helpdesk validator. En attente de leur réponse. Non bloquant pour la mise en prod.

vbombaerts commented 4 days ago

Le helpdesk validator reconnait la validité de l'encodage au niveau du concept.

we analyzed the issue and decided to accept the "Concept URL" as valid. We will retain the current URL (https://www.eionet.europa.eu/gemet/en/concept/1600) to ensure compatibility with the existing implementations.

Originally posted by @fabiovinci in https://github.com/INSPIRE-MIF/helpdesk-validator/issues/1115#issuecomment-2444327672

vbombaerts commented 4 days ago

Problème avec le validateur ou avec les fiches ? image Essayé dans Metawal et sur le site du validateur. Les tests ne passent pas. Testé sur https://metawal.wallonie.be/geonetwork/inspire/fre/csw?REQUEST=GetRecordById&SERVICE=CSW&version=2.0.2&elementSetName=full&outputSchema=http://www.isotc211.org/2005/gmd&id=7ba2cb90-a5d0-46f6-9502-481a25951e55 et https://metawal.wallonie.be/geonetwork/inspire/fre/csw?REQUEST=GetRecordById&SERVICE=CSW&version=2.0.2&elementSetName=full&outputSchema=http://www.isotc211.org/2005/gmd&id=82a3db7f-092c-4e9a-a97e-b92b31eeafe1

marceaulouis commented 12 hours ago

Essayé ce matin avec le validateur en ligne, ça fonctionne. Même erreur que Vincent avec le validateur MW

Il reste cependant des erreurs dans le contenu, au niveau de la date de publication du thesaurus IACS data et il ne détecte toujours pas les mots clés INSPIREet Gemet

https://inspire.ec.europa.eu/validator/test-run/details.html?id=EID17ced1cf-0299-4500-91d7-339b0cf928d5

vbombaerts commented 3 hours ago

Réessayé ce soir avec le validateur en ligne.

Pour la fiche https://metawal.wallonie.be/geonetwork/inspire/fre/csw?REQUEST=GetRecordById&SERVICE=CSW&version=2.0.2&elementSetName=full&outputSchema=http://www.isotc211.org/2005/gmd&id=7ba2cb90-a5d0-46f6-9502-481a25951e55 tout passe, sauf le mot-clé GEMET (concept 1600) https://inspire.ec.europa.eu/validator/test-run/details.html?id=EIDd1bbc6e6-4af2-4a87-bd56-e18be4400bce

L'erreur sur ce mot-clé est en correction côté validateur INSPIRE, par contre le commit n'a pas l'air de corriger qqch. D'après ce que je vois, il a juste indiqué l'ancre avec https et avec http mais sans retirer la langue - https://github.com/inspire-eu-validation/ets-repository/commit/fec7f6428115a81d7af3e4172e6e16d6ff3c6561

Je les ai interpellés sur ce point. https://github.com/inspire-eu-validation/ets-repository/pull/855#issuecomment-2455107438

vbombaerts commented 3 hours ago

au niveau de la date de publication du thesaurus IACS data

@marceaulouis La date du thésaurus IACS a été corrigée. Est-ce que tu as édité puis sauvé la fiche pour mettre à jour le thésaurus avant de tester ?