Institute for Informatics
Georg-August-Universität Göttingen

Databases and Information Systems

dbis
Uni Göttingen

Intl. Workshop on Logic in Databases (LID'96),
San Miniato, Italy, July 1-3, 1996. LNCS 1154, Springer, pp. 197-222.

Nested Transactions in a Logical Language for Active Rules

Bertram Ludäscher, Wolfgang May, Georg Lausen

Abstract:

We present a hierarchically structured transaction-oriented concept for a rule-based active database system. In previous work, we have proposed Statelog as a unified framework for active and deductive rules. Following the need for better structuring capabilities, we introduce procedures as a means to group semantically related rules and to encapsulate their behavior. In addition to executing elementary updates, procedures can be called, thereby defining (sub)transactions which may perform complex computations. A Statelog procedure is a set of ECA-style Datalog rules together with an import/export interface. System-immanent frame and procedure rules ensure both propagation of facts and processing of results of committed subtransactions. Thus, Statelog programs specify a nested transaction model which allows a much more structured and natural modeling of complex transactions than previous approaches. Two equivalent semantics for a Statelog program P are given: (i) a logic programming style semantics by a compilation into a logic program, and (ii) a model-theoretic Kripke-style semantics. While (ii) serves as a conceptual model of active rule behavior and allows to reason about properties of the specified transactions, (i) -- together with the appropriate execution model -- yields an operational semantics and can be used as an implementation of P.

[PS-File]
[Slides of the talk]