The children are stored as attributes of the ObjectManager itself, NOT in a dict. This makes some sense from an acquisition point of view, but probably means that there are a whole bunch of "reserved ids" like manage_beforeDelete.
I also feel a little worried that a future version of a class might add a class attribute which clashes with a pre-existing instance attribute added by the user.
The protection you describe won't help if the attribute is added in an earlier version, before that class attribute was added.
Aah, you're right. Well, we could perhaps hack ObjectManager to store its kids in a dictionary, but I'm not sure whether that'd break Acquisition. Does anyone know whether Acquisition works in a way which is compatible with __getattr__? [I guess I could try it, but I'm kinda Zoped out today after fighting Z2 conflicts again.] Regards, Garth. -- <gtk@well.com>