Méthodologie de transformation

publicité
Outils et méthodes de
transformation de schéma
[email protected]
ISN.14.277
18 Novembre 2014
L’atelier du KEN INSPIRE sur les transformations
de schéma
•
•
•
•
Paris – Octobre 2013
Organisé par le KEN: Knowledge Exchange Network (Eurogeographics)
Avec le support d’EuroSDR
Objectifs:
– présenter les différents outils et méthodes de transformation de schémas
• Par les développeurs des outils
• Ou par les utilisateurs
– trouver des critères pertinents pour choisir les bons outils
• Les présentations et les enregistrements filmés sont disponibles sur le site
d’EuroGeographics
http://www.eurogeographics.org/content/inspire-ken-eurosdr-workshop
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Géomédia
pour INSPIRE
XSLT - Stetl
deegree
Arc GIS pour
INSPIRE
Application schema for
GeoServer
HALE
exoMS
GeoConverter
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Talend
Go Publisher
La transformation de schéma est une histoire
d’arbres et de tables
Qu’est-ce qui vient en premier?
L’arbre
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
ou la table ?
Plusieurs sortes de modèles de données
Monde
réel
Monde
réel
Métamodèle
Métamodèle
Schéma
conceptuel
Indépendant de la
plate-forme
Schéma
conceptuel
Schéma
logique
Transformation
de schéma
Schéma
logique
Schéma
physique
Données
géo
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Dépendant de
la plate-forme
Transformation
de données
Schéma
physique
Données
géo
Au commencement était
La table
ou plutôt cette sorte de table!
La plupart des données source ont un modèle logique basé
sur une structure tabulaire (base de données relationnelles)
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
A la fin, les modèles INSPIRE
Les modèles INSPIRE ont une structure hiérarchique
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
A la fin, les modèles
INSPIRE
La structure hiérarchique du
modèle INSPIRE du thème
“Dénominations géographiques”
telle quelle apparaît dans
l’interface de HALE (Humboldt
Alignment Editor)
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
A la fin, les modèles INSPIRE
Les attributs “atomiques”
Les types de
données
(data types)
Les classes d’objets
(feature type)
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Des tables sources aux arbres cibles
Méthode en une étape directement des tables source
à la structure arborescente INSPIRE GML.
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Des tables sources aux arbres cibles
Méthode en 2 étapes : faire les transformations dans
un environnement de tables puis convertir dans la
structure arborescente INSPIRE GML
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Des tables sources aux arbres cibles
Méthode en 2 étapes : convertir dans une structure
arborescente et faire les transformations dans un
environnement XML/GML
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Méthode en une étape : exemple
Go Publisher (Snowflake)
Transformation de schéma
Les données source
sont dans une base de
données. L’outil extrait
le schéma de données
Legacy
Database
Schema
Reads
database
schema
Set up
transformation
c
configuration
GO Publisher
Desktop
Reads ELF App
Schemas
Publishes
L’outil exécute les règles de
transformation sur les
données source et fournit
les données cible en GML
17 November, 2014
Validates against
schemas
L’utilisateur
définit les règles
de transformation
de schéma
L’outil
importe le
schéma cible
(ex: INSPIRE)
Interface Go Publisher
c
Schéma source
Définition des
transformations
Schéma cible
Transformations
Créer des
identifiants GML
Grouper des données
(dans un data type)
L’outil offre des
transformations simples
Concaténer des
attributs
ou plus complexes
(requêtes SQL)
Créer des constantes
Avantages de Go Publisher
• La configuration des transformations est (relativement) facile
et rapide
• L’outil permet de valider au fur et à mesure (sur les données)
Méthode en 2 étapes : faire les
transformations dans un
environnement de tables puis
passer en GML
Architecture
- Méthodes potentielles -
Phase 2
Applications clientes
utilisant
INSPIRE WFS/GML
Web Feature Service (INSPIRE Download Service)
Phase 1
Base de données de
distribution
Outils de la base de
données
Base de données de production
Logiciel de
transformation
Phase 1 : transformations vers une
base de distribution
 La base de données de distribution est une base
“pseudo-INSPIRE”
Base de données de
distribution
• Classe d’objets => table
• Association => table
• Data type => table
• Multiples valeurs d’un attribut => table
 Permet de définir des transformations
complexes
 Donne de bonnes performances.
