DOC OFFICE GED

Fiche CVthèque

Français
Retour à la CVthèque

Fiche du profil 2 fiches regroupées (même personne)

Qualification
Poste
Intitulé réservé aux abonnés
Métier
Non déterminé
Secteur d'activité
Administration & Secteur public déduit
Indice ayant déclenché la déduction : « ministere de »
Valeur déduite du contenu du profil — à confirmer avant de s'en servir comme critère.
Origine
Profil sourcé
Expérience
10+ ans
Compétences
Tableau
Identité et contact

Vous devez être abonné pour voir le nom et les coordonnées de ce profil.

Localisation
Maroc
Source
Recherche web
CV anonyme

CV anonymisé automatiquement : nom, coordonnées et liens retirés. Les mentions entre crochets remplacent une information retirée.

NextData
Curriculum vitae anonymisé
ND-CV-4485367D

Non déterminé

Maroc Identité et coordonnées communiquées par NextData

Ministère de l’Enseignement Supérieur

∗∗∗ ∗ ∗∗∗

Université du 7 novembre à Carthage

∗∗∗ ∗ ∗∗∗

[nom]

Appliquées et de Technologie

Projet de Fin d’Etudes

Pour l’obtention du Diplôme [nom] d’Ingénieur en [nom] Appliquées et en Technologie

Filière : Réseaux Informatiques et Télécommunications

Sujet :

Conception et Réalisation d'un outil de génération

automatique de Mappage pour la transformation de

documents XML

Réalisé par : · Sana SELLAMI

Laboratoire d’accueil :

LIRIS (Laboratoire d'Informatique en Images et Systèmes d'Information)

Soutenu le 22/05/2006

Responsable · LIRIS · Nabila BENHARKAT

Co-Responsable SDSC · Rami RIFAIEH

Responsable · INSAT · Mona LAROUSSI

Année Universitaire : 2005/2006

A mon père à qui je dois tout

A ma mère pour son soutien et sa présence aux moments difficiles

A mes grands parents

Remerciements

Le plus dur n’est pas de rédiger le rapport mais de remercier toutes les personnes qui m’ont soutenu pour réaliser ce projet. Je tiens tout d’abord à remercier ma directrice de stage Mme

Nabila BENHARKAT, maître de conférences au LIRIS, de m’avoir acceptée pour effectuer ce stage de projet de fin d’études, pour son temps précieux et ses précieux conseils tout au long du déroulement de ce stage. Je remercie également M.Rami RIFAIEH, doctorant à l’université de Californie San Diego, avec qui j’ai travaillé étroitement durant mon stage, pour ses conseils et discussions fructueuses.

Je remercie sincèrement madame Mona LAROUSSI d’avoir accepté de m’encadrer et de me soutenir tout au long de stage. Je tiens à lui exprimer toute mon admiration et ma reconnaissance.

Finalement, j’adresse mes profondes gratitudes à ma famille qui a été toujours à mes côtés, pour son soutien et son encouragement. Je remercie également tous mes amis : Reim, Claudia, Fred, Salma, Rachid, Girma, Samir, Skander, Claire, Ferid,Riadh, KhalilFaten, Imene, Emna, Jihene,Mehdi.

Table [nom] matières

Chapitre 1 Introduction .....................................................................................................................9

  • Introduction................................................................................................................................9
  • Problématique ..........................................................................................................................10
  • Plan du rapport ........................................................................................................................10
  • Environnement du stage..........................................................................................................11 Chapitre 2 Etat de l'art sur le Matching .........................................................................................12
  • L'interopérabilité .....................................................................................................................12
  • Les schémas XML ....................................................................................................................12
  • Les algorithmes de Matching [nom] schémas ............................................................................13 3.1. Les approches basées sur les schémas de données.............................................................13 3.2. Les approches basées sur les instances ou ontologies........................................................13
  • EX-SMAL [7] (EDI/XML semi-automatic Schema Matching Algorithm).........................14
  • Conclusion.................................................................................................................................15 Chapitre 3 Etat de l'art sur les modèles de mappage......................................................................16
  • Mapping [nom] schémas ..............................................................................................................16
  • Modèles de découverte [nom] expressions de mappage ..........................................................17 2.1 Value Correspondences .......................................................................................................17 2.2 Le Modèle d'expression de Mappage [1].............................................................................18 2.3 Le Modèle de données LIMXS ............................................................................................19 2.4 Le modèle XHS (Intégration via l'HYPERSCHEMA XML) ................................................21 2.5 Model Management System ................................................................................................23 2.6 TUPELO..............................................................................................................................24
  • Synthèse [nom] expressions de mappage....................................................................................25 Chapitre 4 Etat de l'art sur les outils de Mapping ..........................................................................26
  • Introduction..............................................................................................................................26
  • Les plateformes et Outils de Mapping ...................................................................................26 2.1 Altova MapForce ................................................................................................................26 2.2 Schema Mapper....................................................................................................................28 2.3 Stylus Studio.........................................................................................................................30 2.4 Visual XSLT..........................................................................................................................31 2.5 TIBCO XMLTransform .......................................................................................................32 2.6 Adeptia XML Mapper...........................................................................................................33 2.7 Redix AnyToAny XML GUI Mapper ...................................................................................35 2.8 Clio......................................................................................................................................35 2.9 HyperMapper ......................................................................................................................36 2.10 BEA WebLogic Workshop.................................................................................................38 2.11 Cape Clear .........................................................................................................................38

4

  • Tableau comparatif.................................................................................................................40
  • Conclusion.................................................................................................................................41 Chapitre 5 Architecture ASMADE..................................................................................................42
  • Introduction..............................................................................................................................42
  • Présentation de l’architecture ASMADE ..............................................................................42 2.1 La Première Couche: Matching Layer ...............................................................................44 2.2 La Deuxième Couche: Filtering Layer ...............................................................................44 2.3 La Troisième Couche : Mapping Layer ...............................................................................44 2.3.1 Représentation XSD de XME ............................................................................................46 2.3.2 Instance du modèle XME ..................................................................................................46 2.3.3 Opérateurs de transformations .........................................................................................47 2.4 Quatrième Couche : Transformation Layer........................................................................48
  • Conclusion.................................................................................................................................49 Chapitre 6 Conception ....................................................................................................................50
  • Introduction..............................................................................................................................50
  • Conception de l’architecture...................................................................................................50 2.1 Identification [nom] diagrammes .............................................................................................50 2.2 Conception [nom] couches .......................................................................................................51 2.2.1. Diagramme de cas d'utilisation .......................................................................................51 2.2.2 Diagramme d'activités ......................................................................................................52 2.2.3 Diagramme de classes ......................................................................................................54
  • Conclusion.................................................................................................................................55 Chapitre 7 Réalisation.....................................................................................................................56
  • Introduction..............................................................................................................................56
  • Environnement de travail........................................................................................................56 2.1 Environnement matériel.......................................................................................................56 2.2 Environnement logiciel ........................................................................................................56
  • Implémentation ........................................................................................................................57 3.1 Choix de langage de programmation : Java........................................................................57 3.2 Développement de l’application ..........................................................................................57 3.2.1 Prototype...........................................................................................................................57 3.2.2 Choix [nom] schémas ............................................................................................................58 3.2.3 Matching [nom] schémas ......................................................................................................59 3.2.4 Filtrage..............................................................................................................................60 3.2.5 Sauvegarde du résultat......................................................................................................61 3.2.6 Choix [nom] fonctions de Mapping.......................................................................................61
  • Difficultés techniques...............................................................................................................63
  • Conclusion.................................................................................................................................63 Conclusions et Perspectives ..............................................................................................................64 Bibliographie .....................................................................................................................................66 Annexe A: Schéma1 et Schéma2......................................................................................................69

