Introduction
IGNFCollaboratifConnector est une extension du logiciel FME de Safe Software qui permet d'accéder aux fonctions de l'API Collaborative de l'Institut National de l'Information Géographique et Forestière (IGN).
IGNFCollaboratifConnector est le fruit d'une collaboration entre l'IGN et la société Veremes. Son ambition est de fournir un moyen simple et robuste d'accéder aux différentes fonction de l'API Collaborative.
Les Transformers de la suite IGNFCollaboratifConnector sont fournis gratuitement aux utilisateurs de FME mais ceux-ci doivent en respecter les licences et conditions d'utilisation.
Au moment de son lancement (beta en juin 2023, v1 en janvier 2024), IGNFCollaboratifConnector était seulement constitué de quatre Transformers mais de nouveaux outils pourront régulièrement être publiés au fur et à mesure des expressions de besoins utilisateurs ou internes à l'IGN. Pour sa v2, diffusée en novembre 2024, la gamme IGNFCollaboratifConnector s'est mise en conformité avec la v4 de l'API Collaborative et a été augmentée de IGNFCollaboratifDeleteReportConnector.
Le projet a fait l'objet d'une présentation à la conférence française FME 2023, le replay est disponible sur le site de Veremes.
Les autres étapes de communication et les métriques d'impact sont disponibles.
Exemple de cas d'usage, création de signalement.
Note
Votre avis nous intéresse ! Participez au développement et partagez votre expérience utilisateur
Pourquoi faire un Transformer personnalisé ?
L'API Collaborative est utilisée par le site web Espace Collaboratif ainsi que les applications mobiles et plugins.
Certains usages, par exemple les signalements multiples et automatisés, ne sont pas couverts par ces outils et nécessitent un développement ad-hoc, au travers par exemple de scripts.
L'emploi d'un ETL comme FME facilite la création de tels workflow, il convenait cependant de rendre disponible dans FME les fonctions de l'API.
La suite de Transformers IGNFCollaboratifConnector masque la relative complexité des appels aux fonctions de l'API, l’utilisateur n’a que quelques paramètres à renseigner pour ensuite aisément pouvoir injecter ses données/contributions dans l'Espace Collaboratif.
Pourquoi choisir IGNFCollaboratifConnector ?
Choisir IGNFCollaboratifConnector, c'est:
Utiliser les mêmes Transformers, que l'on soit agent IGN ou utilisateur des services IGN Principe Eating your own dog food (Wikipedia) ;
Bénéficier d'un effet de gamme: les Transformers de la gamme sont d'ergonomie, de conformité à l'API Collaborative, de qualité de développement, ..., homogènes. Ont notamment été recherchés une uniformisation autant que faire se peut des paramètres qui seraient communs à aux Transformers ;
Les Transformers IGNFCollaboratifConnector ne font qu’encapsuler les fonctions l'API Collaborative de l’IGN, mais avec exigence.
Bénéficier d'une facilité d'emploi:
Garantir un paramétrage le plus flexible possible, maximisant la possibilité de piloter les Transformers IGNFCollaboratifConnector par des valeurs d'attributs des Features entrantes dans les Transformers ;
L’interface utilisateur des Transformer est présentée en langue française ; de même que la documentation.
La documentation est disponible en ligne et embarquée dans le Transformer, cette dernière contient en outre un lien vers la documentation en ligne.
Garantir un paramétrage valide au regard des fonctions/routes de l'API IGN : URLs des points d’accès aux services, mécanisme d’authentification, paramètres des fonctions ;
Actuellement, l'authentification s’effectue via une sécurisation par identifiant / mot de passe au travers du protocole HTTPS Basic Auth.
Etre sans effort en conformité avec les évolutions de l'API Collaborative dont par exemple la v4 a été déployée le 21 mai 2024 de changelog ;
Bénéficier d'un design de Transformers sécurisant, optimisant les usages et possibilités d'emploi :
Vérifier la plausibilité des objets entrants : valeurs des attributs mobilisés par le service, géométrie (incluant la projection) ;
Optimiser les appels au service, gérer les éventuelles limitations du service sur la complexité, le volume, le nombre d’objets ;
Gérer de manière transparente les projections des données entrantes vis-à-vis de ce que les services requièrent ;
Formater les résultats issus des services de calcul ;
Rendre intelligible les messages d’erreur et rejets. Les Transformers de type Connector interragissant avec des APIs, les codes de retours HTTP classiques (403, 401, 200, ...) sont examinés et explicités. ;
Bénéficier d'un développement FME rigoureux et sincère:
Garantir le fonctionnement conforme aux spécifications de développement (cette documentation) via des tests rTest ;
Garantir que le développement utilise les versions les plus récentes des Transformers disponibles dans la version FME ciblée par IGNFCollaboratifConnector, actuellement la 2021.2.1.0 (build 21797).
Les Transformers personnalisés ne filtrent pas les données les traversant, on retrouve à la sortie les entités entrées ;
La donnée transitant par les Transformers personnalisés n'est pas altérée si ce n’est, le cas échéant, que par un enrichissement ;
Le développement exclut toute redirection des données auprès d’un serveur tiers, la donnée n'est pas exfiltrée ;
Les appels HTTPS seront complétés de métadonnées HTTP dont la version FME consommant le service IGN et la version du Transformer personnalisé (cf. le suivi des utilisations).
L’historique du Transformer est renseigné, il inclut notamment les jalons sans montée de version comme par exemple s'assurer de la comptabilité avec les nouvelles versions de FME.