skip to main content
10.1145/872757.872807acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
Article

Formal semantics and analysis of object queries

Published:09 June 2003Publication History

ABSTRACT

Modern database systems provide not only powerful data models but also complex query languages supporting powerful features such as the ability to create new database objects and invocation of arbitrary methods (possibly written in a third-party programming language).In this sense query languages have evolved into powerful programming languages. Surprisingly little work exists utilizing techniques from programming language research to specify and analyse these query languages. This paper provides a formal, high-level operational semantics for a complex-value OQL-like query language that can create fresh database objects, and invoke external methods. We define a type system for our query language and prove an important soundness property.We define a simple effect typing discipline to delimit the computational effects within our queries. We prove that this effect system is correct and show how it can be used to detect cases of non-determinism and to define correct query optimizations.

References

  1. S. Abiteboul and P. Kanellakis. Object identity as a query language primitive. Journal of the ACM, 45(5):798--842, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. S. Alagić. Type-checking OQL queries in the ODMG type systems. ACM TODS, 24(3):319--360, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. M. Andries, L. Cabibbo, J. Paredaens, and J. Van den Bussche. Applying an update method to a set of receivers. ACM TODS, 26(1):1--40, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. M. Carey and D. DeWitt. Of objects and databases: A decade of turmoil. In Proceedings of VLDB, 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. S. Cluet and G. Moerkotte. Nested queries in object bases. In Proceedings of Workshop on Database Programming Languages, pages 226--242, 1993.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. C.J. Date. Some principles of good language design. ACM SIGMOD Record, 14(3):1--7, 1984.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. J. Van den Bussche and D. Van Gucht. A semideterministic approach to object creation and nondeterminism in database queries. Journal of Computer and System Sciences, 54(1):34--47, 1997.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. R.G.G. Cattell et al. The Object Data Standard: ODMG 3.0. Morgan Kaufmann, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. L. Fegaras. Optimizing queries with object updates. Journal of Intelligent Information Systems, 12(2--3):219--242, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. L. Fegaras and D. Maier. Optimizing object queries using an effective calculus. ACM TODS, 25(4):457--516, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. D. Gifford and J. Lucassen. Integrating functional and imperative programming. In ACM Conference on Lisp and Functional Programming, 1986.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. A. Gordon, P. Hankin, and S. Lassen. Compilation and equivalence of imperative objects. Journal of Functional Programming, 9(4):373--426, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. A. Gordon and D. Syme. Typing a multilanguage intermediate code. In Proceedings of POPL, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. A. Greenhouse and J. Boyland. An object-oriented effects system. In Proceedings of ECOOP, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. J. Hellerstein. Optimization techniques for queries with expensive methods. ACM TODS, 23(2):113--157, 1998.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. A. Igarashi, B.C. Pierce, and P. Wadler. Featherweight Java: A minimal core calculus for Java and GJ. ACM Transactions on Programming Languages and Systems, 23(3):396--450, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. H. Liefke and S. Davidson. Updates and nondeterminism in object-oriented databases. Technical Report MS-CIS-99-11, University of Pennsylvania, 1999.]]Google ScholarGoogle Scholar
  18. R. Milner, M. Tofte, R. Harper, and D. MacQueen. The Definition of Standard ML. MIT Press, 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. G. Mitchell, S. Zdonik, and U. Dayal. Object-oriented query optimization: what's the problem? Technical Report CS-91-41, Brown University, 1991.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. T. Nipkow and D. von Oheimb. Javalight is type-safe---definitely. In Proceedings of POPL, 1998.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. H. Riedell and M.H. Scholl. The CROQUE model: Formalization of the data model and the query language. Technical Report 23, University of Konstänz, 1996.]]Google ScholarGoogle Scholar
  22. P. Seshadri and M. Paskin. PREDATOR: An OR-DBMS with enhanced data types. In Proceedings of ACM SIGMOD, pages 568--571, 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. A. Trigoni and G.M. Bierman. Inferring the principal type and schema requirements of an OQL query. In Proceedings of BNCOD, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. G. Winskel. The Formal Semantics of Programming Languages: An Introduction. MIT Press, 1993.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. A. Wright and M. Felleisen. A syntactic approach to type soundness. Information and Computation, 115(1):38--94, 1994.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. XQuery 1.0 formal semantics. Working draft June 2001.]]Google ScholarGoogle Scholar

Index Terms

  1. Formal semantics and analysis of object queries

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              SIGMOD '03: Proceedings of the 2003 ACM SIGMOD international conference on Management of data
              June 2003
              702 pages
              ISBN:158113634X
              DOI:10.1145/872757

              Copyright © 2003 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 9 June 2003

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • Article

              Acceptance Rates

              SIGMOD '03 Paper Acceptance Rate53of342submissions,15%Overall Acceptance Rate785of4,003submissions,20%

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader