une m é thode pour l‘ é volution de sch é mas xml pr é servant la validit é des documents

Post on 10-Jan-2016

31 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Une m é thode pour l‘ é volution de sch é mas XML pr é servant la validit é des documents. Denio Duarte 1. Université François-Rabelais de Tours - Campus Blois Laboratoire d’Informatique - LI Bases de données et Traitement des langues naturelles - BdTln. - PowerPoint PPT Presentation

TRANSCRIPT

1

Une méthode pour l‘évolution de schémas XML

préservant la validité des documents

Denio Duarte1

1Boursier du gouvernement brésilien - CAPES

Université François-Rabelais de Tours - Campus Blois

Laboratoire d’Informatique - LI

Bases de données et Traitement des langues naturelles - BdTln

Denio Duarte 2

Document XML

Document XML

Motivation

Denio Duarte 3

Document XML

Document XML

Document XML

Document XML

Document XML Document

XML

Motivation

Denio Duarte 4

Document XML

Document XML

Document XML

Schéma(DTD)Documents valides

Motivation

Denio Duarte 5

Document XML

Document XML

Document XML

Schéma

mise à jour

Motivation

Denio Duarte 6

Document XML

Document XML

Document XML

Schéma

mise à jour

vérifier la validité

Motivation

Denio Duarte 7

Document XML

Document XML

Document XML

Schéma

mise à jour

mise à jour valide ou invalide

Motivation

Denio Duarte 8

Document XML

Document XML

Document XML

Schéma

Faire évoluer le schéma

Motivation

Denio Duarte 9

Document XML

Document XML

Document XML

Schéma’

Motivation

Denio Duarte 10

• Est-ce qu’un schéma peut être changé sans :

• Modifier les documents auparavant valides ?

• Revalider les documents auparavant valides ?

Motivation

Denio Duarte 11

• 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)

Motivation

Denio Duarte 12

• 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.

Motivation

Denio Duarte 13

Document XML

Document XML

Document XML

Schéma

mise à jour

Motivation

Denio Duarte 14

Document XML

Document XML

Document XML

Schéma

mise à jour

Document XML’

Motivation

Denio Duarte 15

Document XML

Document XML

Document XML

Schéma

mise à jour

Document XML’

Motivation

Denio Duarte 16

Document XML

Document XML

Document XML

Schéma’

Document XML’

Motivation

Denio Duarte 17

• Approche

• GREC

• GREC-e

• Conclusion

• Perspectives

Plan

Denio Duarte 18

• Documents vus comme des arbres (M. Murata – PODDP’98,

A. Bruggeman-Klein et al – TechRep’98, B. Bouchou et al – ICEIS’03) :

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Universite

Laboratoire Laboratoire

Chercheur

CId

data

Nom

Nom

data

Titre

data

Publication

Sujet

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

data

NomUniv

data

Denio Duarte 19

Σ = {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

:

}

• 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) :

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 20

• L’association d’états.

Publication

Sujet

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 21

• L’association d’états.

Publication

Sujet

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

?

qSujet

qdata

qAnnee

qdata

qRevue

qNom

qdata

qTArticle

qidAuts qdata

qdata

qAnnee

qdata

qRevue

qNom

qdata

qTArticle

qidAuts qdata

qdata

Publication, <, >, qSujet (qAnnee qRevue+)* qPublication

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 22

• L’association d’états.

Publication

Sujet

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

?

qSujet

qdata

qAnnee

qdata

qRevue

qNom

qdata

qTArticle

qidAuts qdata

qdata

qAnnee

qdata

qRevue

qNom

qdata

qTArticle

qidAuts qdata

qdata

qSujet qAnnee qRevue qAnnee qRevue L(qSujet (qAnnee qRevue+)* )

Publication, <, >, qSujet (qAnnee qRevue+)* qPublication

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 23

• L’association d’états.

Publication

Sujet

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

qPublication

qSujet

qdata

qAnnee

qdata

qRevue

qNom

qdata

qTArticle

qidAuts qdata

qdata

qAnnee

qdata

qRevue

qNom

qdata

qTArticle

qidAuts qdata

qdata

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 24

• É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)

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 25

• 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.

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 26

Conference

Publication

Sujet

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

Annee

data

Revue

Nom

data

TArticle

idAuts data

data

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 27

?