5

Annexe B: Requête de transformation de schémas .........................................................................70

6

Table [nom] figures

Figure 1 Description brève de l'algorithme.......................................................................................15

Figure 2 EXS représentant le concept personne..............................................................................22

Figure 3 Mapping dans MapForce....................................................................................................27

Figure 4 Mapping [nom] noeuds............................................................................................................29

Figure 5 Mapping dans Stylus Studio ................................................................................................30

Figure 6 Mapping dans Visual XSLT.................................................................................................31

Figure 7 Mapping dans Tibco XML Transform.................................................................................33

Figure 8 Mapping dans Adeptia XML Mapper..................................................................................34

Figure 9 Mapping dans Redix AnyToAny XML GUI Mapper ..........................................................35

Figure 10 Mapping dans Clio...........................................................................................................36

Figure 11 Interface de Mapping dans HyperMapper.......................................................................37

Figure 12 Mapping dans BEA WebLogic Workshop ........................................................................38

Figure 13 Mapping dans Cape Clear ...............................................................................................39

Figure 14 Architecture de ASMADE ................................................................................................43

Figure 15 Représentation de XME.....................................................................................................46

Figure 16 Diagramme de Cas d'utilisation.......................................................................................51

Figure 17 Diagramme d'activités représentant l'intéraction entre les différents modules................52

Figure 18 Diagramme de classes......................................................................................................55

Figure 19 Interface de ASMADE .....................................................................................................58

Figure 20 Choix [nom] schémas à comparer........................................................................................58

Figure 21 Sélection [nom] schémas ......................................................................................................59

Figure 22 Choix [nom] Coefficients pour le Matching ........................................................................59

Figure 23 Matching entre les schémas .............................................................................................60

Figure 24 Choix du coefficient de filtrage ........................................................................................60

Figure 25 Sauvegarde du résultat du Matching ...............................................................................61

Figure 26 Choix [nom] fonctions de Mapping ......................................................................................62

Figure 27 Mapping entre les schémas ..............................................................................................62

7

Liste [nom] Tableaux

Tableau 1 Exemple de représentation de LIMXS en XML.................................................................20

Tableau 2 Tableau de comparaison [nom] outils de Mapping ..............................................................40

Liste [nom] Equations

Équation 1 Modèle d'expression de Mappage dans Miller et al........................................................17

Équation 2 Modèle d'expression de Mappage ...................................................................................18

Équation 3 Formalisation du modèle................................................................................................24

Équation 4 Modèle mathématique ....................................................................................................25

Équation 5 Modèle d'expression de mappage étendu.......................................................................44

8

Chapitre 1 Introduction

  • Introduction

Avec l'arrivée de l'Internet et du Web, le nombre de sources d'informations interconnectées

ainsi que le nombre d'utilisateurs potentiels de ces sources a connu une augmentation exponentielle

durant les dix dernières années. L’environnement informationnel actuel se caractérise par [nom]

données fortement distribuées. Ces données surabondantes sont généralement éparpillées, puisqu’il

existe souvent de multiples systèmes conçus chacun pour être efficace pour les fonctions pour

lesquelles il est spécialisé. Ces données se trouvent dans plusieurs domaines d'application tels que

les entrepôts de données, l'intégration de données, le commerce électronique, le traitement de

requêtes sémantiques, etc.

Le monde informatique regorge, ainsi, [nom] données aux formats très hétérogènes, autrement dit

utilisent [nom] modèles différents pour la représentation de l'information, qu'il est nécessaire d'intégrer

pour construire [nom] applications. En effet, les données peuvent être de plusieurs types : structurées

(données relationnelles, données objet), semi-structurées (HTML, XML, graphes) ou même non

structurées (texte, images, son). Dans un tel contexte, le besoin d’intégration se fait de plus en plus

sentir. Cependant, pour répondre à ce besoin, le développement [nom] applications d’intégration

(telles que pour un traitement élaboré de données, pour la construction [nom] entrepôts de données ou

[nom] systèmes d’aide à la décision) se voit contraint de composer avec la répartition [nom] sources et

l’hétérogénéité de leurs structures et de gérer l'interopérabilité entre les données en différents

formats qu'ils manipulent.

De nombreuses technologies ont permis de faire communiquer [nom] applications relevant de

systèmes d'informations différents permettant ainsi d'atteindre un niveau d'interopérabilité qu'il

s'agit toutefois d'étendre et d'améliorer. En dépit de nombreux outils disponibles sur le marché, le

problème de l'interopérabilité [nom] applications demeure entier car il faut pérenniser l'existant pour

l'intégration de standards mais aussi pour l'échange et la réutilisation.

Nous nous positionnons ici dans le cas d'intégration [nom] données et nous cherchons à améliorer la

transformation [nom] schémas XML. Ces schémas XML sont une représentation logique enrichie par

[nom] méta connaissances sémantiques utilisées lors de la phase de Matching. Nous nous sommes

donc intéressés au domaine du Matching et du Mapping [nom] schémas XML pour lesquels il serait

possible de réutiliser telles quelles les technologies déjà existantes. Ces deux processus qui se

9

suivent sont [nom] pré requis à l'intégration et la transformation de documents XML.

  • Problématique

L'intégration [nom] données se reporte à un problème combinatoire de données résidentes dans

[nom] sources autonomes et hétérogènes. C e problème est rendu crucial avec la prolifération [nom]

sources de données sur Internet ou au sein [nom] entreprises, le caractère hétérogène de ces données et

le besoin de plus en plus pressant d’exploiter ces gisements de données pour [nom] besoins

