I am new to ZOPE, so maybe this question is too simple: I would like to use a BTRee (OOBTree) to store information. For one type of sub-branch, I would like to use a continuous series of integers as keys: dbroot['SE_HMI']={ '2003' : { 'jrl' : { 0 : <a tuple of data>}} dbroot['SE_HMI']={ '2003' : { 'jrl' : { 1 : <a tuple of data>}} dbroot['SE_HMI']={ '2003' : { 'jrl' : { 2 : <a tuple of data>}} ... and so on ... all other branches besides 'jrl' will have string keys. I read in the ZODB,ZEO programming guide (www.zope.org/Wikis/ZODB/guide/) that you should only use objects of a SINGLE type as keys. I could write a generator, that would create strings, by counting from 0 to 255, however, that would destroy the sort order, because 'ABX' would sort before 'X', allthough it would represent a much larger number. Since the frequency of expected accesses will increase with the count (because the later records will be accessed more frequently), I expect that performance would be lower as the keys would end up in an unsorted manner. The same problem occurs with strings representing numbers, due to the sort order: cmp('123','2') , cmp(123,2) , "/" , cmp('ABX','X') (-1, 1, '/', -1) Does anybody have any experience with this problem ?