To support collections, the data store must subclass the following classes.
Abstract superclass of all collection types.
A hash-table like interface to a BTree, which stores things in a semi-ordered fashion.
Secondary index to an indexed-btree.
A BTree which supports secondary indices.
To create the data store-appropriate type of btree, the data store implements this method (and possibly related methods) aginst their store-controller.
Most of the user-visible operations over BTrees must be implemented.
Class indexing functions such as
get-instances-by-value and related functions are all
implemented using map-btree and map-index.
Mapping over the indices of a btree is important to derived facilities such as class indexing and the query subsystem.