Common formats

acme on 2006-10-01T15:09:07

Simon whined about YAML parsers sucking on london.pm. Mock had previously pointed out during YAPC::Europe that all YAML and JSON parsers and generators are buggy and non-interoperable. The thread was interesting and eventually most people grudgingly agreed that XML is the only true interop format. Somewhere along the way I read the XML Binary Characterization Properties, which goes into detail in what would be useful in a binary XML format. And then I looked at ASN.1 and XDR. It seems useful to have an efficient way of storing data compactly. Why hasn't one of these (including binary XML) taken off yet?


XML is good enough

Matts on 2006-10-01T15:23:42

The binary protocols are used for niche markets (some big niches, but most regular coders won't get to use them) such as mobile phones.

Some would argue that Mobile phones won't always be niche markets (in terms of how many applications get developed for them), but honestly I can't see myself doing a lot of work/play on a screen that's 1 inch wide.

50% of the time...

Alias on 2006-10-01T16:15:12

... the extra space doesn't matter, and the other 50% it's enough to do on the fly gzipping of the xml file.

Now, that doesn't include the third 50% of cases where you have mobiles phones etc, but personally I don't see that 50% as being a very large 50% :)

ASN

jerakeen on 2006-10-01T17:39:27

I have a quote that comes to mind

In the early days of the SNMP, which does use ASN.1, the same issues arose. In the end, the working group agreed that the use of ASN.1 for SNMP was axiomatic, but not because anyone thought that ASN.1 was the most efficient, or the easiest to explain, or even well liked. ASN.1 was given axiomatic status because the working group decided it was not going to spend the next three years explaining an alternative encoding scheme to the developer community.

http://www.faqs.org/rfcs/rfc3117.html

YAML::Syck::Load handling multiple documents.

audreyt on 2006-10-02T03:28:00

Seems to be Simon's only gripe; I've just implemented that; it'll be in the next release.

Re:YAML::Syck::Load handling multiple documents.

audreyt on 2006-10-02T12:57:46

...done as 0.70.