Language Schemas Multiple concrete syntaxes Parseable without schema Metacircular Extensible Unbounded integers (bignums) Good support for binary data
IDEAL Y Optional Y Y Y Y Y
ASN.1 Y Y Y N Y Y Y
Protocol Buffers Y N Y N [5] Y Y Y
XML Y Y Y Y Y Y N
JSON N N Y N Y Y N
SPKI N N N [2] N Y Y Y
AMQP Y N N N N N Y
Language Canonical form defined Multiple programming-language support In wide use already Unicode support "Efficient" concrete syntax Good tools widely available already Simple to use, understand, implement
IDEAL Y Y Y Y Y Y Y
ASN.1 Y Y Y Y Y N [6] N
Protocol Buffers N Y Y Y Y Y Y
XML Y Y Y Y N Y N [4]
JSON N Y Y Y N Y Y
SPKI Y Y N N [3] Y N Y
AMQP N [1] Y N Y Y N N