Skip to content

feat: add WFS download links#972

Open
maudetes wants to merge 7 commits intomainfrom
feat/add-wfs-download-links
Open

feat: add WFS download links#972
maudetes wants to merge 7 commits intomainfrom
feat/add-wfs-download-links

Conversation

@maudetes
Copy link
Contributor

@maudetes maudetes commented Mar 5, 2026

Related to ecolabdata/ecospheres#846.

Based on datagouv/hydra#385 to get WFS metadata information in resource extras.

image
Example extras to add on resources in order to test this PR
 "analysis:parsing:ogc_metadata": {
                "format": "wfs",
                "layers": [
                    {
                        "name": "hlc:classement_voirie_po",
                        "default_crs": "EPSG:3948"
                    },
                    {
                        "name": "hlc:classement_voirie_li",
                        "default_crs": "EPSG:3948"
                    },
                    {
                        "name": "hlc:dechetteries_pt",
                        "default_crs": "EPSG:3948"
                    },
                    {
                        "name": "hlc:lieuxcovoiturage_hlc_pt",
                        "default_crs": "EPSG:2154"
                    },
                    {
                        "name": "hlc:mediatheque_hlc_pt",
                        "default_crs": "EPSG:3948"
                    },
                    {
                        "name": "hlc:pav_zoneinfluence_parcelle_po",
                        "default_crs": "EPSG:3948"
                    },
                    {
                        "name": "hlc:dechetpav_pt",
                        "default_crs": "EPSG:3948"
                    },
                    {
                        "name": "hlc:qualite_eaux_baignade_station",
                        "default_crs": "EPSG:3948"
                    },
                    {
                        "name": "hlc:voirie_statistiques_par_ville",
                        "default_crs": "EPSG:3948"
                    },
                    {
                        "name": "hlc:sd_observation_terrain_flore_rare_hlc_pt",
                        "default_crs": "EPSG:3948"
                    }
                ],
                "version": "2.0.0",
                "detected_layer": {
                    "name": "hlc:dechetteries_pt",
                    "default_crs": "EPSG:3948"
                },
                "output_formats": [
                    "application/gml+xml; version=3.2",
                    "GML2",
                    "KML",
                    "SHAPE-ZIP",
                    "application/geopackage+sqlite3",
                    "application/json",
                    "application/vnd.google-earth.kml xml",
                    "application/vnd.google-earth.kml+xml",
                    "application/vnd.ogc.fg+json",
                    "application/x-gpkg",
                    "csv",
                    "dxf",
                    "geopackage",
                    "geopkg",
                    "gml3",
                    "gml32",
                    "gpkg",
                    "gpx",
                    "json",
                    "mif",
                    "ods",
                    "tab",
                    "text/csv",
                    "text/xml; subtype=gml/2.1.2",
                    "text/xml; subtype=gml/3.1.1",
                    "text/xml; subtype=gml/3.2",
                    "xlsx"
                ]
            }
        },
    "analysis:parsing:ogc_metadata": {
        "format": "wfs",
        "layers": [
            {
                "name": "ville_roubaix:20210220_projetsbpr_vote_et_laureats_v2",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:covoiturage_mel",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:tramway_arrets",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:autopartage_mel",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_roubaix:base_adresse_sur_le_perimetre_de_la_ville_de_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_limite_administrative:ban_adresse_59_mel",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_tourcoing:base_adresses_locale_tourcoing",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:bibliotheque_reseau_a_suivre",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_economie:carnet_des_producteurs",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:a_hap_chausse",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:a_hap_trottoir",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:crossroad_bus",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:operation_melmap_sig_car",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:pm2035_categorisation_offre_tc",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_villeneuve_d_ascq:centre_accueil_loisirs",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_villeneuve_d_ascq:centre_social",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:challenge_metropolitain_du_velo",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:challenge_meropolitain_velo",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:trajets_challenge_europeen_velo",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_espacepublic:clas_traf",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_villeneuve_d_ascq:commune",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel_gardo",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel_comm_orga",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel_comm_llh_orga",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:composteurs_sites",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:comptages_voirie",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:bike_histo",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:parking",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:pm2035_divat_1_2",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:domanialite",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:decheterie_fixe",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:decheterie_mobile",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_roubaix:decoupage_de_la_ville_de_roubaix_par_quartiers",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:decoupage_de_la_ville_de_roubaix_par_secteurs",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_espacepublic:secteur_gestion",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:ocsmel_consultation",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_economie:entrepreneuriat_etudiant",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:edpm_vae_libreservice",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_administration_et_action_publique:ou_sont_elles_1",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:filaire_des_voies_de_la_ville_de_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:fonds_de_participation_des_habitants_fph_2010_2014",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:fonds_de_travaux_urbains_entre_2015_et_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_espacepublic:couronne_arbre",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:id_trc_pr",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "dsp_ilevia:ilevia_traceslignes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:implantation_des_arceaux_velos_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:le_potentiel_eolien_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:le_perimetre_dautorisation_prealable_de_mise_en_location",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:annuaire_sport_pass",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:aires_de_jeu",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_arbres_remarquables_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_bennes_de_tri_selectif_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_bornes_de_recharge_de_vehicules_electriques_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_batiments_art_deco_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_contours_iris_de_la_ville_de_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_environnement_energie:time2adapt_lieux_frais",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:sdit_ligne",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:sdit_ligne_dup_trt",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:lim_tonnage",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_roubaix:liste_points_de_depots_du_magazine_municipal_roubaix_2016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:stations_metro",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel:localisation-des-differents-services-publics-a-roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:mel_mairie",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_impermeabilisation_adm",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_impermeabilisation_g_05",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_impermeabilisation_g_15",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_impermeabilisation_g_20",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_impermeabilisation_g_evo_0515",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_impermeabilisation_g_evo_0520",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_impermeabilisation_g_evo_1520",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_vegetation_adm",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_vegetation_g_05",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_vegetation_g_15",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_vegetation_g_20",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_vegetation_g_evo_0515",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_vegetation_g_evo_0520",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:ocs_indicateur_vegetation_g_evo_1520",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:agpl",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:bruit_multi",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:bruit_mel",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_administration_et_action_publique:ou_vivent_nos_moineaux_",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_plu:gpu_habillage_lin",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_plu:gpu_habillage_txt",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_plu:gpu_information_lin",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_plu:gpu_information_pct",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_plu:gpu_prescription_lin",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_plu:gpu_prescription_pct",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_plu:gpu_prescription_surf",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_plu:gpu_information_surf",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_plu:gpu_zone_urba",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_sailly_lez_lannoy:parcours_patrimoine_sailly",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:arbres_opendata_cassel_nvmonde_barbieux",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_limite_administrative:commune_population",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:pmr",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:a_eurometropole",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_roubaix:delimitation_bureau_de_vote_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:delimitation_bureaux_de_vote_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_limite_administrative:a_scot",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel85",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel90",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel95",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_villeneuve_d_ascq:quartier",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:ta_rtge_lineaire_consultation",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:ta_rtge_point_consultation",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:statutvoie",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:voie_regul_scolaire",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:sc_schema_cyclable_pm35_2023",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:pm2035_action_sdvelo_pointsdurs",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:pm2035_sdpem",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_villeneuve_d_ascq:sectorisation_scolaire",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:sens_unique",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:sdit_station_dup_trt",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:sdit_station",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "ville_villeneuve_d_ascq:structure_petite_enfance",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:travaux_voie",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel_territoire_gouvernance",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:tramway_lignes",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:tmjo_par_sens_v85",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:operation_melmap_sig_ouv",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:consultation_base_voie",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:operation_melmap_sig_tro",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:mel_ut",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "dsp_ilevia:vlille_temps_reel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_espacepublic:voies_mel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_espacepublic:voies_vertes_chemins",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_espacepublic:consultation_voie_administrative",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:convoi_excep",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_administration_et_action_publique:votre_ete_en_metropole_propositions_cartographie",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_limite_administrative:zfe_mel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_environnement_energie:bruit_zones_calmes",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_limite_administrative:sivr_zone_agglo",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_espacepublic:zone_apaisee",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:jour_collecte",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:bruit_zones_enjeux",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "dsp_ilevia:abri_velo",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:accessibilite_pmr",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:acte",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:acte_annexe",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:actes_et_deliberation_du_conseil_municipal_de_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:activite_des_mediatheques",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:affluence_et_activites_de_la_grand_plage_h_par_h_depuis_2014",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:agence",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:agences_points_ventes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:aires_de_jeux_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:algorithmes_mel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:alimentation_en_metropole",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:amenagement_englos_les_geants_e",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:amenagement_englos_les_geants_p",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:annuaire_des_associations_inscrites_a_la_maison_des_assos",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:archives_municipales_etat_des_instruments_de_recherche_publies",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:archives_municipales_statistiques_dinscription_usager",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:arret_point",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_urbanisme:bien_etre_territorial",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_mobilite_et_transport:bike",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:bords_de_deule_d_ici_a_2040_debats",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:bords_de_deule_dici_a_2040_propositions",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:bords_de_deule_dici_a_2040_propositions_commentaires",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:borne_info_voyageur",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:bornes_dateliers_velos_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:box_a_velos_a_lille_lomme_et_hellemmes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:budget_primitif",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2014",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2015",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:budget_primitif_2015_2018_ville_de_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2018",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2019",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2020",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2021",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2022",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:budget_primitif_2023",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:bureaux_de_vote_sur_les_communes_de_lille_hellemmes_et_lomme",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:caracteristiques_des_adherents_a_la_mediatheque_la_grand_plage",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:cartographie_station",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:catalogue_des_jeux_de_donnees_de_la_ville_de_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:com_reseaux_sociaux_mel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:comptage_abri_velo",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:comptages_velo",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:compte_administratif",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:compte_administratif_2014",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:compte_administratif_2015",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:compte_administratif_2016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:compte_administratif_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:compte_administratif_2018",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:compte_administratif_2019",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:compte_administratif_2021",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:compte_administratif_de_la_ville_de_roubaix_2015_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:concertation_habitat_en_metropole",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel:concertation_habitat_metropole",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:concertation_logement_etudiants_en_metropole",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_la_metropole_moins_2_degres_commentaires_propo_c",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_la_metropole_moins_2_degres_commentaires_propo_d",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_la_metropole_moins_2_degres_propositions_consult",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_la_metropole_moins_2_degres_propositions_dactions",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_la_metropole_moins_2_degres_questionnaire",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_les_projets_de_nouvelles_lignes_de_transport_pro0",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_les_projets_de_nouvelles_lignes_de_transport_pro1",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_les_projets_de_nouvelles_lignes_de_transport_pro2",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:construisons_les_projets_de_nouvelles_lignes_de_transport_pro3",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:conventions_subventions_lille_lomme_hellemmes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:couleurs_lignes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:declaration_gec_58",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_houplin_ancoisne:defibrillateurs_houplin_ancoisne",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:deliberation",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:deliberation_annexe",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_tourcoing:deliberations_conseil_municipal",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:distributeurs",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_plu:doc_urba",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_plu:doc_urba_com",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:donnees_essentielles_mel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:donneesessentielles_1",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:eaje_alsh",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_villeneuve_d_ascq:election_bureau_vote",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_villeneuve_d_ascq:election_emplacement_affichage",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_villeneuve_d_ascq:election_secteur_bureau_vote",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:emprunt",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:enquete_deplacement_2016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:entree_sortie_metro",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_houplin_ancoisne:equipements_de_houplin_ancoisne",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:equipements_lille_hellemmes_lomme",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel:equipementsculturelsvilleneuvedascq_dataapi",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:espaces_naturels_et_agricoles_enquete",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:espaces_naturels_et_agricoles_propositions",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:espaces_naturels_et_agricoles_propositions_commentaires",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:et_maintenant_on_imagine_la_mel_comment_propositions_debats",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:et_maintenant_on_imagine_la_mel_comment_questionnaire",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:executif_ville_de_lille_lomme_hellemmes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:fichier_etat_civil_format_od",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:frequentation_agence",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_de_leuro_2016_selon_le_departement_dorigine",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_du_musee_de_fromelles_selon_le_pays_dorigine",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_du_stade_de_leuro_2016_selon_lage_des_visiteurs",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_du_stade_de_leuro_2016_selon_le_genre_visiteurs",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_fanzone_lille_euro_2016_selon_situation_vie",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_fanzonelille_euro_2016_par_visiteurs_etrangers",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_sites_euro_2016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_sites_euro_2016_selon_region_origine",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:frequentation_stadepm_euro_2016_par_visiteurs_etrangers",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ileo:ftp_montant_total_deau_facture_par_commune",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ileo:ftp_nombre_dabonnes_par_commune",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ileo:ftp_volume_deau_facture_par_commune",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:gamme_tarifaire",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:grand_debat_participation_citoyenne_mel_contribution_libres",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:grand_debat_reponses_aux_questions_du_president",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_habitat:hab_pdl_apd",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_habitat:hab_pdl_apml",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_habitat:hab_pdl_dml",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:horaire_commerce_station",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:physical_stop",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:mobilier_point_arret",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:parking_relais",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:inventaire_collections_botaniques_du_jardin_des_plantes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:inventaire_mineralogique_du_musee_dhistoire_naturelle",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:les_deces_enregistres_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:les_mariages_enregistres_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:les_naissances_enregistrees_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_emplacements_de_stationnement_pmr_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_etablissements_de_sante_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_marches_de_plein_vent_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_quartiers_de_roubaix_et_leur_elue_referente",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_structures_culturelles_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_structures_sociales_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:les_zones_de_stationnement_payant_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:lieu_des_nuitees_selon_les_visiteurs_lors_de_leuro_2016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:lieux_dacces_au_numerique_portail_solidarites_ccas_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:limitations_categorielles_et_dimensionnelles_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:limite_des_quartiers_de_lille_et_de_ses_communes_associees",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:liste_elus",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_college_public_prive_roubaix_2016_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_commerces_roubaisiens_2016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_des_bureaux_de_vote_de_la_ville_de_roubaix_2021",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_des_cheminees_dusine_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_des_jardins_familiaux_et_partages_de_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_des_residences_etudiantes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_ecoles_publiques_privees_2016_2017_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_etablissements_enseignements_superieur_2015",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_lycees_public_prive_roubaix_2016_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_monuments_historiques_de_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_panneau_affichage_libre_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:liste_zone_de_compostage_zero_dechet",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:localisation_point_arret",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel:localisation-des-differents-services-publics-a-roubaix_dataapi",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:localisation_des_defibrillateurs_dans_les_salles_sports_roubai",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:localisation_des_differents_services_publics_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:localisation_des_equipements_sportifs_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:localisation_des_horodateurs_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:mairiedequartiers",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:marche_en_metropole_propositions_libres",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:marche_questionnaire",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:mel_toi_de_l_europe_enquete",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:menus_de_la_restauration_des_creches_a_lille_lomme_hellemmes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:menus_de_la_restauration_scolaire_a_lille_hellemmes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:menus_de_la_restauration_scolaire_a_lomme",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:monuments_historiques_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:musee_de_lhospice_comtesse_inventaire_des_notices_disponibles",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:musee_dhistoire_naturelle_extrait_collection_ethnographique",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ileo:nombre_dabonnes_ileo_par_activite_et_par_commune",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ileo:nombre_dabonnes_ileo_par_types_de_paiement_par_commune",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:nouvelle_gestion_des_dechets_en_metropole_propositions_libres",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:nouvelle_gestion_des_dechets_en_metropole_reponses_quest",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:pacs_enregistres_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:palais_des_beaux_arts_inventaire_des_sculptures",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_environnement_energie:pap_collecte",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:parc_bus",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:parc_vfe",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:parcs_et_squares_de_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:parcs_jardins_lille_hellemmes_lomme_emprise",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_villeneuve_d_ascq:parking_mobilite_douce",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:parkings_et_coordonnees",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:patrimoine_arbore_par_essence_de_la_ville_de_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:perimetre_de_la_spr_sites_patrimoniaux_remarquables",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:perimetre_de_la_zone_franche_urbaine_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:perimetre_des_bureaux_de_vote_avant_2015",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:perimetres_des_qpv_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:perturbations",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:pic_contrat_ville",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_plu:plu_ds_zone",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:point_vente",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:pois0",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:ponctualite",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:prenoms_donnes_a_roubaix",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:prenoms_donnes_aux_enfants_nes_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_des_elues_en_conseil_metropolitain_mandat_2020_2026",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_des_elus_en_commissions_cao_a_partir_janvier_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_des_elus_en_commissions_jusquau_31122016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_des_elus_en_conseil_metropolitain_a_partir_01012017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_des_elus_en_conseil_metropolitain_jusquau_31122016",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_elus_bureau_mel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_elus_cao_ccsp",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_elus_commission_mel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_elus_conseil_mel",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:presence_elus_metropolitains_commissions_depuis_janvier_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:prets_enregistres_dans_les_mediatheques",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:prochains_passages",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:propositions_5_minutes_chrono_pour_ameliorer_les_services",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:quattendez_vous_de_votre_visite_au_jardin_des_geants_com",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:quattendez_vous_de_votre_visite_au_jardin_des_geants_prop",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:quattendez_vous_de_votre_visite_au_jardin_des_geants_quest",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:questionnaire_5_minutes_chrono_pour_ameliorer_les_services",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:questionnaire_commande_publique_et_achats_responsables",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:reinventons_les_deplacements_du_quotidien_en_metropole_debats",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:reinventons_les_deplacements_du_quotidien_en_metropole_enquete",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:reinventons_les_deplacements_du_quotidien_en_metropole_prop",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:reinventons_les_deplacements_du_quotidien_en_metropole_prop_c",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:reservations_enregistrees_dans_les_mediatheques",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:rues_scolaires",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:schema_directeur_des_infrastructures_de_transport_commentaires",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:schema_directeur_des_infrastructures_de_transport_contrib",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:schema_directeur_des_infrastructures_de_transport_prop",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:schema_directeur_des_infrastructures_de_transport_reponses_q",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_villeneuve_d_ascq:secteur_distribution_la_tribune",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:seuils_de_rue_a_lille_lomme_et_hellemmes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:siredo",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:stationnements_reserves_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:subventions_aux_associations",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_roubaix:subventions_votees_aux_associations_de_23000_euro_depuis_2017",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:tdf_2025_horaire_passage",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:tdf_2025_parking_arretes_communes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:tdf_2025_poi",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:tdf_2025_polygone",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:tdf_2025_trace",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_culture_tourisme_sport:tdf_2025_trace_arretes_communes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel:test_fne_df_dh",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_mobilite_et_transport:test_parc_vfe",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:tmp_validation_titre",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:troncons_de_rue_a_lille_lomme_hellemmes",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:validation_mode_trans",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:validation_titre",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "dsp_ilevia:vitesse_moyenne_bus",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:vos_habitudes_dachat_en_metropole_questionnaire",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:votre_ete_en_metropole_enquete",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:votre_ete_en_metropole_propositions",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_administration_et_action_publique:votre_ete_en_metropole_propositions_commentaires",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:zones_de_stationnement_payant_residents_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_lille:zones_reglementees_a_lille",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "ville_villeneuve_d_ascq:ecole_publique",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel:equipementsculturelsvilleneuvedascq",
                "default_crs": "EPSG:4326"
            },
            {
                "name": "mel_environnement_energie:pav_etat_parc",
                "default_crs": "EPSG:2154"
            },
            {
                "name": "mel_environnement_energie:geotech_visualisation_site_etude",
                "default_crs": "EPSG:2154"
            }
        ],
        "version": "2.0.0",
        "detected_layer": {
            "name": "mel_mobilite_et_transport:parking",
            "default_crs": "EPSG:2154"
        },
        "output_formats": [
            "application/gml+xml; version=3.2",
            "DXF",
            "DXF-ZIP",
            "GML2",
            "KML",
            "SHAPE-ZIP",
            "application/geo+json",
            "application/geopackage+sqlite3",
            "application/json",
            "application/vnd.google-earth.kml xml",
            "application/vnd.google-earth.kml+xml",
            "application/vnd.ogc.fg+json",
            "application/x-gpkg",
            "csv",
            "excel",
            "excel2007",
            "geopackage",
            "geopkg",
            "gml3",
            "gml32",
            "gpkg",
            "json",
            "text/csv",
            "text/html",
            "text/xml; subtype=gml/2.1.2",
            "text/xml; subtype=gml/3.1.1",
            "text/xml; subtype=gml/3.2"
        ]
    },

I've used the existing Téléchargements tab.
Using a drop-down download button can be done in a different PR.

Copy link
Contributor

@abulte abulte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice 💅

VERSION: version,
TYPENAME: layer.name,
OUTPUTFORMAT: format.mimetype,
SRSNAME: layer.default_crs,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure it will be problem, but supported only from 1.1.

maudetes and others added 4 commits March 6, 2026 10:46
Co-authored-by: Alexandre Bulté <alexandre@bulte.net>
…plorerViewer.vue

Co-authored-by: Alexandre Bulté <alexandre@bulte.net>
@maudetes maudetes requested a review from ThibaudDauce March 9, 2026 13:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants