The following keywords have been assigned to this publication so far. If you have logged in,
you can tag this publication with additional keywords.
If you log in you can tag this publication with additional keywords
A publication can refer to another publication (outgoing references) or it can be referred to by other
publications (incoming references).
If you log in you can add references to other publications
A publication can be assigned to a conference, a journal or a school.
With sinking storage costs, it becomes more and more feasible, and popular, to
retain past versions of documents and data. While undoing changes is worthy,
this becomes even more valuable if the data is queryable. Nowadays, there are
two widespread version control paradigms: document versioning (SVN, git, etc.)
and versioned databases. The former handles any kind of document, even binary,
but only sees lines of text, so that the query capability is limited. The latter
provide fine-grained temporal query capabilities on highly structured data - but
storing everything in a relational database is not desirable. The goal of this
paper is to provide a unified framework for efficiently versioning, querying and
updating not only data and documents, but also, inbetween, any kind of
semi-structured information, like XML. We start with the XQuery programming
language and meticulously extend its data model, its syntax and its processing
model to make it seamlessly time-aware. We provide data structures and
algorithms for the efficient implementation of such a versioning system.
Finally, we show that there is no significant performance loss for traditional
queries when enriching an existing engine with versioning capabilities.
© 2014 ETH Zurich