Declarative specifications of complex transactions

While specifications of queries are usually of a declarative nature (since the work of Codd in the early seventies), specifications of transactions are still mainly of an operational and descriptive nature. Especially descriptions of complex transactions (such as cascading deletes) tend to be very o...

Full description

Bibliographic Details
Main Author: Brock, E.O. de
Format: Report
Language:unknown
Subjects:
DML
Online Access:http://irs.ub.rug.nl/ppn/174867816
Description
Summary:While specifications of queries are usually of a declarative nature (since the work of Codd in the early seventies), specifications of transactions are still mainly of an operational and descriptive nature. Especially descriptions of complex transactions (such as cascading deletes) tend to be very operational. Often these descriptions turn out to be nondeterministic as well. A problematic consequence is that the semantics of transactions and of several related notions are often unclear or even ambiguous. For a database designer this surely is not a good starting point for building applications. Another tendency we recognize is that the current literature on transactions is mainly driven by technical solutions offered by research prototypes and commercial systems and not so much by advanced specification requirements from a user's or database designer's point of view. In our opinion, the research questions should (also) include what kind of complex transactions (advanced) users would like to specify (and not only what e.g. the expressive power of a given technical solution is), and how these specifications can be translated to implementations in the currently available (advanced) databasemanagementsystems. And, moreover, wasn't it our purpose (with the introduction of 4GL's and the like) to become declarative instead of operational, concentrating on the "what" instead of the "how"? This paper offers a general framework for declarative specifications of transactions, including complex ones. We also take the influence of static and dynamic constraints on the alleged transactions into account. The paper introduces sharp (deterministic) definitions of (and distinctions between) compound transactions and a sequence of transactions. Basic set theory is our main vehicle. Applications of our theory include the provision of a formal semantics of SQL's DML-statements (which include restricted deletes), the declarative specification of cascading deletes, and the distinction between allowable and available transitions. ...