Analyse de XML avec données non-bornées
Institution:
Paris 7Disciplines:
Directors:
Abstract EN:
The motivation of the work is the specification and static analysis of schema for XML documents paying special attention to data values. We consider words and trees whose positions are labeled both by a letter from a finite alphabet and a data value from an infinite domain. Our goal is to find formalisms which offer good trade-offs between expressibility, decidability and complexity (for the satisfiability problem). We first study an extension of first-order logic with a binary predicate representing data equality. We obtain interesting some interesting results when we consider the two variable fragment. This appraoch is elegant but the complexity results are not encouraging. We proposed another formalism based data patterns which can be desired, forbidden or any boolean combination thereof. We drw precisely the decidability frontier for various fragments on this model. The complexity results that we get, while still high, seems more amenable. In terms of expressivity theses two approaches are orthogonal, the two variable fragment of the extension of FO can expressed unary key and unary foreign key while the boolean combination of data pattern can express arbitrary key but can not express foreign key
Abstract FR:
Cette thèse est motivée par la spécification et l'analyse de schémas XML, en se focalisant sur données présentes dans les documents. On s'intéresse à des structure de mots et d'arbres dont chaque position ou noeud est étiqueté à la fois par une lettre provenant d'un alphabet fini et par une donnée provenant d'un domaine potentiellement infini muni d'une relation d'égalité. Le travail de cette thèse a été de proposer et étudier des formalismes permettant de spécifier des langages de mots/d'arbres de données et dont le problème de satisfaisabilité soit décidable. Toute la difficulté est de trouver un compromis entre expressivité, décidabilité (et complexité). Une première approche consiste à étendre la logique du premier ordre à l'aide d'un prédicat binaire testant l'égalité de données. On étudie la frontière de décidabilité ainsi que la complexité du problème de satisfaisabilité pour différents fragments/extensions de cette logique et on fait le lien avec la spécification de schémas. Cette approche est élégante et générique, malheureusement les complexités obtenues extrêmement élevées. Afin d'obtenir des résultats de complexité plus raisonnables, on étudie un formalisme basé sur des combinaisons booléennes d'objets appelés "patterns". On s'intéresse encore une fois à la frontière de décidabilité et la complexité du problème de satisfaisabilité, au problème de model-checking. Les complexités obtenues sont plus encourageantes. En terme d'expressivité, ce formalisme est incomparable au précédent, on explicite les liens par rapport aux schémas XML.