Towards Formally Templated Relational Database Representations in Z

  • Nicolas Wu
  • Andrew Simpson
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5977)


Many authors have drawn parallels between the relational model of data and the formal description technique Z, yet none of these contributions have managed to be both close to the relational model in terms of providing a practical means of database design and fully formal in terms of providing an appropriate metamodel. We compare these various formalisms, and suggest how the use of the formal template approach of Amálio et al might help to overcome some of the issues faced. We demonstrate the application of this work via a short case study, and suggest further enhancements to the template language.


Relational Database Relational Model Database Schema Database Design Relation Extension 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Codd, E.F.: A relational model of data for large shared data banks. Communications of the ACM 13(6), 377–387 (1970)zbMATHCrossRefGoogle Scholar
  2. 2.
    Spivey, J.M.: The Z notation: A Reference Manual. Prentice-Hall, Englewood Cliffs (1992)Google Scholar
  3. 3.
    van Diepen, M.J., van Hee, K.M.: A Formal Semantics for Z and the Link between Z and the Relational Algebra. In: Langmaack, H., Hoare, C.A.R., Bjorner, D. (eds.) VDM 1990. LNCS, vol. 428, pp. 526–551. Springer, Heidelberg (1990)Google Scholar
  4. 4.
    Edmond, D.: Information Modeling: Specification and Implementation. Prentice-Hall, Englewood Cliffs (1992)Google Scholar
  5. 5.
    Davies, J.W.M., Simpson, A.C., Martin, A.P.: Teaching Formal Methods in Context. In: Dean, C.N., Boute, R.T. (eds.) TFM 2004. LNCS, vol. 3294, pp. 185–202. Springer, Heidelberg (2004)Google Scholar
  6. 6.
    Schewe, K.D., Schmidt, J.W., Wetzel, I.: Specification and refinement in an integrated database application environment. In: Prehn, S., Toetenel, H. (eds.) VDM 1991. LNCS, vol. 551, pp. 496–510. Springer, Heidelberg (1991)Google Scholar
  7. 7.
    Hayes, I.: VDM and Z: A comparative case study. Formal Aspects of Computing 4(1), 76–99 (1992)zbMATHCrossRefGoogle Scholar
  8. 8.
    Mammar, A., Laleau, R.: Design of an automatic prover dedicated to the refinement of database applications. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 834–854. Springer, Heidelberg (2003)Google Scholar
  9. 9.
    Mammar, A., Laleau, R.: A formal approach based on UML and B for the specification and development of database applications. Automated Software Engineering 13(4), 497–528 (2006)CrossRefGoogle Scholar
  10. 10.
    Laleau, R., Polack, F.: Specification of integrity-preserving operations in information systems by using a formal UML-based language. Information & Software Technology 43(12), 693–704 (2001)CrossRefGoogle Scholar
  11. 11.
    Laleau, R., Polack, F.: Using formal metamodels to check consistency of functional views in information systems specification. Information & Software Technology 50(7-8), 797–814 (2008)CrossRefGoogle Scholar
  12. 12.
    Davies, J.W.M., Welch, J., Cavarra, A.L., Crichton, E.: On the Generation of Object Databases using Booster. In: Proceedings of the 11th IEEE Conference on the Engineering of Complex Computer Systems (2006)Google Scholar
  13. 13.
    Gray, D.: The Formal Specification of a Small Bookshop Information System. IEEE Transactions on Software Engineering 14(2), 263–272 (1988)CrossRefGoogle Scholar
  14. 14.
    Amálio, N., Stepney, S., Polack, F.: Formal Proof from UML Models. In: Davies, J., Schulte, W., Barnett, M. (eds.) ICFEM 2004. LNCS, vol. 3308, pp. 418–433. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  15. 15.
    Sufrin, B.A., Morgan, C.C., Sørensen, I.H., Hayes, I.J.: Notes for a Z handbook. Programming Research Group, Oxford University Computing Laboratory (1984)Google Scholar
  16. 16.
    Hayes, I.J., Jones, C.B., Nicholls, J.E.: Understanding the differences between VDM and Z. ACM SIGSOFT Software Engineering Notes 19(3), 75–81 (1994)CrossRefGoogle Scholar
  17. 17.
    Edmond, D.: Refining Database Systems. In: Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1995. LNCS, vol. 967, pp. 25–44. Springer, Heidelberg (1995)Google Scholar
  18. 18.
    de Barros, R.S.M.: Deriving Relational Database Programs from Formal Specifications. In: Naftalin, M., Bertrán, M., Denvir, T. (eds.) FME 1994. LNCS, vol. 873, p. 703. Springer, Heidelberg (1994)Google Scholar
  19. 19.
    de Barros, R.S.M.: On the Formal Specification and Derivation of Relational Database Applications. PhD thesis, Dept. of Computing Science, University of Glasgow (1994)Google Scholar
  20. 20.
    Martin, A.P., Simpson, A.C.: Generalising the Z schema calculus: database schemas and beyond. In: Proceedings of APSEC 2003, pp. 28–37 (2003)Google Scholar
  21. 21.
    Amálio, N., Stepney, S., Polack, F.: A Formal Template Language Enabling Metaproof. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 252–267. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  22. 22.
    Hall, A.: Specifying and Interpreting Class Hierarchies in Z. In: Proceedings of the 1994 Z User Workshop, pp. 120–138 (1994)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Nicolas Wu
    • 1
  • Andrew Simpson
    • 1
  1. 1.Oxford University Computing LaboratoryOxfordUK

Personalised recommendations