I haven't looked at the details. The IDE usually uses it to load data from known paths. And the most it ever needs to do, is to check if that data exists or not.
Recent changes (in trunk / 2.1) allow for multiple entries of the same name. That is instead of <unit1>...</unit1><unit2>..., you can now have many <unit> nodes. The syntax for that afaik is '.../unit[0]/...' (and replacing 0 as needed).
If you have your config in an object, and all properties are published, you can use the rtti version TRttiXmlConfig (you need to check if it deals with all types, that you need)