Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Sirix - Beyond Versioning of Persistent Trees
Java Other
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Sirix - a versioned, treebased storage system

The architecture supports the well known ACID-properties (durability currently isn't guaranted if the transaction crashes) and Snapshot Isolation through MVCC which in turn supports N-reading transactions in parallel to currently 1-write transaction. Supporting N-write transactions is planned as well as the current work on indexes to support a binding to Brackit which in turn supports XQuery/XQuery Update Facility. The COW-approach used for providing Snapshot Isolation through MVCC is especially well suited for flash-disks. We support several well known versioning strategies.

The GUI provides interactive visualizations of the differences between either 2 or more versions of a resource in Sirix. Please have a look into my master-thesis for screenshots.

Some examples of the Java-API are explained in the wiki. Stay tuned for a maven bundle with examples and more elaborate examples.

Sirix will be nothing without interested developers (contributors). Any kind of contribution is highly welcome. Once a few (regular) contributors are found, we will create an organization for Sirix on github.

Note that it is based on Treetank ( /

Build Status

Maven artifacts

Maven artifacts are deployed to the OSS nexus repository. Currently the following artifacts are available:

Core project:


JAX-RX interface (RESTful API):


Saxon interface (use Saxon to query data):


Other modules are currently not available (namely the GUI, the distributed package) due to dependencies to which isn't available from a maven repository and other dependencies.


Any questions or even consider to contribute or use Sirix? Use to ask questions. Any kind of question, may it be a API-question or enhancement proposal, questions regarding use-cases are welcome... Don't hesitate to ask questions or make suggestions for improvements. At the moment also API-related suggestions and critics are of utmost importance.


  • README: this readme file
  • LICENSE: license file
  • bundles all available bundles
  • pom.xml: Simple pom (yes we do use Maven)

Further information

As Sirix is based on Treetank current documentation thus is currently only available from this location.

The documentation so far is accessible under (pointing to

The framework was presented at various conferences and acted as base for multiple publications and reports:

  • A legal and technical perspective on secure cloud Storage; DFN Forum'12: PDF
  • A Secure Cloud Gateway based upon XML and Web Services; ECOWS'11, PhD Symposium: PDF
  • Treetank, Designing a Versioned XML Storage; XMLPrague'11: PDF
  • Rolling Boles, Optimal XML Structure Integrity for Updating Operations; WWW'11, Poster: PDF
  • Hecate, Managing Authorization with RESTful XML; WS-REST'11: PDF
  • Integrity Assurance for RESTful XML; WISM'10: PDF
  • JAX-RX - Unified REST Access to XML Resources; TechReport'10: PDF
  • Distributing XML with focus on parallel evaluation; DBISP2P'08: PDF


This work is released in the public domain under the BSD 3-clause license

Involved People

Sirix is maintained by:

  • Johannes Lichtenberger (Sirix Core & Project Lead based on Treetank Core)
Something went wrong with that request. Please try again.