> This is a list of design decisions that still need to be made.    O The 'add' verb requires that a new ID number be created.  There are a couple of O ways to do this: (1) require the ID be given, (2) search for a free number (may N be expensive, simultaneous update problems), (3) a 'control' record that holdsM the next available ID number.  In cases 2 and 3, I think a block of a hundred O thousand or so IDs should be set aside for this, either high or low, defined by J build.c.  Something simple like ID 0 would be the place to hold this block start/next free number.   L For the paranoid the encrypted attribute fields could be stored encrypted by2 some key compiled into qi and decrypted as needed.  O Think about making all the routines reentrant.  This would allow all of phquery ; to be shared and would lead toward a multi-threaded server.   G Add a switch to qi_add_alias that will query an existing index file for  uniqueness. 