I'm getting to like this API as it looks now. There is a clear distinction between _PropertyDescription_ and _FieldDescriptor_ but also there is symmetry between the two.