qSujet

qdata

qAnnee

qdata

qRevue

qNom

qdata

qTArticle

qidAuts qdata

qdata

qAnnee

qdata

qRevue

qNom

qdata

qTArticle

qidAuts qdata

qdata

qSujet qAnnee qRevue qAnnee qRevue qConference L(qSujet (qAnnee qRevue+)* )

qConference

Motivation

Approche

GREC GREC-e Conclusion Perspectives

• Le système utilise l’automate d’arbre pour trouver les informations nécessaires à la modification du schéma.

Denio Duarte 28

• 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+)* )

0 1 2 3 4

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 29

• 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

0 1 2 3qSujet qAnnee

qAnnee

qRevue

qRevue

4

#

#

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 30

• 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

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 31

• Homogène :

0 1 2 3qSujet qAnnee

qAnnee

qRevue

qRevue

4

#

#

0 1 2 3 4

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 32

• Orbites x Sous-expressions étoilées :

qSujet (qAnnee qRevue+)*# 1 (2 3+)*4

0 1 2 3 4

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 33

• Hamac :

0 1 2 3 4

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 34

• Réduction (exploitée par notre méthode) :

•D’abord : calculer et supprimer les orbites maximales :

• H={} (hiérarchie des orbites maximales)

0 1 2 3 4

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 35

H={{2,3}}

0 1 2 3 4

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 36

0 1 2 3 4

Graphe de Glushkov sans orbite

Hiérarchie des orbites

Motivation

Approche

GREC GREC-e Conclusion Perspectives

H={{3},{2,3}}

Denio Duarte 37

• Ensuite appliquer trois règles de réduction (plus décoration) :

• R1 : Concaténation

• R2 : Union

• R3 : Optionalité

x y xy

x

y

x|y

x x?

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 38

1 2 3 40 H={{3},{2,3}}0 -

décoration +

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 39

1 2 3 40

1 2 3+ 40

H={{3},{2,3}}

H={{2,3}}R1

0 -

1 -

décoration +

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 40

1 2 3 40

1 2 3+ 40

H={{3},{2,3}}

1 (2 3+)+ 40

H={{2,3}}R1

H={{2,3}}

0 -

1 -

2 -

décoration +

décoration +

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 41

1 2 3 40

1 2 3+ 40

H={{3},{2,3}}

1 (2 3+)+ 40

H={{2,3}}R1

H={{2,3}}

1 (2 3+)+ 40 H={}R3

0 -

1 -

2 -

3 -

décoration +

décoration +

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 42

1 2 3 40

1 2 3+ 40

H={{3},{2,3}}

1 (2 3+)+ 40

H={{2,3}}R1

H={{2,3}}

1 (2 3+)+ 40 H={}R3

1 (2 3+)* 40

0 1 (2 3+)* 4

R1

0 1 (2 3+)* 4

0 -

1 -

2 -

3 -

4 -

5 - Résultat:R1R1

décoration +

décoration +

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 43

1 2 3 40

1 2 3+ 40

H={{3},{2,3}}

1 (2 3+)+ 40

H={{2,3}}R1

H={{2,3}}

1 (2 3+)+ 40 H={}R3

1 (2 3+)* 40

0 1 (2 3+)* 4

R1

0 1 (2 3+)* 4

0 -

1 -

2 -

3 -

4 -

5 -Résultat:R1

R1

1 (2 3+)* qSujet (qAnnee qRevue+)*

Motivation

Approche

GREC GREC-e Conclusion Perspectives

Denio Duarte 44

• 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.

Motivation Approche

GREC (Generate Regular Expression Choices)

GREC-e Conclusion Perspectives

Denio Duarte 45

• L’algorithme GREC :

Motivation Approche

GREC

GREC-e Conclusion Perspectives

x

y

z

w

R2

x

y

z

ws

x y|z w

R3

x y|z w

s

x (y|z)? w

R1

x (y|z)? w

s

x

y|s

z

w

x s?(y|z) w

x (y|z)?s ? w

GREC

GREC

GREC

*

*

*

Denio Duarte 46

• Mot w’= qSujet qAnnee qRevue qAnnee qRevue qConference#

0 1 2 3 4

Dernier état atteint avant l’échec de l’automate

Prochain état à exécuter si le nouveau symbole

n’existait pas

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 47

