IGNF / cartes.gouv.fr-entree-carto

Vitrine cartographique de cartes.gouv.fr
https://ignf.github.io/cartes.gouv.fr-entree-carto/
GNU Affero General Public License v3.0
3 stars 0 forks source link

Recette #54 (et sous tickets) : widget d'import de données #365

Open elias75015 opened 2 weeks ago

elias75015 commented 2 weeks ago

Recette #54 : ajout du widget d'import de données et services

IGNF-Xavier commented 2 weeks ago

#122 : NOn bloquant - ce n'est plus le positionnement et le comportement décrit. C'est désormais un bouton. #123 : Non bloquant - il n'y a pas de drag&drop pour l'import #124 :

Autres bugs :

elias75015 commented 2 weeks ago

Pour le KML qui ne fonctionne pas, c'est à investiguer : celui-ci ne fonctionne pas certainement à cause de son formatage. Je crée un ticket pour vérifier : https://github.com/IGNF/geopf-extensions-openlayers/issues/242

Pour le drag & drop, je crée un ticket d'évolution côté extension, non prioritaire je pense, mais pour garder la chose en tête : https://github.com/IGNF/geopf-extensions-openlayers/issues/243

elias75015 commented 2 weeks ago

En fait, le drag & drop fonctionne, car le bouton d'upload est natif au navigateur. Capture vidéo du 06-11-2024 19:19:07.webm

Ne serait-ce pas lié à cette dianblerie d'Edge encore une fois ?

elias75015 commented 2 weeks ago

Pour les autres remontées, à vérifier, j'en appelle aux collègues @IGNF/cartes-gouv-entree-carto

elias75015 commented 2 weeks ago

https://github.com/IGNF/geopf-extensions-openlayers/issues/242 fermé : problème du KML, il manquait le namespace atom en entête.

On l'a importé dans googleearth, réexporté, et le namespace était bien présent, l'import s'est donc bien passé.

elias75015 commented 2 weeks ago

On essaye de tout vérifier d'ici la semaine prochaine sur ce widget : si d'ici mercredi on réussi à corriger les points majeurs, on l'intègre à la livraison. Sinon on a déjà une PR faite par Hector pour le désactiver

IGNF-Xavier commented 2 weeks ago

Donc cela veut dire qu IGNRando fait un mauvais export KML? Désolé, je pensais que lexport par ce site devait être bon depuis le temps qu'il est en place.

Le 7 nov. 2024 19:31, elias75015 a écrit :

https://github.com/IGNF/geopf-extensions-openlayers/issues/242 fermé : problème du KML, il manquait le namespace atom en entête.

On l'a importé dans googleearth, réexporté, et le namespace était bien présent, l'import s'est donc bien passé.

-- Reply to this email directly or view it on GitHub: https://github.com/IGNF/cartes.gouv.fr-entree-carto/issues/365#issuecomment-2462950333 You are receiving this because you commented.

Message ID: @.***>

lowzonenose commented 2 weeks ago

Majeur Geojson ne fonctionne pas à partir du fichier enregistré au format geojson depuis :https://data.lillemetropole.fr/data/ogcapi/collections/gpu_habillage_lin/items?f=geojson&limit=-1

Le Geojson est mal construit : Les géométries ne peuvent pas être null ! image

lowzonenose commented 2 weeks ago

Majeur - TMS le JSON est pris en charge pour l'accès aux données mais la symbologie n'est pas appliquée. Exemple : https://data.geopf.fr/annexes/sandbox/style/57fde90b-d5f8-4c12-92ce-fb40e77514c7.json

Le sprite est renseigné mais le path n'est pas correct, ceci va lancer une exception. image

Il vaut mieux virer le sprite pour éviter toutes exceptions (idem pour les glyphs).

De plus, le service tuilé n'affiche pas de tuiles
image

Le fournisseur doit implémenter les sprites et glyphs

IGNF-Xavier commented 2 weeks ago

Majeur - TMS le JSON est pris en charge pour l'accès aux données mais la symbologie n'est pas appliquée. Exemple : https://data.geopf.fr/annexes/sandbox/style/57fde90b-d5f8-4c12-92ce-fb40e77514c7.json

Le sprite est renseigné mais le path n'est pas correct, ceci va lancer une exception. image

Il vaut mieux virer le sprite pour éviter toutes exceptions (idem pour les glyphs).

De plus, le service tuilé n'affiche pas de tuiles image

