I have a REST API that I want to model in a class so I can access the properties using the dot notation (JS list notation).  I explicately defined the properties on my class using the @property tags over the known properties of the returned JSON, but since I am modelling a 3rd part API, I need a way to also dynamically add properties if they are not present in the class.  I do not want to inherit from dictionary because this doesn't play well with defined properties.  They seem to return as None most of the time.  I also do not want the users to have two ways of getting at the information (trying to follow the zen of python).  Dot notation is fine, they don't need to be able to access the data via KEY names.Using setattr might be a possible location at run time, but I think I need an additional step because the compiler throws a not implemented error if a property does not exist on the class.    Should I implement __setattr__ and __setattribute__ on the object to prevent this error and just return None if the property does not exist.  I only need to support read-only.Thank you
Modelling a REST Object Question (Python)
python;rest;json;python 3.x