Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parYasmine Pottier Modifié depuis plus de 10 années
1
Une méthode pour l‘évolution de schémas XML préservant la validité des documents
Denio Duarte1 Université François-Rabelais de Tours - Campus Blois Laboratoire d’Informatique - LI Bases de données et Traitement des langues naturelles - BdTln 1Boursier du gouvernement brésilien - CAPES
2
Motivation Document XML Document XML Denio Duarte
3
Motivation Denio Duarte Document XML Document XML Document XML
4
Motivation Documents valides Denio Duarte Schéma (DTD) Document XML
5
Motivation Denio Duarte Schéma Document XML Document XML Document XML
mise à jour Denio Duarte
6
Motivation Denio Duarte Schéma vérifier la validité Document XML
mise à jour Denio Duarte
7
mise à jour valide ou invalide
Motivation Schéma mise à jour valide ou invalide Document XML Document XML Document XML mise à jour Denio Duarte
8
Faire évoluer le schéma
Motivation Schéma Document XML Document XML Document XML Faire évoluer le schéma Denio Duarte
9
Motivation Schéma’ Document XML Document XML Document XML Denio Duarte
10
Motivation Est-ce qu’un schéma peut être changé sans :
Modifier les documents auparavant valides ? Revalider les documents auparavant valides ? Denio Duarte
11
Motivation V. Vianu (PODS’03) et D. Suciu (SIGMOD’02)
Vérification de typage et inférence de type V. Vianu (PODS’03) et D. Suciu (SIGMOD’02) Adaptation des documents aux schémas E. Kuikka et al (DocEng’02) et H. Su (WIDM’04) Primitives de mise à jour de schémas H. Su et al (SIGMOD’01) et L. Al-Jadir (OOIS’03) Apprentissage des automates L.G. Valiant (CACM’84) et E.M. Gold (Inf. and Control’67) Denio Duarte
12
Motivation But : Proposer une méthode pour aider les administrateurs dans la tâche d’évolution des schémas XML qui préserve la validité des documents sans les modifier. Denio Duarte
13
Motivation Denio Duarte Schéma Document XML Document XML Document XML
mise à jour Denio Duarte
14
Motivation Denio Duarte Schéma Document XML Document XML’ Document XML
mise à jour Denio Duarte
15
Motivation Denio Duarte Schéma Document XML Document XML’ Document XML
mise à jour Denio Duarte
16
Motivation Denio Duarte Schéma’ Document XML Document XML’
17
Plan Approche GREC GREC-e Conclusion Perspectives Denio Duarte
18
Motivation GREC GREC-e Conclusion Perspectives Approche Documents vus comme des arbres (M. Murata – PODDP’98, A. Bruggeman-Klein et al – TechRep’98, B. Bouchou et al – ICEIS’03) : Universite NomUniv Laboratoire Laboratoire data Nom Chercheur Publication CId Nom Titre Sujet Annee Revue Annee Revue data data data data data data Nom TArticle data Nom TArticle data idAuts data data idAuts data data data Denio Duarte
19
Motivation GREC GREC-e Conclusion Perspectives Approche Les schémas vus comme des automates d’arbres ( A. Bruggeman-Klein et al – Inf. and Comp.’98, B. Chidloskii - ADL’00, B. Bouchou et al – ICEIS’03) : Σ = {Universite, Chercheur, Publication, Revue, ....} Q = {qUniversite, qChercheur, qPublication , qRevue ,.....} Qf = {qUniversite } Δ = { Universite, < {qNom }, >, qLaboratoire+ qUniversite Laboratoire, <, >, qNom qChercheur+ qPublication+ qLaboratoire Chercheur, < {qCId }, >, qNom qTitre qChercheur Publication, <, >, qSujet (qAnnee qRevue+)* qPublication : } Denio Duarte
20
L’association d’états.
Motivation GREC GREC-e Conclusion Perspectives Approche L’association d’états. Publication Sujet data Annee Revue Nom TArticle idAuts Denio Duarte
21
L’association d’états.
Motivation GREC GREC-e Conclusion Perspectives Approche L’association d’états. Publication Sujet data Annee Revue Nom TArticle idAuts Publication, <, >, qSujet (qAnnee qRevue+)* qPublication ? qSujet qAnnee qRevue qAnnee qRevue qdata qdata qNom qTArticle qdata qNom qTArticle qdata qidAuts qdata qdata qidAuts qdata qdata qdata Denio Duarte
22
L’association d’états.
Motivation GREC GREC-e Conclusion Perspectives Approche L’association d’états. Publication Sujet data Annee Revue Nom TArticle idAuts Publication, <, >, qSujet (qAnnee qRevue+)* qPublication ? qSujet qAnnee qRevue qAnnee qRevue L(qSujet (qAnnee qRevue+)* ) qSujet qAnnee qRevue qAnnee qRevue qdata qdata qNom qTArticle qdata qNom qTArticle qdata qidAuts qdata qdata qidAuts qdata qdata qdata Denio Duarte
23
L’association d’états.
Motivation GREC GREC-e Conclusion Perspectives Approche L’association d’états. Publication Sujet data Annee Revue Nom TArticle idAuts qPublication qSujet qAnnee qRevue qAnnee qRevue qdata qdata qNom qTArticle qdata qNom qTArticle qdata qidAuts qdata qdata qidAuts qdata qdata qdata Denio Duarte
24
Évolution du schéma (expressions régulières) :
Motivation GREC GREC-e Conclusion Perspectives Approche Évolution du schéma (expressions régulières) : Connaître la syntaxe (parenthèses, ?, *, +, |) Connaître la sémantique Approches: Changer manuellement (revalidation, erreurs) Changer automatiquement (préserve la consistance) Denio Duarte
25
Motivation GREC GREC-e Conclusion Perspectives Approche Automatique : L’administrateur modifie un document pour expliciter l’évolution du schéma souhaitée. L’évolution est transparente pour les autres applications qui utilisent le schéma. Denio Duarte
26
Motivation GREC GREC-e Conclusion Perspectives Approche Denio Duarte
Publication Sujet data Annee Revue Nom TArticle idAuts Conference Denio Duarte
27
Motivation GREC GREC-e Conclusion Perspectives Approche ? qSujet qAnnee qRevue qAnnee qRevue qConference L(qSujet (qAnnee qRevue+)* ) qSujet qAnnee qRevue qAnnee qRevue qConference qdata qdata qNom qTArticle qdata qNom qTArticle qdata qidAuts qdata qdata qidAuts qdata qdata qdata Le système utilise l’automate d’arbre pour trouver les informations nécessaires à la modification du schéma. Denio Duarte
28
Motivation GREC GREC-e Conclusion Perspectives Approche La mise à jour : insert(5,Publication,Conference) (B. Bouchou et al - DBLP’03) Mot d’origine w= qSujet qAnnee qRevue qAnnee qRevue Mot mis à jour w’= qSujet qAnnee qRevue qAnnee qRevue qConference w L(qSujet (qAnnee qRevue+)* ) w’ L(qSujet (qAnnee qRevue+)* ) 1 2 3 4 Denio Duarte
29
qSujet (qAnnee qRevue+)*# ou 1 (2 3+)* 4
Motivation GREC GREC-e Conclusion Perspectives Approche Expression régulière Automate d’états finis Algorithme de Glushkov Automate de Glushkov L’expression régulière est indicée : qSujet (qAnnee qRevue+)* qSujet1 (qAnnee2 qRevue3+)* ou 1 (2 3+)* Un seul état initial, chaque position a un seul état et, si on ajoute une marque de fin (e.g., #), un seul état final : qSujet (qAnnee qRevue+)*# ou 1 (2 3+)* 4 # qAnnee qSujet qAnnee qRevue # 1 2 3 4 qRevue Denio Duarte
30
Homogène : un état est toujours atteint par un même symbole
Motivation GREC GREC-e Conclusion Perspectives Approche Les automates de Glushkov ont des propriétés que nous exploitons dans notre méthode (P. Caron et D. Ziadi - TCS’00) : Homogène : un état est toujours atteint par un même symbole Les orbites : sous-expressions étoilées de l’expression régulière Hamac : il existe (i) un état qui atteint tous les autres états et (ii) un état dont tous les autres états l’atteint (grâce à la marque de fin #) Réduction : Automate Expression régulière d’origine Denio Duarte
31
Homogène : Motivation GREC GREC-e Conclusion Perspectives Approche #
qAnnee qSujet qAnnee qRevue # 1 2 3 4 qRevue 1 2 3 4 Denio Duarte
32
Orbites x Sous-expressions étoilées :
Motivation GREC GREC-e Conclusion Perspectives Approche Orbites x Sous-expressions étoilées : qSujet (qAnnee qRevue+)*# 1 (2 3+)*4 1 2 3 4 Denio Duarte
33
Hamac : Motivation GREC GREC-e Conclusion Perspectives Approche
1 2 3 4 Denio Duarte
34
Réduction (exploitée par notre méthode) :
Motivation GREC GREC-e Conclusion Perspectives Approche Réduction (exploitée par notre méthode) : D’abord : calculer et supprimer les orbites maximales : H={} (hiérarchie des orbites maximales) 1 2 3 4 Denio Duarte
35
H={{2,3}} Motivation GREC GREC-e Conclusion Perspectives Approche
1 2 3 4 Denio Duarte
36
H={{3},{2,3}} Motivation GREC GREC-e Conclusion Perspectives Approche
Hiérarchie des orbites 1 2 3 4 Graphe de Glushkov sans orbite Denio Duarte
37
Ensuite appliquer trois règles de réduction (plus décoration) :
Motivation GREC GREC-e Conclusion Perspectives Approche Ensuite appliquer trois règles de réduction (plus décoration) : R1 : Concaténation R2 : Union R3 : Optionalité x y xy y x|y x x x? Denio Duarte
38
Motivation GREC GREC-e Conclusion Perspectives Approche 0 -
décoration + 0 - 1 2 3 4 H={{3},{2,3}} Denio Duarte
39
Motivation GREC GREC-e Conclusion Perspectives Approche 0 -
décoration + 0 - 1 2 3 4 H={{3},{2,3}} 1 - 1 2 3+ 4 H={{2,3}} R1 Denio Duarte
40
Motivation GREC GREC-e Conclusion Perspectives Approche 0 -
décoration + 0 - 1 2 3 4 H={{3},{2,3}} 1 - 1 2 3+ 4 H={{2,3}} R1 décoration + H={{2,3}} 2 - 1 (2 3+)+ 4 Denio Duarte
41
Motivation GREC GREC-e Conclusion Perspectives Approche 0 -
décoration + 0 - 1 2 3 4 H={{3},{2,3}} 1 - 1 2 3+ 4 H={{2,3}} R1 décoration + H={{2,3}} 2 - 1 (2 3+)+ 4 R3 H={} 3 - 1 (2 3+)+ 4 Denio Duarte
42
Motivation GREC GREC-e Conclusion Perspectives Approche 0 -
décoration + 0 - 1 2 3 4 H={{3},{2,3}} 1 - 1 2 3+ 4 H={{2,3}} R1 décoration + H={{2,3}} 2 - 1 (2 3+)+ 4 R3 H={} 3 - 1 (2 3+)+ 4 R1 4 - 1 (2 3+)* 4 R1 R1 Résultat: 5 - 0 1 (2 3+)* 4 0 1 (2 3+)* 4 Denio Duarte
43
Motivation GREC GREC-e Conclusion Perspectives Approche 0 -
1 2 3 4 H={{3},{2,3}} 1 - 1 2 3+ 4 H={{2,3}} R1 H={{2,3}} 2 - 1 (2 3+)+ 4 R3 H={} 3 - 1 (2 3+)+ 4 R1 4 - 1 (2 3+)* 4 R1 Résultat: R1 0 1 (2 3+)* 4 5 - 0 1 (2 3+)* 4 1 (2 3+)* qSujet (qAnnee qRevue+)* Denio Duarte
44
GREC (Generate Regular Expression Choices)
Motivation Approche GREC-e Conclusion Perspectives GREC (Generate Regular Expression Choices) Un document mis à jour sert comme guide pour l’évolution du schéma. L’automate qui accepte le langage de l’expression régulière d’origine est modifié Le processus de réduction de l’automate de Glushkov est la base de l’approche. Plusieurs candidats sont générés et l’administrateur choisit celui qui lui convient le plus. Denio Duarte
45
L’algorithme GREC : Motivation Approche GREC-e
Conclusion Perspectives GREC L’algorithme GREC : y y GREC * y|s x w x s w x w R2 z z z R3 GREC * y|z y|z s?(y|z) x w x w x w s R1 s GREC * (y|z)? (y|z)? x w x w (y|z)?s ? x w Denio Duarte
46
Mot w’= qSujet qAnnee qRevue qAnnee qRevue qConference#
Motivation Approche GREC-e Conclusion Perspectives GREC Mot w’= qSujet qAnnee qRevue qAnnee qRevue qConference# 1 2 3 4 Prochain état à exécuter si le nouveau symbole n’existait pas Dernier état atteint avant l’échec de l’automate Denio Duarte
47
Un nouveau nœud qui représente qConference :
Motivation Approche GREC-e Conclusion Perspectives GREC Mot w’= qSujet qAnnee qRevue qAnnee qRevue qConference# 1 2 3 4 snr snl snew Un nouveau nœud qui représente qConference : <snl, snr , snew> < 3, 4 , 5> Denio Duarte
48
Entrée de l’algorithme GREC :
Motivation Approche GREC-e Conclusion Perspectives GREC Entrée de l’algorithme GREC : G: 1 2 3 4 H: {{3},{2,3}} Triplet: < snl : 3, snr : 4 , snew : 5> Denio Duarte
49
Exécution de GREC : Motivation Approche GREC-e Conclusion Perspectives
Pas 1: Décoration du nœud 3 – vérifier si un nouveau graphe peut être construit H={{3},{2,3}} 1 2 3 4 Denio Duarte
50
Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) :
Motivation Approche GREC-e Conclusion Perspectives GREC Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) : Pas 1: Décoration du nœud 3 – vérifier si un nouveau graphe peut être construit H={{3},{2,3}} 1 2 3 4 snew Condition: snl x x x snr Nouveaux graphes: snew x Denio Duarte
51
Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) :
Motivation Approche GREC-e Conclusion Perspectives GREC Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) : Pas 1: Décoration du nœud 3 – vérifier si un nouveau graphe peut être construit H={{3},{2,3}} 1 2 3 4 snew Condition: snl x x x snr Nouveaux graphes: snew x La condition est vérifiée: H’={{3,5},{2,3,5}} 1 2 3 4 1 2 3 4 5 0 1 (2 (3 5?)+)*4 0 1 (2 (3 5*)+)*4 5 0 1 (2 (3|5)+)*4 Denio Duarte
52
Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) :
Motivation Approche GREC-e Conclusion Perspectives GREC Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) : Pas 3: décorer le nœud 2 3 1 2 3+ 4 H={{2,3}} snew Condition: snl x x x snr Nouveaux graphes: snew x Nouveaux graphes H’={{2,3,5}} 1 2 3+ 4 5 1 2 3+ 4 5 0 1 (2 3+ 5?)*4 0 1 (2 3+ 5*)*4 0 1 (2 3+ | 5)*4 Denio Duarte
53
Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) :
Motivation Approche GREC-e Conclusion Perspectives GREC Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) : Pas 5: Appliquer R1 sur les nœuds 2 3 et 4 1 (2 3+)* 4 H={} Condition: snew snl x y = snr x Nouveau graphe: y x y Nouveau graphe : 5 0 1 (2 3+)*5?4 0 1 (2 3+)*5*4 1 (2 3+)* 4 Denio Duarte
54
Le résultat de l’exécution de GREC :
Motivation Approche GREC-e Conclusion Perspectives GREC Le résultat de l’exécution de GREC : qSujet(qAnnee (qRevue qConference?) +)* qSujet (qAnnee (qRevue qConference*) +)* Dans qRevue+ qSujet (qAnnee (qRevue|qConference)+)* qSujet (qAnnee qRevue+ qConference?)* qSujet (qAnnee qRevue+ qConference*)* Dans (qAnnee qRevue+ )* qSujet (qAnnee qRevue+ |qConference)* qSujet (qAnneeqRevue+)*qConference? qSujet (qAnnee qRevue+)*qConference* En dehors des sous-expressions étoilées Denio Duarte
55
La règle de transition d’origine : Le candidat choisit :
Motivation Approche GREC-e Conclusion Perspectives GREC L’utilisateur peut choisir le meilleur candidat selon sa connaissance de l’application. Ex : La règle de transition d’origine : Publication, <, >, qSujet (qAnnee qRevue+)* qPublication Le candidat choisit : qSujet (qAnnee (qRevue|qConference)+)* La nouvelle règle de transition : Publication, <, >, qSujet (qAnnee (qRevue|qConference)+)* qPublication Denio Duarte
56
Objectifs : Distance entre E et E’ :
Motivation Approche GREC-e Conclusion Perspectives GREC Objectifs : La validité des documents est respectée sans les modifier et le document mis à jour est valide : L(E) {w’} L(E’) Distance entre E et E’ : Pos(E) et Pos (E’) : ensemble de positions de E et E’ Distance entre E et E’ : |Pos(E)|-|Pos(E’)| D(qSujet(qAnnee qRevue+)* , qSujet (qAnnee (qRevue|qConference)+)*) = |{1,2,3}|-|{1,2,3,4}|=|-1|=1 Permet d’éviter qSujet(qAnnee qRevue+)* (qAnnee (qRevue qConference?) +)* Denio Duarte
57
Motivation Approche GREC-e Conclusion Perspectives GREC
function GREC(Gwo, H, snl,snr, snew) { setRegExp:=; if (Gwo n'a qu'un noeud) { return } else Ri := ChooseRule(Gwo,H); for each (Gnew,Hnew):=LookForGraphAlternative(Gwo,H,Ri,snl,snr,snew) do setRegExp=setRegExp {GraphToRegExp(Gnew, Hnew)}; (Gwo',H’):= ApplyRule(Ri,Gwo,H); setRegExp=setRegExp GREC(Gwo', H',snl,snr,snew); } return setRegExp Denio Duarte
58
Motivation Approche GREC-e Conclusion Perspectives GREC Denio Duarte
Schéma GREC Document XML Document XML Document XML’ Document XML mise à jour Denio Duarte
59
Motivation Approche GREC-e Conclusion Perspectives GREC Denio Duarte
Schéma GREC Document XML Candidats Document XML Document XML Denio Duarte
60
Motivation Approche GREC-e Conclusion Perspectives GREC Denio Duarte
Schéma’ Document XML Document XML Document XML’ Document XML Denio Duarte
61
Et si le mot a plusieurs positions mises à jour ?
Motivation Approche GREC Conclusion Perspectives GREC-e Et si le mot a plusieurs positions mises à jour ? w= qSujet qAnnee qRevue qAnnee qRevue# w’= qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference # Construire plusieurs triplets <snl, snr, snew> Trouver les positions qui provoquent l’échec de l’automate Trouver un rapport entre ces positions. Algorithme GREC-e 1 2 3 4 5 Denio Duarte
62
Motivation Approche GREC Conclusion Perspectives GREC-e Séquence de mises à jour sur des fils d’un même nœud père d’un arbre (document) XML : insert(5,Conference), insert(5,Brevet), insert(5,Conference). Basé sur la séquence de mises à jour, construire un tableau avec les correspondance entre le mot d’origine et le mot résultat de la mise à jour. Denio Duarte
63
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Mot d’origine w= qSujet qAnnee qRevue qAnnee qRevue# Mot mis à jour w’= qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference# old (w) new (w’) qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference # Denio Duarte
64
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Mot d’origine w= qSujet qAnnee qRevue qAnnee qRevue# Mot mis à jour w’= qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference# old (w) new (w’) qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference # Une ligne w[k:m] w[i:j] : rien à faire Une ligne w[i:j] : les symboles w[i:j] ont été insérés Une ligne w[i:j] : les symboles w[i:j] ont été supprimés Denio Duarte
65
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e old (w) new (w’) qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference # Colonne old et new : on avance les états dans l’automate Denio Duarte
66
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e old (w) new (w’) qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference # Colonne old = : on cherche si les symboles insérés provoquent le échec de l’automate Colonne old et new : on avance les états dans l’automate Denio Duarte
67
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e old (w) new (w’) qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference # Colonne old = : on cherche si les symboles insérés provoquent le échec de l’automate Colonne old et new : on avance les états dans l’automate Colonne new = : on cherche si les symboles supprimés sont obligatoires Denio Duarte
68
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Le tableau est utilisé pour trouver les triplets et le rapport entre les positions : old new qSujet qAnnee qRevue qAnnee qRevue 1 2 3 4 qConference qBrevet qConference 1 2 3 4 5 Denio Duarte
69
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Le tableau est utilisé pour trouver les triplets et le rapport entre les positions : old new qSujet qAnnee qRevue qAnnee qRevue 1 2 3 4 qConference qBrevet qConference 1 2 3 4 5 # <3,4,5> Denio Duarte
70
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Le tableau est utilisé pour trouver les triplets et le rapport entre les positions : old new qSujet qAnnee qRevue qAnnee qRevue 1 2 3 4 qConference qBrevet qConference 1 2 3 4 6 Denio Duarte
71
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Le tableau est utilisé pour trouver les triplets et le rapport entre les positions : old new qSujet qAnnee qRevue qAnnee qRevue 1 2 3 4 qConference qBrevet qConference 1 2 3 4 6 # <3,4,6> et un couple (5,6) Denio Duarte
72
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Le tableau est utilisé pour trouver les triplets et le rapport entre les positions : old new qSujet qAnnee qRevue qAnnee qRevue 1 2 3 4 qConference qBrevet qConference 1 2 3 4 7 Denio Duarte
73
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Le tableau est utilisé pour trouver les triplets et le rapport entre les positions : old new qSujet qAnnee qRevue qAnnee qRevue 1 2 3 4 qConference qBrevet qConference 1 2 3 4 7 <3,4,7> n’est pas proposé car <3,4,5> a été déjà proposé Denio Duarte
74
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Le tableau est utilisé pour trouver les triplets et le rapport entre les positions : old new qSujet qAnnee qRevue qAnnee qRevue 1 2 3 4 qConference qBrevet qConference 1 2 3 4 Cependant, la restriction (6,5) est construite Denio Duarte
75
qSujet qAnnee qRevue qAnnee qRevue qConference qBrevet qConference
Motivation Approche GREC Conclusion Perspectives GREC-e Le tableau est utilisé pour trouver les triplets et le rapport entre les positions : old new qSujet qAnnee qRevue qAnnee qRevue 1 2 3 4 qConference qBrevet qConference 1 2 3 4 # Il n’y a plus de ligne avec w[i:j] ou w[i:j] Triplets : <3,4,5> et <3,4,6> Restrictions : (5,6) et (6,5) Denio Duarte
76
Entrée de l’algorithme GREC-e :
Motivation Approche GREC Conclusion Perspectives GREC-e Entrée de l’algorithme GREC-e : G: 1 2 3 4 H: {{3},{2,3}} Triplets: <<3,4,5>,<3,4,6>> Ensemble de paires: {(5, 6), (6, 5)} Denio Duarte
77
Exécution de GREC-e : Motivation Approche GREC Conclusion Perspectives
Pas 1: Décoration du noeud 3 H={{3},{2,3}} 1 2 3 4 Les conditions de construction des nouveaux graphes sont vérifiées pour les deux triplets: <3,4,5> et <3,4,6>. Denio Duarte
78
Exécution de GREC-e : {(5, 6) , (6, 5)}
Motivation Approche GREC Conclusion Perspectives GREC-e Exécution de GREC-e : {(5, 6) , (6, 5)} H’={{3,5,6},{2,3,5,6}} 1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 Voir GREC Denio Duarte
79
Exécution de GREC-e : {(5, 6) , (6, 5)}
Motivation Approche GREC Conclusion Perspectives GREC-e Exécution de GREC-e : {(5, 6) , (6, 5)} 1 2 3 4 5 0 1 (2 (3 (5|6)?)+)*4 0 1 (2 (3 (5|6)*)+)*4 0 1 (2 (3 5? 6?)+)*4 0 1 (2 (3 5* 6*)+)*4 0 1 (2 (3 (5 6)?)+)*4 0 1 (2 (3 (5 6)*)+)*4 6 1 2 3 4 5 6 1 2 3 4 5 6 Denio Duarte
80
Exécution de GREC-e : {(5,6) , (6, 5)}
Motivation Approche GREC Conclusion Perspectives GREC-e Exécution de GREC-e : {(5,6) , (6, 5)} 1 2 3 4 5 0 1 (2 (3 (5|6)?)+)*4 0 1 (2 (3 (5|6)*)+)*4 0 1 (2 (3 5? 6?)+)*4 0 1 (2 (3 5* 6*)+)*4 0 1 (2 (3 (5 6)?)+)*4 0 1 (2 (3 (5 6)*)+)*4 6 1 2 3 4 5 6 1 2 3 4 5 6 Denio Duarte
81
Exécution de GREC-e : {(5, 6) , (6, 5)}
Motivation Approche GREC Conclusion Perspectives GREC-e Exécution de GREC-e : {(5, 6) , (6, 5)} H’={{3,5,6},{2,3,5,6}} 1 2 3 4 5 6 1 2 3 4 5 6 Denio Duarte
82
Exécution de GREC-e : {(5, 6) , (6, 5)}
Motivation Approche GREC Conclusion Perspectives GREC-e Exécution de GREC-e : {(5, 6) , (6, 5)} 1 2 3 4 0 1 (2 (3|5|6)+)*4 0 1 (2 (3|(5 6)?)+)*4 0 1 (2 (3|(5 6)*)+)*4 5 6 1 2 3 4 5 6 Denio Duarte
83
Exécution de GREC-e : {(5, 6) , (6, 5)}
Motivation Approche GREC Conclusion Perspectives GREC-e Exécution de GREC-e : {(5, 6) , (6, 5)} 1 2 3 4 0 1 (2 (3|5|6)+)*4 0 1 (2 (3|(5 6)?)+)*4 0 1 (2 (3|(5 6)*)+)*4 5 6 1 2 3 4 5 6 Denio Duarte
84
Le résultat de l’exécution de GREC-e (avec Revue) :
Motivation Approche GREC Conclusion Perspectives GREC-e Le résultat de l’exécution de GREC-e (avec Revue) : 0 1 (2 (3 (5|6)*)+)*4 qSujet(qAnnee (qRevue ( qConference | qBrevet)*) +)* 0 1 (2 (3 (5 6)*)+)*4 qSujet (qAnnee (qRevue ( qConference qBrevet)*) +)* 0 1 (2 (3|5|6)+)*4 qSujet (qAnnee (qRevue|qConference | qBrevet)+)* 0 1 (2 (3|(5 6)*)+)*4 qSujet (qAnnee (qRevue|( qConference qBrevet)*)+)* Voir GREC Denio Duarte
85
L’utilisateur choisit le candidat. Ex :
Motivation Approche GREC Conclusion Perspectives GREC-e L’utilisateur choisit le candidat. Ex : La règle de transition d’origine : Publication, <, >, qSujet (qAnnee qRevue+)* qPublication Le candidat choisit : qSujet (qAnnee (qRevue|qConference | qBrevet)+)* La nouvelle règle de transition : Publication, <, >, qSujet (qAnnee (qRevue|qConference | qBrevet)+)* qPublication Denio Duarte
86
Les propriétés de GREC-e sont les mêmes de GREC :
Motivation Approche GREC Conclusion Perspectives GREC-e Les propriétés de GREC-e sont les mêmes de GREC : L(E) {w’} L(E’) Un nouvel ensemble de documents est accepté. Distance entre E et E’ est égale au nombre de triplets trouvés Denio Duarte
87
Motivation Approche GREC Conclusion Perspectives GREC-e
function GREC-e(Gwo, H, RTState, STrans) { setRegExp:=; if (RTState est vide) { return (setRegExp=setRegExp {GraphToRegExp(Gnew, Hnew)}); } if (Gwo n'a qu'un noeud) {return } Ri := ChooseRule(Gwo,H); for each (Gnew,Hnew,RTStates’) := LookForGraphAlternative-e(Gwo,H,Ri,RTStates,STrans) do setRegExp=setRegExp GREC-e(Gnew,Hnew,RTStates’,STrans); (Gwo',H’):= ApplyRule(Ri,Gwo,H); setRegExp=setRegExp GREC(Gwo', H', RTStates,STrans); return setRegExp Denio Duarte
88
Fondée sur un document exemple (mis à jour)
Motivation Approche GREC GREC-e Perspectives Conclusion Méthode d’aide à l’utilisateur pour l’évolution de schémas XML qui préserve la validité des documents sans les modifier. Fondée sur un document exemple (mis à jour) Plusieurs candidats sont proposés en essayant de garder la structure de l’expression régulière d’origine. Denio Duarte
89
Proposer une notion de distance plus précise
Motivation Approche GREC GREC-e Conclusion Perspectives Généraliser la méthode pour qu'elle prenne en considération différents mots appartenant à différents noeuds de l'arbre ayant la même étiquette : Plusieurs paires (w,w’) Proposer une notion de distance plus précise Appliquer la méthode dans l'ensemble du schéma (non plus une seule expression régulière) Denio Duarte
90
Merci Denio Duarte
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.