La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

MSDM : un modèle générique pour les documents multi-structurés

Présentations similaires


Présentation au sujet: "MSDM : un modèle générique pour les documents multi-structurés"— Transcription de la présentation:

1 MSDM : un modèle générique pour les documents multi-structurés
Noureddine CHATTI Sylvie CALABRETTO Jean-Marie PINON LIRIS-INSA de Lyon LIRIS-INSA de Lyon, Bâtiment Blaise pascal, 7 avenue Jean Capelle, Villeurbanne Cedex

2 Sommaire La problématique État de l’art
Le modèle de documents multi-structurés MSDM Le formalisme MultiX Interrogation des documents MultiX Conclusion Perspectives

3 Recherche par le contenu
La problématique Structure Sémantique Structure Physique Document Présentation Recherche par le contenu Structure Logique Consultation Comment gérer simultanément plusieurs structures d’un document ?

4 La problématique : Exemple des textes réglementaires de la CAF (1)
Une structure logique pour l’affichage du document <SL PRESTATION="Complement Familial" VALEUR-ID="SL71"> <CONTENU-PARTIE ID="SL9"> <PARAGRAPHE ID="SL10">Toute personne physique remplissant les conditions ci-après:</PARAGRAPHE> </CONTENU-PARTIE> <NATIONALITE ID="SL11"> <CONTENU-PARTIE ID="SL12"> <PARAGRAPHE ID="SL13">Pas de condition.</PARAGRAPHE> <PARAGRAPHE ID="SL14"> Pour les étrangers (Cf. <LIEN-CITATION>suivi Législatif CGOD</LIEN-CITATION> ). </PARAGRAPHE> </NATIONALITE> <ACTIVITE-PROF ID="SL15"> <CONTENU-PARTIE ID="SL16"> <PARAGRAPHE ID="SL17">Pas de condition.</PARAGRAPHE> </ACTIVITE-PROF> </SL> Structure logique

5 La problématique : Exemple des textes réglementaires de la CAF (2)
Une structure sémantique pour faire des inférences <reglementation> …. <concept nom="Allocataire CF" classe="agent" principal="oui" type-concept="définition" impact="non"> <condition-application> Toute <predicat nom="Personne-Physique" classe="agent" impact="non">personne physique</predicat> </condition-application> remplissant les conditions ci-après : 2.1 Nationalité Pas de condition. Pour les étrangers <reference>(Cf. suivi législatif CGOD).</reference> 2.2 <condition-application>Activité professionnelle Pas de condition. </concept> </reglementation> Structure sémantique

6 La problématique : Exemple des textes réglementaires de la CAF (3)
Chaque structure est encodée séparément au format XML Inconvénients : Redondance au niveau du contenu Difficulté de mise à jour Risque d’incohérence entre les contenus des structures

7 État de l’art Option CONCUR de SGML (plusieurs DTDs pour un même document) [ISO 86] TEI (Recommandations pour l’encodage d’hiérarchies multiples en XML) [TEI 02] Des syntaxes spécifiques : MECS, TexMECS, LMNL, … Utilisation de RDF grâce à son modèle de graphe [Tummarello 05] Le modèle de graphe GODDAG [SPE 00] [DEK 05] Matérialisation via une structure DOM Extension de XPath pour l’accès aux nœuds des différents structures

8 Le modèle de documents multi-structurés : MSDM
Un document multi-structuré est défini par: Un ensemble de structures documentaires (SD) Ce sont les structures d’usages du document Une structure de Base (SB) : Organisation du contenu en vue de son partage par les structures documentaires Décomposition du contenu en fragments disjoints Un ensemble de relations de correspondances entre les structures

9 Le modèle de documents multi-structurés : MSDM (Les correspondances)
Deux types de correspondances SDSB : correspondance entre une structure documentaire et la structure de base Permet d’associer un contenu à un élément d’une structure documentaire SDSD : correspondances entre deux structures documentaires Permet d’expliciter des relations particulières entres les structures documentaires Exemple : synonymie entre les labels de deux éléments de deux structures différentes

10 Le modèle de documents multi-structurés : MSDM (illustration)
Structure documentaire Correspondance SDSD Structure documentaire Structure documentaire "ab" "bc" Correspondance SDSB SB "a" “b" “c" Compositions Fragments Structure de base

