ルートは追加される
入力が一つのキーだけでも、そのキーをルートに昇格させません。指定したルートの下に残します。配列項目名はすべての配列階層に適用されるので、受信側の仕様を先に確認してください。
JSONツール
属性、本文、空配列、nullを含むサンプルで、出力の規則を確認できます。
JSON XML変換は、APIが返すオブジェクトをXML文書で受け取るシステムへ渡すときに使います。要素名と名前空間は相手側の仕様に従うもので、入力内容だけから自動判定はできません。
このページでは選んだルートで必ず包みます。単一の値にも同じ規則を適用するため、あるライブラリの暗黙の仕様を知らなくても出力を確認できます。
JSON XML変換では配列をコンテナ要素にし、各項目をitem要素にします。空配列でもコンテナは消えません。配列の中に配列があれば、その階層も残ります。
@idは属性、#textは要素の本文になります。属性と本文は同居できますが、本文と子要素の混在は拒否します。JSONオブジェクトでは任意の混合内容の順番を表せないためです。
入力が一つのキーだけでも、そのキーをルートに昇格させません。指定したルートの下に残します。配列項目名はすべての配列階層に適用されるので、受信側の仕様を先に確認してください。
初期設定の属性接頭辞は@、本文キーは#textです。変更できますが、マッピングを切ると全キーが要素名として検査されます。残った@idや#textが黙って無視されることはありません。
自動変換は変更後350ミリ秒待ちます。オフなら変換ボタンまたはCtrl/Cmd+Enterで実行できます。変更直後から書き出しは無効になり、プレビューは50件ずつ、先頭500ノードまで表示します。
ルート名と配列項目名にはXML 1.0の有効なローカル名を指定します。既定の名前空間URIはルートで宣言し全要素に適用しますが、接頭辞のない属性には適用しません。
標準ではxsi:nil="true"を付け、xsiも自動宣言します。拒否モードではnullの位置で停止します。空文字列・空オブジェクト・空配列は、存在する空要素として出力されます。
9007199254740993や-0、1e999は数値トークンのまま出力し、JavaScriptの浮動小数点数を経由しません。属性の改行やタブは文字参照にして、XMLの正規化による値の変化を防ぎます。
XML 1.0の整形式と名前空間を検査し、要素名・属性値・本文をマッピング後のツリーと照合します。インデントは2、4、なしから選べ、UTF-8宣言も切り替えられます。
配列名のコンテナを作り、その内側に指定した項目名を繰り返します。空配列も空コンテナとして残します。JSON→XML変換でよくある、項目がないため属性ごと消える挙動は採用していません。
このJSON XML変換ツールには文字数・深さ・ノード数の上限があります。上限超過は明示的なエラーになり、途中までのXMLは書き出せません。プレビューだけの500件制限はダウンロード全体には影響しません。
入力を保存する履歴機能はありません。ページを再読み込みするとサンプルへ戻るので、必要な結果は有効なうちにコピーするかダウンロードしてください。
初期設定では@から始まるキーです。たとえば@idをid属性へ変換します。JSONをXMLに変換するとき、通常の数値フィールドを勝手に属性へ変更することはありません。
JSON構文、重複キー、不正なXML名、禁止文字、null方針、属性への配列指定などが原因になります。エラーのJSON Pointerと行・列を確認し、対象の値や設定を修正してください。
文書のマッピングで困った点はありますか?