Results 1 -
3 of
3
Mechanizing the Metatheory of mini-XQuery
"... Abstract. We present a Nominal Isabelle formalization of an expressive core fragment of XQuery, a W3C standard functional language for querying XML documents. Our formalization focuses on results presented in the literature concerning XQuery’s operational semantics, typechecking, and optimizations. ..."
Abstract
- Add to MetaCart
Abstract. We present a Nominal Isabelle formalization of an expressive core fragment of XQuery, a W3C standard functional language for querying XML documents. Our formalization focuses on results presented in the literature concerning XQuery’s operational semantics, typechecking, and optimizations. Our core language, called mini-XQuery, omits many complications of XQuery such as ancestor and sibling axes, recursive types and functions, node identity, and unordered processing modes, but does handle distinctive features of XQuery including monadic comprehensions, downward XPath steps and regular expression types. To our knowledge no language with similar features has been mechanically formalized previously. Our formalization is a first step towards a complete formalization of full XQuery and may also be useful as a benchmark for comparing other mechanized metatheory tools. 1
Selected Papers. (2010)" Types and constraints: from relational to XML data
, 2011
"... Abstract. The goal of this article is to show that, in the context of XML data processing, information conveyed by schema or XML types is a powerful component to deploy optimization methods. We focus on the one hand on recent work developed for optimizing query and update evaluation for main-memory ..."
Abstract
- Add to MetaCart
Abstract. The goal of this article is to show that, in the context of XML data processing, information conveyed by schema or XML types is a powerful component to deploy optimization methods. We focus on the one hand on recent work developed for optimizing query and update evaluation for main-memory engines and on the other hand on techniques for checking XML query-update independence. These methods are all based on static type analysis. The aim of the article is to show how types rank before constraints for XML data processing and the presentation of each method is kept informal.
Languages
, 807
"... XML database query languages have been studied extensively, but XML database updates have received relatively little attention, and pose many challenges to language design. We are developing an XML update language called FLUX, which stands for FunctionaL Updates for XML, drawing upon ideas from func ..."
Abstract
- Add to MetaCart
XML database query languages have been studied extensively, but XML database updates have received relatively little attention, and pose many challenges to language design. We are developing an XML update language called FLUX, which stands for FunctionaL Updates for XML, drawing upon ideas from functional programming languages. In prior work, we have introduced a core language for FLUX with a clear operational semantics and a sound, decidable static type system based on regular expression types. Our initial proposal had several limitations. First, it lacked support for recursive types or update procedures. Second, although a high-level source language can easily be translated to the core language, it is difficult to propagate meaningful type errors from the core language back to the source. Third, certain updates are wellformed yet contain path errors, or “dead ” subexpressions which never do any useful work. It would be useful to detect path errors, since they often represent errors or optimization opportunities. In this paper, we address all three limitations. Specifically, we present an improved, sound type system that handles recursion. We also formalize a source update language and give a translation to the core language that preserves and reflects typability. We also develop a path-error analysis (a form of dead-code analysis) for updates.

