Robert Laurini INSA de Lyon http://lisi.insa-lyon.fr/~laurini Quelques problèmes d’intéropérabilité de SIG : raboutement et ontologies Robert Laurini INSA de Lyon http://lisi.insa-lyon.fr/~laurini
Table des matières I – Généralités sur l’intéropérabilité 2 – Raboutement des BD géographiques 3 – Interopérabilité sémantique 4 – Projet Towntology 5 – Conclusions
Visions de l'interopérabilité
Intéropérabilité Intéropérabilité des données et des traitements Rêve des utilisateurs, cauchemar pour les informaticiens Interopérabilité totale: impossible actuellement Open GIS
Problématiques de l’intéropérabilité Problèmes Définition Niveaux d’intéropérabilité
Nécessité de l’intéropérabilité "Legacy systems" Variété des logiciels, des applications, des gestionnaires Difficulté de réécriture et de réutilisation Connexion entre les sites
Définition de l'intéropérabilité "Capacité technique des applications d’organismes différents à coopérer sans conflits de systèmes, de logiciels ou de contenu.". Bien évidemment, on se refuse de créer totalement un nouveau système à partir des autres ; mais on accepte de créer des méthodes et/ou des outils pour permettre l’intéropérabilité
Niveaux d’intéropérabilité syntaxique sémantique T Applications Applications E R Accès aux bases de données Accès aux bases de données O P E Appel des procédures distantes R Appel des procédures distantes A B Fichiers I Fichiers L I Protocole de réseaux T Protocole de réseaux E
Niveaux d’intéropérabilité Syntaxique: au niveau des types abstraits des attributs (valeur) au niveau des schémas (relations) Sémantique: au niveau de la signification des données définition des données et des attributs géométrie et topologie
Exemple des routes Distances (km ou miles) syntaxique Routes et autoroutes sémantique Mais qu’est ce qu’une rue (du point de vue informatique) ?
« Nous avons le fichiers des rues ! » Le fichier des rues ? Oui, nous l’avons Le fichier des rues ? Oui, nous l’avons Le fichier des rues ? Oui, nous l’avons!
« Nous avons le fichiers des rues ! » Eboueurs Postiers Gaziers Rues privées Non Oui ?? Rues publiques Oui Oui Généralement oui Rues avec gaz ? ? Oui Rues sans gaz ? ? Non 234 251 241
Multiplicité des représentations Rue représentée Rue représentée par deux par un graphe polylignes Responsable Responsable du trafic routier du cadastre Responsable Responsable du revêtement des réseaux des chaussées souterrains Rue représentée Rue représentée par une comme un surface volume
Modèle de l'OpenGIS Consortium d’entreprises, de centres de recherches et d’administrations Intéropérabilité des applications géographiques Standards http://www.opengis.org
Modèle de l'OpenGIS
Solution ESRI: syntaxtique
Diversité des couches d’information BD du gaz BD des bâtiments BD Cadastre
Couvertures géographiques BD Zone B BD Zone A BD Zone C
Thématiques et couvertures Même couverture spatiale, diverses couches de données Couvertures spatiales différentes, couches de données similaires Couvertures spatiales contiguës, couches de données similaires
Exemples Pollution du Léman Suivi du Rhin Méditerranée Projets transfrontaliers Transports internationaux Croisement de diverses sources de données …
Hypothèses communes Existant Objectifs : transparence Contiguïté des couvertures géographiques, ou bien légères superpositions Couches de données similaires SGBD ou SIG différents Pas de changements dans les BD locales Objectifs : transparence Une seule couverture géographique Langue(s) de travail Définition consensuelle des attributs
Problèmes à résoudre Raboutement des BD géographiques Cartographique Sémantique Sémantico-géographique Topologique Création d’une ontologie de domaine
2 – Raboutement des BD géographiques Importance du raboutement des cartes Raboutement des BD géographiques Projections, et systèmes de références différents Tenir compte de la qualité de l’information Erreurs de mesure
Différences géométriques Tuyaux d’eau Tubi per il gas BD de la Comp. du Gaz BD de la Compagnie des Eaux Superposition
Différences aux frontières BD 1 BD 1 Bande de correction à la frontière BD 2 BD 2
Exemple de raccordement Zone B Rivière C Site A RN 75 Routes RD 65 Affluent de la rivière C Bâtiment artificiellement coupé en deux RD 73 Site B RN 7 5 Zone B
Au voisinage des frontières Les tracés des frontières sont différents Non alignement des objets (ex routes) Objets artificiellement coupés (fleuve, bâtiment, etc.) Objets ou portion d’objets absents à cause de la différence des spécifications des BD
Forçage Z one A Zone B Qualité qa Qualité qb RN 75 Sens du forçage Bâtiment Qualité qb
Points homologues Choix des points homologues Calcul des nouvelles valeurs des coordonnées des points homologues (en fonction de la qualité respective des BD) Alignement des altitudes selon le géoïde considéré
Formules de rubber-sheeting Rubber-sheeting linéaire Rubber-sheeting bilinéaire
Exemple de terrains contigus BD A BD B Limite du terrain B Limite du terrain A Zone intermédiaire
Solution Unification du modèle par des triangles. Création de triangles complémentaires dans la zone intermédiaire Extrait des bases de données à raccorder
Bande élastique BD 1 BD 2 BD 3
Forçage des points aux frontières en milieu urbain Commune A Points à forcer Commune B Commune A Largeur de la bande élastique Commune B
Résolution d’une requête à cheval sur deux BD spatiales Points homologues Zone A Zone B Site A Site B Zone à transformer élastiquement lorsque B présente une demande à cheval sur A lorsque A présente à cheval sur B Zone sans modification des coordonnées Zone avec modification des Requête spatiale depuis A Zone sans modification des coordonnées
Raboutement et raccordement Raboutement cartographique Raccordement sémantique Raccordement topologique
Raboutement cartographique Correction des différences Forçage au voisinage des frontières Seulement au niveau cartographique les cartes paraissent belles pas de requêtes possibles sur la frontière
Raccordement sémantique Reconstruction des objets artificiellement coupés (rivières, etc.) ce sont des objets uniques ayant des morceaux dans différentes BD il est possible de lancer des requêtes sur ces objets certains traitements sont possibles
Raccordement topologique Continuité des graphes (continuité topologique) créer des nœuds dont l’une des arêtes appartient à une base, et l’autre à une seconde la récursivité devient possible Les algorithmes de recherche de chemin fonctionnent
Résolution des requêtes et indexation spatiale Localisation de l’index global Recherche des sites pertinents Résolution des requêtes inter-bases
Indexation spatiale distribuée Index spatial global Index local 1 basé sur des quadtrees Index local 2 de type grille Index local à la Peano
Rectangles de zone englobants DB - 2 DB - 1 DB - 4 DB - 3 Bases de données à intégrer Rectangles englobants
Où ranger l’index global ? Deux possibilités un unique exemplaire sur un site privilégié (en opposition avec la règle de Date) une copie par site Aucune difficulté à avoir un index global par site, car il est généralement de petite taille Prévoir les mécanismes pour y intégrer de nouvelles BD
Index global et locaux - local 1 - global - local 2 - global - local 4
Résolution d’une requête interbase Exemple de requête de zone à cheval sur plusieurs BD Uniquement 3 rectangles, donc 3 BD sont concernés par cette requête
Résolution d’une requête de chemin Point d’arrivée Point de départ Zones sélectionnées pour la recherche de chemin Ellipse de pertinence
Identificateurs locaux, globaux ; Identificateurs d'objects ; Continuité topologique Site 4 Site 5 ID = 31970 ID = 90234 Site 4 ID = 47308 RD 57 RN 75 RD 38 RD 29 RN 75 RN 75 Site 1 ID = 678 Site 2 ID = 3216 Site 3 ID = 8906
3 - Intéropérabilité sémantique Métadonnées Médiateurs Ontologies
3.1 - Métadonnées Informations sur les informations Dictionnaires de données Les métadonnées sont des informations qui permettent la description de tous types de données : nature, définition, origine, organisation, disponibilité, mise à jour, usage, cohérence, etc ...
Métadonnées spatiales (FGDC)
Médiateur = un adaptateur de données situé sur un réseau 3.2 Médiateurs Serveur de données Client Médiateurs Médiateur = un adaptateur de données situé sur un réseau
Exemples de médiateurs conversion de supports conversion d’unités conversion de structures changement de noms traduction de noms classification d’objets regroupements sémantiques etc.
Intéropérabilité par médiateurs
Intéropérabilité par médiateurs Médiateur = composant logiciel qui résout les conflits schématiques et sémantiques Wrapper = composant logiciel qui fournit des services d’accès aux données grâce à un langage commun entre les bd et les médiateurs ; il assure la traduction des requêtes, met en forme les résultats et les transmet aux médiateurs
Méthodologie d’intégration avec médiateurs Principe : petits modules répartis sur le long du réseau Repérer les données analogues dans les BD Ecrire les fonctions de conversions (a priori, un médiateur par attribut) Les installer aux endroits stratégiques
3.3 Ontologies Vocabulaire formalisé pour décrire des situations Ontological commitment : engagement par ontologie Langages : Ontolingua, KIF, etc.
Exemple d’ontologie Avalanche
Partage d’ontologie SIG Compagnie de l’Electricité Ontologie urbaine Correspondance des informations Correspondance des informations Correspondance des informations Correspondance des informations SIG du cadastre SIG Compagnie des Eaux SIG Compagnie du Gaz
Intéropérabilité par ontologie
Méthodologie d’intégration avec ontologie Principe : normalement l’ontologie est complète et pré-existante. Repérer les correspondances BD-ontologie et décrire les transformations en liaison avec cette ontologie Résolution dynamique des conflits (si médiateurs, résolution statique)
Interopérabilité au travers d'une ontologie de domaine BD BD rouge bleue
Correspondance avec médiateurs DB A DB B Ontologia A B Corrispondenze di dominio Ontologie Correspondance de domaine MEDIATORE MEDIATEUR Requêtes Données Génération
Exemple en démographie
Exemple de médiateurs (1) Contenu des DB : DB1 : 1 entité « résidents » DB2 : 2 entités « hommes » et « femmes » Comment obtenir DB1 : hommes et femmes ? DB2 : résidents ?
Exemple de médiateurs (2) Solution : avec mediatori Médiateurs exacts DB2.residents= DB2.hommes + DB2.femmes Médiateurs approchés DB1.hommes = 0.48DB1.residents DB1.femmes = 0.52DB1.residents
4 – Projet TOWNTOLOGY Création d'une ontologie pour l'urbanisme Première étape à Lyon (2002-2003) Voirie (en français) 900 concepts Seconde étape (2003-2004) Mise en place d'un réseau COST Extension à d'autres langues Mobilité Site web: http://lisi.insa-lyon.fr/~townto
Principes de Towntology 9 relations : est fait de est composé de est localisé à est utilisé pour est situé sur est un est un sous-ensemble de dépend de est un instrument pour Présentation visuelle Reseau sémantique Structure d'hypertexte Définitions multiples Origine des définitions Possibilité de mise à jour Photos et dessins
Projet Towntology Créer une ontologie de domaine ville urbanisme Initiateurs : INSA (LIRIS + EDU) Projet COST UCE 21 Université de Liège Queens University of Belfast Münster Universität Universidad Politécnica de Madrid Università della Basilicata Etc.
A Lyon Groupe de travail Voirie Autres domaines Trois permanents Deux doctorants en informatique Deux étudiants en urbanisme Voirie Actuellement > 800 concepts (en français) Graphe, relations, définitions, photos, etc. Autres domaines Transports, mobilité, etc.
Début de l’ontologie Ville Territoire Réseaux Populations Espace bâti Espace non-bâti Bâtiments Bâtiments Immeubles Bâtiments Bâtiments Bâtiments Monuments Espaces verts classés résidentiels commerciaux administratifs Historiques Places Espaces Terrains vagues d'eau Bâtiments Bâtiments Bâtiments Fleuve Terrains de Ponts Friches urbaines sportifs de service industriels religieux
Ontologie (suite) Bâtiment industriel Maison Appartement Immeuble de bureau Habitation Lieu de travail loge travaille Etre humain etc. etc. se divertit achète Lieux de loisirs Commerces Magasins Marché Hypermarché Cinéma Théâtre Parcs
Extrait de l’ontologie
Graphe de l’ontologie
Piste cyclable
Exemple : POS
Début de l’ontologie sur les transports ………
Description d’un concept
Portail
Interface graphique (browser)
Visualisation de contenu
6 – Conclusion Importance de l'intéropérabilité Importance de la sémantique des données Intéropérabilité n’est pas seulement un problème de programmation, mais plutôt différentes façons de voir la réalité Deux cas dans l’intéropérabilité des SIG Problèmes géométriques Rubber sheeting aux frontières Raccordement topologique Problèmes sémantiques Création d’ontologies de domaines
Merci de votre attention ! http://lisi.insa-lyon.fr/~laurini