Utilisation d'un flux WFS et filtrer avec Umap

Bonjour à tous,

Après avoir suivi l’exemple pour la lecture d’un flux WFS sur Umap depuis la page de Magellium
( Accueil ), j’arrive à l’exemple suivant :
Autoroute de France - uMap

J’arrive donc à afficher 1000 objets OSM de type autoroute en affichant cette requête sur une carte Umap

https://magosm.magellium.com/geoserver/magosm/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=magosm:france_motorways_line&maxFeatures=1000&outputFormat=application/json&srsName=EPSG:4326

Par contre, en voulant adapter cette requête en filtrant sur un attribut (ref=‹ A 21 ›, par exemple), j’ai une erreur du serveur

La requête suivante renvoit bien des objets geojson :

https://magosm.magellium.com/geoserver/magosm/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=magosm:france_motorways_line&filter=<PropertyIsEqualTo><PropertyName>ref</PropertyName><Literal>A 21</Literal></PropertyIsEqualTo>&maxFeatures=10000&outputFormat=application/json&srsName=EPSG:432626)

Avez-vous une idée des paramètres à changer pour que cela fonctionne dans Umap ?

Merci d’avance de votre aide

1 Like

Cela fonctionne en utilisant les balises d’échappement en html

1 Like

Super ça : merci pour cette méthode que je ne connaissais pas ! :slight_smile:

Du coup, tu peux nous donner la syntaxe finale fonctionnelle, et/ou un lien Umap ?

Alors, j’ai mis un exemple en ligne sur cette carte :
http://umap.openstreetmap.fr/fr/map/autoroute-a68_667459

Et la syntaxe fonctionnelle est :

https://magosm.magellium.com/geoserver/magosm/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=magosm:france_motorways_line&filter=%3CPropertyIsEqualTo%3E%3CPropertyName%3Eref%3C/PropertyName%3E%3CLiteral%3EA%2068%3C/Literal%3E%3C/PropertyIsEqualTo%3E&maxFeatures=10000&outputFormat=application/json&srsName=EPSG:4326

Si tu as un compte Umap, je peux t’ajouter en éditeur, comme ça tu verras les paramétrages que j’ai mis.

Tu constateras par contre que la simplification des lignes fait une discrétisation bizarre notamment dans les courbes en zoomant.
Je n’ai pas le souci avec un geojson créé à partir du même flux WFS sous Qgis.

Si tu sais d’où peut venir le problème, et comment le résoudre, je suis preneur !

1 Like

Merci :slight_smile: : le voici
http://umap.openstreetmap.fr/fr/user/SylvainM/

Je vais regarder ça quand je trouverai le temps !

Et voilà, c’est fait

A priori, je n’ai accès qu’en lecture à la carte, du coup je ne peux pas voir comment sont configurées les couches :wink:

Cela doit être bon maintenant

1 Like

Super : merci à toi !
Je vais regarder ça !

Super, j’y vois plus clair maintenant et j’ai décomposé l’URL :

https://magosm.magellium.com/geoserver/magosm/ows?
service=WFS
&version=1.0.0
&request=GetFeature
&typeName=magosm:france_motorways_line
&filter=%3CPropertyIsEqualTo%3E%3CPropertyName%3Eref%3C/PropertyName%3E%3CLiteral%3EA%2068%3C/Literal%3E%3C/PropertyIsEqualTo%3E
&maxFeatures=10000
&outputFormat=application/json
&srsName=EPSG:4326

Et pour le filter :
<PropertyIsEqualTo><PropertyName>ref</PropertyName><Literal>A%2068</Literal></PropertyIsEqualTo>

Je ne connaissais pas ce langage de filtrage. C’est du XML c’est ça ? Tu as de la documentation sur ce langage ? (je suppose que c’est la norme WFS sur laquelle il faut que je me renseigne)

Pas de solution, mais c’est vrai que c’est très étrange !
Une capture d’écran pour illustrer :

Je suis moi aussi curieux de savoir d’où ça vient !
(ça ne le fait pas avec le WFS de l’IGN)

On dirait que ça vient d’un arrondi à un nombre insuffisant de décimales pour les coordonnées (ce qui créé des segments horizontaux ou verticaux).

Cela ressemble à du XML.
J’avais trouvé l’info sur une page web que je n’arrive pas à retrouver.

Mais tu en as d’autres ici : WFS Filter Encoding — MapServer 7.6.4 documentation
A noter que la requête faite dans Umap n’utilise pas
Il faut aussi que je creuse ce sujet des WFS

Et concernant les flux de l’IGN, j’utilise la version 1.0.0 et non la version 2.0.0
La syntaxe doit être adapté pour la version 2.0.0 du standard WFS

Et concernant le problème de découpage des polylignes, le problème a été réglé côté Magellium.

Bonjour,
Je rebondis sur ce post car je souhaiterais également trouver de la documentation sur les méthodes de filtrage pour Umap.
En résumé, j’ai une carte déjà active au niveau européen que je voudrais cloner avec seulement une partie des éléments visibles .
Merci par avance pour toute aide dans ce domaine et + d’infos si nécessaire
Bonne journée à tout le monde
Yves