XML To JSON
入力XML
0文字
JSONを出力する
JSON 出力がここに表示されます…
コピーしました!
開発者ツール

XML から JSON へのコンバーター

XML ドキュメントをブラウザー内で即座に JSON オブジェクトに変換します。属性プレフィックスを完全に構成し、数値プリミティブを解析し、完全なクライアント プライバシーを保ちながら出力をクリーンにフォーマットします。

XML と JSON について: なぜ変換するのか?

Extensible Markup Language (XML) は、数十年にわたり、データ交換、構成ファイル、API エンドポイントの基礎となってきました。 W3C によって標準化された XML は、高度に構造化され、スキーマ検証され、自己記述的です。ただし、タグが多量に含まれる冗長性により、最新の JavaScript ベースの Web 環境で解析したり走査したりするのが面倒になります。開発者は、単純なデータ ポイントを抽出するためだけに、冗長な DOM クエリ セレクターを作成したり、重いライブラリ ラッパーを使用したりしていることに気づくことがよくあります。

一方、JavaScript Object Notation (JSON) は JavaScript のネイティブ形式であり、最新の Web API の主要な標準です。 JSON はネストされた構造、配列、プリミティブに直接マッピングされるため、クエリ、操作、送信が大幅に軽くなり、簡単になります。 XML を JSON に変換すると、従来のエンタープライズ システム (SOAP Web サービス、企業データベース、古い RSS フィードなど) と軽量のクライアント側アプリケーション、React フロントエンド、Node.js バックエンド コントローラー、または RESTful マイクロサービスの間のギャップが埋められます。 JSON ペイロードを使用すると、1 行のコード JSON.parse() でデータを簡単に解析できます。

ブラウザベースのコンバーターの仕組み

当社のオンライン コンバータは、Web ブラウザのネイティブ機能を利用して、XML ドキュメントをリアルタイムでクリーンな JSON オブジェクトに変換します。このツールは、重い外部 npm モジュールを利用したり、サードパーティのサーバーにデータを送信したりする代わりに、クライアント側の DOMParser オブジェクトをインスタンス化します。この組み込み Web API は、ブラウザが HTML および XML ドキュメントをレンダリングするために使用するのと同じパーサーを利用して、ブラウザのメモリ内に XML ドキュメント オブジェクト モデルのツリー構造を直接構築します。

次に、パーサーは、ルート XML ノードから開始して再帰的トラバーサル アルゴリズムを実行します。

  • ノード マッピング: 各 XML タグは、結果として得られる JSON オブジェクトのキーになります。階層構造は完全に維持されます。
  • 兄弟グループ化 (配列): 複数の兄弟ノードがまったく同じタグ名を共有する場合、コンバータはこの重複キーを検出し、解析された子ノードを JavaScript 配列にバンドルします。これはリストのような構造に最適です。
  • 属性の保持: XML 開始タグ内に含まれる属性は、接頭辞付きキー (@id@category など) にマッピングされ、ノードのコンテンツとともにタグのメタデータも保持されます。
  • テキスト値の抽出: タグの内部テキストは文字列値に変換され、混合コンテンツ タグは専用の #text キーを使用して標準の JSON 仕様に合わせます。

変換パイプラインの構成

開発者や API が異なれば、既存のスキーマ定義に適合させるために異なる JSON 構造が必要になります。私たちのツールは、さまざまな変換エッジケースを処理するためのカスタマイズ パラメーターを提供します。

  • 属性を含める: このオプションを切り替えて、XML 属性をエクスポートするか無視するかを決定します。属性を保持することは、メタデータを要素に直接埋め込む構成にとって非常に重要です。
  • 属性プレフィックス: 属性メタデータと子要素を区別するための文字プレフィックスを指定します。たとえば、デフォルトの @ プレフィックスを使用すると、 が JSON プロパティ "@status": "active" に変換されます。
  • 自動解析プリミティブ: デフォルトでは、XML はすべてのリーフ ノード データをテキスト文字列として解析します。自動解析をオンにすると、コンバーターがテキスト コンテンツを分析し、有効な数値文字列 (整数と浮動小数点数)、ブール値 (true および false)、または null 値を実際のネイティブ JSON 型に自動的にキャストできるようになります。
  • 形式とインデント: コードベースのスタイル設定に合わせて、2 スペース インデント、4 スペース インデント、またはタブ インデントのいずれかを選択します。構文が強調表示された出力では、キー、文字列、ブール値、数値が読みやすいように個別の色で強調表示されます。

クライアント側処理のセキュリティとパフォーマンス

オンライン開発者ツールを使用する際の主な懸念事項は、データのプライバシーです。多くのユーティリティはペイロードをリモート サーバーにアップロードするため、独自の構成、プライベート データベースのエクスポート、API キー、または機密の顧客情報を扱う場合にリスクが生じます。

このコンバータは100% クライアント側で実行されます。生の XML 文字列がネットワークを通過することはありません。すべての計算はブラウザの V8 または JavaScript エンジンで行われます。このアーキテクチャ設計は、優れたパフォーマンスも保証します。ファイルの処理にはネットワーク遅延がゼロです。つまり、数千のノードを含むファイルが 1 ミリ秒の何分の 1 で変換されます。このツールはオフラインや非常に制限されたサンドボックス環境でも実行できます。

XML と JSON: 構造的なエッジ ケース

XML から JSON への変換は通常は簡単ですが、特定の構造上の違いには注意が必要です。たとえば、XML は要素の順序を厳密に維持しますが、JSON オブジェクト キーは技術的に順序付けされていません。データ パイプラインにとって順序が重要な場合は、配列を使用して出力を処理する必要があります。同様に、XML 名前空間 (例: ) は、結果の JSON キー (例: "soap:Envelope") 内でリテラル文字として扱われます。空の要素または などの自己終了タグは、属性解析が有効かどうかに応じて、空の文字列 ("") または空のオブジェクトに変換されます。これらのエッジケースを理解することで、データ変換をシームレスに処理する堅牢な統合を設計できます。

よくある質問

オンラインで XML を JSON に解析するにはどうすればよいですか?

XML 文字列をこのツールの入力領域に貼り付けることができます。変換は、ネイティブの DOMParser API を使用してブラウザ内で瞬時に行われ、要素、子ノード、テキスト コンテンツ、属性を再帰的に解析して、クリーンでフォーマットされた JSON オブジェクトを出力します。

パーサーは XML 属性を保持しますか?

はい。 \を切り替えることができます

大きな XML ファイルを変換できますか?

はい、変換ロジック全体が Web ブラウザのクライアント側で実行されるため、ネットワーク アップロード サイズの制限やタイムアウトはありません。大きな XML ファイルの処理は、ローカル システムのメモリと CPU の能力にのみ依存します。

XML 子タグの重複または配列はどのように処理されますか?

コンバーターが同じタグ名を持つ兄弟要素を検出した場合、それらの要素をそのタグ名の下で JSON 配列に自動的にグループ化します。単一の一意のタグの場合、標準のネストされたオブジェクトとしてマップされます。

コンバーターは CDATA セクションの処理をサポートしていますか?

はい。 CDATA セクション (HTML や特殊記号など、解析されていない文字列を含む文字データ) は正常に抽出され、JSON 出力の文字列値にマッピングされ、正確な形式が維持されます。

このコンバーターを使用するとデータは安全ですか?

はい、絶対に。 XML コードがバックエンド サーバーに送信されることはありません。変換プロセスは完全にローカルで行われ、ブラウザーのサンドボックス内で実行されるため、機密データは完全にプライベートかつ安全に保たれます。

ホーム