def __getitem__(self, key): """Overwrite __getitem__. At first it's using the BaseObject version. If the element can't be retrieved from the schema it's using PortalFolder as fallback which should be the ObjectManager's version. """ try: return BaseObject.__getitem__(self, key) except KeyError: return PortalFolder.__getitem__(self, key)