11 Le formalisme MultiX Une application XML Basé sur le modèle MSDM
Un document MultiX est un document XML bien formé Basé sur le modèle MSDM Objectifs : Matérialisation des relations entre les structures Éviter la redondance du contenu

12 Le formalisme MultiX Structure générale d’un document MultiX
<msd:MSD name="manuscrit" xmlns:msd="http://www.msdm.org/2006/MULTIX/"> <msd:DS name="nom de la première structure documentaire"> <!-- ici la première structure documentaire --> </msd:DS> <msd:DS name="nom de la deuxième structure documentaire"> <!-- ici la deuxième structure documentaire --> <!-- autres structures documentaires --> <msd:BS> <!– organisation du contenu partageable --> </msd:BS> <msd:correspondences> <!-- définition des relations de correspondances --> </msd:correspondences> </msd:MSD>

13 Le formalisme MultiX Exemple de document multi-structuré
Un fragment d’un manuscrit ancien hu þu me hæfst afrefredne æg þer ge mid þinre smealican spræ ce, ge mid þinre wynsumnesse þines 3 lignes Deux mots coupés Des caractères endommagés 1 2 3 Plusieurs niveaux de structuration

14 Le formalisme MultiX Exemple de document multi-structuré
Structure physique des lignes <lines> <line n="1">hu þu me hæfst afrefredne æg</line> <line n="2">þer ge mid þinre smealican spræ</line> <line n="3">ce, ge mid þinre wynsumnesse þines</line> </lines>

15 Le formalisme MultiX Exemple de document multi-structuré
Structure lexicale <words> <w>hu</w> <w>þu</w> <w>me</w> <w>hæfst</w> <w>afrefredne</w> <w>ægþer</w> <w>ge</w> <w>mid</w> <w>þinre</w> <w>smealican</w> <w>spræce</w> <w>wynsumnesse</w> <w>þines</w> </words>

16 Le formalisme MultiX Exemple de document multi-structuré
Structure des caractères endommagés <damaged> <res>þu m</res> <dmg>er</dmg> <dmg>mid</dmg> <dmg>æ</dmg> <dmg>g</dmg> <dmg>þ</dmg> <dmg>re</dmg> <dmg>e</dmg> <res>s</res> </damaged>

17 Le formalisme MultiX Exemple de document multi-structuré
Structure des régions textuelles <text-regions> <image src="manuscrit.png"> <region num="reg.1" description="ligne 1"> <zone x1="43" y1="50" x2="460" y2="94"/> </region> <region num="reg.2" description="ligne 2"> <zone x1="43" y1="108" x2="486" y2="152"/> <region num="reg.3" description="ligne 3"> <zone x1="43" y1="166" x2="536" y2="210"/> <region num="reg.4" description="mot sur ligne 1 et ligne 2"> <zone x1="410" y1="50" x2="460" y2="94"/> <zone x1="43" y1="108" x2="93" y2="152"/> <region num="reg.5" description="mot sur ligne 2 et ligne 3"> <zone x1="'414" y1="108" x2="486" y2="152"/> <zone x1="43" y1="166" x2="72" y2="210"/> </image> </text-regions>

18 Le formalisme MultiX Exemple de document multi-structuré
Schéma global du document multi-structuré Structure des régions textuelles Localisation des caractères endommagés Localisation des lignes Transcription Localisation des mots sur deux lignes Structure physique Structure lexicale Structure des caractères endommagées Structure de Base

19 Le formalisme MultiX La structure de base
Deux parties : Un ensemble de fragments de contenu disjoints (le plus petit ensemble de fragments recouvrants les PCDATAs des structures documentaires) Balise msd:fragments Des compositions de contenu (les PCDATAs) à partir des fragments disjoints Balise msd:compositions

