Related - if we have to include 3rd party code to do XML - why not provide just JSON in the core API - that's fairly standard for APIs anyway. Looks like the hooks are there to offer other other formats via plugins if required so it could be done as a plugin? Was there a particular reason we want XML?