XML → JSON
XML をフォーマット済み JSON に即座に変換——ネスト要素とテキストノードを処理、100% ブラウザ内で完結。
入力
出力
XML とは?
XML(eXtensible Markup Language)は、人間が読めて機械も読める形式でドキュメントをエンコードするルールを定義するマークアップ言語です。HTML のようなタグを使用して要素、属性、階層構造を定義します。XML は JSON が支配的な Web データ形式になる前、データ交換、設定ファイル、SOAP API、ドキュメント形式で広く使用されていました。
XML は多くのレガシーシステム、エンタープライズアプリケーション、SOAP ベースの Web サービス、RSS/Atom フィード、SVG グラフィックス、設定ファイルで依然として重要です。JSON と比較して冗長ですが、XML は多くの本番システムとファイル形式に存在し続けており、XML → JSON 変換が一般的なニーズとなっています。
XML と JSON
XML と JSON はデータを異なる方法で表現します。XML は属性を持つ開始タグと終了タグを使用し、JSON はキーと値のペアと配列を使用します。XML は要素に属性を持てます(JSON はネイティブに表現できません)、混合コンテンツ(テキストと子要素の交錯)、名前空間プレフィックスを持てます。JSON はよりシンプルでコンパクトで、JavaScript オブジェクトに直接マッピングされます。
主な構造の違いは繰り返しの処理方法です。XML では、同じタグ名を持つ繰り返し子要素が配列を表します。JSON では、配列は角括弧で明示的です。このコンバーターは繰り返し要素名を検出し、自動的に JSON 配列に変換します。
XML を JSON に変換するタイミング
XML を JSON に変換するのは多くのシナリオで役立ちます:
- レガシー API の近代化。SOAP やレガシー REST API の XML レスポンスをモダン Web アプリケーションで使用するために JSON に変換します。
- 設定の移行。XML 設定ファイルをモダンツールやフレームワークで使用するために JSON 形式に移行します。
- データ処理。JSON を期待する JavaScript アプリケーションで XML データフィード(RSS、Atom)を処理します。
- データの簡素化。データ値のみが必要な場合、XML の冗長性と複雑さを取り除きます。
- 相互運用性。XML ベースのシステム(SOAP など)と JSON ベースのシステム(REST API など)間の橋渡しをします。
XML を JSON に変換する方法
このツールで XML を JSON に変換するのは1秒で完了し、すべてブラウザ内で行われます。以下の手順に従ってください:
- XML を貼り付け。入力ボックスに有効な XML を入力します。ルート要素とそのすべての子要素が変換されます。
- 「変換」をクリック。パーサーが XML から DOM ツリーを構築し、再帰的に JSON オブジェクトに変換します。
- コピーまたはダウンロード。「コピー」をクリックして JSON をクリップボードにコピーするか、「ダウンロード」で .json ファイルとして保存します。
XML が無効な場合、パーサーは問題を説明するエラーメッセージを報告します。XML を修正して再試行してください。
変換の仕組み
コンバーターは XML DOM ツリーを再帰的に走査します。各要素について、子要素名をキーとするオブジェクトを作成します。複数の子要素が同じタグ名を共有する場合、それらは自動的に JSON 配列にグループ化されます。テキストのみの要素(子要素のないリーフノード)は文字列値に変換されます。混合コンテンツ(テキストと子要素の両方)はテキスト部分に #text キーを使用します。
XML 属性は変換されないことに注意してください——要素コンテンツのみが処理されます。これにより JSON 出力がクリーンでシンプルになります。属性が必要な場合は、XML を前処理して属性を子要素に変換することを検討してください。また、タグ名の名前空間プレフィックスは JSON キーでそのまま保持されるため、<ns:foo> は JSON で "ns:foo" になります。
この XML → JSON 変換ツールは無料ですか?
はい、完全に無料で、登録不要、デバイスのメモリ以外に制限はなく、アップロード不要です。
XML 属性は変換されますか?
いいえ。このコンバーターは要素コンテンツのみを処理し、属性は処理しません。これにより JSON 出力がクリーンになります。属性が必要な場合は、XML で属性を子要素に変換してください。
繰り返し要素はどのように処理されますか?
複数の子要素が同じタグ名を共有する場合、それらは自動的に JSON 配列にグループ化されます。単一の子要素はオブジェクトプロパティになります。
データはアップロードされますか?
いいえ。すべての変換はローカルです。XML データがブラウザから離れることはありません。