What a mess!
Let have a look on all the possible draw commands:
Does it mean that I don’t want to draw several instances in a limited range of elements?
Does it mean that I don’t want to draw multiples primitives and several instances?
Whether some features are deprecated or some features are missing but at list try to make it consistent…
I would have prefer some kind of GL_ARB_compatibility_30 which would have said “backward compatible until OpenGL 3.0” to that further compatibility extension could be GL_ARB_compatibility_31 to said that it is backward compatible with OpenGL 3.1 when for example OpenGL 3.2 would be released.
Furthermore, I could allow to remove the feature of GL_ARB_compatibility_30 but keeping the features of GL_ARB_compatibility_31 on time.