UNIVERSITES PAUL CEZANNE, de PROVENCE, de la MEDITERRANEE UNIVERSITE du SUD TOULON-VAR ECOLE NATIONALE SUPERIEURE d’ARTS et METIERS MASTER SIS Sciences de l’Information et des Systèmes Mémoire de recherche Présentée le 23 Juin 2006 par Nicolas Faessel Sujet Intégration du langage de recherche d’information NEXI dans le langage de requêtes XQuery. Stage de recherche effectué au Laboratoire : LSIS Dans l’équipe : INCOD Sous la direction de : Jacques Le Maitre I ETUDE BIBLIOGRAPHIQUE 1. INTRODUCTION.............................................................................................................................................. 3 2. L’INFORMATION SOUS TOUTES SES FORMES...................................................................................... 4 3. LA RECHERCHE D’INFORMATION........................................................................................................... 4 3.1. INDEXATION.................................................................................................................................................. 5 3.2. LES DIFFERENTS MODELES DE RECHERCHE D’INFORMATION......................................................................... 7 a Le modèle booléen ................................................................................................................................ 7 b Le modèle vectoriel .............................................. ...
UNIVERSITES PAUL CEZANNE, de PROVENCE, de la MEDITERRANEE UNIVERSITE du SUD TOULON-VAR ECOLE NATIONALE SUPERIEURE dARTS et METIERS
MASTER SIS
Sciences de lInformation et desSystèmes Mémoire de recherche Présentée le 23 Juin 2006 par Nicolas FaesselSujet Intégration du langage de recherche dinformation NEXI dans le langage de requêtes XQuery.
Stage de recherche effectué au Laboratoire : LSIS Dans léquipe : INCOD Sous la direction de : Jacques Le Maitre
INTEGRATION DE NEXI DANS XQUERY................................................................................................ 21
DESCRIPTION DU PROTOTYPE ................................................................................................................ 225.1. PARAMETRAGE DEXECUTION DUNE REQUETEXQUERY+NEXI .............................................................. 235.2. EXECUTION DE LA REQUETE........................................................................................................................ 24a 24Caractéristiques des moteurs XQuery.................................................................................................bPrincipe général dexécution de la fonction about ............................................................................. 25
6.1. CORPUS DANALYSE..... .............................. 25................................................................................................ 6.2. STRATEGIE DIMPLEMENTATION................................................................................................................. 266.3. JEUX DESSAIS............................................................................................................................................ 266.4. EXEMPLE DE RESULTATS............................................................................................................................. 276.5. DISCUSSION................................................................................................................................................ 28
CONCLUSION ET PERSPECTIVES............................................................................................................ 28
7.1. PERSPECTIVES DEVOLUTION...................................................................................................................... 29aIndexation ........................................................................................................................................... 29b 29Extension de XQuery...........................................................................................................................c 29Utilisation de XQuery Full-Text..........................................................................................................dPrise en compte de nouvelles pondérations ........................................................................................ 30
I Etude Bibliographique 1.Introduction Lapparition de lécriture a permis depuis 5000 ans de conserver une trace des connaissances de lhumanité. Dès lors, la transmission du savoir nest plus forcement orale, mais peut se perpétuer à travers les écrits. Chaque époque apportant son lot de révolution, la typographie inventée par Gutenberg en 1440 a permis un accroissement constant des documents et par conséquent de la masse dinformation disponible. Linformatique et les TIC ont aussi provoqué une révolution dont il est impossible de ne pas tenir compte de nos jours. Un tel volume dinformation soulève bien des problèmes, tels que la représentation, lorganisation, le stockage et la restitution de cette dernière, plus encore quand elle devient lapanage de tous. Ainsi, des méthodes de classification, de stockage et de recherche se sont grandement développées ces dernières années. Puis des méthodes dévaluation sont aussi apparues, pour mesurer la qualité des recherches en cours. Pour répondre à toutes ces problématiques une multitude de solutions ont été développées, chacune tenant compte de spécificités propres à la problématique rencontrée. En effet, il existe différentes façons de stocker des données, selon lusage que lon souhaite en faire, et donc plusieurs manières dy accéder. On peut par exemple faire une distinction entre information structurée et information non structurée. Linformation structurée est un ensemble de données organisées en un certain nombre de champs structurés pour un accès prédéfini, répondant généralement à des besoins applicatifs, comme cest le cas pour les bases de données relationnelles, les annuaires, les anciens systèmes documentaires. Linformation non structurée, quant à elle, contient le plus généralement du texte, écrit en langue naturelle, comme cest le cas pour les livres, les articles, les rapports Une distinction est admise entre linterrogation de base de données qui vise à interroger de manière précise un ensemble de données et la recherche dinformation traditionnelle, qui consiste à retrouver un ensemble de documents utiles et pertinents pour un utilisateur en quête dinformation sur un sujet qui nest pas forcement formellement défini. Le langage XML, qui est un méta langage à balises, permet le rapprochement des communautés bases de données et recherche dinformation. XML permet aussi bien la représentation de la structure logique de nimporte quel type de documents contenant du texte libre, que léchange de données entre applications. On parle ainsi de données semistructurées. Un langage de requête spécifique à XML doit ainsi couvrir deux aspects principaux, orienté documents et orienté données [29]. Pour laspect orienté documents, il doit permettre linterrogation flexible des collections de documents, aussi bien sur la structure que sur le contenu, mais surtout classer les réponses par ordre de pertinence par rapport à la question posée. Pour laspect orienté données, qui concerne surtout les échanges de données entre applications, dans un format qui leur est spécifique, un tel langage doit permettre la sélection dinformations, mais aussi la manipulation de ces informations, par exemple, les regrouper ou les restructurer dans un nouveau document. Un tel langage a été proposé comme standard par le W3C. Cest XQuery [4], un langage de requête qui opère à la façon de SQL sur des collections de documents représentés chacun sous la forme dun arbre appeléarbre de document. Afin de le rapprocher de lorientation recherche dinformation, ce langage a été étendu à la recherche plein texte afin de permettre la recherche dinformation dans les feuilles textuelles de larbre dun document [1]. XQuery repose sur un langage dadressage de nuds XPath, qui est considéré comme trop compliqué pour la recherche dinformation. Il a donc été simplifié pour aboutir à NEXI. Etendre XQuery avec NEXI permettrait notamment dordonner et de structurer les éléments dun document
XML trouvés par une requête NEXI et de les classer selon leur degré de similarité avec cette requête. 2.Linformation sous toutes ses formes Internet et la numérisation des documents a changé notre façon daccéder à linformation. Le Web est devenu un entrepôt universel de culture et de connaissance, qui permet un partage didées et dinformations sans précédent. Mais ça na pas toujours été le cas. En effet, avant, pour obtenir un document, il fallait se rendre dans un centre documentaire où lon pouvait rechercher un ouvrage dont il était préférable de connaître lauteur ou le titre. Il était relativement difficile de formuler une requête de la forme : « Je cherche un ouvrage évoquant limmigration aux Etats-Unis en 1876 », à moins que cet ouvrage ait un titre suffisamment explicite. Les données telles que le titre, lauteur, contenues dans les bases dun centre documentaire correspondent à de linformation secondaire, qui permet ensuite daccéder à linformation primaire : le contenu de louvrage. Ces données sont dites structurées, car elles gardent une forme fixe, quelque soit louvrage référencé. Les bases de données relationnelles (par exemple la base de clients dune entreprise) stockent elles aussi des données structurées. Lorganisation des données est connue, et laccès se fait généralement par certains champs spécifiques. Par exemple, un assuré accède à son contrat dassurance par son numéro dassuré. Linformation non structurée quant à elle se présente généralement sous forme de texte brut. On évalue, pour les documents présents sur le web, à 80% linformation non structurée contre 20% dinformation structurée. Mais linformation ne répond pas seulement à la dichotomie présentée ci-dessus : on peut aussi parler dinformation formelle ou informelle, textuelle ou multimédia, structurée, semi structurée ou plein texte Afin daccéder indifféremment à toutes ces données qui ont une représentation hétérogène, il existe une approche médiateur, qui permet dunifier laccès aux données par une seule interface. 3.La recherche dinformation La recherche dinformation dépend de plusieurs disciplines : classification, interface utilisateur, visualisation de données, traitement automatique du langage naturel (TALN). La classification permet dorganiser linformation secondaire, pour mieux accéder à linformation primaire (généralement textuelle). Linterrogation de linformation textuelle, qui est généralement écrite en langue naturelle, doit tenir compte des caractéristiques de cette langue. En effet, le langage naturel a trois caractéristiques qui rendent son interprétation par un ordinateur difficile : limplicite, la redondance et lambiguïté. Ainsi, dans un texte, les idées peuvent être expliquées de plusieurs manières différentes par redondance, de manière partielle (implicite) ou être interprétées de plusieurs façons (ambiguïté)[31], [22]. Etant donnée une requête utilisateur, le but dun système de recherche dinformation est de rechercher les documents dont le contenu est plus ou moins conforme à cette requête. En ce sens, la recherche dinformation se différencie de linterrogation dune base de données. Le contenu dun document est généralement représenté par un ensemble de termes et une requête sexprime elle-même sous forme dun ensemble de termes, éventuellement pondérés et/ou connectés par des conjonctions, disjonctions ou des négations.
Pour une requête donnée, il faut pouvoir évaluer la pertinence des documents retrouvés par le système [16]. Une première idée serait de considérer la pertinence comme une approche booléenne : le document répond ou ne répond pas à la requête. Mais il peut être intéressant de connaître aussi les documents qui correspondent plus ou moins à une requête. En plus de la pertinence des réponses, on peut mesurer la performance dun système de recherche dinformation par lerappel la etprécision le, et leurs corollaires :bruit et lesilence (voir Figure 1). On peut les définir comme suit : Soient : P lensemble des documents pertinents,NPleur nombre R lensemble des documents retrouvés,NRleur nombre NRPde documents pertinents retrouvés (cardinal de lensemble nombre le P∩R) ReNPNRP Rappel=NNPRPSilence=1−app l=N−P− Précision= NRPBruit=1−Précision=NRNRPNRNR
Ensemble des documents
EnsemblePdes documents Pertinents
EnsembleRdes documents retrouvés
Bruit
Silence Documents pertinents retrouvés Figure 1 :Bruit et silence en recherche d'informationLe bruit correspond aux documents retrouvés non pertinents, et le silence aux documents pertinents qui nont pas été retrouvés. 3.1.Indexation P. Lefevre définit lindexation comme suit [18]: Lindexation est la représentation formalisée et condensée du contenu thématique ou sémantique dun document, à laide dindicateurs sémantiques qui peuvent être des indices de classification ou des descripteurs, contrôlés ou non. Ces indicateurs appartiennent au langage naturel et/ou à un langage documentaire. Lindexation a un double but, de représentation et dadressage. Lindexation consiste donc à associer à un document lensemble des termes qui caractérisent son contenu.manières dindexer un document, selon les méthodes deIl existe plusieurs recherche que lon utilisera par la suite. En effet, lindexation nest pas une fin en soi, mais plutôt un des traitements préalables à la recherche dinformation, en vue de faciliter laccès à posteriori aux données indexées. Dans lapproche la plus classique, lindexation dun document, se déroule en trois étapes :
(1)analyse lexicale du texte le transformant en un ensemble de mots, (2)élimination des mots dits vides, tels que les articles ou les prépositions, (3)pour but denlever les préfixes et les suffixes etracinisation des mots restants, avec permettre la recherche de document contenant des variations syntaxiques des termes de la requête. On peut aussi indexer un document avec des termes extraits dun thésaurus ou dune ontologie. On trouvera une analyse détaillée des principales méthodes dindexation dans [2]. Une fois que les termes qui indexent un document sont sélectionnés, on peut leur attribuer un poids traduisant leur importance dans la description du contenu de ce document. Il est classique de faire lhypothèse quun terme est dautant plus significatif quil est fréquent dans un document et quil lest dautant moins quil est fréquent dans la collection de documents à indexer. Considérons par exemple une collection de plusieurs milliers de documents. Si lon retrouve dans tous les documents plusieurs fois le même terme, celui-ci peut-être considéré comme inutile pour décrire le contenu du document. Alors quun terme qui napparaît que dans quelques documents peut être considéré comme très significatif. On peut donc dire que chaque terme a un degré de pertinence quand il est utilisé pour décrire le contenu dun document. Cest ce que lon peut appeler le poids du terme, qui quantifie limportance du terme indexé pour décrire le contenu sémantique du document. Baesa-Yates définit le poids comme suit [2]: Soit t le nombre de terme indexé dans le système et ki terme indexé générique. K = un{k1, ,kt}est lensemble de tous les termes indexés. Un poids wi,j>0est associé à chaque terme indexé ki dun document dj. Pour un terme indexé quinapparaîtpas le texte du dans document, wi,j=0. Au document dj dest associé un vecteur des termes indexésjreprésenté par dj= (w1,j, w2,j, , wt,j).Le poids se calcule de différentes manières selon lemodèle de recherche dinformationque le système utilise. Par exemple, dans le modèle vectoriel décrit un peu plus loin, le poids se mesure à partir de différents facteurs de fréquence doccurrence du terme à peser. Le premier facteur est la fréquence brute dun termekià lintérieur dun documentdj. Cette fréquence de terme est souvent nomméefacteur tf(term frequency)et mesure comment le terme décrit le document (c'est-à-dire la caractérisation intra-document). Un autre facteur est important, cest la fréquence inverse du terme dans lensemble des documents nomméeidf(inverse document frequencyle fait quun terme qui apparaît dans). Lutilisation de ce facteur sexplique par beaucoup de documents nest pas vraiment utile pour déterminer si le document est pertinent ou non. Grâce à ces deux facteurs, on va pouvoir calculer la fréquence pondérée de ces termes. Définition :Soit N le nombre total de documents dans le système et ni le nombre de documents dans lesquels le terme indexé kiapparaît. Soit freqi,jla fréquence brute du terme kidans le document dj(cest-à-dire le nombre de fois que le terme kiest mentionné dans le texte du document dj). La fréquence normalisée fi,jdu terme kidans le document diest donnée par e , f,jfr qi j = imaxlfreql,j où le maximum est calculé avec tous les termes qui sont mentionnés dans le texte du document dj. Si le terme kinapparaît pas dans le document djalors fi j=0., Soit idfila fréquence inverse documentaire pour kidonnée par
idfi=logN ni
Ainsi le poids est défini par wi,j=fi,j×lognNi ou par une variation de cette formule. Une telle stratégie est appelée stratégie tf-idf Les termes sont supposés mutuellement indépendants,c'est-à-dire que la fréquence dun terme nest pas liée à la fréquence dun autre. Cela signifie que connaître le poidswi,jassocié à la paire (ki, dj) ne nous apprend rien sur le poidswi+1,jassocié au couple (ki+1,dj). En réalité, les termes indexés dans un document ne sont pas sans corrélation. Par exemple, supposons que les termesordinateurs etréseau sont utilisés pour indexer un document qui couvre le domaine des réseaux dordinateurs. En général, dans ce document, lapparition dun de ces deux mots entraîne lapparition de lautre. Ainsi, les deux mots étant corrélés, leurs poids devraient refléter cette corrélation. Bien que lindépendance mutuelle des termes semble être un peu simpliste, elle facilite lautomatisation de lindexation. En fait, aucune approche passée na montré que lutilisation de la corrélation des termes indexés est avantageuse sur des collections générales. 3.2.Les différents modèles de recherche dinformation Lindexation simplifie donc la recherche dinformation, mais soulève quand même quelques problèmes. En effet, la sémantique des documents et de linformation recherchée ne sexprime pas tout à fait naturellement sous forme dun ensemble dindex. Il y a des pertes quand on remplace un document par un ensemble de mots. Il devient donc difficile de savoir si un document contenant un ensemble de mots retrouvés pour un ensemble de mots recherchés exprime bien linformation que lon recherche. Face à une requête donnée, le problème central de la recherche dinformation est donc de savoir si tel document est pertinent ou non. Des algorithmes de classement essayent de fournir un tri par rapport à la pertinence des résultats trouvés. Ainsi, dans les réponses classées, les documents qui apparaissent en premier sont sensés être les plus pertinents. Il existe différents modèles de recherche dinformation, qui fournissent chacun leur approche quant à la notion de pertinence. Les trois modèles classiques sont le modèle booléen, le modèle vectoriel, et le modèle probabiliste. Des approches alternatives à ces trois modèles sont apparues au fil des années. Baesa-Yates en décrit 15 dans [2]. Nous ne décrirons ici que les modèles classiques. aLe modèle booléen Dans ce modèle, les documents et les requêtes sont représentés comme un ensemble dindex. Basé sur la théorie des ensembles et lalgèbre booléen, il fournit un cadre facile à appréhender pour les utilisateurs dun système de recherche dinformation. Les requêtes sont exprimées par des expressions booléennes qui ont une sémantique précise. Ce modèle est plus orienté modèle de recherche de données que recherche dinformation, car sa stratégie de recherche est basée sur une décision binaire (un document est pertinent ou non). Il regarde juste si les termes indexés sont présents ou absents dun document. Même sil est facile de formuler correctement des requêtes booléennes, la sémantique précise de ce modèle rend difficile lexpression de linformation dont on a besoin. Comme le résultat de la requête, les poids des termes indexés sont tous binaires, i.e., wi,j∈{0,1}. Une requête q est composée de termes
indexés liés par trois connecteurs :et,ou,non. Une requête est essentiellement une expression booléenne conventionnelle qui peut être représentée comme la disjonction de vecteurs conjonctifs (dans la disjunctive normal form DNF). Par exemple, la requête [q=ka∧(kb∨ ¬kc)] peut être écrite dans la forme disjonctive normale comme [qrdnf= (1,1,1) ∨(1,1,0)∨composants est un vecteur de poids binaires associé au(1,0,0)], où chacun des tuple (ka, kb, kc). Ces vecteurs de poids binaires sont appelés les composants conjonctifs de r qdnf. Définition :Pour le modèle booléen, les variables de poids des termes indexés sont toutes binaires, c'est-à-dire wi,j∈{0,1}. Une requête q est une expression Booléenne r conventionnelle. Soit qrdnf q forme normale disjonctive de la requête q. Soit laccun des composants de qrdnf.La similarité entre un document djet la requête q est définie par r r r r
sim(dj,q)1si qcc(qccqdnf) (ki,i(j)i cc))=0sin∃on∈ ∧ ∀g d=g q Si sim(dj, q) = 1 alors le modèle booléen prédit que le document dj pertinent pour la est requête q (il peut pourtant ne pas lêtre). Dans les autre cas, le document nestpasrtpenine.tLe modèle booléen prédit que chaque document estpertinentounon pertinent. Il ny a pas de correspondance partielle pour les conditions de la requête. Par exemple, considérons un documentdjpour lequeldj= (0,1,0). Le documentdjinclut le termekbmais il est considéré non pertinent pour la requête [q=ka∧(kb∨ ¬kc)], car il ninclut pas le termeka, bien quil puisse ne pas contenir le termekc. Les avantages principaux du modèle booléen sont sa simplicité et son formalisme bien défini. Linconvénient majeur est que la correspondance exacte des termes peut causer autant de bruit que de silence. Le poids des termes indexés peut mener à une certaine amélioration dans la performance de la recherche. bLe modèle vectoriel Le modèle vectoriel [23] reconnaît que lutilisation binaire des poids est trop limitée et propose un cadre dans lequel la correspondance partielle est possible. Cela est fait en affectant un poidsnon binairepour indexer les termes dun document et dune requête. Ces termes ont pour finalité de permettre le calcul dundegré de similaritéentre la requête de lutilisateur et chaque document stocké dans le système. En triant les documents retrouvés par ordre décroissant de ce degré de similarité, le modèle vectoriel prend en considération les documents qui ne correspondent que partiellement à la requête. Cela a pour effet que lensemble des documents classé est un peu plus précis que lensemble de documents retrouvé par le modèle booléen. Définition :Pour le modèle vectoriel, le poids wi,jassocié au couple(ki, dj)est positif et non binaire. Les termes indexés dans la requête ont aussi un poids. Soit wi,qle poids associé au couple[ki, q], où wi,q≥0.Dans qce cas, le vecteur de la requêterest défini par qr=(w1,q, w2,q, ,wt,q)où test le nombre total de termes indexés dans le système. Comme précédemment, le vecteur associé au document dj dest représenté parj= (w1,j, w2,j, , wt,j).
Par conséquent, un documentdjet une requête utilisateurq représentés comme des sont vecteurs t-dimensionnels comme montré dans la Figure 2. Le modèle vectoriel propose dévaluer le degré de similarité du documentdjavec la requêteqcomme la corrélation entre les vecteursdjetqrCette corrélation peut être quantifiée, par exemple, par le cosinus de. langle entre ces deux vecteurs : r • sim(dj,q)=ddrjq r ×q
j ∑it=1wi,j×wi,q= ∑it=1wi2,j×∑tj=1wi,2q où |dj| et |qr| sont les normes des vecteurs requête et document. Le facteur |qr| naffecte pas le classement (c'est-à-dire lordre des documents) parce quil est toujours le même pour tous les documents. Le facteurdjfournit une normalisation de lespace des documents.
dj
θ
Figure 2 :Le degré de similaritésim(dj, q)est représenté par le cosinusθCommewi,j≥0 etwi,q≥0,sim(q, dj) varie de 0 à +1. Ainsi, plutôt que dessayer de prédire si un document est pertinent ou non, le modèle vectoriel classe les documents en fonction de leur degré de similarité avec la requête. Un document peut être récupéré même sil correspond seulementpartiellementà la requête. Par exemple, on peut établir un seuil sursim(q, dj) et récupérer les documents qui ont un degré de similarité au dessus de ce seuil. Les avantages du modèle vectoriel sont que : (1)son schéma de mesure de poids des termes améliore les performances de recherche ; (2)partielle permet de retrouver des documents qui sontsa stratégie de correspondance prochesdes conditions de la requête ; (3)sa formule de classement au moyen du cosinus trie les documents en fonction de leur degré de similitude par rapport à la requête. Théoriquement, le modèle vectoriel a le désavantage que les termes indexés soient supposés mutuellement indépendants. Cependant, la prise en compte de la dépendance des termes peut en pratique savérer être un inconvénient. Certaines dépendances de termes sont locales, et leur utilisation sur lensemble des documents de la collection risquerait de baisser la performance globale. En dépit de sa simplicité, le modèle vectoriel est une stratégie de classement énergique dans la collection générale. Il produit des ensembles de réponses rangées difficiles à améliorer sans expansion de requête ou sans retour de pertinence (relevance feedback). Une grande variété de méthodes de classement alternatives a été comparée au modèle vectoriel, mais en général ce dernier est souvent aussi bon, voire supérieur aux autres. De plus, il est simple et rapide. Pour ces raisons, le modèle vectoriel est un modèle de recherche très utilisé de nos jours.
cLe modèle probabiliste Le modèle probabiliste essaye destimer pour une requêteqdonnée, la probabilité que lutilisateur trouve le documentdjpertinent [21]. Définition :Pour le modèle probabiliste, les poids des termes indexés sont binaires, c'est-à-dire wi,j∈{0,1},wi,q∈{0,1}.Une requête q est un sous ensemble de termes indexés. Soit R lensemble des documents connus comme pertinents (ou initialement supposés comme tel). Soit R le complément de R (c'est-à-dire lensemble des documents non pertinents). r Soit P( dR |j)la probabilité que le document djsoit pertinent pour la requête q. Soit P(R | dj)la probabilité que djne soit pas pertinent pour q. La similarité sim(dj,q)entre le document djq est définie comme le ratioet la requête r sim(d q)=PP(R|dR|rj)j(,dj) En utilisant la règle de Bayes, on obtient r × = sim(dj,q)PP((ddrj|R|R))PP((RR))j× r P(dj| R) représente la probabilité de sélectionner au hasard le documentdjdans lensemble R des documents pertinents.P(R) représente la probabilité quun document choisi au hasard parmi lensemble de la collection soit pertinent. CommeP(R) etP(R) sont les mêmes pour chaque document de la collection on peut simplifier la formule par : r j,rsim(d q)P~P((ddjj|R|R)) Lavantage du modèle probabiliste est que les documents sont classés dans lordre décroissant de leur probabilité de pertinence. Les inconvénients sont quil faut dabord classer les documents en ensemble pertinent et en ensemble non pertinent, et que la fréquence des termes nest pas prise en compte (les poids sont binaires). dLe modèle densemble flou La représentation des documents et des requêtes par un ensemble de mots-clés fournit une description qui ne représente quune partie de la sémantique réelle du contenu des documents et des requêtes. Ainsi, la correspondance des termes de la requête au document est approximative.On peut modéliser cela en considérant chaque terme de la requête comme unensemble flouet ajouter à chaque document undegré dappartenance(généralement entre 0 et 1) à la requête. La théorie desensembles flouspermet la représentation de classes dont les limites ne sont pas clairement définies [5]. Lidée principale est dassocier une fonction dappartenance aux éléments de la classe. Définition :Un sous ensemble flou A dun univers U est caractérisé par une fonction dappartenance µA: U→[0, 1]qui associe à chaque élément u de U un nombre µA(u)dans lintervalle [0,1].
Les trois opérations généralement utilisées sur les ensembles flous sont : le complément dun ensemble flou, lunion de deux ou plusieurs ensembles, et lintersection de deux ou plusieurs ensembles.Définition : A leSoit U un univers, A et B deux sous ensembles de U, complément de A dans U, u un élément de U. Alors A(u)=1−A(u) µA∪B(u)=max(µA(u),µB(u))µA B(u)=min(µA(u),µB(u)) ∩ Les ensembles flous sont utilisés pour représenter limprécision et ont des applications dans plusieurs domaines. 4.Le format de donnée XML Le format XML [6] (eXtensible Markup Langage) est un langage qui permet de structurer linformation contenue dans un fichier par des balises. Les documents XML peuvent être utilisés selon deux approches : • les documents ont une structure uniforme et sont vusLapproche orientée données : comme une base de données. Dans ce cadre, XML peut être utilisé comme un langage dinterface entre des applications hétérogènes. • :Lapproche orientée documents les documents nont pas de structures uniformes. Laccent est mis sur leurs contenus textuels
Figure 3 :Les trois couches structurelles pour les collections de documents XMLLa Figure 3 [28] montre que le balisage des documents XML peut seffectuer sur trois niveaux. Au niveauséneatitonrp, le balisage est utilisé pour la mise en forme du document, comme en HTML. Au niveaulogique, les balises décrivent lorganisation du document (par exemple un ouvrage est découpé en chapitre, eux même découpés en paragraphe, qui contiennent des phrases). Le niveausémantiquepermet dindiquer le contexte sémantique des éléments contenus dans de telles balises. Voici un exemple de document XML et larbre de document qui lui est associé :