I am getting closer to having a working catalog. Thanks everyone, all your hints have been really helpful. The catalog is automatically created when I add a new instance of my class to a folder My sub-classes now inherit: (CatalogAware, Persistent, Implicit, SimpleItem) It was the SimpleItem combined with the code used (in squishdot) to add an item that was preventing the catalog from finding it. When I changed it to: ob=PromoterPost(id,title) ob.id = id ob.title = title self._setObject(id,ob) It can now be found by the catalog when I manually update it in the management screen. It also now exists in the zope management screens, which is forcing me into better object management. =P Still, the catalog does not automatically update when a new object is added. can someone explain where the index_object() call should be? In my case it should be in the PromoterPost.__init__ method correct? It does not belong in my base class' call that creates the object right? Thanks again! -ed-