XML文書をJSONに変換する

APIレスポンス、設定ファイル、古いRSSフィード。後段のコードがJSONを要求するなら、フィールドを手で写すのではなく構造ごと変換します。

このガイドで使う道具

やりたいこと

フィードやサイトマップ、エンタープライズAPIではXMLが今も使われますが、モダンなコードはJSONを欲しがります。変換は木構造を機械的に写します。子要素はキー、繰り返しは配列です。

使い方

XMLを貼って変換します。整形済みのJSONが出るのでコピーか保存を。マッピングは一貫しています。属性は@付き、混在コンテンツのテキストは#textに入ります。

  • 単一の<item>はオブジェクトのまま、同名が続けば配列になります。コードを書く前に出力の形を確認してください。
  • コメント・処理命令・DOCTYPEは除外されます。

具体例

<user id="42"><name>Ada</name></user>は{"user":{"@id":"42","name":"Ada"}}になります。属性は@idとして、テキストは要素の値として出ます。

注意点

マッピングは1つの規約で設定はありません。$など別の接頭辞を使うツールとはJSONの形が違うため、同一パイプラインで混在させないでください。30万文字まで。不正なXMLは推測せずパースエラーを返します。