Formal Methods in System Design

, Volume 37, Issue 1, pp 1–60 | Cite as

Theorem prover approach to semistructured data design

  • Scott Uk-Jin Lee
  • Gillian Dobbie
  • Jing Sun
  • Lindsay Groves


The wide adoption of semistructured data has created a growing need for effective ways to ensure the correctness of its organization. One effective way to achieve this goal is through formal specification and automated verification. This paper presents a theorem proving approach towards verifying that a particular design or organization of semistructured data is correct. We formally specify the semantics of the Object Relationship Attribute data model for Semistructured Data (ORA-SS) modeling notation and its correctness criteria for semistructured data normalization using the Prototype Verification System (PVS). The result is that effective verification on semistructured data models and their normalization can be carried out using the PVS theorem prover.


Formal specification Automated verification Semistructured data modeling Schema normalization Theorem proving ORA-SS PVS 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abiteboul S, Buneman P, Suciu D (1999) Data on the Web: from relations to semistructured data and XML. Morgan Kaufmann, San Mateo Google Scholar
  2. 2.
    Anutariya C, Wuwongse V, Nantajeewarawat E, Akama K (2000) Towards a foundation for XML document databases. In: EC-Web’00: proceedings of the 1st international conference on electronic commerce and Web technologies, London, UK. Springer, Berlin, pp 324–333 Google Scholar
  3. 3.
    Arenas M, Libkin L (2004) A normal form for XML documents. ACM Trans Database Syst 29(1):195–232 CrossRefGoogle Scholar
  4. 4.
    Baumgartner R, Frölich O, Gottlob G, Herzog M, Lehmann P (2005) Integrating semi-structured data into business applications: a web intelligence example. In: WM’05: proceedings of the 3rd biennial conference on professional knowledge management, Kaiserslautern, Germany. Springer, Berlin, pp 469–482 Google Scholar
  5. 5.
    Bidoit N, Cerrito S, Thion V (2004) A first step towards modeling semistructured data in hybrid multimodal logic. J Appl Non-Class Log 14(4):447–475 zbMATHCrossRefGoogle Scholar
  6. 6.
    Bowen J, Gordon M (1995) A shallow embedding of Z in HOL. Inf Softw Technol 37(5–6):269–276 CrossRefGoogle Scholar
  7. 7.
    Bray T, Paoli J, Sperberg-McQueen CM, Maler E, Yergeau F (2006) Extensible markup language (XML) 1.0.
  8. 8.
    Buneman P (1997) Semistructured data. In: PODS’97: proceedings of the 16h ACM SIGACT-SIGMOD-SIGART symposium on principles of database systems, Tucson, Arizona, USA. ACM, New York, pp 117–121 CrossRefGoogle Scholar
  9. 9.
    Calvanese D, De Giacomo G, Lenzerini M (1999) Representing and reasoning on XML documents: a description logic approach. J Log Comput 9(3):295–318 zbMATHGoogle Scholar
  10. 10.
    Chawathe SS, Garcia-Molina H, Hammer J, Ireland K, Papakonstantinou Y, Ullman JD, Widom J (1994) The TSIMMIS project: integration of heterogeneous information sources. In: IPSJ’94: proceedings of the 10th conference on information processing society of Japan, Tokyo, Japan, pp 7–18 Google Scholar
  11. 11.
    Chen PP (1976) The entity-relationship model—toward a unified view of data. ACM Trans Database Syst 1(1):9–36 CrossRefGoogle Scholar
  12. 12.
    Chen YB, Ling TW, Lee M-L (2002) Designing valid XML views. In: ER’02: proceedings of the 21th international conference on conceptual modeling, Tampere, Finland. Springer, Berlin, pp 463–478 Google Scholar
  13. 13.
    Choppella V, Sengupta A, Robertson EL, Johnson SD (2007) Preliminary explorations in specifying and validating entity-relationship models in pvs. In: AFM’07: proceedings of the second workshop on automated formal methods. ACM, New York, pp 1–10 CrossRefGoogle Scholar
  14. 14.
    Conforti G, Ghelli G (2003) Spatial tree logics to reason about semistructured data. In: SEBD’03: proceedings of the 11th Italian symposium on advanced database systems, Cetraro, Italy. Rubettino Editore, Soveria Mannelli, pp 37–48 Google Scholar
  15. 15.
    Deutsch A, Fernández MF, Suciu D (1999) Storing semistructured data with STORED. In: SIGMOD’99: proceedings of ACM SIGMOD international conference on management of data, Philadelphia, Pennsylvania, USA. ACM, New York, pp 431–442 Google Scholar
  16. 16.
    Dietrich SW, Urban SD (2004) An advanced course in database systems: beyond relational databases. Prentice Hall, New York Google Scholar
  17. 17.
    Dobbie G, Wu X, Ling TW, Lee ML (2001) ORA-SS: object-relationship-attribute model for semistructured data. Technical Report TR 21/00, School of Computing, National University of Singapore, Singapore Google Scholar
  18. 18.
    Du W, Lee M-L, Ling TW (2001) XML structures for relational data. In: WISE’01: proceedings of the 2nd international conference on web information systems engineering, Kyoto, Japan. IEEE Computer Society, Los Alamitos, pp 151–160 Google Scholar
  19. 19.
    Elmasri R, Navathe SB (2004) Fundamentals of database systems, 4th edn. Addison-Wesley, Reading zbMATHGoogle Scholar
  20. 20.
    Embley DW, Mok WY (2001) Developing XML documents with guaranteed “Good” properties. In: ER’01: proceedings of the 20th international conference on conceptual modeling, Yokohama, Japan. Springer, Berlin, pp 426–441 Google Scholar
  21. 21.
    Harold ER, Means WS (2004) XML in a nutshell, 3rd edn. O’Reilly, Sebastopol Google Scholar
  22. 22.
    Hoffer JA, Prescott MB, Topi H (2008) Modern database management, 9th edn. Prentice Hall, New York, Google Scholar
  23. 23.
    Hunter D, Rafter J, Fawcett J, van der Vlist E, Ayers D, Duckett J, Watt A, McKinnon L (2007) Beginning XML, 4th edn. Wrox Press Ltd., Birmingham Google Scholar
  24. 24.
    Kifer M, Bernstein A, Lewis PM (2006) Database systems: an application-oriented approach, 2nd edn. Addison-Wesley, Reading Google Scholar
  25. 25.
    Lawford M, Wu H (2000) Verification of real-time control software using PVS. In: Proceedings of the 2000 conference on information sciences and systems. Princeton University Press, Princeton, pp TP1–13–TP1–17 Google Scholar
  26. 26.
    Lee SU-J (2008) PVS definitions of ORA-SS semantics & PVS definitions of correctness criteria for semistructured data normalization. Technical Report UoA-SE-2008-3, Department of Computer Science, The University of Auckland, Auckland, New Zealand. Available at
  27. 27.
    Lee SU-J, Dobbie G, Sun J, Groves L (2009) Formal verification of semistructured data models in PVS. J Univers Comput Sci 15(1):241–272 Google Scholar
  28. 28.
    Ling TW, Lee ML, Dobbie G (2001) Applications of ORA-SS: an object-relationship-attribute data model for semistructured data. In: IIWAS’01: proceedings of the 3rd international conference on information integration and web-based applications and services, Linz, Austria, pp 17–28 Google Scholar
  29. 29.
    Ling TW, Lee ML, Dobbie G (2005) Semistructured database design. Springer, New York zbMATHGoogle Scholar
  30. 30.
    Ma Z (2005) Fuzzy database modeling with XML. The Kluwer international series on advances in database systems. Springer, New York zbMATHGoogle Scholar
  31. 31.
    McHugh J, Abiteboul S, Goldman R, Quass D, Widom J (1997) Lore: a database management system for semistructured data. SIGMOD Rec 26(3):54–66 CrossRefGoogle Scholar
  32. 32.
    Mo Y, Ling TW (2002) Storing and maintaining semistructured data efficiently in an object-relational database. In: WISE’02: proceedings of the 3nd international conference on web information systems engineering. IEEE Computer Society, Los Alamitos, pp 247–256 Google Scholar
  33. 33.
    Ni W, Ling TW (2005) Translate graphical XML query language to SQLX. In: DASFAA’05: proceedings of the 10th international conference on database systems for advanced applications, Beijing, China. Springer, Berlin, pp 907–913 Google Scholar
  34. 34.
    Owre S, Shankar N (1993) Abstract datatypes in PVS. Technical Report SRI-CSL-93-9R, Computer Science Laboratory, SRI International, Menlo Park, CA, USA, December 1993. Extensively revised June 1997. Also available as NASA Contractor Report CR-97-206264 Google Scholar
  35. 35.
    Owre S, Shankar N (1997) The formal semantics of PVS. Technical Report SRI-CSL-97-2, Computer Science Laboratory, SRI International, Menlo Park, CA, USA, August 1997 Google Scholar
  36. 36.
    Owre S, Rushby JM, Shankar N (1992) PVS: a prototype verification system. In: CADE’92: proceedings of the 11th international conference on automated deduction, Saratoga Springs, NY, USA. Springer, Berlin, pp 748–752 Google Scholar
  37. 37.
    Owre S, Rushby J, Shankar N, von Henke F (1995) Formal verification for fault-tolerant architectures: prolegomena to the design of PVS. IEEE Trans Softw Eng 21(2):107–125 CrossRefGoogle Scholar
  38. 38.
    Owre S, Rushby J, Shankar N, Stringer-Calvert D (1998) PVS: an experience report. In: FM-trends’98: proceedings of international workshop on current trends in applied formal method, Boppard, Germany. Springer, Berlin, pp 338–345 Google Scholar
  39. 39.
    Owre S, Shankar N, Rushby JM, Stringer-Calvert DWJ (1999) PVS language reference. Computer Science Laboratory, SRI International, Menlo Park, CA,USA, September 1999 Google Scholar
  40. 40.
    Owre S, Shankar N, Rushby JM, Stringer-Calvert DWJ (1999) PVS system guide. Computer Science Laboratory, SRI International, Menlo Park, CA,USA, September 1999 Google Scholar
  41. 41.
    Rushby J (2000) Theorem proving for verification. In: MoVEP’00: modelling and verification of parallel processes, Nantes, France. Springer, Berlin, pp 39–57 Google Scholar
  42. 42.
    Rushby J, Stringer-Calvert DWJ (1995) A less elementary tutorial for the PVS specification and verification system. Technical Report SRI-CSL-95-10, Computer Science Laboratory, SRI International, Menlo Park, CA, USA, June 1995 Google Scholar
  43. 43.
    Shankar N (1993) Verification of real-time systems using PVS. In: CAV’93: proceedings of the 5th international conference on computer aided verification, Elounda, Greece. Springer, Berlin, pp 280–291 Google Scholar
  44. 44.
    Shankar N, Owre S, Rushby JM, Stringer-Calvert DWJ (1999) PVS prover guide. Computer Science Laboratory, SRI International, Menlo Park, CA, USA, September 1999 Google Scholar
  45. 45.
    Shih TK (2002) Distributed multimedia databases: techniques & applications. Idea Group Publishing, Hershey Google Scholar
  46. 46.
    Simon H (2000) XML: strategic analysis of XML for web application development. Computer Technology Research Corporation, Charleston Google Scholar
  47. 47.
    Srivas M, RueßH, Cyrluk D (1997) Hardware verification using PVS. In: Kropf T (ed) Formal hardware verification: methods and systems in comparison. Lecture notes in computer science, vol 1287. Springer, Berlin, pp 156–205 Google Scholar
  48. 48.
    Sun J, Dong JS, Liu J, Wang HH (2002) A formal object approach to the design of ZML. Ann Softw Eng 13(1–4):329–356 zbMATHCrossRefGoogle Scholar
  49. 49.
    Thuraisingham BM (2002) XML databases and the semantic web. CRC Press, Boca Raton CrossRefGoogle Scholar
  50. 50.
    Vitt J, Hooman J (1996) Assertional specification and verification using PVS of the steam boiler control system. In: Formal methods for industrial applications: specifying and programming the steam boiler control. Springer, Berlin, pp 453–472 Google Scholar
  51. 51.
    Wu X, Ling TW, Lee ML, Dobbie G (2001) Designing semistructured databases using the ORA-SS model. In: WISE’01: proceedings of the 2nd international conference on web information systems engineering, Kyoto, Japan. IEEE Computer Society, Los Alamitos, pp 171–180 Google Scholar
  52. 52.
    Wu X, Ling TW, Lee ML, Lee SY, Dobbie G (2001) NF-SS: a normal form for semistructured schemata. In: DASWIS’01: proceedings of international workshop on data semantics in web information systems, Yokohama, Japan. Springer, Berlin, pp 292–305 Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2010

Authors and Affiliations

  • Scott Uk-Jin Lee
    • 1
  • Gillian Dobbie
    • 2
  • Jing Sun
    • 2
  • Lindsay Groves
    • 3
  1. 1.CEA, LISTLaboratory of Model-driven Engineering for Embedded SystemsGif sur YvetteFrance
  2. 2.Department of Computer ScienceThe University of AucklandAucklandNew Zealand
  3. 3.School of Engineering and Computer ScienceVictoria University of WellingtonWellingtonNew Zealand

Personalised recommendations