To provide a consistent, simple interface, HAM operations are grouped into seven categories. Operations within a category behave similarly, regardless of the kind of object on which they operate. Create operations create new HAM objects. Delete operations mark objects as deleted but retain historical information. A delete operation takes an oid and a version time and returns a new version time, the time at which the object was deleted.
Destroy operations free all space occupied by an object.
A destroy operation takes an oid and a version time and returns a new version time, the time at which the object was destroyed. Change operations modify data associated with an existing object. A change operation takes an oid, a version time and object-dependent data and returns a version time, the time the object was modified. Get operations retrieve data from existing objects. A get operation takes an oid and a version time, and returns the data that existed at the specified time.