25 June, 2013
Outils de la base de
données
Logiciel de
transformation
Base de données de production
Phase 2 : transformer en GML
Il faut fournir au WFS un fichier de
configuration pour lui expliquer
comment passer de la structure de
tables à la structure hiérarchique
INSPIRE.
WFS
Base de
données
source
Phase 1
Base de
données
pseudoINSPIRE
Phase 2
Méthode en 2 étapes : passer en
GML + faire les transformations
dans un environnement XML/GML
Exemple avec XSLT
Processus de transformation
Role d’OGR
OGR est un sous-ensemble de la bibliothèque de transformations open source
GDAL (Geospatial Data Abstraction Library)
• OGR effectue :
• La transformation de coordonnées
• La transformation de format
• GML simple feature
• géometrie simple (2D, interpolations
linéaires)
• Attributs simple (nombres, chaînes
de caractères, dates, ....)
• => GML dans un modèle logique
similaire à celui des données source
Role d’XSL(T)
XSLT: Extensible Stylesheet Language for Transformation
• XSLT effectue la transformation
de modèle
• transforme les concepts
• implemente le modèle
hiérarchique d’INSPIRE
• XSLT prend en entrée et fournit en
sortie des documents XML
XSLT : principe
Données
source en
XML/GML
Données cible
en GML
Règles de
transformation
sous forme de
code XSLT
XSLT
• Avantages
– Langage bien établi (depuis 1999)
– Beaucoup d’outils XSLT
– Basé sur XML, même langage que les schéma source et cible
• Inconvénients
– Complexe
– Pas d’interface utilisateurs
– Peu adapté pour des gros documents (schémas)
Quelques critères de sélection des
outils et méthodes
De la table à l’arbre
Choisir une méthode qui permet de passer du modèle tabulaire des
données source au modèle hiérarchique, arborescent d’INSPIRE.
Des tables sources aux arbres
cibles INSPIRE
Méthode en 2 étapes:
transformations dans un
environnement de tables + passer
en GML
Méthode en 2 étapes:
passer en GML +
transformations dans un
environnement XML/GML
Go Publisher
SGBD + WFS (GeoServer, deegree)
XSLT
HALE
Arc GIS for INSPIRE
Talend
Altova Map Force
GeoMedia for INSPIRE
exoMS
GeoConverter
FME
Méthode en une
étape
Geokettle n’a pas su résoudre le problème (expérience utilisateur)
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Transformation et services de
téléchargement
Transformation de schéma et services
de téléchargement
• La méthode de transformation de schéma doit être adaptée à la
solution de téléchargement
– Téléchargement par WFS
‒ Transformations en bases de données relationnelles + WFS
‒ Solutions intégrant WFS (exoWS, …..)
‒ ATOM feed:
‒ Transformations fournissant des fichiers GML
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Expressivité
(richesse dans les opérations de
transformation)
Comparaison des approches
Name
Tools
Domain
Expressivity2
Verbosity3
Maturity4
XSLT
10+
Universal + Spatial
80%
11145
4
XQuery
10+
Universal + Spatial
96%
392
4
EDOAL/gOML
2
Universal + Spatial
92%
91
3
RIF
3
Universal
80%
4145
2
QVT/ATL
4+
Universal
76%
117
3
UML-T
1
Universal + Spatial
60%
-.-
1
GeoKettle
1
Spatial
96%
-.-
3
Talend
1
Universal + Spatial
92%
-.-
3
FME
1
Spatial
100%
205
3
1
2
Research conducted in 2010-2011.
Coverage of functions listed in [Beare 2010], Appendix 2
35
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Altova Map Force n’est pas assez expressif
(pas de transformations géométriques)
Connaissance
Classification des approches
Name
Abstraction Schema
Paradigm(s)
Language
Primary
Driver
Primary
Representation
XSLT
Logical
XSD
Declarative+
Instance
Textual
XQuery
Logical
XSD
Procedural
Instance
Textual
EDOAL/OML
Conceptual
OWL+*
Declarative
Schema
Graphical
RIF
Conceptual
*
Declarative
Instance
Textual
QVT/ATL
Conceptual
UML
Both
Schema
Combined
UML-T
Conceptual
UML
Declarative
Schema
Graphical
GeoKettle
Logical
Internal
Procedural
Instance
Graphical
Talend
Logical
Internal
Procedural
Instance
Graphical
FME
Logical
Internal
Procedural
Instance
Graphical
Une interface graphique est plus conviviale.
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Conclusions
Méthodologie
• Les étapes préparatoires sont importantes
– Stratégie
• Définir l’ambition : INSPIRE à minimum ou INSPIRE + (modèle
étendu, …) ?
• Définir le périmètre: quelles données pour quel thème?
• Définir les priorités
– Mise en oeuvre
• Choix techniques : système de coordonnées, mode de
téléchargement
• Tables de correspondance
– Plusieurs compétences (connaissance des données source, du
modèle cible et du processus de transformation)=> plusieurs
personnes
– Étape à réaliser en détail => souvent longue
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Conclusions
• Niveau de difficulté des transformations pour INSPIRE
– Schémas INSPIRE complexes => beaucoup de règles de transformations
– Schémas INSPIRE conçus pour admettre les données existantes => peu de
points bloquants
•
Il existe de nombreuses solutions techniques de transformations de
schémas
•
La solution choisie doit tenir compte de la différence de modèle logique
• Cette différence de modèle logique est aussi un problème pour
l’utilisation des données INSPIRE
– Les SIG actuels ne savent pas manipuler les structures hiérarchiques
– Réflexions en cours pour proposer des modèles d’implémentation (modèles
logiques) plus simples dérivés des modèles conceptuels INSPIRE
•
•
Projet ELF (European Location Framework)
Commission Européenne – MIG (Maintenance and Implementation Framework)
CONNECTING YOU TO THE
AUTHORITATIVE GEO-INFORMATION
FRAMEWORK FOR EUROPE
Téléchargement