01 / 例
例
{"hito":{"namae":"Ada","messeji":"こんにちは"}}<hito>
<namae>Ada</namae>
<messeji>こんにちは</messeji>
</hito>コード整形 / MULTIVERTO
最上位キーが一つの JSON オブジェクトを XML 要素へ対応付けます。
01 / 例
{"hito":{"namae":"Ada","messeji":"こんにちは"}}<hito>
<namae>Ada</namae>
<messeji>こんにちは</messeji>
</hito>02 / ガイド
外側に一つのルートを持つ JSON オブジェクトを XML 要素へ写します。入力の最上位キーは XML のルート名として一つだけ必要です。子の配列は同名の XML 要素の繰り返しとなり、@attributes は属性を与えます。JSON では許されるキーでも XML の要素名として無効な場合があるため、生成した名前を確認してください。ここで扱うのは明示された入力の一部であり、複雑な文書のスキーマを自動的に推測する変換ではありません。
XML 文書は要素と属性からなる順序付きの木ですが、JSON オブジェクトは名前付きの値の集合です。この変換ツールは、あらかじめ定めた対応規則を使います。最も外側にある一つの JSON キーが XML のルート要素になり、@attributes オブジェクトは属性に、#text フィールドはテキストになり、配列の項目は同名の子要素として繰り返されます。
データ形式の変更は、単に句読点を書き換えることではなく、二つの情報モデル間の対応付けです。まず、必要に応じて非 ASCII 文字、欠けたフィールド、入れ子の値を含む小さな代表レコードを用意してください。変換後、キー、順序、数値、null、配列、繰り返し項目がどう表現されるか確認します。変換先の形式に元の機能と同等の表現がない場合もあるため、個別の説明で対応する変換規則を確認してください。この例では「{"hito":{"namae":"Ada","messeji":"こんにちは"}}」から、簡潔に表示した結果「<hito> ⏎ <namae>Ada</namae> ⏎ <messeji>こんにちは</messeji> ⏎ </hito>」が得られます(⏎は改行を表します)。見える語だけでなく区切り記号も読んでください。この小さな例は、この操作の実際の結果です。元データの気になる要素を一つ変え、結果の対応箇所を比較しましょう。ルートに @attributes マップを置き、同名の子要素を繰り返し、アンパサンドを含むテキストを入れてください。XML のタグとエスケープされたテキストを別々に調べます。変換先で XML 宣言、名前空間、所定の子要素順序が必要なら、その変換先で追加して検証してください。この変換から自動では推定されません。
外側のプロパティ一つで XML のルート名を指定する小さなオブジェクトに使用します。繰り返す子要素と @attributes が受け取り側の XML スキーマに合うか確認してください。JSON では有効な名前でも XML の要素名には使えない場合があります。アンパサンドや小なり記号で実体参照へのエスケープを試しましょう。任意の JSON から名前空間やスキーマを推定することはできません。大きな文書を処理する前に原本を出力と並べ、既知の小さな例でテストしてください。ファイルの大きさや行数だけでなく、意味のある内容を比較します。変換後の名前、引用符付き文字列、非 ASCII 文字、改行形式、繰り返しフィールドを確認してください。
ガイドを探す