Also, this all seems to me to beg the question of a Descriptor::Value class with and #each enumerator on it to use. I am not sure that asking for values_iterator makes sense on a detail object.