In order for @properties to operate properly The category must be a subclass of item. when The category is not really a subclass of object then the first time you are trying access the setter it truly will make a fresh attribute with the shorter name in lieu of accessing https://oxirichchintamanissector103.blogspot.com/