Un modèle flexible d'édition intelligente de documents structurés basé sur des techniques de "chart-parsing" Marc Dymetman Exposé LIMSI, 14 déc. 2004
La plupart des outils de rédaction contrôlée: régime d'édition descendant Niveaux supérieurs spécifiés avant niveaux inférieurs Pas toujours adapté E.g. rédaction ''ascendante'' d'offres d'emploi Le rédacteur écrit: administrative assistant... Excel Le système infère partiellement la structure: administrative assistant... Excel Introduction
Ce que nous voudrions, c'est un système de rédaction flexible dans lequel: (1) Le rédacteur peut mélanger librement des actions d'édition descendantes et ascendantes (2) Le système calcule automatiquement les conséquences des décisions de l'auteur (3) Le système détecte les conflits potentiels avant qu'ils ne surviennent et guide l'auteur afin de les éviter Introduction
Le document en cours d'édition est représenté par une expression régulière (balises + texte)... Approche
Le document en cours d'édition est représenté par une expression régulière (balises + texte) assistant... Approche
Le document en cours d'édition est représenté par une expression régulière (balises + texte) assistant assistant Approche
Le document en cours d'édition est représenté par une expression régulière (balises + texte) assistant assistant Approche
Le document en cours d'édition est représenté par une expression régulière (balises + texte) assistant assistant assistant Excel... Approche
Le document en cours d'édition est représenté par une expression régulière (balises + texte) assistant assistant assistant Excel Approche
Le document en cours d'édition est représenté par une expression régulière (balises + texte) assistant assistant assistant Excel Inférence grammaticale Le système effectue automatiquement les choix forcés Seulement les choix qui peuvent conduire à un document valide sont autorisés Mécanisme d'inférence basés sur le ''chart-parsing'' Approche
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with peter saw the rose with a telescope Analyse par chartes GHC
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt pn peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt pn,np np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt vp pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt np vp s pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt vp np vp s pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt s vp np vp s pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt s vp np vp s pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt s vp np vp s pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt s vp np vp s pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt s vp np vp s pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt s vp np vp s pn,np np pp np peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Analyse par chartes GHC petersawtherosewithatele n,vi dd n p vt s vp np vp s pn,np np pp np ne peut pas être utilisé dans une analyse complète peter saw the rose with a telescope
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with … saw … with … Chartes et automates GHC expression régulière
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Chartes et automates GHC … saw … with … automate
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Chartes et automates 012 a, the, peter, rose, tele, with, saw; d, n, np, p, pn, pp, s, vi, vp, vt saw; vtwith; p, pp, np s, vp a, the, peter, rose, tele, with, saw; d, n, np, p, pn, pp, s, vi, vp, vt GHC … saw … with … charte
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Chartes et automates 012 a, the, peter, rose, tele, with, saw; d, n, np, p, pn, pp, s, vi, vp, vt saw; vtwith; p, pp, np s, vp a, the, peter, rose, tele, with, saw; d, n, np, p, pn, pp, s, vi, vp, vt Nous pouvons maintenant décider : Que “... saw... with...” peut être complété en une phrase valide (e.g. 0-peter-0-with-0-a-0-rose-0- saw-1-the-1-rose-1-with-2-a-2- telescope-2 ) GHC … saw … with …
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Chartes et automates 012 a, the, peter, rose, tele, with, saw; d, n, np, p, pn, pp, s, vi, vp, vt saw; vtwith; p, pp, np s, vp Nous pouvons maintenant décider : Que “... saw... with...” peut être complété en une phrase valide (e.g. 0-peter-0-with-0-a-0-rose-0- saw-1-the-1-rose-1-with-2-a-2- telescope-2 ) Quels terminaux peuvent apparaître entre quels noeuds a, the, peter, rose, tele, with, saw; d, n, np, p, pn, pp, s, vi, vp, vt GHC … saw … with …
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Chartes et automates 012 a, the, peter, rose, tele, with, saw; d, n, np, p, pn, pp, s, vi, vp, vt saw; vtwith; p, pp, np s, vp a, the, peter, rose, tele, with, saw; d, n, np, p, pn, pp, s, vi, vp, vt GHC Theorème (Bar-Hillel et al, 1961): L'intersection d'une GHC avec un automate d'états finis est une GHC La ''charte'' est intimement liée à la construction de cette intersection … saw … with …
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Rédaction et automates GHC … saw … with …
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Rédaction et automates raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Choix de rédaction GHC … saw … with …
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Rédaction et automates Choix de rédaction RI:... saw... with... saw... RI:... saw... rose... with... RG:... saw rose... with... RV:... saw with... Vie ou mort ? GHC … saw … with …
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Rédaction et automates Choix de rédaction RI:... saw... with... saw... RI:... saw... rose... with... RG:... saw rose... with... RV:... saw with... Vie ou mort ? GHC Nous pouvons construire une charte pour chacun des 4 cas et vérifier si chacun peut être complété en une phrase valide … saw … with …
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Rédaction et automates Choix de rédaction RI:... saw... with... saw... mort RI:... saw... rose... with...vivant RG:... saw rose... with...mort RV:... saw with...mort Vie ou mort ? GHC Nous pouvons construire une charte pour chacun des 4 cas et vérifier si chacun peut être complété en une phrase valide … saw … with …
s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Rédaction et automates Choix de rédaction RI:... saw... with... saw... mort RI:... saw... rose... with...vivant RG:... saw rose... with...mort RV:... saw with...mort Vie ou mort ? GHC Nous pouvons construire une charte pour chacun des 4 cas et vérifier si chacun peut être complété en une phrase valide Cependant, ceci est a posteriori Pouvons nous exploiter la charte avant le choix pour prédire les options possibles? … saw … with …
raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Rédaction et automates Choix de rédaction 012 sawwith a, the, peter, rose, tele, with; saw Vie ou mort ? charte automate RI:... saw... with... saw... mort RI:... saw... rose... with...vivant RG:... saw rose... with...mort ? RV:... saw with...mort ? … saw … with …
raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Rédaction et automates Choix de rédaction 012 sawwith a, the, peter, rose, tele, with; saw Vie ou mort ? charte automate RI:... saw... with... saw... mort RI:... saw... rose... with...vivant RG:... saw rose... with...mort ? RV:... saw with...mort ? … saw … with … Solution partielle!
raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Choix de rédaction Vie ou mort ? β-automates et précalcul des choix β- automate RI:... saw... with... saw... RI:... saw... rose... with... RG:... saw rose... with... RV:... saw with... … saw … with …
raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Choix de rédaction Vie ou mort ? β-automates et précalcul des choix β- automate RI:... saw... with... saw... RI:... saw... rose... with... RG:... saw rose... with... RV:... saw with... … saw … with … charte *0-*1*1-*1*1-*2*0-*2ε 0a, the (00-01) a,the,rose,tele, with (01-01) peter,rose, tele peter 1a,the, peter (10-11) a,the,peter,rose, tele,with peter,rose, tele peter 2a,the, peter a,the,peter,rose, tele,with peter,rose, tele peter
raffinement vide... ε raffinement interne... ... t... raffinement gauche... t... raffinement droit... ... t Choix de rédaction Vie ou mort ? β-automates et précalcul des choix β- automate RI:... saw... with... saw... mort RI:... saw... rose... with...vivant RG:... saw rose... with...mort RV:... saw with...mort charte *0-*1*1-*1*1-*2*0-*2ε 0a, the (00-01) a,the,rose,tele, with (01-01) peter,rose, tele peter 1a,the, peter (10-11) a,the,peter,rose, tele,with peter,rose, tele peter 2a,the, peter a,the,peter,rose, tele,with peter,rose, tele peter … saw … with … Solution complète! Prédiction de tous les choix possibles
Rédaction de documents structurés library books books tbook books tbook books tbook book book war and peace book solaris book the stranger... Tag-GHC
Rédaction de documents structurés Tag-GHC library books books tbook books tbook books tbook book book war and peace book solaris book the stranger... compare DTD: document Une GHC sur un vocabulaire terminal étendu: mots + balises (the, war,...,,,...) Balises en partie droite toujours par paire balise ouvrante/fermante, ou pas du tout Une grammaire de chaînes, pas d'arbres, mais génère des structures bien parenthésées Peut simuler DTD's, schémas Relax-NG (Reg. Hedge Grammars) La puissance expressive vient des non- terminaux qui ne sont pas matérialisés par des balises explicites (e.g. tbook ) solaris war and peace...
Rédaction de documents structurés s np vp np pn np d n np d n pp vp vi vp vi pp vp vt np vp vt np pp pp p np d the d a n rose n telescope pn peter vi rose vt saw p with Tag-GHC peter saw the rose with a telescope Une GHC sur un vocabulaire terminal étendu: mots + balises (the, war,...,,,...) Balises en partie droite toujours par paire balise ouvrante/fermante, ou pas du tout Une grammaire de chaînes, pas d'arbres, mais génère des structures bien parenthésées Peut simuler DTD's, schémas Relax-NG (Reg. Hedge Grammars) La puissance expressive vient des non- terminaux qui ne sont pas matérialisés par des balises explicites (e.g. tbook )
Rédaction de documents structurés... 0 saw... 1 with... 2
Rédaction de documents structurés... 0 saw... 1 with... 2
Rédaction de documents structurés *0-*1*1-*1*1-*2*0-*2ε 0,,,, a, the, peter, rose, tele, with 1,,,, a, the, peter, rose, tele, with 2,,,, a, the, peter, rose, tele, with... 0 saw... 1 with... 2 charte
*0-*1*1-*1*1-*2*0-*2ε 0,,,, a, the, peter, rose, tele, with 1,,,, a, the, peter, rose, tele, with 2,,,, a, the, peter, rose, tele, with... 0 saw... 1 with... 2 charte Rédaction de documents structurés
*0-*1*1-*1*1-*2*0-*2ε 0,,,, a, the, peter, rose, tele, with 1,,,, a, the, peter, rose, tele, with 2,,,, a, the, peter, rose, tele, with... 0 saw... 1 with... 2 charte Rédaction de documents structurés
*0-*1*1-*1*1-*2*0-*2ε 0,,,, a, the, peter, rose, tele, with 1,,,, a, the, peter, rose, tele, with 2,,,, a, the, peter, rose, tele, with... 0 saw... 1 with... 2 charte Rédaction de documents structurés
*0-*1*1-*1*1-*2*0-*2ε 0,,,, a, the, peter, rose, tele, with 1,,,, a, the, peter, rose, tele, with 2,,,, a, the, peter, rose, tele, with... saw... with saw... 1 with... 2 charte Rédaction de documents structurés
*0-*1*1-*1*1-*2*0-*2ε 0,,,, a, the, peter, rose, tele, with 1,,,, a, the, peter, rose, tele, with 2,,,, a, the, peter, rose, tele, with... saw... with saw... 1 with... 2 charte Rédaction de documents structurés
*0-*1*1-*1*1-*2*0-*2ε 0,,,, a, the, peter, rose, tele, with 1,,,, a, the, peter, rose, tele, with 2,,,, a, the, peter, rose, tele, with... saw... with saw... 4 with saw... 1 with... 2 charte Rédaction de documents structurés
... 3 saw... 4 with... 5 Rédaction de documents structurés
... 3 saw... 4 with... 5 Rédaction de documents structurés
... 3 saw... 4 with... 5 *0-*1*1-*1*1-*2*0-*2ε 3a, the,,,, a, the, peter, rose, tele, with, rose, tele peter 4a, the, peter,,,, a, the, peter, rose, tele, with, rose, tele 5a, the, peter,,,, a, the, peter, rose, tele, with, charte Rédaction de documents structurés
... 3 saw... 4 with... 5 *0-*1*1-*1*1-*2*0-*2ε 3a, the,,,, a, the, peter, rose, tele, with, rose, tele peter 4a, the, peter,,,, a, the, peter, rose, tele, with, rose, tele 5a, the, peter,,,, a, the, peter, rose, tele, with, charte a... the... peter a......the......peter......rose......telescope......with... Rédaction de documents structurés raffinement vide... ε inside refinement... ... t... raffinement gauche... t... raffinement droit... ... t Choix de rédaction
Document partiel = automate Flexibilité pour l'auteur: ordre libre de spécification du contenu du document Prix à payer: maintenance non-triviale de la consistance Un principe simple : intersection d'une Tag-GHC avec automate, technique de chart-parsing Le formalisme Tag-GHC intéressant en lui-même: Simple mais expressif Manipulation du texte et de la structure dans un cadre unique Perspectives Optimisation par modifications incrémentales de la charte Implémentation complète et expérimentations... Conclusion Référence: Chart-parsing techniques and the prediction of valid editing moves in structured document authoring Marc Dymetman, DocEng '04: Proceedings of the 2004 ACM symposium on Document engineering, 2004, Milwaukee, Wisconsin, USA,