CLI standardization would add power
I agree with you assessment that providing a standard CLI interface would add a lot of power to the Linux. The method you propose is a good start however I would choose a slightly different way. Changing a large portion of CLI apps to support this is a fairly large amount of work. As such the design should be well thought out. I would propose the following:
Add a new option to commands that will identify what format you are using. Off the top of my head something on the order of:
command ---x1 <options>
This would identify this request as using the xml version 1 syntax for options (that follow). I am not proposing this as the system to use but as an example. Whatever system is used it should support multiple syntax versions to allow new versions to coexist (if required) as well as transparently support the existing commands (if not supported an error is thrown and the calling app knows the option syntax is not supported.
Next the syntax of the options/values/attributes needs to be carefully created. I suggest this form be XML as it provides a large amount of flexibility and is easily parsed. This way commands can provide all the information GUI and other command line programs would want.
Initially CLI programs would not even need to be changed but shell wrappers could be created to provide this functionality. The GUIs can then start using the CLI components right away. Eventually, if the interest is there then the CLI programs will likely internalize this as a standard option for performance improvements.
Work should be done with any groups currently looking to standardize CLI syntax as their standardized syntax could be expanded to include this method as well as this method would comply to their standardization.
A bonus of all of this is that the XML output will likely provide a clearer blueprint for the help option of the command thereby hopefully providing more a more complete and consistent (internal to the app and to other apps as well) help option.
You have some very good points but I think more effort should go into the design before we look to modify many CLI apps.
Hope this helps