Blogue de la géomatique du MSP

Le service Web de géolocalisation du MSP

Auteur : gign02

Thématique des billets de la semaine du 17 mai : Service web de géolocalisation (GLO)

BUT

Le but du service Web de géolocalisation était de créer un outil qui permet de rechercher des informations selon différents critères (adresse, lieux d’intérêts, borne kilométrique, coordonnées GPS, critère de proximité ou “près de”, métadonnées, etc.).  L’information retournée devait permettre aux applications cliente de se localiser plus facilement et plus rapidement sur le territoire Québécois.  Finalement, l’outil de recherche devait être obligatoirement accessible par des technologies (Java, .NET, PHP, Flash, etc.) et/ou des plateformes (Windows, Linux, etc.) multiples.  Pour cette raison, l’approche en service Web a été préconisée.

DESCRIPTION GÉNÉRALE DU SOAP

Le service web de GéoLOcalisation (nommé GLO) du MSP utilise le protocole de communication SOAP.  Ce protocole permet de rendre l’accès au service disponible à un grand nombre de personnes/organisations autant à l’interne qu’à l’externe et ce, en étant indépendant de l’environnement technologique des actuels/futurs utilisateurs.  En effet, le protocole SOAP étant très répandus au sein des ministères et organismes, l’accès au service pour extraire des informations peut se faire facilement sans trop de développement personnalisé.

Le serveur GLO s’inspire largement de ce qui se fait déjà dans le monde des outils de recherche sur le Web.  On a qu’à penser à Google qui utilise notamment le protocole SOAP pour certains de ses services : http://code.google.com/apis/soapsearch/reference.html

Le terme SOAP, dont l’acronyme signifie Simple Object Access Protocol,  est un protocole qui permet de faire des appels sur des ordinateurs distants (RPC).  Le protocole SOAP est orienté objet et bâti sur le format XML. Il est composé de deux parties :

  • Une structure qui sert à héberger les informations sur le message.  Cette structure, que l’on nomme enveloppe permet le transfert ainsi que le traitement des messages (requête et réponse);
  • Une structure de données qui forme le message lui-même.

Bien que ce ne soit pas obligatoire, la structure des messages (requête et réponse) est souvent décrite à l’aide d’un fichier WSDL  (Web Services Description Language).  Ce dernier représente l’interface publique d’accès au service SOAP. Voici le schéma de fonctionnement du service SOAP :

DESCRIPTION DU SERVICE AU MSP

L’innovation de ce service au MSP repose sur sa grande fiabilité, son utilisation multiplateforme ainsi que sur la fréquence des mises à jour des données de base (ex. mensuelle pour les données importantes, bi-annuelle pour d’autres moins cruciales). Le système de base de données géospatiale qui gère toutes les requêtes du service est PostgreSQL/PostGIS depuis le mois d’avril 2010. Aucune différence dans la performance du service dans les requêtes gérées par Oracle (avant avril 2010) par rapport à PostGIS n’a été remarquée. Le langage de programmation dont s’appuie la base du service du MSP est le PHP.

Les mises à jour des adresses nous sont acheminées à tous les mois par le MRNF et par la suite nous appliquons un traitement qui fusionne les données d’Adresses Québec (MRNF), les données routières (MTQ), le référentiel d’adresse du Directeur générale des élections (DGE) et le fichier de localisation des immeubles du MAMROT, des données d’interpolation d’adresse (MSP) et enfin des données d’historique municipale et d’odonymie (MSP et DGE). Ce processus est assez complexe et nous a demandé beaucoup de temps et de discussion avec nos partenaires pour arriver à un résultat très intéressant. Notez que cette fusion de données n’est utilisée que pour faire des recherches d’adresse et de géocodage en lot disponible par l’entremise de notre service GLO. Des fonctions de recherche par proximité (zone tampon) des lieux d’intérêts prioritaires en sécurité civile (école, hôpital, garderie, poste de police, caserne d’incendie, etc.) peuvent être également demandées au service, de même que des informations sur les métadonnées (ex. producteur, date de mise à jour, conditions d’utilisations, etc.) des couches d’information géographique disponibles au MSP.

FONCTION « APPEL EN MODE URL »

Le service GLO peut être appelé par un simple appel URL.  Cette méthode d’appel est plus simple, car elle ne nécessite pas la création d’un message SOAP.   Elle permet aussi de recevoir les résultats formatés en HTML. Il est déployé en mode URL par la clientèle voulant intégrer le service rapidement sans avoir à entrer dans les détails de l’interface SOAP de requête/réponse.

CLIENTÈLE VISÉE ET ACCÈS

La clientèle visée par ce service sont les utilisateurs internes d’applications de géomatique au MSP (ex. les G.O.LOC), les partenaires de sécurité publique du MSP (ex. centre d’appel 9-1-1) puis les ministères et organismes du gouvernement du Québec impliqués dans l’ACRI-Géo. Pour chaque demande acceptée par l’équipe de la géomatique au MSP, l’accès est sécurisé (en fonction d’une adresse IP et d’une clé unique) et un outil de suivi des requêtes permet de connaître l’activité du service et le détail des recherches passés au service. Depuis sa mise en ligne interne, nous avons en moyenne 500 requêtes aux services par jour. Les partenaires suivants du MSP ont testé ou intégré ce service Web de géolocalisation dans leur application cartographique :

  • Institut national de santé publique du Québec (intégré);
  • Commission de protection du territoire agricole du Québec (intégré) ;
  • ministère des Transports (intégré);
  • ministère des Affaires municipales, des Régions et de l’Occupation du territoire (SIGAT Géo : intégré);
  • ministère des Services gouvernementaux (testé);
  • ministère du Développement durable, de l’Environnement et des Parcs (testé);
  • comité de bassin versant (ex. COGESAF : testé);
  • centres d’appels d’urgence 9-1-1 (ex. : ville de Terrebonne : testé) , etc.

LES DÉVELOPPEMENT FUTURS

Dans l'avenir, l’équipe de géomatique du MSP a pour objectif de répondre à d’autres besoins, comme :

  • gérer des itinéraires entre deux points à partir du même service;
  • optimiser le service de géocodage en lot;
  • intégrer une recherche phonétique dans les recherches textuelles;
  • améliorer la recherche de lieu d'intérêt;
  • supporter la norme OpenLS dans le service de géolocalisation Web.

POUR PLUS D’INFORMATION

Si vous désirez plus d’information sur le service, voir l’aide en ligne, la présentation du service ou contactez l’équipe de la géomatique du MSP à ce courriel : geomsp(a)msp.gouv.qc.ca.