Published July 28, 2006 | Version v1
Journal article Open

Type-safe Versioned Object Query Language

  • 1. Universidade Federal do Rio Grande do Sul, Porto Alegre, Brazil
  • 2. Universidade Federal do Rio Grande do Sul, Brazil
  • 3. University of California Riverside (UCR), United States of America

Description

The concept of versioning was initially proposed for controlling design evolution on computer aided design and software engineering. On the context of database systems, versioning is applied for managing the evolution of different elements of the data. Modern database systems provide not only powerful data models but also complex query languages that have evolved to include several features from complex programming languages. While most related work focuses on different aspects of the concepts, designing models, and processing of versions efficiently, there is yet to be a formal definition of a query language for database systems with versions control. In this work we propose a query language, named Versioned Object Query Language (VOQL), that extends ODMG Object Query Language (OQL) with new features to recover object versions. We provide a precise definition of VOQL through a type system and we prove it safe in relation to a small-step operational semantics. Finally, we validate the proposed definition by implementing an interpreter for VOQL.

Files

jucs_article_28642.pdf

Files (774.4 kB)

Name Size Download all
md5:f5a064f4ea3a35610e7d7025f06fa8eb
774.4 kB Preview Download