Skip to main content

Verification of Hibernate Query Language by Abstract Interpretation

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNIP,volume 9243))

Abstract

In this paper, we propose an abstract interpretation framework of Hibernate Query Language (HQL), aiming at automatically and formally verifying enterprise policy specifications on persistent objects which have permanent representation in the underlying database. To this aim, we extend the abstract interpretation approach for object-oriented languages, combined with an abstract semantics of structured query languages.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    Observe at program points 13, 14–16, 17–18 that the basic differences between HQL and SQL.

  2. 2.

    Observe that, for the sake of simplicity, we do not consider here the method REFRESH() which synchronize the in-memory objects state with that of the underlying database.

  3. 3.

    The apex \(\sharp \) represents an abstract version of the elements in the abstract domain.

References

  1. Bauer, C., King, G.: Hibernate in Action. Manning Publications Co., Greenwich (2004)

    Google Scholar 

  2. Bauer, C., King, G.: Java Persistence with Hibernate. Manning Publications Co., Greenwhich (2006)

    Google Scholar 

  3. Bouaziz, M., Logozzo, F., Fähndrich, M.: Inference of necessary field conditions with abstract interpretation. In: Jhala, R., Igarashi, A. (eds.) APLAS 2012. LNCS, vol. 7705, pp. 173–189. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  4. Chen, L., Miné, A., Cousot, P.: A sound floating-point polyhedra abstract domain. In: Ramalingam, G. (ed.) APLAS 2008. LNCS, vol. 5356, pp. 3–18. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  5. Cortesi, A., Costantini, G., Ferrara, P.: A survey on product operators in abstract interpretation. EPTCS 129, 325–336 (2013)

    Article  Google Scholar 

  6. Cortesi, A., Halder, R.: Abstract interpretation of recursive queries. In: Hota, C., Srimani, P.K. (eds.) ICDCIT 2013. LNCS, vol. 7753, pp. 157–170. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  7. Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proceedings of the POPL 1977. pp. 238–252. ACM Press, Los Angeles, CA, USA (1977)

    Google Scholar 

  8. Elliott, J., O’Brien, T., Fowler, R.: Harnessing Hibernate, 1st edn. O’Reilly Media, Sebastopol (2008)

    Google Scholar 

  9. Halder, R., Cortesi, A.: Abstract interpretation of database query languages. Comput. Lang. Syst. & Struct. 38, 123–157 (2012)

    MATH  Google Scholar 

  10. Logozzo, F.: Class invariants as abstract interpretation of trace semantics. Comput. Lang. Syst. & Struct. 35, 100–142 (2009)

    Google Scholar 

  11. Logozzo, F.: Practical verification for the working programmer with codecontracts and abstract interpretation. In: Jhala, R., Schmidt, D. (eds.) VMCAI 2011. LNCS, vol. 6538, pp. 19–22. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  12. O’Neil, E.J.: Object/relational mapping 2008: hibernate and the entity data model (edm). In: Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data (SIGMOD 2008). pp. 1351–1356. ACM, New York, USA (2008)

    Google Scholar 

  13. Wiśniewski, P., Stencel, K.: Universal query language for unified state model. Fundam. Inform. 129(1–2), 177–192 (2014)

    MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Raju Halder .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Jana, A., Halder, R., Cortesi, A. (2015). Verification of Hibernate Query Language by Abstract Interpretation. In: He, X., et al. Intelligence Science and Big Data Engineering. Big Data and Machine Learning Techniques. IScIDE 2015. Lecture Notes in Computer Science(), vol 9243. Springer, Cham. https://doi.org/10.1007/978-3-319-23862-3_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-23862-3_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-23861-6

  • Online ISBN: 978-3-319-23862-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics