in reply to Which format is best to consume from a webservice?

I'll throw in one more vote for JSON, having used it on a recent project and had great success with that. The above mentioned readability concern is a non-issue imo, because the Perl JSON module has a built-in 'pretty' parameter that takes care of that:
my $str = $json->objToJson($obj, {pretty => 1, indent => 4});