• Mot w’= qSujet qAnnee qRevue qAnnee qRevue qConference#

0 1 2 3 4

snl

snr

Un nouveau nœud qui représente qConference : snew

<snl, snr , snew> < 3, 4 , 5>

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 48

• Entrée de l’algorithme GREC :

1 2 3 40G:

H: {{3},{2,3}}

Triplet: < snl : 3, snr : 4 , snew : 5>

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 49

• Exécution de GREC :

1 2 3 40 H={{3},{2,3}}

Pas 1: Décoration du nœud 3 – vérifier si un nouveau graphe peut être construit

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 50

• Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) :

1 2 3 40 H={{3},{2,3}}

Pas 1: Décoration du nœud 3 – vérifier si un nouveau graphe peut être construit

x

snl xsnr

x

x

Condition:snew

snew

Nouveaux graphes:

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 51

• Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) :

1 2 3 40 H={{3},{2,3}}

Pas 1: Décoration du nœud 3 – vérifier si un nouveau graphe peut être construit

x

snl xsnr

x

x

Condition:snew

snew

Nouveaux graphes:

La condition est vérifiée: H’={{3,5},{2,3,5}}

1 2 3 40

5

1 2 3 40

50 1 (2 (3 5?)+)*40 1 (2 (3 5*)+)*4

0 1 (2 (3|5)+)*4

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 52

• Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) :Pas 3: décorer le nœud 2 3

H={{2,3}}1 2 3+ 40

x

snl xsnr

x

x

Condition:snew

snew

Nouveaux graphes:

Nouveaux graphes

1 2 3+ 40

5

1 2 3+ 40

5

0 1 (2 3+ 5?)*40 1 (2 3+ 5*)*4

0 1 (2 3+ | 5)*4

Motivation Approche

GREC

GREC-e Conclusion Perspectives

H’={{2,3,5}}

Denio Duarte 53

• Exécution de GREC (rappel < snl : 3, snr : 4 , snew : 5> ) :Pas 5: Appliquer R1 sur les nœuds 2 3 et 4

H={}1 (2 3+)* 40

x

snl x y = snr

Condition:

y Nouveau graphe: x y

snew

Nouveau graphe :

1 (2 3+)* 40

50 1 (2 3+)*5?40 1 (2 3+)*5*4

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 54

• 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

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 55

• 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

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 56

• 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?) +)*

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 57

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 }

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Denio Duarte 58

Document XML

Document XML

Document XML

Schéma

mise à jour

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Document XML’

GREC

Denio Duarte 59

Document XML

Document XML

Document XML

Schéma

Motivation Approche

GREC

GREC-e Conclusion Perspectives

GREC

Candidats

Denio Duarte 60

Document XML

Document XML

Document XML

Schéma’

Motivation Approche

GREC

GREC-e Conclusion Perspectives

Document XML’

Denio Duarte 61

• 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

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4 5

Denio Duarte 62

• 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.

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 63

• 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 qSujet qAnnee qRevue qAnnee qRevue

qConference qBrevet qConference

# #

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 64

• 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 qSujet qAnnee qRevue qAnnee qRevue

qConference qBrevet qConference

# #

Une ligne w[k:m] w[i:j] : rien à faireUne 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

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 65

old (w) new (w’)qSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

qConference qBrevet qConference

# #

Colonne old et new : on avance les états dans l’automate

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 66

old (w) new (w’)qSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

qConference qBrevet qConference

# #

Colonne old et new : on avance les états dans l’automate

Colonne old = : on cherche si les symboles insérés provoquent le échec de l’automate

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 67

old (w) new (w’)qSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

qConference qBrevet qConference

# #

Colonne new = : on cherche si les symboles supprimés sont obligatoires

Colonne old et new : on avance les états dans l’automate

Colonne old = : on cherche si les symboles insérés provoquent le échec de l’automate

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 68

• Le tableau est utilisé pour trouver les triplets et le

rapport entre les positions :

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4

old newqSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

0 1 2 3 4

qConference qBrevet qConference

5

Denio Duarte 69

• Le tableau est utilisé pour trouver les triplets et le

rapport entre les positions :

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4

old newqSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

0 1 2 3 4

qConference qBrevet qConference

5

# #

<3,4,5>

Denio Duarte 70

• Le tableau est utilisé pour trouver les triplets et le

