setter: returns error if invalid attr specified