décisionnels.

Notamment, l'appariement de schémas est l'un [nom] problèmes majeurs rencontrés lors du processus

d'intégration soit de données (par exemple, la médiation de données, les entrepôts de données, etc.),

soit applications (par exemple, le e-commerce, le Web sémantique, etc.).

Tout ceci pose de sérieux problèmes aux utilisateurs qui cherchent à combiner, ou "intégrer" [nom]

informations provenant [nom] sources différentes. Parmi eux on peut citer les problèmes liés à la

gestion [nom] schémas, l'évolution [nom] schémas, le Mapping et le Matching [nom] schémas.

Dans ce contexte, plusieurs approches ont été développées cernant ainsi les aspects de

transformation de données qui résultent de l’hétérogénéité technique, syntaxique et sémantique [nom]

sources de données, de génération de Matching et de Mappings.

Pour simplifier et accélérer ces tâches d'intégration de données et garantir une interconnexion

efficace entre tous les systèmes, il est nécessaire de bâtir [nom] passerelles entre tous ces types de

données. Ceci se fera en permettant de concevoir les schémas de Mapping de façon visuelle et en

automatisant les transformations nous permettant de nous concentrer sur l'implémentation de la

logique métier dans les applications.

  • Plan du rapport

Le présent rapport est organisé en trois grandes parties. La première est consacrée à l’état de

l’art où est passée en revue la littérature relative aux technologies traitées. En effet, un état de l'art

recensant les algorithmes de Matching de schémas est présenté dans le chapitre 2. Dans le chapitre

3, nous décrivons les modèles de découverte [nom] expressions de mappage. Dans le chapitre 4, nous

allons étudier les outils existants qui réalisent le Mapping et faire une comparaison entre eux.

Dans la deuxième partie, on va proposer une architecture répondant à toutes les problématiques

posées. Dans le chapitre 5, nous allons détailler cette architecture et présenter ses spécificités.

Le chapitre 6 sera consacré à la conception de l'architecture proposée et le chapitre 7 à la réalisation

et l'implémentation de cette architecture.

10

Enfin, la dernière partie (conclusion et perspectives) synthétise le travail accompli et les différents

points que nous devons développer dans le futur.

  • Environnement du stage

Mon stage s'est déroulé au laboratoire LIRIS (Laboratoire d'Informatique en Images et

Systèmes d'Information) à l' INSA ([nom] Appliquées) de Lyon. Le LIRIS

est né début 2003 à la suite du regroupement de plusieurs laboratoires de recherche lyonnais

(LIGIM, LISI, RFV) et d'individualités du domaine [nom] et Techniques de l'Information et

de la Communication.

Il a deux thèmes principaux de recherche : l'image numérique et les systèmes d'information, qui

sont déclinés suivant :

Quatre axes scientifiques :

  • Axe 1 - Données, Documents et Connaissances.
  • Axe 2 - Images et vidéos : segmentation et extraction d'information.
  • Axe 3 - Modélisation et réalité augmentée.
  • Axe 4 - Systèmes d'information communicants.

Deux actions transverses :

  • Action A - Plate-forme d'Intégration d'outils logiciels pour le document numérique, en liaison avec l'[nom] du Document Numérique (ISDN).
  • Action B - Plate-forme d'Intégration logicielle : dossier médical multimédia réparti, en liaison avec le thème fédérateur "Ingénierie de la Santé".

11

Première Partie – État de l’art · INSAT

Chapitre 2 Etat de l'art sur le Matching

  • L'interopérabilité

L'interopérabilité de plusieurs sources de données hétérogènes et autonomes est un problème

important dans plusieurs applications comme les systèmes de médiation, datawarehouse et les

systèmes basés sur le web. Son but est de fournir une vue uniforme sur les données sources.

Les applications utilisant le système interopérable utilisent un schéma source qui représente ses

données au monde extérieur et définissent le schéma cible qui représente leurs besoins. Il y a deux

sortes de liens établis entre chaque schéma source et chaque schéma cible : le Matching (les

correspondances sémantiques) et le Mapping.

  • Les schémas XML

Le schéma XML est une norme définie par le World Wide Web Consortium (W3C) [31] conçue

comme une infrastructure de base pour la description du type et de la structure [nom] documents

XML.

Les schémas fournissent donc un modèle pour un document de données XML qui définit la mise en

place [nom] balises et du texte à l’intérieur de tous les documents faisant référence au schéma.

En termes d’utilisation, les schémas XML sont destinés à décrire la structure de données dans un

format commun que les divers navigateurs Web, les applications et tous les clients utilisant XML

peuvent reconnaître. Plus spécifiquement, les schémas définissent les règles qu’ un document de

données XML (notamment les noms d’éléments et les types de données) doit respecter. Ils

définissent comment les éléments peuvent se combiner et quels attributs sont disponibles pour

chaque élément.

L'utilisation d'un schéma est un atout pour l'interopérabilité. Il peut être fourni à d'autres

applications, de façon qu'elles sachent structurer les données et donc les schémas, qu'elles

transforment en retour.

Pour cette raison, les méthodes de Matching basées sur les schémas et donc, sur le nom [nom]

éléments, leur type, les méta données et [nom] algorithmes sont développés. Ils permettent alors

l'obtention d'un ensemble de règles d'association entre les éléments [nom] schémas XML.

12

Première Partie – État de l’art · INSAT

  • Les algorithmes de Matching [nom] schémas

Le Matching [nom] schémas est une technique qui effectue la découverte de correspondances

sémantiques entre les éléments et les attributs [nom] schémas. Le Matching est donc, une opération

qui prend par exemple deux schémas de données en entrée et retourne à la fin les valeurs de

similarités sémantiques entre les éléments [nom] schémas.

Plusieurs travaux ont été réalisés afin de fournir [nom] algorithmes de Matching gérant les

correspondances ou incompatibilités [nom] schémas.

Dans la littérature on distingue [nom] catégories d'algorithmes de Matching:

3.1. Les approches basées sur les schémas de données

Dans cette catégorie, on trouvera les algorithmes travaillant sur les méta données (DTD,

schémas XML, schémas de bases de données, …) spécifiques pour trouver l'indice de similarité le

plus précis entre les éléments, Cupid [15] en est un exemple. Cet algorithme tente de trouver les

correspondances sémantiques [nom] éléments de différents schémas qui sont génériques. Les auteurs

ont testé leur application sur les schémas XML et les schémas relationnels. Le processus de

Matching se déroule en trois étapes: le calcul de la similarité, la similarité structurelle (les éléments

atomiques, les éléments composés, les feuilles, les noeuds internes, les sous arbres), et le calcul du

