I create the person object like this.
Person person=new Person(\"Sam\",\"Lewis\")
It has properties like this.
person.Dob
Consider using the decorator pattern http://en.wikipedia.org/wiki/Decorator_pattern
You can change the decorator at runtime with one that has different properties when an event occurs.