20 Le formalisme MultiX La structure de base (l’exemple du document ancien)
L’ensemble des fragments disjoints <msd:BS> <msd:fragments> <msd:frag id="F1">hu</msd:frag><msd:frag id="F2">þu</msd:frag> <msd:frag id="F3">m</msd:frag><msd:frag id="F4">e</msd:frag> <msd:frag id="F5">hæfst</msd:frag><msd:frag id="F6">afrefredne</msd:frag> <msd:frag id="F7">æg</msd:frag><msd:frag id="F8">þ</msd:frag> <msd:frag id="F9">er</msd:frag><msd:frag id="F10">ge</msd:frag> <msd:frag id="F11">mid</msd:frag><msd:frag id="F12">þinre</msd:frag> <msd:frag id="F13">smealican</msd:frag><msd:frag id="F14">spr</msd:frag> <msd:frag id="F15">æ</msd:frag><msd:frag id="F16">ce</msd:frag> <msd:frag id="F17">g</msd:frag><msd:frag id="F22">e</msd:frag> <msd:frag id="F18">mid</msd:frag><msd:frag id="F23">þ</msd:frag> <msd:frag id="F19">in</msd:frag><msd:frag id="F24">re</msd:frag> <msd:frag id="F20">wynsumnesse</msd:frag> <msd:frag id="F21">þin</msd:frag><msd:frag id="F25">e</msd:frag> <msd:frag id="F26">s</msd:frag> </msd:fragments> <msd:compositions> < !-- définition des compositions --> </msd:compositions> </msd:BS>

21 Le formalisme MultiX La structure de base (les compositions)
Rôle : Reconstruire les PCDATAs fragmentés à partir de l’ensemble des fragments disjoints Concaténation des fragments textuels en gérant l’insertion des espaces blancs Exemple : <msd:compositions> <msd:comp id="C1" idrefs="F1 F2 F3=F4 F5 F6 F7"/> </msd:compositions> Permet de reconstruire la chaîne de caractères "hu þu me hæfst afrefredne æg"

22 Le formalisme MultiX La structure de base (les compositions)
Gestion de l’insertion des espaces blancs par un codage spécifique (valeur de l’attribut idrefs) La valeur de idrefs est une séquence d’identificateurs de fragments séparés par : Un espace  concaténation avec insertion d’un espace au milieu idrefs="F1 F2"  permet de composer la chaîne "hu þu" Le caractère "="  concaténation classique (sans insertion d’espèce blanc) idrefs="F3=F4"  permet de composer la chaîne "me"

23 Le formalisme MultiX La structure de base (les compositions)
On utilise le symbole "%" pour insérer un espace blanc au début ou/et à la fin d’une composition Exemple : Reconstitution du contenu de l’élément line suivant : <line n="3">ce, ge mid þinre wynsumnesse þines</line> Si le caractère "," n’est pas géré dans SB  deux compositions sont nécessaires : <msd:comp id="C3" idrefs="F16"/> Chaîne référencée : "ce" <msd:comp id="C4" idrefs="%F17=F22 F18 F23=F19=F24 F20 F21=F25=F26"/> Chaîne référencée : " ge mid þinre wynsumnesse þines" Espace blanc

24 Structures documentaires et relations de correspondance – Les correspondances SDSB
Origine de la correspondance : l’emplacement dans une SD du contenu fragmenté Cible de la correspondance : une composition dans SB Deux formes : Interne : définition à l’origine de la correspondance <line n="1"><msd:clink target="BS" label="text content" to="C1"/></line> Externe : à l’extérieur de la structure documentaire source Localisation de l’origine de la correspondance par l’insertion d’un ancre (élément msd:anchor) <line n="2"><msd:anchor id="A.lne.2"/></line> Définition de la correspondance à l’intérieur de l’élément msd:correspondences <msd:correspondences> <msd:clink target="BS" from=”A.lne.2" label="text content" to="C2"/> </msd:correspondences>

25 Structures documentaires et relations de correspondance – Les correspondances SDSD
Même syntaxe que les correspondances SDSB mais pas la même sémantique Origine de la correspondance : un élément d’une SD Cible de la correspondance : un élément d’une autre SD Deux formes : Interne et Externe

26 Structures documentaires et relations de correspondance – Les correspondances SDSD
Exemple : Localisation des sources/cibles par des ancres <text-regions> <image src="manuscrit.png"> <region num="reg.1" description="ligne 1"> <zone x1="43" y1="50" x2="460" y2="94"/><msd:anchor id="A.reg.1"/> </region> <region num="reg.2" description="ligne 2"> <zone x1="43" y1="108" x2="486" y2="152"/><msd:anchor id="A.reg.2"/> <region num="reg.3" description="ligne 3"> <zone x1="43" y1="166" x2="536" y2="210"/><msd:anchor id="A.reg.3"/> <region num="reg.4" description="mot sur ligne 1 et ligne 2"> <zone x1="410" y1="50" x2="460" y2="94"/> <msd:anchor id="A.reg.4"/> <zone x1="43" y1="108" x2="93" y2="152"/> <region num="reg.5" description="mot sur ligne 2 et ligne 3"> <zone x1="'414" y1="108" x2="486" y2="152"/> <zone x1="43" y1="166" x2="72" y2="210"/> <msd:anchor id="A.reg.5"/> </image> </text-regions> Définition des correspondances : matérialisation de la relation localisation des lignes sur l’image du manuscrit <msd:clink target="DS" label="localisation" from="A.lne.1" to="A.reg.1"/> <msd:clink target="DS" label="localisation" from="A.lne.2" to="A.reg.2"/> <msd:clink target="DS" label="localisation" from="A.lne.3" to="A.reg.3"/>

