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.
[PDF File]
[PDF Slides of the talk]
[PS File]
[PS Slides of the talk]