Title: Reprsentation et dition de documents XML
1Représentation et édition de documents XML
2Le contexte
3Le contexte
- XML est très utilisé
- Difficile dinterpréter XML dans le texte
lttree name"a"gt ltnode cat"ap" id"ap_"
type"std"gt ltnarg type"bot"gt
ltfsgt ltf id"X1" name"gen" /gt
ltf id"X0" name"num" /gt
ltf id"X2" name"restr" /gt lt/fsgt
lt/narggt ... lt/nodegt lt/treegt
4Le contexte
- XML est très utilisé
- Graphique beaucoup plus lisible
5Le problème
lttree name"a"gt ltnode cat"ap" id"ap_"
type"std"gt ltnarg type"bot"gt
ltfsgt ltf id"X1" name"gen" /gt
ltf id"X0" name"num" /gt
ltf id"X2" name"restr" /gt lt/fsgt
lt/narggt ... lt/nodegt lt/treegt
?
?
SVG
6La solution ?
lttree name"a"gt ltnode cat"ap" id"ap_"
type"std"gt ltnarg type"bot"gt
ltfsgt ltf id"X1" name"gen" /gt
ltf id"X0" name"num" /gt
ltf id"X2" name"restr" /gt lt/fsgt
lt/narggt ... lt/nodegt lt/treegt
XSLT
?
SVG
7La solution, presque
lttree name"a"gt ltnode cat"ap" id"ap_"
type"std"gt ltnarg type"bot"gt
ltfsgt ltf id"X1" name"gen" /gt
ltf id"X0" name"num" /gt
ltf id"X2" name"restr" /gt lt/fsgt
lt/narggt ... lt/nodegt lt/treegt
XSLT nest pas suffisant
?
SVG
8La solution
XML
- Rôles du document intermédiaire
- représenter un graphique de manière abstraite,
- pas de coordonnées,
- décrire la position des objets graphiques les uns
par rapport aux autres.
9La représentation intermédiaire
- Comment réussir à placer les objets les uns par
rapport aux autres ? - Par un système emprunté à LaTeX des boîtes
imbriquées séparées par des ressorts
10Exemple
111ère étape
121ère étape
13Les boîtes
- finales ne peuvent contenir ni boîtes ni
ressorts - non-finales ne peuvent contenir que des boîtes
et des ressorts
14Les boîtes
Petit bout de texte
- Largeur et hauteur fixées par celles du contenu
15Les boîtes
- Boîte non-finale horizontale
- Hauteur fixée par le contenu
- Largeur peut varier entre un minimum et un
maximum que lon peut fixer
16Les boîtes
- Boîte non-finale verticale
- Largeur fixée par le contenu
- Hauteur peut varier entre un minimum et un
maximum que lon peut fixer
172ème étape
182ème étape
- La structure de boîte reste la même
19Propriété background
- Toutes les boîtes peuvent avoir un arrière-plan
- Pour attribuer un arrière-plan à une boîte, on
fixe la valeur de lattribut background - Cette information sera interprétée par le
programme Java qui passe du document
intermédiaire au document SVG
20Propriété background
- Avec notre exemple, on indique un
backgroundblueRect pour les 3 boîtes de texte
Java
?
Document de définitions
213ème étape
223ème étape
- Il faut juste générer en plus les liens
- Un lien permet de lier graphiquement une boîte
source et une boîte destination - Un lien peut avoir un style
23Ce quil faut retenir
Document de définitions
- Le document intermédiaire contient
- une structure de boîtes
- des liens (optionnels)
24Exemple de représentation
TAGML
25Exemple de représentation
DRS
26Exemple de représentation
Fantaisie
27Vers de lédition
- Intéressant de pouvoir éditer graphiquement
- Comment faire puisque le document SVG ne contient
que des objets graphiques ? - Cest le document XML source qui contient toute
linformation - Il faut lier un objet graphique à lélément
correspondant dans le document source
28Complément sur le document intermédiaire
- Information que lon va stocker dans le document
intermédiaire sous forme de référence
- Une référence
- désigne un élément du document source avec un
XPointer - désigne un élément graphique à laide dun
identifiant unique
29Léditeur
30Léditeur
31Léditeur
32Léditeur
33Léditeur
34Léditeur
35Léditeur
36Léditeur
37Léditeur
38Léditeur
39Léditeur
40Léditeur
- Disponible à ladresse suivante
- http//www.loria.fr/equipes/led/outils/xmlEditor.h
tml - Contact cocquet_at_loria.fr