JSON vs XML: 現代 API がほぼ JSON を選ぶ理由
2024-06-25
かつては SOAP と XML が企業連携の中心でしたが、現在の公開 API ドキュメントは JSON が主流です。その理由と、いまでも XML が適するケースを見ていきます。
構文と可読性
JSON はオブジェクト・配列・スカラーだけで表現でき、典型的な API では閉じタグや名前空間が不要です。
XML は属性や混在コンテンツを持つ文書モデルに強く、JSON はフィールド中心データに向いています。
{ "id": 1001, "name": "Alice", "roles": ["admin"] }<user><id>1001</id><name>Alice</name><roles><role>admin</role></roles></user>ペイロードサイズ
同じ内容でもタグの分だけ XML は重くなりがちです。圧縮で差は縮みますが、モバイルではバイト数の差が効きます。
パースと開発体験
ブラウザと Node には JSON.parse が標準搭載され、XML は追加パーサーや XPath の学習コストが必要です。
スキーマとツール
XSD と JSON Schema はどちらも有効ですが、OpenAPI の実例や TS/Go/Python のモデル生成は JSON 前提が一般的です。
XML が今も適する場面
レガシー SOAP、規制業界、OOXML や SVG のような文書規格では XML が依然有力です。新規 Web API では JSON が基本です。
移行のヒント
新規エンドポイントは JSON、既存 XML はアダプター越しに段階廃止。移行中もペイロード検証を継続しましょう。