added IRegisteredObject, case insentitive ids