@slafayIGN il y a probablement un souci avec le json que l'on produit depuis cartes.gouv/alimentation-diffusion

lowzonenose commented 2 weeks ago

A investiguer - le WMTS https://geolittoral.din.developpement-durable.gouv.fr/cache/service/wmts?service=WMTS&request=GetCapabilities ne fonctionne pas (version 1.0.0) avec ou sans paramètre de requêtes. Pourtant le service existe.

Le souci est que le service distant ne possède pas les en-têtes (headers) CORS, ce qui est obligatoire pour requêter les données en Javascript image

Si on installe un plugin CORS pour reecrire le header de la requete sur ce service, on voit que ça marche : image

Le correctif est à mettre en place du coté du fournisseur

IGNF-Xavier commented 2 weeks ago

Majeur Geojson ne fonctionne pas à partir du fichier enregistré au format geojson depuis :https://data.lillemetropole.fr/data/ogcapi/collections/gpu_habillage_lin/items?f=geojson&limit=-1

Le Geojson est mal construit : Les géométries ne peuvent pas être null ! image

Il est impossible de capturer l'erreur et de la signaler ? Il s'agit d'une donnée fournie par une plate-forme connue. Je vais tester avec un autre Geojson

IGNF-Xavier commented 2 weeks ago

A investiguer - le WMTS https://geolittoral.din.developpement-durable.gouv.fr/cache/service/wmts?service=WMTS&request=GetCapabilities ne fonctionne pas (version 1.0.0) avec ou sans paramètre de requêtes. Pourtant le service existe.

Le souci est que le service distant ne possède pas les en-têtes (headers) CORS, ce qui est obligatoire pour requêter les données en Javascript image

Si on installe un plugin CORS pour reecrire le header de la requete sur ce service, on voit que ça marche : image

C'est une solution viable supportée par l'entree carto ou c'estun plugin du navigateur? Dans le second cas, cela veut dire qu'il faut capturer l'erreur et la signaler

lowzonenose commented 2 weeks ago

Majeur Geojson ne fonctionne pas à partir du fichier enregistré au format geojson depuis :https://data.lillemetropole.fr/data/ogcapi/collections/gpu_habillage_lin/items?f=geojson&limit=-1

Il est impossible de capturer l'erreur et de la signaler ? Il s'agit d'une donnée fournie par une plate-forme connue. Je vais tester avec un autre Geojson

Le format GeoJSON d'OpenLayers est très strict (standard), mais il est possible de rendre les erreurs silencieuses afin d'afficher uniquement les éléments correctement formatés à moindre frais dans les dev...

@elias75015 ~Ticket~ à faire au niveau des extensions (format et style) : https://github.com/IGNF/geopf-extensions-openlayers/pull/251

lowzonenose commented 2 weeks ago

A investiguer - le WMTS https://geolittoral.din.developpement-durable.gouv.fr/cache/service/wmts?service=WMTS&request=GetCapabilities ne fonctionne pas (version 1.0.0) avec ou sans paramètre de requêtes. Pourtant le service existe.

Le souci est que le service distant ne possède pas les en-têtes (headers) CORS, ce qui est obligatoire pour requêter les données en Javascript ! Si on installe un plugin CORS pour reecrire le header de la requete sur ce service, on voit que ça marche

C'est une solution viable supportée par l'entree carto ou c'estun plugin du navigateur? Dans le second cas, cela veut dire qu'il faut capturer l'erreur et la signaler

Plugin navigateur installé sur Chrome ou FireFox. Les exceptions CORS sont difficiles à capturer programmatiquement. Le fournisseur de service devrait savoir qu'il faut correctement positionner ses headers si il souhaite une exploitation cliente de ses données.

De plus, le service est très mal configuré, les requêtes sont en http, ce qui n'est pas très propre... Et, enfin, difficile de faire remonter une tuile, car les valeurs ne sont pas correctement renseignées (TileMatrix=NaN) image

lowzonenose commented 2 weeks ago

Mineur - le formulaire d'import n'est pas réinitialisé en cas de nouvel import.

Hummm..., il manque le bouton retour (comme pour le vecteur tuilé) ! Capture d’écran du 2024-11-07 23-26-23

@elias75015 ~Ticket~ à faire au niveau des extensions : https://github.com/IGNF/geopf-extensions-openlayers/pull/250

lowzonenose commented 2 weeks ago

