This package implements a relational database. It is stored in-core, so persistence must be supplied with some external mechanism; may I suggest {@link Icee}?

The database is very tightly bound to Java types. It started as a simple way to index ``back pointers'' rather than storing lists of back pointers explicitly in objects. The more I added relational-like features to it, though, the more I realized that relational semantics are enough significantly different than object semantics that the two do not blend as well as one would hope.

The database supports indexing for fast lookups.