The goal is to separate the draw attribute request from the CustomData implementation. For the layer index this was already started a while ago; it's only used in a couple places and lookups are mostly name based anyway. Conceptually the attribute request is just a request that the extraction system create a buffer for a certain attribute name. Information about where the attribute is stored doesn't fit. Pull Request: https://projects.blender.org/blender/blender/pulls/138570