JSON→XML変換ツールとは?

JSON to XML ConverterはJSONオブジェクトと配列を整形されたXMLに変換します。ネスト構造・配列・特殊文字は正しくエスケープされます。XML入力を必要とするSOAP APIやレガシーシステムに最適です。

コンバーターは特殊文字(& < > " ')をエスケープし、空白や記号を含むタグ名を整え、配列の表現方法を 2 つ用意しています:繰り返し要素(<book>...</book><book>...</book>)とラッパー(<books><item>...</item></books>)。ルート要素名の指定、XML 宣言の有無、インデントの切替が可能です。

使い方

  1. ステップ1 — JSONデータを貼り付けるか、.jsonファイルをアップロードします。変換前にJSONの検証が行われます。
  2. ステップ2 — ルート要素名を設定し、配列の表現方法(繰り返し要素または親要素でラップ)を選択します。
  3. ステップ3 — シンタックスハイライト付きで生成されたXMLを確認し、クリップボードにコピーするか.xmlファイルとしてダウンロードします。

使用するタイミング

  • XML ペイロードしか受け付けない SOAP サービスや古い社内 API と通信するとき。
  • ページや記事の JSON リストから XML サイトマップや RSS フィードを生成するとき。
  • XSLT 変換や XSD で検証されるパイプラインのテストデータを作るとき。

結果

SOAP API用に商品カタログのJSONを変換する必要があります(例:{products: [{id: 1, name: Widget}]})。ルート要素を「catalog」に設定すると、<products><item><id>1</id><name>Widget</name></item></products>という適切にネストされたXML出力が得られます。

よくある質問

XML の出力で配列はどのように表現されますか?
2 つのモードがあります。「繰り返し要素」は各要素を兄弟タグとして書き出し(<user>...</user><user>...</user>)、多くの XSD が期待する形式です。「親要素でラップ」はコンテナの中に <item> 子要素を入れる形(<users><item>...</item></users>)で、名前付きラッパーを必須とするスキーマに便利です。
JSON のキーに空白やドットが含まれる場合はどうなりますか?
XML タグ名は空白やほとんどの記号を許可しないため、コンバーターは不正な文字をアンダースコアに置き換えます。`first name` というキーは <first_name> になります。数字で始まるキーには先頭にアンダースコアを付け、整合性を保ちます。2 種類のキー接頭辞には特別な意味があります。@ で始まるキーは親要素の属性になり(`"@id": 1` は id="1" を生成)、#text キーは要素のテキスト内容になります。
出力された XML は手元の XSD や DTD で検証に通りますか?
整形式の XML にはなりますが、スキーマ検証は要素名・属性配置・順序に依存し、これらは JSON に含まれません。属性や厳密な順序が必要なら、JSON のキー名を事前に揃えるか、XSLT で後処理してください。
<?xml version="1.0" encoding="UTF-8"?> 宣言が出たり消えたりするのはなぜですか?
「XML 宣言を含める」スイッチで制御します。SOAP、サイトマップ、単体の XML ファイルは通常この行が必要です。別ドキュメントに埋め込む XML フラグメントには不要なので、スイッチをオフにして省略してください。
null 値はどう処理されますか?
null や undefined は <middleName/> のような自己終了タグになります。空文字列を強制せずにフィールドの存在を残せます。xsi:nil="true" が必要な場合は生成後に手動で書き換えてください。JSON には対応する概念がありません。

関連ツール