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.