Langages de transformation incrmentaux - PowerPoint PPT Presentation

About This Presentation
Title:

Langages de transformation incrmentaux

Description:

Un nouveau langage ' Omega ', et une nouvelle approche pour la transformation incr mentale. Planning pour la ... On aimerait pouvoir d finir et r utiliser des contextes XML ... – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 25
Provided by: pgen9
Category:

less

Transcript and Presenter's Notes

Title: Langages de transformation incrmentaux


1
Langages de transformation incrémentaux
  • 1er avril 2003
  • Avancement et planning

2
Plan
  • Le problème de la transformation incrémentale
  • État de lart
  • Traitement incrémental
  • Langages de transformation
  • iXSLT
  • Un nouveau langage  Omega , et une nouvelle
    approche pour la transformation incrémentale
  • Planning pour la période à plein temps

3
La transformation incrémentale
Application dune
Transformation T
Document XML cible
Document XML source
Données un arbre XML x, une transformation t,
le résultat t(x), la modification ?x de x, des
infos auxiliaires éventuelles. But le calcul
efficace de t(x ?x)
4
État de lart des langages de transformation
  • Langages (XSLT, XQuery, Circus, CDuce)
  • Synthèse
  • Modèle de règle de transformation
  • Partie gauche Partie droite
  • lt Sélection dans larbre source, Génération gt
  • Contexte dexécution des règles
  • Xpath est le langage de sélection du W3C
  • Permet de sélectionner un ensemble de nuds dun
    arbre XML
  • Exemples article/paragraph2,
    /livre_at_auteur"Paul"
  • Constats
  • Partie gauche des règles bien définie, partie
    droite ?
  • Aucun spécifiquement étudié pour lincrémentalité

5
État de lart du traitement incrémental en général
  • Nombreux travaux, domaines variés 2 catégories
  • Algorithmes spécifiques
  • Méthodes générales
  • Synthèse
  • 4 techniques de base
  • Exploitation du résultat précédent
  • Exploitation de résultats intermédiaires
  • Exploitation dinformations auxiliaires
  • Évaluation partielle
  • Papier écrit résumant plusieurs techniques

6
Etat de lart de la transformation incrémentale
  • iXSLT
  • Processeur XSLT incrémental
  • Idée clefs
  • Analyse statique de la feuille XSLT
  • Règles de réévaluation
  • Modification dun processeur de transformation
    XSLT classique
  • Remarque
  • Paramètres dynamiques imposent des règles de
    réévaluation  relachées 

7
Etat de lart - Conclusions
  • Constats
  • Aucun langage de transformation spécifiquement
    étudié pour la transformation incrémentale
    ( processus batch )
  • Partie gauche des règles bien définie, partie
    droite ?

8
Omega
  • Un nouveau langage de transformation
  • Pourquoi ?
  • Idée clef XPath partout

9
Principes de Omega
  • Système de réécriture
  • Forme dune règle
  • lt i, o gt ? lt o gt
  • i sélection dans larbre source
  • o expression du contexte dans larbre cible
  • o réécriture de o
  • i, o expressions XPath avec sémantique
    classique (sélection)
  • o expression de construction
  • 2 exemples
  • /a/b, /c ? /c/d
  • /article/author_at_name.name, /html/body ?
    /html/body/h1.name

10
Premier intérêt
  • Expression de transformations réversibles
  • lt i, o gt ? lt i, o gt

11
Exemple de règle réversible
  • /article/section,
  • /book
  • ?
  • /article,
  • /book/chapter

12
Processus dapplication dune règle
  • Règle
  • lt i, o gt ? lt o gt
  • Evaluation de i et o
  • Produit cartésien E I O
  • Application dune règle par pas traitement du
    premier élément de E non traité

13
Stratégie Omega
  • Stratégie décrit un ordre dapplication des
    règles
  • Exemples
  • strategy is r1 (r2 r3) r4
  • strategy is Rule1 r1 Rule2Rule2 r3 (r4
    r5)

14
Contextes Omega
  • Un problème manque dexpressivité du contexte
    dans larbre cible
  • On aimerait pouvoir définir et réutiliser des
    contextes XML
  • Solution extension  
  • Exemple
  • init /article/section
  • /html/body
  • --gt
  • /html/body/h1.subpath
  • defcontext C as osubpath
  • Contextes empilés dans le cas dune stratégie
    récursive

15
Exemple (table -gt liste)
  • ruleset N HTML -gt HTML in context C
    iNodeSet oNodeSet is table
    Ci/table.ipath , Co --gt
    Co/ul.opathdefcontext C as C
    iipath oopath
  • textcell Ci/tr/td.ipath/text().val
    Co --gt Co/li.opath/text().val,
  • defcontext C as C iipath oopath
  • innertab Ci/tr/td/table.ipath, Co
    --gt Co/ul.opath
  • defcontext C as C iipath oopath
  • strategy is Thetable table RowRow
    textcell (innertab Row) 
  •  

16
Conclusions sur Omega (1/2)
  • Partie droite précisément définie
  • Intérêts pour la transformation incrémentale
  • Réversibilité permet de défaire des règles déjà
    appliquées
  • Stratégie ordonnée gt optimisation possible

17
Conclusions sur Omega (2/2)
  • Recherches envisagées
  • Définition de la sémantique de Omega
  •    et  //  dans une expression de
    construction ?
  • Problème
  • Jusquoù peut aller la réversibilité ?

18
Retour au cur du problème de la transformation
incrémentale
lt expr1 Xpath, gt
lt expr2 Xpath, gt
. . .
lt exprn Xpath, gt
Arbre XML source
Transformation
  • Déterminer les expressions de sélection à
    réévaluer lors dune modification

19
Approche par test dinclusion
  • Modification élémentaire du document source
    expression Xpath de construction (attention sur
    larbre source)
  • Test dinclusion de cette expression avec les
    expressions de sélection des règles Omega
  • Exemple /article/section2 ? i1? i2? in ?
  • Tests guidés par la stratégie

20
Fondements de lapproche
  • Hypothèse test dinclusion dexpressions Xpath
    complet pour les types dexpressions considérées
  • 2 formes dexpression de sélection dans Omega
  • absolue /noeud
  • préfixée par un contexte Ci/noeud
  • Analyse statique des contextes nécessaire
  • /article/paragraph2 est-il contenu dans
    /book/paragraph ?
  • /article/paragraph2 contenu dans
    Ci/paragraph? Analyse statique de lévolution
    des contextes de la transformation

21
Planning - Recherches envisagées
  • Définition de la sémantique de Omega
  • Analyse statique de lévolution des contextes
    dans Omega
  • Basée sur
  • Les règles de la transformation considérée
  • La stratégie spécifiée
  • Relative
  • Aux éventuels modèles de documents source et
    cible
  • À linstance de document transformé
  • Propriétés defficacité étude des cas valables

22
Conclusion
  • Le problème de la transformation incrémentale
  • Limite des langages de transformation
  • Omega, ses intérêts pour la transformation
    incrémentale
  • Nouvelle approche basée sur le test dinclusion
  • Planning envisagé

23
Merci !
  • Questions ?

24
Pistes annexes découvertes
  • Transformation en streaming XML
  • Grâce à une approche orthogonale évaluation
    progressive des expressions Xpath
  • Contrôle de validité incrémental ?
  • Grâce aux règles Omega
Write a Comment
User Comments (0)
About PowerShow.com