Nick, After a few minutes of searching it turns out that they are not in the VAULT directory, but in the DOCVAULT directory, and that directory is password protected. Could you consider posting your files to a system that is not restricted to members only, such as comp.lang.ada or this mailgroup or some public web page? Your e-mail summary of your preliminary proposal in message number 2 addresses only one level deep objects that are equivalent to simple arrays. What happens with nested sets, lists of lists of stacks of records, etc.? How do you replace one piece of one of the records in a list of lists of stacks of records without copying the whole record? If all the intermediate record types have this waste, does that mean that to use your proposal we must break all structures containing records into parallel structures containing each only one of the record's components? I guess we shall have to wait until we can gain access to your two documents to find out. Stay tuned to this email list for further instructions on accessing these two documents.