poids de similarité.

Similarity Flooding [16] [17] est un algorithme de Matching structurel pour schémas XML,

SQL DDL, schemas RDF, UML et OEM. Il utilise l'idée d'influence de nœud sur ses adjacents.

Dans [18] XClust est une stratégie d'intégration basée sur le clustering [nom] DTD ou bien sur les

schémas. La similarité linguistique dans ce cas, est basée sur un thésaurus et la similarité

structurelle est basée sur (les éléments atomiques, les éléments composés, sur les sous arbres et

nombre de feuilles).

3.2. Les approches basées sur les instances ou ontologies

Cette autre catégorie d'algorithmes travaille plutôt sur les instances[19][20] ou bien encore

sur les ontologies [21][22]. Par ailleurs, il existe également [nom] frameworks comme COMA[6] ou

COMA++ [23] qui utilisent plusieurs algorithmes avec [nom] techniques différentes. Les schémas sont

13

Première Partie – État de l’art · INSAT

traduits dans [nom] graphes acycliques traités simultanément par ces algorithmes. Les résultats

intermédiaires peuvent être utilisés avec [nom] possibilités de sélection et agrégation. L'utilisateur d'un

tel outil reste néanmoins un exercice difficile pour un utilisateur non averti.

  • EX-SMAL [7] (EDI/XML semi-automatic Schema Matching Algorithm)

Le Matching dans EXSMAL est un processus qui permet la découverte [nom] relations

sémantiques entre deux schémas XML, il prend deux schémas de données en entrée et retourne à la

fin [nom] valeurs de similarités sémantiques entre les éléments [nom] schémas en entrée.

L ‘algorithme de Matching EX-SMAL (EDI/XML semi-automatic Schema Matching Algorithm)

permet de découvrir, donc, semi-automatiquement les correspondances entre les messages EDI

(Echange de données informatisées) basées sur les schémas XML. La compatibilité entre deux

messages de deux standards différents repose sur la sémantique de ces deux messages.

L'algorithme génère [nom] relations de Matching entre les noeuds [nom] schémas XML dont la

cardinalité varie entre 1-1, 1-n, n-m.

Il traite la structure de chaque élément à faire correspondre afin de raffiner l’efficacité de résultat. Il

se base sur la similarité de base entre les éléments individuels, en s’appuyant sur les descriptions

textuelles et les types de données [nom] éléments [nom] guides d’utilisations, spécifié à l’aide de

schémas XML, et la similarité de structure [nom] éléments en comparant les voisinages structurels [nom]

éléments de messages en entrée. Les deux similarités sont utilisées pour calculer la similarité finale

entre chaque paire d’éléments et cette dernière est enfin filtrée afin d’obtenir le résultat final de

Matching.

Etant donné un schéma XML considéré comme structure de données interne, l’algorithme

travaillera avec une structure arborescente. L’algorithme se déroule en trois étapes qui sont décrites

dans la figure 1. Il consiste à calculer la similarité entre tous les éléments de deux schémas, pour

chaque paire d’éléments, on calculera d’abord la similarité de base qui tient compte [nom] données

qu'un élément de schéma possède individuellement soit la description textuelle et le type de

données. Ensuite, la similarité de structure, qui se base sur le calcul de leurs contextes et le calcul de

similarité de base de chaque élément dans les deux schémas. Puis, utiliser les valeurs de ces deux

similarités pour calculer la valeur de similarité finale entre ces paires.

14

Première Partie – État de l’art · INSAT

Figure 1 Description brève de l'algorithme

  • Conclusion

Dans ce chapitre, nous avons défini différentes catégories d'algorithmes de Matching.

Le but de ces algorithmes est la mesure de similarité linguistique et structurelle entre les éléments,

cette similarité est exprimée par un coefficient entre 0 et 1. Quant à la transformation [nom]

documents XML, nous avons besoin [nom] opérations de transformations qui ne se basent pas sur les

valeurs numériques mais sur les relations sémantiques entre les entités de schémas. Nous décrivons,

dans le chapitre qui suit, les différents modèles d'expressions de mappage.

15

Première Partie – État de l’art · INSAT

Chapitre 3 Etat de l'art sur les modèles de mappage

  • Mapping [nom] schémas

Si le Matching consiste à trouver les relations entre [nom] entités avec un certain coefficient

qui indique qu'elles sont plus ou moins similaires, le Mapping consiste à trouver la vraie relation

sémantique qui permettra le passage de l'un à l'autre.

Les Mappings sont [nom] expressions décrivant le moyen dont les instances du schéma cible sont

dérivées à partir [nom] instances [nom] sources. Les Mappings sont définis en utilisant les

correspondances existantes entre les schémas. Quand les Mappings sont définis entre le schéma

cible et le schéma source, cela consiste essentiellement dans la restructuration [nom] données d'une

présentation à une autre. La définition de ces Mappings est aussi connue comme l'échange [nom]

données, la transformation [nom] données et la migration [nom] données. Le Mapping peut être plus

complexe: le Mapping ne transforme pas seulement la donnée source d'une structure à une autre

mais peut également combiner différentes sources. Plusieurs problèmes sont à soulever:

  • Trouver tous les éléments sources correspondants à l'élément cible,
  • Combiner les instances [nom] éléments source pour former les instances du schéma cible,
  • Satisfaire la structure du schéma et les contraintes de cardinalité du schéma cible.

Résoudre ces problèmes requiert une compréhension profonde non seulement de la sémantique [nom]

schémas sources mais aussi [nom] liens sémantiques entre les schémas sources et cibles. La

complexité de ce processus augmente quand le nombre de données sources est élevé. Si les schémas

sources et cibles sont en format XML, la définition du Mapping devient plus complexe à cause de la

nature hiérarchique [nom] données [9].

Ceci revient à [nom] problèmes de cardinalité de Mapping qui peuvent être classés en deux catégories.

La première catégorie est le Mapping direct qui correspond à une cardinalité de Mapping (1:1). Ce

type de cardinalité est le plus étudié dans les approches existantes à cause de la difficulté pour

déterminer automatiquement les expressions de mappage. La seconde catégorie est le Mapping

indirect qui couvre les cardinalités de type (1:n), (n:1) et (n:m) qui signifie qu'il peut y avoir n

16

Première Partie – État de l’art · INSAT

éléments d'un schéma et m éléments d'un autre schéma qui correspondent [10].

De là vient le besoin de définir un processus de découverte d'expressions de mappage après le

Matching consistant à trouver une expression (logique, mathématique, opération sur les chaînes de

caractères, etc) permettant d'associer un ensemble d'éléments du schéma source pour obtenir un

élément du schéma cible (ex: name=FirstName CONCAT lastName), pour la découverte

d'expressions de mappage [2]. Les expressions de mappage sont requises pour exprimer comment

les éléments matchés (mis en correspondance) peuvent être mappés (transformés).

Plusieurs modèles ont été proposés pour exprimer les expressions de mappage offrant [nom]

opérations de transformations qui sont données par les relations sémantiques telles que (équivalent,

plus général, incompatible, compose, est composé de,…).

  • Modèles de découverte [nom] expressions de mappage

2.1 Value Correspondences

L'approche présentée dans [11] crée un Mapping interactif basé sur les valeurs de correspondances

qui montrent comment la valeur d'un attribut cible peut être créée à partir d'un ensemble de valeurs

d'attributs sources. Les expressions de mappage sont étudiées comme [nom] valeurs de

correspondances.

La valeur de correspondances est une paire qui consiste en:

  • Une fonction définissant comment une valeur (ou une combinaison de valeurs) de la base de données source peut être utilisée pour former une valeur dans la cible.
  • Un filtre indiquant quelles valeurs sources doivent être utilisées.

Les valeurs de correspondances peuvent être entrées par un utilisateur ou peuvent être suggérées

utilisant [nom] techniques linguistiques appliquées aux données et méta-données comme les noms [nom]

composants de schémas.

Le modèle d'expression de mappage dans [11] est défini comme suit:

Équation 1 Modèle d'expression de Mappage dans Miller et al

  • Fi: la fonction de correspondance dénotant la valeur de substitution
  • Pi : un filtre

17

Première Partie – État de l’art · INSAT

L’implémentation de cette approche est un outil semi-automatique Clio pour la création de schémas

de Mappings. Il emploie un Mapping qui dépend de l’utilisation [nom] valeurs de correspondances

décrivant quelle valeur de l’attribut cible peut être créée par un ensemble de valeurs d’attributs

source. Clio utilise un raisonnement autour [nom] requêtes à créer, manager et classer les Mappings

possibles. Cependant, le choix final [nom] Mappings revient à l’utilisateur qui doit comprendre la

sémantique de l’application cible [12].

L'inconvénient de ce prototype est qu'il ne résout pas le Mapping conditionnel, le Mapping avec

rupture de clés et le Mapping simple.

2.2 Le Modèle d'expression de Mappage [1]

Un modèle d'expressions de mappage a été proposé dans [1]. Ce modèle est une extension de

l'approche présentée dans le paragraphe précédent du fait qu'il rajoute [nom] conditions et effectue un

filtrage par rapport à la cible. Cette approche sert à définir les expressions de mappage entre les

éléments similaires. L'idée [nom] valeurs de correspondances de Clio est similaire aux expressions

mappage. Il définit dans les méta-données les mappages entre les éléments de schéma source et

schéma cible.

Équation 2 Modèle d'expression de Mappage

Il couvre, par ailleurs, différents types d'expression de mappage :

  • Décomposition/concaténation: la valeur du champ est établie par décomposition de la valeur de la source et par sa concaténation avec d'autres valeurs.
  • Opérations arithmétiques avec [nom] données multiples: Dans ce cas, une fonction arithmétique est définie. Cette fonction calcule la valeur du résultat du champ cible.
  • Mapping conditionnel: Parfois la valeur du champ cible dépend de la valeur d'un autre champ.
  • Mapping avec décomposition de la clé: La représentation sur rang dépend de la valeur

18

Première Partie – État de l’art · INSAT

du champ.

  • Mapping utilisant une table de correspondances avec [nom] colonnes multiples: La valeur du champ cible est une fonction utilisant plusieurs valeurs dans la table de conversion.

Il permet aussi d'exprimer sans difficulté les quatre catégories de traduction : La traduction simple

(1:1), la traduction avec découpage (1:n), la traduction avec groupement (n:1) et la traduction avec

découpage et groupement (n:m). Ces traductions ont été utilisées dans le cas de messages de type

EDI.

Ce modèle couvre, donc, · différents · types d'expressions de mappages, les différents cas de

traduction, Il est applicable sur un Mapping entre les entités et non pas entre les schémas et permet

de couvrir [nom] cas utiles de génération d'éléments cibles à partir de fonctions de Mapping.

2.3 Le Modèle de données LIMXS

Le modèle LIMXS [8] (Layered Interoperability Model for XML Schemas) offre une vue

sémantique et une vue logique [nom] schémas XML basée sur la modélisation conceptuelle.

La vue sémantique, décrite en terme de concepts et relations sémantiques, donne une définition explicite et formelle [nom] éléments [nom] schémas sémantiques et significations qui

nous permettent de mapper selon le sens [nom] éléments [nom] schémas et non pas seulement

leurs labels.

Deux phases sont adaptées:

  • L'analyse linguistique qui correspond au niveau concept : Elle définit [nom] relations sémantiques entre les concepts. Cinq types de relations sémantiques sont considérés: équivalent, général, spécifique, compatible et incompatible.
  • L'analyse structurelle qui correspond au niveau structure: Le but est d'étendre les relations sémantiques découvertes par les analyses linguistiques par l'examen de l'organisation [nom] données fournies par les vues sémantiques. L'organisation [nom] données est décrite à travers les relations d'agrégation (composition de relations entre deux concepts), association

(relation sémantique entre deux concepts qui sont conceptuellement au même niveau),

généralisation (relation entre un concept général C1 et un concept plus spécifique C2) et

contraintes (ensemble de contraintes sur les concepts et les relations).

La vue logique décrit les schémas construits indépendamment [nom] détails syntaxiques et nous permet de représenter le Matching à un niveau logique.

19

Première Partie – État de l’art · INSAT

Ce modèle se base donc sur un ensemble d'opérations de transformations sur les entités [nom]

schémas qui peuvent être composés ensemble pour représenter plus de transformations (les

opérations conceptuelles primitives, opérations logiques).

  • Les opérations conceptuelles primitives:
  • Add: ajoute une entité au schéma cible, l'entité peut être une relation, un concept, une propriété.
  • Merge: fusion de deux entités en une seule entité: concaténation.
  • Split: c'est l'opération inverse de Merge.
  • Rename: change le nom d'un concept ou d'une propriété
  • Connect: il s'agit d'un Mapping 1-1 qui relie deux entités équivalentes sans aucune transformation
  • . Les opérations logiques:

Les opérations logiques traitent les différences dans les contraintes [nom] schémas comme la

cardinalité, les valeurs nulles ou par défaut mais peuvent être une information supplémentaire que

seul l'utilisateur peut fournir.

< Mapping ID = “map1 “>

<SourceSchema source = “S1.xsd”/> · <ManyToOneMapping ID = “map111” >

<TargetSchema target = “S3.xsd”/> · <AttributeMapping>

<HasMappings OneToOneMapping ID = “map11”/> · <SourceAttribute Attribute = “FirstName”/>

</Mapping> · <SourceAttribute Attribute = “LastName”/>

<TargetAttribute Attribute = “Name”/>

< OneToOneMapping ID = “map11” > · <Transformation>

<ConceptMapping> · <Operation name =”merge”/>

<SourceConcept concept = “Staff”/> · </Transformation>

<TargetConcept concept = “Employee”/> · </AttributeMapping>

<Transformation> · </ ManyToOneMapping >

<HasMappings OneTomany Mapping ID = “map111”/>

<Operation name =”rename”/>

</Transformation>

</ConceptMapping>

</OneToOneMapping>

Tableau 1 Exemple de représentation de LIMXS en XML

20

Première Partie – État de l’art · INSAT

Avantages: Ce modèle est capable de: Modéliser tous les facteurs de schémas XML tels que la

spécialisation/généralisation [nom] relations, espaces de noms,etc...

  • Offrir les deux vues sémantique et logique [nom] schémas XML
  • Réaliser le Mapping entre les entités [nom] schémas.

Inconvénients:

Ce modèle traite deux types de cardinalités correspondants au

  • Matching simple: correspond aux relations de Matching 1-1 entre un noeud source et un noeud cible. On peut utiliser [nom] opérations simples comme Connect dans ces cas.
  • Matching complexe: correspond aux relations de Matching 1-n et n-1 entre un noeud source et un noeud cible. Pour ce type de Matching, on utilise les opérations de transformation comme Merge et Split.

Mais il ne traite pas le cas de la cardinalité n-m.

2.4 Le modèle XHS (Intégration via l'HYPERSCHEMA XML)

L'hyperschéma XML (noté XHS) est constitué de l'ensemble [nom] schémas [nom] BDs sous

forme XSD étendu et de l'ensemble [nom] opérateurs de transformation d'un schéma à un autre sous

forme XSL. L'approche proposée dans [24] permet de fournir un modèle d'intégration capable de

fédérer les différentes sources de données hétérogènes représentant [nom] dimensions structurelle et

sémantique [nom] schémas sources. L'approche s'appuie sur un modèle semi structuré (XML) qui

permet une intégration aisée de modèles variés ainsi que sur deux parties distinctes à savoir :

  • Le module d'extraction de schémas sources qui homogénéise la représentation [nom] différents schémas sources à intégrer en l'exprimant sous forme d'une définition de schémas XML.
  • Le module d'intégration permettant de construire l'hyperschéma qui constitue l'ensemble [nom] schémas XML étendus (EXSi) et l'ensemble [nom] schémas XSL stipulant [nom] règles de transformation entre les entités [nom] EXS. Le schéma XML étendu est composé de trois types d'entités:

Concept(c): engendre [nom] propriétés et/ou d'autres concepts imbriqué, et porte [nom] relations.

Relation(r): correspond aux associations structurelles et/ou sémantiques existantes entre

21

Première Partie – État de l’art · INSAT

deux ou plusieurs concepts.

Propriété (p): peut être incluse dans [nom] concepts ou relations.

Le schéma EXS est donc défini par le triplet <concepts, relations, propriétés> illustré dans la

figure2 :

  • c i est le concept nommé C de type <Cconcept>
  • r(c i ....c j ) est la relation existante entre deux ou plusieurs concepts c i ....c j · nommé « c i ....c j RelationShip » qui possède une catégorie prédéfinie et inclut les concepts en question.
  • P ki est la k ème propriété nommée p du concept c i , elle possède un domaine de définition et

[nom] contraintes (valeur par défaut, obligatoire,etc).

Figure 2 EXS représentant le concept personne

A l'issue de cette étape, six opérateurs de base seront appliqués d'un schéma EXS à un autre lors [nom]

appels aux primitives de transformations qui correspondent aux morphismes entre deux entités du

même domaine afin de réaliser le Mapping entre les différents éléments:

  • Addition (add): permet d'ajouter une entité (concept, propriété d'un concept ou relation existante entre concepts) au schéma source.

22

