You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Je ne vois pas de mapping/calcul à partir des métadonnées pour ce champ. Ça aurait été dans cette partie de la fonction parse_dataset), mais il n'y a rien. C'est un manque. Lorsque la propriété dct:spatial est présente et qu'on y trouve un ou plusieurs URI du code géographique de l'INSEE ou du vocabulaire européen des territoires administratifs (ou un label permettant de reconnaître un de ces URI), il est possible d'en déduire les territoires correspondants en allant interroger les tables de synonymes des vocabulaires. Elle n'a pas encore été réécrite pour interroger des données en base et pas en JSON, mais c'est la méthode VocabularyJSONReader.get_ecospheres_territory qui s'en charge. À titre de référence, le traitement serait assez proche de ce que j'ai écrit pour les métadonnées INSPIRE.
Aujourd'hui (et comme cela devra effectivement toujours être le cas lorsque le ou les territoires n'ont pas pu être déduits des métadonnées), c'est la méthode DCATfrRDFHarvester.before_create qui donne une valeur à la propriété, en récupérant les territoires associés à l'organisation. Et elle plante sur l'exécution de la fonction re.match avec une erreur TypeError: expected string or bytes-like object si, dans l'extrait de code suivant, territories_codes est nul, ce qui arrivera s'il n'y avait pas de territoire associé à l'organisation.
Il est acceptable pour une organisation de ne pas avoir de territoire. Même s'il est possible que cela change à l'avenir, c'est aujourd'hui le cas pour les organisations à compétence nationale. Il faut consolider le code pour s'assurer qu'il n'y a pas d'erreur dans ce cas.
Il serait sans doute préférable d'utiliser un validateur pour ça, plutôt que d'implémenter exactement le même mécanisme dans tous les moissonneurs ? Je le ferai lorsque je reprendrai le mapping INSPIRE.
Je ne comprends pas pourquoi on se retrouve à utiliser re.match et str.split sur la liste des territoires alors que c'est un dump JSON qui a seulement besoin d'être désérialisé...
J'ai des erreurs sur les moissonnages DCAT testés hors Dido.
Data.gouv
Géocatalogue
Il semble qu'il y a au moins 3 erreurs différentes :
territory
est manquant.title
.free_tags
avec des caractères spéciaux.The text was updated successfully, but these errors were encountered: