FORMAT COMPARISON
XML vs JSON
XMLとJSONはどちらも構造化データを表すテキスト形式ですが、表現方法が異なります。XMLは要素と属性、JSONはオブジェクト、配列、値を使います。受け手のシステム、スキーマ、文書構造の要件で選びます。
XMLとJSON、どちらを選ぶ?
両システムが対応し、軽量なAPI交換を行うならJSONを選びます。既存連携、名前空間、文書構造、XMLスキーマが必要ならXMLを選びます。実際のパーサーと契約に沿って検証し、変換時に混在コンテンツ、属性、データ型が変わらないか確認します。
XML向き
構造化データ交換
- スキーマを伴うデータ
JSON向き
Web API・設定ファイル・データ交換
- 構造化データの受け渡し
基本情報を比較
XMLとJSONの主な違いを確認できます。
| 項目 | XML | JSON |
|---|---|---|
| 拡張子 | .xml | .json |
| MIME Type | application/xml | application/json |
| 主な用途 | 構造化データ交換 | Web API・設定ファイル・データ交換 |
| 圧縮 | 該当なし | 該当なし |
| 開く方法 | テキストエディタやXML対応ツールで開けます。 | テキストエディタ、IDE、JSON対応ビューアで開けます。 |
| 書き出し・変換 | 用途によりJSONなどへ変換します。 | アプリケーションや変換ツールでCSVなどへ変換できます。 |
用途別の選び方
作りたいものや使う場面から選べます。
スキーマを伴うデータ
構造化データ交換
XML向き構造化データの受け渡し
Web API・設定ファイル・データ交換
JSON向き確認ポイント 1
XMLは入れ子の要素と属性で構造を表し、名前空間やスキーマ言語を使える。
使い分け確認ポイント 2
JSONはオブジェクト、順序のある配列、少数の値の型で表現し、Web APIで広く使われる。
使い分け選ぶ理由を詳しく
- どちらも形式だけでアプリ固有の型や検証規則が一致するわけではなく、受け手の仕様が重要となる。
- 相互変換ではXMLの属性や混在内容をJSONへ一意に移せない場合がある