Carlos Coutinho jbinder Rudolf Mayer

Preservation Identifier


The Preservation Identifier (PI) is used to provide alternative software packages, tools, or formats for files in TIMBUS context models. The artifacts for which replacements should be determined are specified in a risk file. Using the context model and the risk file the PI creates alternative context models, where one artifact is replaced by a suitable replacement in each alternative model.



The main component is a web service which provides a SOAP interface that returns alternative models when provided with a context model and a risk file. An instance is hosted on the Testbed. For the server there are two clients are available, which are described in the following.


For accessing the server a web client is available (Web Client). An instance is hosted on Testbed, where also test data is available. The second client for the server is CLI-based (CLI Client). Both show the usage of the SOAP interface that the server provides.


The server uses a knowledgebase to determine suitable alternatives (KB Library). To explore the capabilities of the knowledgebase there is a web interface available. An instance thereof is available on the Testbed.
The knowledgebase is populated by the KB Generator modules (KB Generator - Linux Packages and KB Generator - Tools & Formats). The data is imported from Freebase, Pronom, as well as from Linux package repositories.


The modules are supported by the OWL API Facade, which provides a layer of abstraction over the OWL API and Jena. It is used for interacting with the knowledgebase and the context models. The Parent module aggregates all modules using git submodules.


For information about how to run or compile the individual modules consult the corresponding readmes.

The Parent project can be used to checkout all modules:

git clone
git submodule init
git submodule update

This subproject is being administered by: