thesis

Une Méthode de correction de la structure de documents XML dans le cadre d'une validation incrémentale

Defense date:

Jan. 1, 2006

Edit

Institution:

Tours

Disciplines:

Authors:

Abstract EN:

XML s'est imposé comme format d'échange de données. Dans ce cadre, les données sont structurées selon un schéma et un validateur permet de vérifier qu'un document XML respecte le schéma qui lui est associé, c'est à dire que sa structure suit les règles du schéma (la structure d'un document XML est un arbre). Si ce document est mis à jour, une validation incrémentale doit être réalisée, qui consiste à vérifier si la structure du nouveau document est toujours conforme aux règles du schéma, en considérant uniquement les parties qui sont concernées par les mises à jour (ceci pour réduire le coût, par rapport à une validation du document entier). Cette thèse présente une méthode générale de validation incrémentale, qui de plus, au lieu de refuser les mises à jour qui rendent un document invalide, propose des corrections pour celui-ci. La correction en l'occurence consiste à transformer le résultat invalide des mises à jour en un document valide. Dans un premier temps, nous nous intéressons à un problème simplifié, qui consiste à corriger un mot par rapport à un autre mot (le mot initial valide) et à un langage. En effet, la correction d'un document XML dont la structure est simplement une racine et ses fils correspond à la correction d'un mot (composé des fils de la racine). Par rapport à une grammaire (la contrainte du schéma associé à l'étiquette de la racine). Dans un second temps, nous avons étendue cette idée à la correction d'un arbre XML (la structure d'un document) par rapport à un langage d'arbres (le schéma associé du document). Cette correction est réalisée en appliquant le minimum de modifications possibles (insérer, supprimer ou renommer des éléments) pour obtenir un arbre valide à partir d'un arbre invalide. Les algorithmes présentés dans cette thèse ont été implantés (en Java) et des résultats expérimentaux sont rapportés.

Abstract FR:

XML becomes the main tool used to exchange data on the web. In this context, XML document should respect schema constraints that describe the structural form of XML documents. The validation of an XML document wrt a schema constraints consists in testing whether the document verifies the set of structural specifications described by this schema. Supposing that updates are applied to the document, an incremental validator is the one that verifies whether the updated document complies with the schema, by validating only the parts of the document involved in the updates (to reduce the cost of a validation from scratch of the whole XML document). In this thesis we associate the validation process with correctoin proposals. During the execution of our validation method, if a constraint violation is found, a correction routine is called in order to propose local solutions capable of allowing the validation process to continue. Firstly, we are interested in a special case of this problem, which consists in correcting a word wrt another word (the initial valid word) and wrt a regular language. Indeed, the correction of an XML document having only a root and its sons corresponds to the correction of a word (composed by the children of the root) wrt a regular language (the constraint associated tothe root). In a second time, we extended this idea to the correction of XML tree (the structure of documents) wrt tree languages (the schema associated to an XML document). This correction is done by applying the minimum of modifications (by insertion, deletion or by replacement of some elements) on an invalid XML document in order to obtain a valid XML document. The algorithms presented in this thesis were implemented (in Java) and the experimental result are shown.