At first I was not seeing why this shouldn't be fixed, but now I'm thinking that it's nice to be able to differentiate between the child property not existing and one of the parent properties not existing. Maybe returning something other than undefined but maybe the best solution is just to catch the error and work it case by case.