I see your point. Your proposal could work I think for the payload scenario.
What about metadata? That's really my data structures, so I'd like to be able to override the mappings (make them not_analyzed and/or use doc_values for example). Is there way to do that (via dynamic_templates of a lower ordered template maybe?)?
Thanks