JSON vs XML: 現代 API がほぼ JSON を選ぶ理由

2024-06-25

かつては SOAP と XML が企業連携の中心でしたが、現在の公開 API ドキュメントは JSON が主流です。その理由と、いまでも XML が適するケースを見ていきます。

構文と可読性

JSON はオブジェクト・配列・スカラーだけで表現でき、典型的な API では閉じタグや名前空間が不要です。

XML は属性や混在コンテンツを持つ文書モデルに強く、JSON はフィールド中心データに向いています。

JSON
{ "id": 1001, "name": "Alice", "roles": ["admin"] }
XML 相当
<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 はアダプター越しに段階廃止。移行中もペイロード検証を継続しましょう。