Majeur- Suite au premier import de TMS, l'utilisation du bouton import renvoie une modale vide

Ceci fait suite au commentaire : https://github.com/IGNF/cartes.gouv.fr-entree-carto/issues/365#issuecomment-2463296972 L'exception sur le sprite a causé l'affichage d'une fenêtre de résultat vide...

lowzonenose commented 2 weeks ago

Mineur- L'import de données TMS engage une couche en non visible. La mettre en visible

Lorsque le rendu d'une couche vecteur tuilé n'est pas correct (ex. exception dans le style), on applique un style par défaut (bleu), et on rend la couche non visible.

IGNF-Xavier commented 1 week ago

En fait, le drag & drop fonctionne, car le bouton d'upload est natif au navigateur. Capture vidéo du 06-11-2024 19:19:07.webm

Ne serait-ce pas lié à cette dianblerie d'Edge encore une fois ?

Ok. A vérifier le comportement attendu car ce n'est pas clair qu'il y ait une zone de drag&drop

slafayIGN commented 1 week ago

Attention le composant "Ajout de fichier - Upload" du DSFR est en effet le composant natif des navigateurs. Donc le comportement peut légèrement différer d'un navigateur à l'autre (pas de drag and drop sur certains) et il n'est pas personnalisable.

Ce qui est obligatoire par contre c'est de mentionner le type de fichier et le poids maximum du fichier qu'il est possible de téléverser.

quentinpage commented 1 week ago

pour firefox kml ok gpx ok geojson ok nok pour url : il n'y a aucune explication (il serait peut bien d'avoir une bulle ou un point d’information sur comment remplir cette outil) ni d'affichage de données pour des url qui fonctionnent (il donne des résultats dans le navigateur avec une géométrie) et qui dispose de données en xml (https://data.geopf.fr/wfs/ows?SERVICE=WFS&REQUEST=GetFeature&VERSION=2.0.0&TYPENAMES=BDTOPO_V3:cours_d_eau) l'exemple https://data.lillemetropole.fr/data/ogcapi/collections/gpu_habillage_lin/items?f=geojson&limit=-1 ne marche pas non plus même si on choisis "geojson" comme type de données. l'url "https://data.geopf.fr/wfs/ows?service=WFS&version=2.0.0&request=GetFeature&outputformat=application%2Fjson&typenames=wfs_scot%3Ascot&cql_filter=title%3D%27SCOT%20DU%20PAYS%20DES%20OLONNES%27" lui fonctionne la fenêtre "import des données" s'adapte bien.

pour edge kml ok gpx ok geojson ok nok pour url : il n'y a aucune explication (il serait peut bien d'avoir une bulle ou un point d’information sur comment remplir cette outil) ni d'affichage de données pour des url qui fonctionnent (il donne des résultats dans le navigateur avec une géométrie) et qui dispose de données en xml (https://data.geopf.fr/wfs/ows?SERVICE=WFS&REQUEST=GetFeature&VERSION=2.0.0&TYPENAMES=BDTOPO_V3:cours_d_eau) l'exemple https://data.lillemetropole.fr/data/ogcapi/collections/gpu_habillage_lin/items?f=geojson&limit=-1 ne marche pas non plus même si on choisis "geojson" comme type de données. l'url "https://data.geopf.fr/wfs/ows?service=WFS&version=2.0.0&request=GetFeature&outputformat=application%2Fjson&typenames=wfs_scot%3Ascot&cql_filter=title%3D%27SCOT%20DU%20PAYS%20DES%20OLONNES%27" lui fonctionne la fenêtre "import des données" s'adapte bien.

pour android smartphone aucun dossier n'est stockés dans le téléphone donc pas de kml, jpx ou geojson de testable le lien https://data.geopf.fr/wfs/ows?service=WFS&version=2.0.0&request=GetFeature&outputformat=application%2Fjson&typenames=wfs_scot%3Ascot&cql_filter=title%3D%27SCOT%20DU%20PAYS%20DES%20OLONNES%27" fonctionne. les autres liens n'ont pas été testé

IGNF-Xavier commented 1 week ago

Majeur - TMS le JSON est pris en charge pour l'accès aux données mais la symbologie n'est pas appliquée. Exemple : https://data.geopf.fr/annexes/sandbox/style/57fde90b-d5f8-4c12-92ce-fb40e77514c7.json

