Nathan

Uniform access to hierachically ordered data

1. Basic Motivation

The basic motivation of the Nathan project is the problem of all the data that a average computer user accumulates over the years. Downloaded articles from online news media, computer generated images from a raytracing competition, technical papers in PDF, etc lie more or less without order on the hard disk. Though they are digitally preserved the accessebility erodes with the users memory of their location and even existence. New stuff piles up and the possibly very interesting articles, et al. practically vanish from the users access.

Another problem is that especially with HTML documents some data is taken out of context when stored locally. As a consequence some HTML pages are virtually unviewable when later reopened with a browser. This is another reason why local documents tend to slip from the users grip. Such documents should be transformed into a readable versions without losing content data.

When accessing data via a common file browser it only displays the existence of files and some of their properties. To actually view a document, the user usually has to invoke a separate program that allows reading or editing. This introduces a certain break in the perception of different data types and generally slows down the access of data. Even more problematic in most cases opening a different file of the same type as an already opened one, invokes another instance of the viewing application to be created. Soon the screen is cluttered with windows which hinders the user more than helps him/her.

2. Solution

So the solution is to provide a framework where the user can store his/her data in a repository. This repository is accessed by a graphic tool which gives the user a view of his/her data that is independent from the limitations of the file system. The software supports the creation and maintanence of a taxonomy and allows cross references and notes for the documents. During the import process of a document it's structure can be transformed so that is viewable without problems. Viewers and editors for the different filetypes can be plugged into the system to give the user direct access to his/her data.

3. Technical Description

The Nathan projects aimes to implement the system described above. It will be implemented in 100% Java and therefore should be running on most modern operating systems. All sourcecode is released under the GPL. Some libraries already released under the GPL on www.winterfish.de may be used in the Nathan project (especially jUtil).

Nathan consists of several subprojects:

Neon
A framework for editing hierarchical data. This already includes a generic gui. Applications like file managers or email clients could be derived from this framework.

NeonX
This project contains several different extensions of the Neon framework which can be plugged into it. It includes some basic data types and their vewers.

jExplorer
This is a testing application for the Neon framework. It implements a simple file manager similar to Konquerer or the Windows Explorer.

Nathan
The main project which uses the Neon framework and adds document management and import process functionality to it.

NathanX
The different transformers for certain file types and other extensions of Nathan are bundled in this project.