27 Interrogation des documents multi-structurés
Des besoins d’interrogation spécifiques Exploration des relations entre les structures Exemple de requête : Trouver tous les mots qui sont coupés en fin de ligne Nécessité d’un langage d’interrogation adapté aux documents MultiX Extension de XQuery (bibliothèque de fonctions pour les documents MultiX)

28 Interrogation des documents multi-structurés Extension de XQuery
Q1 : Trouver tous les mots endommagés, c'est-à-dire composés seulement de caractères endommagés En XQuery : let $doc := doc("manuscript.xml") for $w in = "words"]//w, $d in = "damaged"]//dmg where multix:include-fragments-of($w, $d) and multix:include-fragments-of($d, $w) return multix:rebuild($w) Résultat : hu þu me hæfst afrefredne æg þer ge mid þinre smealican spræ ce, ge mid þinre wynsumnesse þines <w>mid</w>

29 Interrogation des documents multi-structurés Extension de XQuery
Q2 : Trouver tous les mots qui sont coupés en fin de ligne dans le texte original En XQuery : let $doc := doc("manuscript.xml") for $l in = "lines"]//line, $w in = "words"]//w where multix:share-fragments($l, $w) and not(multix:include-content-of($l, $w)) return multix:rebuild($w) Résultat : hu þu me hæfst afrefredne æg þer ge mid þinre smealican spræ ce, ge mid þinre wynsumnesse þines <w>ægþer</w> <w>spræce</w>

30 Interrogation des documents multi-structurés Extension de XQuery
Q3 : Trouver les mots qui contiennent des caractères restaurés. Indiquer pour chaque mot trouvé les caractères restaurés qu’il contient et la localisation de la ligne contenant ce mot sur l’image du manuscrit. En XQuery : let $doc := doc("manuscript.xml") for $w in = "words"]//w, $r in = "damaged"]//res where multix:share-fragments($r, $w) return <mot-avec-carac-rest> {multix:rebuild($w), <carac-rest>{multix:get-shared-fragments($r, $w)}</carac-rest>, multix:rebuild(multix:get-linked-from($doc//$r, "localisation"))} </mot-avec-carac-rest> hu þu me hæfst afrefredne æg þer ge mid þinre smealican spræ ce, ge mid þinre wynsumnesse þines

31 Résultat de Q3 : <mot-avec-carac-rest> <w>þu</w>
<carac-rest>þu</carac-rest> <region num="reg.1" description="ligne 1"> <zone x1="43" y1="50" x2="460" y2="94"/> </region> </mot-avec-carac-rest> <w>me</w> <carac-rest>m</carac-rest> <w>þines</w> <carac-rest>s</carac-rest> <region num="reg.3" description="ligne 3"> <zone x1="43" y1="166" x2="536" y2="210"/>

32 Conclusion Avantages Inconvénients
Un formalisme basé sur le modèle générique MSDM Une syntaxe XML (simplicité et portabilité) Élimination de la redondance du contenu (structure de base) Les squelettes des structures documentaires ne changent pas La localisation par ancre permet de faciliter la gestion de l’évolution des documents multi-structurés Corrélation entre les différentes structures grâce aux relations de correspondance Interrogation plus efficace au moyen d’un langage adapté Inconvénients Les documents MultiX sont difficiles à créer manuellement Un processus totalement automatisé est également très difficile à mettre au point Nécessite un important effort de programmation pour parser les documents MultiX

33 Perspectives Amélioration du parseur MXP (Multi-XML Parser) pour faciliter la création des documents MultiX à partir de fichiers XML existants Compléter la bibliothèque de fonctions XQuery Création d’un parseur permettant d’analyser les documents MultiX Intégration de tous les outils dans un environnement de gestion de documents multi-structurés


Télécharger ppt "MSDM : un modèle générique pour les documents multi-structurés"

Présentations similaires


Annonces Google