Première Partie – État de l’art · INSAT

  • Suppression (delete): permet de supprimer une ou plusieurs entités lors du processus de mises en correspondance (Matching) entre le schéma source et cible ( ( EXSsource → EXScible). La suppression est l'opérateur inverse de l'ajout.
  • Fusion (merge): permet de fusionner deux entités distinctes en une entité atomique afin de regrouper [nom] propriétés appartenant au schéma source en un concept dans le schéma cible.
  • Eclatement (split): permet la décomposition d'une entité du schéma source en un ensemble d'entités équivalentes dans le schéma cible. C'est l'opérateur inverse de merge.

2.5 Model Management System

Dans cette approche, les opérateurs sont génériques et sont appliqués aux schémas (nommés

modèles) et non aux éléments [nom] schémas.

Selon [13], l’implémentation [nom] applications revient à traduire les modèles de données en [nom]

représentations orientées objets et manipuler les modèles et les Mappings dans ces représentations.

La manipulation inclut la conception du Mapping entre les modèles, la génération d'un modèle à

partir d'un autre à l'aide d'un Mapping entre eux, la modification du modèle ou Mapping,

l'interprétation du Mapping et la génération du code du Mapping.

L'implémentation [nom] ces abstractions et opérateurs s'appelle MMS:Model Management System

dans lequel les modèles et Mappings sont [nom] structures syntaxiques mais n' ayant pas de

sémantique basée sur les contraintes de langages ou langages de requêtes.

Les principaux opérateurs du système de gestion de modèles MMS:

  • Match: prend deux modèles comme entrée et retourne un Mapping entre eux.
  • Compose: saisit un Mapping entre les modèles A et B et un Mapping entre les modèles B et C et retourne un Mapping entre A et C.
  • Diff: saisit un modèle A et un Mapping entre A et un certain modèle B et retourne un sous-modèle de A qui ne participe pas au Mapping.
  • ModelGen: saisit le modèle A et retourne un nouveau modèle B basé sur A et

Mapping entre A et B.

  • Merge: saisit deux modèles A et B et un Mapping entre eux et retourne une union C de A et B avec Mapping entre C et A et C et B.

23

Première Partie – État de l’art · INSAT

L'expression suivante est un exemple de formalisation de ce modèle:

Équation 3 Formalisation du modèle

Inconvénients:

Cette approche est basée sur un Mapping entre les modèles (ou schémas) et non sur les éléments.

2.6 TUPELO

TUPELO [26] est un système de Mapping de données, qui permet la découverte [nom]

expressions de mappage complexes. Ce système utilise un langage de transformation nommé L qui

inclut [nom] opérateurs pour surmonter l'hétérogénéité structurelle entre les données sources

relationnelles. Le système prend en entrée les schémas source/cible et les instances source/cible

référencées comme étant [nom] instances critiques. Ces instances critiques illustrent la même

information sur les deux schémas et sont utilisées pour guider la découverte [nom] Mappings de

données. La découverte [nom] expressions de mappage est traitée comme une séquence

d'acheminement d'exploration de l'espace de transformation [nom] opérateurs dans le langage L sur

l'instance source. Dans l'implémentation du système, ils utilisent [nom] variations d'heuristiques pour

découvrir la séquence de transformations qui mappent la source à la cible. L'expression de mappage

découverte est retournée par le système.

Le problème de Mapping [nom] données est défini comme suit:

Etant donnée une source S et un schéma cible T et un langage de transformation approprié L ,

trouver un Mapping iЄL tel que pour chaque instance [nom] une instance correspondante t de T,

i(s)=t.

La nouveauté de ce système est la génération de Mapping pour [nom] Matchings de schémas simples,

il ne génère cependant pas les Mappings de données qui incluent les transformations sémantiques

complexes.

24

Première Partie – État de l’art · INSAT

Le modèle est exprimé dans un modèle mathématique:

Équation 4 Modèle mathématique

  • λ: un opérateur
  • A= <A 1 ....A n > : un attribut
  • B: un attribut
  • R: relation
  • f: fonction de Mapping
  • Synthèse [nom] expressions de mappage

Dans ce chapitre, nous nous sommes particulièrement intéressés au Mapping [nom] schémas.

Nous avons vu que Clio par exemple est présenté comme un outil semi automatique de Mapping où

les correspondances sont supposées déjà identifiées et exprimées dans un langage de logique de

premier ordre. Ce que l'on note c'est que les plateformes de Matching ne sont pas forcément

complétées pour le Mapping et avec [nom] études de cas pour [nom] processus d'interopérabilité. Nous

allons donc étudier, dans le chapitre suivant, quelques outils et plateformes de Mappings, discuter

leurs avantages, leurs lacunes et effectuer un comparatif de ces outils.

25

Première Partie – État de l’art · INSAT

Chapitre 4 Etat de l'art sur les outils de Mapping

  • Introduction

Il existe sur le marché [nom] plateformes de Mapping, [nom] plateformes pour le Matching issues de

travaux de recherche et peu de plateformes incluant les deux processus. Nous allons dans ce qui

suit, donner un aperçu de la première catégorie de plateformes.

  • Les plateformes et Outils de Mapping

2.1 Altova MapForce

MapForce est un produit de Altova mais aussi un outil de Mapping visuel puissant, travaillant

avec [nom] fichiers XML, [nom] bases de données, [nom] fichiers plats, [nom] données EDI, permettant de

développer [nom] outils personnalisés d'intégration de données. Il permet, ainsi, de bâtir [nom]

passerelles entre différents types de données afin d’assurer leur échange sous [nom] formats

hétérogènes pour fournir une interconnexion efficace entre tous les systèmes

MapForce se distingue par le fait qu’il offre la première implémentation de XSLT 2.0 et XPath

2.0. Il est aussi le premier outil du marché (et le seul) qui permet de générer le code de Mapping

sous divers formats XSLT 1.0, XSLT 2.0, XQuery, Java, C#, et C++ à partir d'une interface unique.

MapForce permet, en plus, de simplifier et d’accélérer les tâches d'intégration de données grâce à

une conception [nom] schémas de Mapping de façon visuelle et en automatisant les transformations.

En utilisant MapForce, on définit les Mappings entre [nom] modèles de contenu de façon visuelle juste

par drag and drop entre les éléments correspondants entre la source et la cible sur une interface

conviviale [27] (figure 3).

Il permet, aussi, de "mixer" plusieurs sources et plusieurs cibles pour permettre le Mapping à partir

de toutes les combinaisons de format possibles.

26

Première Partie – État de l’art · INSAT

De plus, MapForce étend la notion du Mapping au-delà de la gestion de 2 fichiers XML en offrant

la possibilité de gérer plusieurs fichiers qui ainsi connectés jouent parfois le rôle d’input et d’output

à la fois.

On peut aussi ajouter [nom] règles de traitement [nom] données. MapForce génère automatiquement le

code logiciel nécessaire pour mettre en place la transformation [nom] données sources vers les

données cibles. Le moteur MapForce intégré permet de pré visualiser le résultat de tout Mapping en

un seul clic, ce qui simplifie la conception et les tests de façon conséquente.

Figure 3 Mapping dans MapForce

Mapforce supporte les fonctionnalités suivantes:

  • Construire [nom] services web à travers une surface graphique
  • Faire du Mapping XML, base de données, fichiers et les sources EDI aux opérations [nom] services Web.
  • Faire du Mapping pour toute combinaison de XML, base de données, fichiers et [nom] données

EDI à travers l’interface graphique.

  • Générer automatiquement XSLT 1.0, XSLT 2.0, XQuery, Java, C++ ou C# pour implémenter les données de Mapping (XSLT et XQuery pour le Mapping XML-to-XML).

27

Première Partie – État de l’art · INSAT

  • Exécuter, observer et sauvegarder les outputs [nom] transformations [nom] données de Mapping.
  • Traitement et filtrage [nom] données à l’aide une riche bibliothèque de fonctions.

Limites :

  • MapForce · ne permet pas d’éditer [nom] schémas directement. On est obligé d’utiliser différents éditeurs de schémas afin de rapporter [nom] modifications aux schémas puis rouvrir le schéma dans MapForce pour continuer le Mapping.
  • Duplication du nœud cible lors d’un Mapping de plusieurs nœuds vers un seul.

2.2 Schema Mapper

SchemaMapper est un nouvel outil, un prototype intelligent de Mapping de schémas. Sa première

motivation provient de ETANA-DL qui est une librairie digitale pour promouvoir l’intégration de

l’information et [nom] services de divers sites archéologiques. C’est le premier outil qui offre une

représentation visuelle de schémas de Mapping en arbres hyperboliques pour donner une meilleure

vue afin de percevoir plus de détails sur l’écran. Ce qui est utile surtout pour les schémas à grande

échelle en permettant une navigation plus facile et moins de confusions [5].

Son architecture est divisée en quatre composants:

  • Composant de Visualisation : Responsable de toutes les fonctions reliées à la visualisation du processus entier de Mapping.
  • Composant de Recommandation : Responsable de donner [nom] recommandations données à l’utilisateur pour indiquer le Matching possible pour un nœud local spécial.
  • Composant de Mapping : Responsable de faire [nom] Mappings. [nom] l’établissement du Mapping entre deux nœuds, ce composant sauvegarde les informations dans les structures de données.
  • Composant de génération XML : [nom] que le Mapping est réalisé, ce composant crée une feuille de style XSLT sur le Mapping courant déjà stocké dans le composant de Mapping.

Pour réaliser le Mapping de nœuds (figure 4), il faut sélectionner le schéma local du nœud à mapper

et faire un simple clic droit sur le schéma global du nœud vers lequel on veut réaliser le Mapping.

Une fois mappé, la couleur [nom] nœuds mappés change en pourpre et le Mapping sera enregistré

28

Première Partie – État de l’art · INSAT

dans la table de Mapping (qui se situe dans le coin gauche de l’interface graphique). Le processus

de Mapping dans SchemaMapper est soumis à un ensemble de règles telles que seules les feuilles

de nœuds peuvent être mappées directement vers d’autres mais aussi la feuille du nœud non locale

ne peut pas être mappée à la feuille du nœud global.

Figure 4 Mapping [nom] noeuds

Cet outil a pour avantage d’éviter l’approche de line-drawing pour indiquer le Mapping. Il offre de

ce fait une architecture flexible qui permet une extensibilité pour [nom] fonctions supplémentaires. Il

utilise aussi la notion de coloration pour distinguer entres les différents types [nom] nœuds [nom]

schémas (root, leaf, non-leaf, selected, recommended, et mapped) et permet de renommer,

supprimer un nœud et ajouter un schéma local sub-tree dans le schéma global. Il permet d’éditer les

schémas dans le même outil.

Limites:

  • Cet outil se limite à un Mapping de schémas XML à XML. En effet, il ne supporte pas

[nom] Mappings de schémas de base de données de même que le Mapping [nom] schémas de

méta données.

29

Première Partie – État de l’art · INSAT

  • Il manque d’options de génération de code.
  • Il ne permet pas les Mappings complexes qui nécessitent [nom] opérateurs mathématiques.
  • La vue [nom] arbres hyperboliques rend difficile la vue de toutes les recommandations en même temps.

2.3 Stylus Studio

C’est un produit commercial qui inclut un outil de Mapping visuel XML Schema Mapping qui

permet le Mapping visuel entre schéma source et schéma cible par un drag et drop et offre une

implémentation facile [nom] données XML impliquant de multiples sources de données et

personnalise les processus de données utilisant XSLT ou le code XQuery.

Il réalise le Mapping entre schémas XML mais aussi d’autres formats de données comme les DTD

(Document Type Definition), les instances de documents XML, les bases de données relationnelles

avec XML, les services web dans une interface graphique conviviale composée de deux parties :

une pour visualiser le Mapping et une autre pour visualiser le code source généré en XSLT ou

XQuery conforme au Mapping et qui peut être édité (Figure 5).

Il offre une vitesse de traitement [nom] données rapide en Input et en Output et · intègre un

environnement de développement XML. Il comprend entre autre un éditeur et un débogueur XSLT,

un outil de conception graphique de schémas XML, un composeur d'appel pour services web (Web

Services Call Composer) et un éditeur, débogueur et mapper XQuery [28].

