OrthogonalPersistence is a way to provide a uniform storage mechanism for any object regardless of its type or structure. This reaps benefits with objects containing nested structures of other objects.
All data structures are treated equally, i.e. the programmer need not be concerned with the physical layout of the object.
LocationIndependence guarantees that data may be accessed in the same way regardless of it's location. A programmer need not be concerned with whether the data is in physical memory, on disk or across the network. This is not the same concept as LocationTransparency but is similar in concept to VirtualMemory as found in most commercial OSs.
A system supporting OrthogonalPersistence must be resilient, i.e. it must be able to recover from a system crash. This is especially crucial in ObjectOriented Persistent systems because many interelationships will exist between the objects at any one time and these must be preserved to reconstruct the system after a failure.
Since a Persistent system provides a global object store access permissions must be controlled carefully to avoid data corruption.