
On May 8, 2009, at 3:55 PM, Sam Johnston wrote:
Oh, here's a dirty secret: both XML and JSON are lousy "wrapper" formats. If you have different kinds of things, you're usually better off letting them stand alone and link back and forth; that hypertext thing.
Right so say I want to create a new resource, or move it from one service to another, or manipulate its parameters, or any one of an infinite number of other potential operations - and say this resource is an existing virtual machine in a binary format (e.g. OVA) or an XML representation of a complex storage subsystem or a flat text network device config or... you get the point. It is far simpler for me to associate/embed the resource with its descriptor directly than to have a two phase process of uploading it and then feeding a URL to another call.
By participating in this discussion I'm rapidly developing an obligation to go learn the use-cases and become actually well-informed on the specifics. And I'm uncomfortable disagreeing with Sam so much, because the work that's being done here seems good. But... I just don't buy the argument above. You can't package binary *anything* into XML (or JSON) without base-64-ing it, blecch. And here's the dirty secret: a lot of times you can't even package XML into other XML safely, you break unique-id attributes and digital signatures and namespace prefixes and embedded XPaths and so on and so on. The Web architecture really wants you to deal with resources as homogeneous blogs, that's why media-types are so important. The wild success of the browser platform suggests that having to retrieve more than one resource to get a job one is not a particularly high hurdle, operationally.
As an aside I wonder how many times there were conversations like this previously (where working groups had the blinkers on with the usual "not in the charter" cop out) and how significant a contributor this inability to work together was to the WS-* train wreck...
I'm waiting for someone to write the definitive book on why WS-* imploded. Probably mostly biz and process probs as you suggest, but I suspect not enough credit is given to the use at the core of XSD and WSDL, which are both profoundly-bad technologies. But I digress. Well, it's Friday.
Remember also that Google are already using this in production for a myriad resources on a truly massive scale (and have already ironed out the bugs in 2.0) - the same cannot be said of the alternatives and dropping by their front door on the way could prove hugely beneficial.
I think you're having trouble convincing people that GData, which is pure resource CRUD, is relevant to cloud-infrastructure wrangling. I'm a huge fan of GData. -Tim