Has anyone had any thoughts about adding constraints to ZCatalog? I've got an application where the ability to say 'unique(colA, colB)' would be very useful - it could be implemented simply enough in the addObject code, check for the existence of an object matching the new object's (colA,colB) values, and raise an exception if one is found. eg. if len(self._catalog.searchResults(colA=newobj.colA, colB=newobj.colB)): raise "Uniqueness constraint violated" Another constraint would be to do something like 'colA refers_to colB' and only allow an entry where there's a match for searchResults(colB=newobj.colA) or even an expanded syntax of something like colA, colB refers_to colC, colD which would search for searchResults(colC=newobj.colA, colD=newobj.colB) This also requires putting checks in the update code, I guess, and the delete code. blah. Yes, these are all implementable in DTML or python at the time you add it to the catalog, but it would be way cool if it was there automatically... Anthony