Figure 5 Mapping dans Stylus Studio

30

Première Partie – État de l’art · INSAT

Limites:

  • Il ne permet pas de mapper plusieurs schémas.
  • Il génère uniquement le code XSLT et XQuery.

2.4 Visual XSLT

C’est un outil couplé avec Visual Studio .Net [32], ce qui lui procure une vaste palette de fonctions

lui permettant notamment de réaliser [nom] Mappings avec la technologie [nom] templates XSLT.

Il permet un Mapping visuel [nom] schémas et transforme [nom] documents XML par une interface drag

et drop. Le Mapping est réalisé à partir d’un schéma source vers un schéma cible en cliquant sur

l’élément ou l’attribut de la source et en tirant (dragging) vers l’élément ou l’attribut de la cible

(figure 6). Ce lien est indiqué par l’icône « mapper » dans fenêtre du schéma cible dans l’interface

graphique. Un nœud dans le schéma source peut être mappé vers plusieurs nœuds du schéma cible

et vice vers ça. Il fournit un traitement [nom] informations rapide, offre une facilité d’accès et est très

maniable.

Il offre en plus un debugging JIT (Just In Time) en testant le code XSLT placé dans d’autres

applications .Net ou d’autres librairies sans nécessiter d’une technologie spéciale ou d’un accès au

code source.

On peut aussi utiliser [nom] sources de données comme inputs ou outputs telles que [nom] documents

instance XML, [nom] schémas XML ou DTD, [nom] services Web afin de faire du Mapping de données

dynamiques générées de services web et [nom] Bases de données relationnelles.

Figure 6 Mapping dans Visual XSLT

31

Première Partie – État de l’art · INSAT

Limites:

  • On ne peut mapper que vers un seul schéma cible.
  • Ne permet pas la génération du code XQuery, java et autre

2.5 TIBCO XMLTransform

TIBCO XML Transform [33] est une solution de conception complète qui rassemble les

fonctionnalités de conception XML et permet de traiter [nom] documents de manière visuelle grâce à

la création et au déboguage [nom] feuilles de style XSLT (Extensible Stylesheet Language

Transformation). Il offre une interface utilisateur graphique pour l'édition de feuilles de style

XSLT qui utilise [nom] mappers simples à base de " glisser-déplacer " pour faciliter le codage [nom]

feuilles de style XSLT complexes. Ces feuilles de style peuvent être ensuite intégrées à un

environnement d'exécution (" runtime ") pour transformer en toute transparence [nom] documents et

[nom] messages XML. L'interface utilisateur de XML Transform fournit également plusieurs fenêtres

pour consulter et éditer le code source XSLT, les erreurs de transformation et les résumés [nom]

modèles XSLT, ce qui simplifie et facilite le processus de développement.

Le Mapping dans Tibco XML Transform est réalisé d’une manière visuelle par un drag et drop

entre schéma ou instance source et cible. Pour de meilleurs résultats, les Mapping drag et drop

doivent êtr

CV anonymisé présenté par NextData · Confidentiel · contact@nextdata.ma ND-CV-4485367D

Pour être mis en relation avec ce profil, indiquez la référence ND-CV-4485367D : contact@nextdata.ma

Versement dans la GED

Vous devez être abonné pour ouvrir ce CV. Pour vous abonner, contactez-nous : contact@nextdata.ma · Déjà abonné ? Se connecter