Abstract
We describe how the functional database programming language PFL is extended with an active component without compromising either its declarative semantics or its syntax. We give a formal specification of the active component using PFL itself, including event specification and detection, parameter-binding, reaction scheduling and abort handling. We describe how a user-specified function can be cast as a primitive event, and discuss the expressiveness of events and the optimisation of event detection.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Baralis, E., Ceri, S. and Paraboschi, S. (1995). “Improved Rule Analysis by Means of Triggering and Activation Graphs”, in Proc. 2nd Int. Workshop on Rules in Database Systems, Athens, Greece, pp. 165–181.
Branding, H., Buchmann, A., Kudrass, T. and Zimmerman, J. (1993). Rules in an open system: the REACH rule system. In (Paton, et al. 1993a), pp. 111–126.
Buchmann, A., Özsu, M.T., Hornick, M., Georgakopoulos, D. and Manola, F.A. (1992). A transaction model for active distributed object systems. In A.K.Elmagarmid (Ed.), Database Transaction Models for Advanced Applications. Morgan Kaufman, San Mateo, CA.
Burstall, R. (1969). “Proving properties of programs by structural induction”, The Computer Journal, 12, pp. 41–48.
Chakravarthy, S., Krishnaprasad, V., Anwar E. and Kim, S.-.K. (1994). “Composite Events for Active Databases: Semantics, Contexts and Detection”, in Proc. 20th VLDB Conf., Santiago, Chile, pp. 606–617.
Clack, C. and Peyton-Jones, S.L. (1985). Strictness Analysis-A Practical Approach. In J.P.Jouannaud (Ed.), Functional Programming Languages and Computer Architecture, LNCS 201. Springer-Verlag, Heidelberg, Germany.
Dayal, U., Blaustein, B., Buchmann, A.P., Chakravarthy, S., Goldhirsch, D., Hsu, M., Ladin, R., McCarthy, D. and Rosenthal, A. (1988). “The HiPAC project: combining active databases and timing constraints”, Sigmod record, Vol. 17–1, pp. 51–70.
Dittrich, K.R., Gatziu, S. and Geppert, A. (1995). “The Active Database Management System Manifesto: A Rulebase of ADBMS Features”, in Proc. 2nd Int. Workshop on Rules in Database Systems, Athens, Greece, pp. 3–17.
Gatziu, S. and Dittrich, K.R. (1992). “SAMOS: an Active Object-Oriented Database System”, IEEE Bulletin of the TC on Data Engineering: Special Issue on Active Databases, Vol. 15, pp. 1–4
Gatziu, S. and Dittrich K.R. (1993). Events in an Active Object-Oriented Database System. In (Paton, et al. 1993a), pp. 23–39.
Gehani, N.H. and Jagadish, H.V. (1991). “Ode as an Active Database: Constraints and Triggers”, in Proc 17th VLDB Conf., Barcelona, Spain, pp. 327–336.
Gehani, N.H., Jagadish, H.V. and Schmueli, O. (1992). “Composite Event Specification in Active Databases: Model & Implementation”, in Proc. 18th VLDB Conf., Vancouver, Canada, pp. 327–338.
Paton, N.W. and Williams, M.H. (Eds.) (1993a). Rules in Database Systems, Edinburgh 1993. Springer-Verlag, Heidelberg, Germany.
Paton, N.W., Diaz, O., Williams, M.H., Campin, J., Dinn, A. and Jaime, A. (1993). Dimensions of active behaviour. In (Paton, et al. 1993a), pp. 40–57.
Paton, N.W., Campin, J., Fernandes, A.A.A. and Williams, M.H. (1995). “Formal Specification of Active Database Functionality: A Survey”, in Proc. 2nd Int. Workshop on Rules in Database Systems, Athens, Greece, pp. 21–35.
Paulson, L.C. (1987). Logic and computation: Interactive proof with Cambridge LCF, Cambridge University Press, Cambridge, U.K..
Peterson, J.L. (1977). Petri Nets, ACM Computing Surveys, Vol. 9–3, pp. 223–252.
Peyton-Jones, S.L. (1987). The implementation of functional programming languages, Prentice-Hall, New York, NY.
Poulovassilis, A. and Small, C. (1991). “A functional approach to deductive databases”, in Proc. 17th VLDB Conf., Barcelona, Spain, pp. 491–500.
Poulovassilis, A. and Small, C. (1994). “Investigation of algebraic query optimisation in database programming languages”, in Proc. 20th VLDB Conf., Santiago, Chile, pp. 415–426.
Poulovassilis, A. and Small, C. (1996). “Algebraic query optimisation in database programming languages”, VLDB Journal, Vol. 5–2, pp. 119–132.
Reddi, S. (1993). “Integrity enforcement in the functional database language PFL”, in Proc. 11th British National Conf. on Databases, Keele, U.K., pp. 238–257.
Reddi, S. Poulovassilis, A. and Small, C. (1995). “Extending a Functional DBPL with ECA-rules”, in Proc. 2nd Int. Workshop on Rules in Database Systems, Athens, Greece, pp. 101–115.
Simon, E., Kiernan, J. and de Maindreville, C. (1992). “Implementing high level active rules on top of a relational DBMS”, in Proc. 18th VLDB Conference, Vancouver, Canada, pp. 315–326.
Small, C. and Poulovassilis, A. (1991). “An overview of PFL”, in Proc. DBPL-3, Nauplion, Greece, pp. 96–110.
Sutton, D. and Small, C. (1995). “Extending functional database languages to update completeness”, in Proc. 13th British National Conf. on Databases, Manchester, U.K., pp. 47–63.
Widom, J., Cochrane, R.J. and Lindsay, B.G. (1991). “Implementing set-oriented production rules as an extension to Starburst”, in Proc. 17th VLDB Conf., Barcelona, Spain, pp. 275–285.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Poulovassilis, A., Reddi, S. & Small, C. A formal semantics for an active functional DBPL. J Intell Inf Syst 7, 151–172 (1996). https://doi.org/10.1007/BF00127780
Issue Date:
DOI: https://doi.org/10.1007/BF00127780