Le sprite est renseigné mais le path n'est pas correct, ceci va lancer une exception. image Il vaut mieux virer le sprite pour éviter toutes exceptions (idem pour les glyphs). De plus, le service tuilé n'affiche pas de tuiles image

@slafayIGN il y a probablement un souci avec le json que l'on produit depuis cartes.gouv/alimentation-diffusion

J'ai fait sans sprite : https://data.geopf.fr/annexes/sandbox/style/8b36cb67-411b-4f7a-a5b6-6f4400ef7d02.json Cela ne s'affiche toujours pas. Pourtant c'est visible dans l''interface de visualisation de alimentation/diffusion

elias75015 commented 1 week ago

Le ticket est devenu un petit peu long.

Il y a eu des corrections portées sur la page de démo :

Pour les problèmes restants et confirmés, peut-on créer des tickets à part et valider ce ticket de recette ?

Je vois uniquement le problème de l'import TMS suivant : https://data.geopf.fr/annexes/sandbox/style/57fde90b-d5f8-4c12-92ce-fb40e77514c7.json

est-ce bloquant ?

elias75015 commented 1 week ago

Majeur - TMS le JSON est pris en charge pour l'accès aux données mais la symbologie n'est pas appliquée. Exemple : https://data.geopf.fr/annexes/sandbox/style/57fde90b-d5f8-4c12-92ce-fb40e77514c7.json

Le sprite est renseigné mais le path n'est pas correct, ceci va lancer une exception. image Il vaut mieux virer le sprite pour éviter toutes exceptions (idem pour les glyphs). De plus, le service tuilé n'affiche pas de tuiles image

@slafayIGN il y a probablement un souci avec le json que l'on produit depuis cartes.gouv/alimentation-diffusion

J'ai fait sans sprite : https://data.geopf.fr/annexes/sandbox/style/8b36cb67-411b-4f7a-a5b6-6f4400ef7d02.json Cela ne s'affiche toujours pas. Pourtant c'est visible dans l''interface de visualisation de alimentation/diffusion

Même sur le géoportail je ne réussis pas à visualiser.

Effectivement le path du sprite est en 404.

Puis ensuite, quand on le retire, aucune donnée n'est visible malgré des requêtes en 200 : Image

lowzonenose commented 1 week ago

image

Problème trouvé sur le fichier de style https://data.geopf.fr/annexes/sandbox/style/8b36cb67-411b-4f7a-a5b6-6f4400ef7d02.json :

"filter": [ "==", "class", 4] est différent de "filter": [ "==", "class", "4"] j'ai l'impression que le comportement a changé, mapbox gère le type numeric / string dans les filtres le champ 'class' est numérique, on doit donc mettre un filtre numérique.

@slafayIGN A toi de modifier les styles, et modifier les filtres en fonction du typage du champ requêté image

elias75015 commented 3 days ago

Avant de fermer et d'archiver, un point sur ce qu'il restait

❌ Mineur, le passage en URL renvoie une modale rétrécie avec ascenseur

Corrigé par https://github.com/IGNF/geopf-extensions-openlayers/pull/266

❌ Majeur - KML ne fonctionne pas. fichiers joints issus d'IGNRANDO parcours.zip

Expliqué par https://github.com/IGNF/geopf-extensions-openlayers/issues/242

❌ Majeur Geojson ne fonctionne pas à partir du fichier enregistré au format geojson depuis :https://data.lillemetropole.fr/data/ogcapi/collections/gpu_habillage_lin/items?f=geojson&limit=-1

Contournée par https://github.com/IGNF/geopf-extensions-openlayers/pull/251

❌ Majeur - TMS le JSON est pris en charge pour l'accès aux données mais la symbologie n'est pas appliquée. Exemple : https://data.geopf.fr/annexes/sandbox/style/57fde90b-d5f8-4c12-92ce-fb40e77514c7.json

Consigné côté cartes.gouv par https://github.com/IGNF/cartes.gouv.fr/issues/558

❌ A investiguer - le WMTS https://geolittoral.din.developpement-durable.gouv.fr/cache/service/wmts?service=WMTS&request=GetCapabilities ne fonctionne pas (version 1.0.0) avec ou sans paramètre de requêtes. Pourtant le service existe.

Problème côté fournisseur du service : https://github.com/IGNF/cartes.gouv.fr-entree-carto/issues/365#issuecomment-2463319980

❌ Majeur- Suite au premier import de TMS, l'utilisation du bouton import renvoie une modale vide

Non reproduit, peut être corrigé