このツールについて
XML → JSON 変換ツールは、XML と JSON を双方向に変換する無料のブラウザ内ツールです。XML を貼り付けて XML → JSON を押すと構造化された JSON オブジェクトが得られ、JSON を貼り付けて JSON → XML を押すとマークアップを復元します。変換はブラウザのネイティブパーサーを使って端末上ですべて実行され、アップロードは一切なく、オフラインでも動作し続けます。
XML から JSON への変換では、各要素がオブジェクトになります。属性は @ を接頭辞に付けたキーに格納され、テキスト内容は #text に置かれ(要素に属性も子要素もない場合は直接その値になります)、繰り返される子要素は配列にまとめられます。逆方向では同じ規約が反転され、@ キーは属性に、#text は要素テキストに、配列は繰り返しタグに展開され、出力はインデントされ XML エスケープされます。入力が整形式でない XML や有効な JSON でない場合、壊れた出力を作るのではなくその旨を報告します。
SOAP や RSS のペイロードを JSON として確認したり、レガシーな XML を JSON 専用 API に流し込んだり、まず簡単な JSON を書いて XML を手作業で作成するのに使えます。一方向の JSON → XML ジェネレーターや XML 整形ツールを補完し、実際のパースで欠けていた XML → JSON 方向をカバーします。
よくある質問
XML の属性は JSON でどう表現されますか?
各属性は、要素のオブジェクト上で @ を接頭辞に付けたキーになります。たとえば <note id="1"> は "@id": "1" になります。JSON を XML に戻すと、@ で始まるキーは属性として書き出されるので、往復変換が忠実に保たれます。
要素内のテキストはどうなりますか?
要素がテキストだけを持つ場合、その値は直接その文字列になります。属性や子要素も持つ場合は、何も失われないようテキストが #text キーに格納されます。逆方向では #text が要素のテキスト内容に戻されます。
繰り返しのタグはどう扱われますか?
要素が同じタグ名の子を複数含む場合、それらはその名前の JSON 配列にまとめられます。戻す際には、配列が項目ごとに 1 つの繰り返し要素へ展開されるので、リストが往復変換でも保たれます。
入力を検証しますか、また非公開ですか?
ブラウザ組み込みの DOMParser でパースし、推測せずに不正な XML や無効な JSON を報告します。スキーマや DTD による検証は行いません。すべてブラウザ内で実行され、データがアップロードされることはなく、外部ライブラリも読み込まれません。