To ensure that @properties to work effectively The category really should be a subclass of item. when The category is not a subclass of object then The 1st time you are trying access the setter it in fact makes a new attribute Along with the shorter identify as an alternative https://retailshopinnoida.blogspot.com