rapport entre les positions :

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4

old newqSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

0 1 2 3 4

qConference qBrevet qConference

6

Denio Duarte 71

• Le tableau est utilisé pour trouver les triplets et le

rapport entre les positions :

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4

old newqSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

0 1 2 3 4

qConference qBrevet qConference

6

# #

<3,4,6> et un couple (5,6)

Denio Duarte 72

• Le tableau est utilisé pour trouver les triplets et le

rapport entre les positions :

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4

old newqSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

0 1 2 3 4

qConference qBrevet qConference

7

Denio Duarte 73

• Le tableau est utilisé pour trouver les triplets et le

rapport entre les positions :

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4

old newqSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

0 1 2 3 4

qConference qBrevet qConference

7

<3,4,7> n’est pas proposé car <3,4,5> a été déjà proposé

Denio Duarte 74

• Le tableau est utilisé pour trouver les triplets et le

rapport entre les positions :

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4

old newqSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

0 1 2 3 4

qConference qBrevet qConference

Cependant, la restriction (6,5) est construite

Denio Duarte 75

• Le tableau est utilisé pour trouver les triplets et le

rapport entre les positions :

Motivation Approche GREC

GREC-e

Conclusion Perspectives

0 1 2 3 4

old newqSujet qAnnee qRevue qAnnee qRevue qSujet qAnnee qRevue qAnnee qRevue

0 1 2 3 4

qConference qBrevet qConference

# #

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 :

1 2 3 40G:

H: {{3},{2,3}}

Triplets: <<3,4,5>,<3,4,6>>

Ensemble de paires: {(5, 6), (6, 5)}

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 77

• Exécution de GREC-e :

1 2 3 40 H={{3},{2,3}}

Pas 1: Décoration du noeud 3

Les conditions de construction des nouveaux graphes sont vérifiées pour les deux triplets: <3,4,5> et <3,4,6>.

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 78

• Exécution de GREC-e : {(5, 6) , (6, 5)}

1 2 3 40

5

6

1 2 3 40

5

6

1 2 3 40

5 6

Voir GREC

H’={{3,5,6},{2,3,5,6}}

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 79

• Exécution de GREC-e : {(5, 6) , (6, 5)}

1 2 3 40

5

6

1 2 3 40

5

6

1 2 3 40

5 6

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

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 80

• Exécution de GREC-e : {(5,6) , (6, 5)}

1 2 3 40

5

6

1 2 3 40

5

6

1 2 3 40

5 6

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

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 81

• Exécution de GREC-e : {(5, 6) , (6, 5)}

1 2 3 40

5

6

1 2 3 40

5 6

H’={{3,5,6},{2,3,5,6}}

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 82

• Exécution de GREC-e : {(5, 6) , (6, 5)}

1 2 3 40

5 0 1 (2 (3|5|6)+)*4

0 1 (2 (3|(5 6)?)+)*4

0 1 (2 (3|(5 6)*)+)*46

1 2 3 40

5 6

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 83

• Exécution de GREC-e : {(5, 6) , (6, 5)}

1 2 3 40

5 0 1 (2 (3|5|6)+)*4

0 1 (2 (3|(5 6)?)+)*4

0 1 (2 (3|(5 6)*)+)*46

1 2 3 40

5 6

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 84

• Le résultat de l’exécution de GREC-e (avec Revue) :

a) 0 1 (2 (3 (5|6)*)+)*4 qSujet(qAnnee (qRevue ( qConference | qBrevet)*) +)*

b) 0 1 (2 (3 (5 6)*)+)*4 qSujet (qAnnee (qRevue ( qConference qBrevet)*) +)*

c) 0 1 (2 (3|5|6)+)*4 qSujet (qAnnee (qRevue|qConference | qBrevet)+)*

d) 0 1 (2 (3|(5 6)*)+)*4 qSujet (qAnnee (qRevue|( qConference qBrevet)*)+)*

Voir GREC

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 85

• 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

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 86

• 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

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 87

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 }

Motivation Approche GREC

GREC-e

Conclusion Perspectives

Denio Duarte 88

• 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.

Motivation Approche GREC GREC-e

Conclusion

Perspectives

Denio Duarte 89

• 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)

Motivation Approche GREC GREC-e Conclusion

Perspectives

Denio Duarte 90

Merci

top related