Robert Gould
Robert Gould

Reputation: 69923

When would you use XML over JSON for Ajax?

Recently, many programmers and that includes me, have taken the X out of AJAX, and by default use JSON as the protocol format. However I'm trying to think of some places where XML would be more appropriate as a protocol format, that doesn't include SOAP (because SOAP could theoretically be done with JSON anyways).

Note: I love me XML for many other purposes, so its not about XML vs JSON in general, I'm concerned in particular with AJAX's transmission protocol.

Upvotes: 12

Views: 7788

Answers (5)

Paolo Bergantino
Paolo Bergantino

Reputation: 488734

This question is very similar to When to prefer JSON over XML?

Anyhow, I agree with the top voted answer there:

I use JSON unless I'm required to use XML. It's simpler to understand, and (because it requires less configuration overhead) easier to program for reading and writing if the libraries are available in your context, and they're pretty ubiquitous now.

When Amazon first exposed their catalogs as a web service, they offered both JSON and XML. Something like 90% of the implementers chose JSON.

On the flip side of things, XML is good for situations in which...

  • You need message validation
  • You're using XSLT
  • Your messages include a lot of marked-up text
  • You need to interoperate with environments that don't support JSON
  • You need attributes or namespacing

This is also taken from the question above, which is essentially asking the opposite of this.

Upvotes: 15

Sampson
Sampson

Reputation: 268492

Ajaxian wrote about this very topic - JSON vs. XML: The Debate

Additionally, and I'm not sure of the importance, but some instances might call for attributes on tags, and you can't really place attributes on JSON-entries. I could be way off there though - JSON/XML aren't my strongest areas.

Upvotes: 2

Zach
Zach

Reputation: 24786

If you were going to do XSLT conversions on the client side.

Upvotes: 1

VirtuosiMedia
VirtuosiMedia

Reputation: 53396

For me, I think the biggest drawback of using XML in AJAX is the fact that you will usually have to parse it and convert it in some way, whereas you won't have to do the same with JSON because the format is native to JavaScript. When you add the larger transmission cost to the parsing and conversion, I honestly can't think of a good reason to use XML over JSON for AJAX, though I certainly use XML for many other things.

Upvotes: 0

Related Questions