メインコンテンツへスキップ

無料XML フォーマッタとバリデータ

ブラウザのネイティブ DOM パーサーを使用して、XML を整形して検証します。実稼働用に縮小された出力が含まれます。

読み込み後はオフラインでも動作

ここにファイルをドロップするか、クリックして選択

XML · デバイス上で処理

または Ctrl+V でクリップボードから貼り付け

ファイルを参照
出力がここに表示されます…

主な用途

  • RSS / AtomフィードをフォーマットするRSSまたはAtomフィードXMLをインスペクトして美しく印刷し、公開前に構造を確認します。
  • SOAP APIリクエストとレスポンスをフォーマットするSOAPエンベロープは1行で読むのが悪名高く困難です。API呼び出しをデバッグするためにフォーマットします。
  • Sitemap.xmlをフォーマットして検証するSEO用のsitemap.xmlを確認—すべてのURLを表示し、Googleに送信する前に構造が有効であることを確認します。
  • Officeドキュメント XMLをインスペクトする最新の.docx、.xlsx、.pptxファイルはXMLのZIPアーカイブです。デバッグ用に内部XMLをインスペクトします。
  • XML設定ファイルをインスペクトするSpring、.NET、Tomcat、Maven、Ant—多くのエコシステムはXML設定を使用します。レビュー用にフォーマットします。

使い方

このツールは、SVGやXHTMLの処理にブラウザが使うのと同じXMLエンジンであるDOMParser APIを使ってブラウザ内で完全にXMLを解析・再整形します。ライブラリは読み込まれません。整形ツール、圧縮ツール、JSONコンバーターはすべてこのツールに手書きで実装されています。

  1. 1
    DOMParserが構造を検証する
    あなたのXMLはMIMEタイプapplication/xmlでブラウザネイティブのDOMParserに渡されます。ドキュメントが整形式でない場合 — 閉じられていないタグ、欠落したルート要素、対応しない引用符など — DOMParserはparsererrorノードを生成し、ツールは問題を黙って無視するのではなくブラウザ自体のエラーメッセージを表示します。
  2. 2
    カスタムシリアライザーがツリーを再構築する
    手書きの再帰的な走査関数が、解析済みDOM内のすべてのノード — 要素、テキストノード、CDATAセクション、コメント、処理命令 — を走査し、選んだインデント幅(1、2、または4スペース)で再シリアライズします。最小化された出力は同じ走査関数をパディング文字列を空にして再利用するため、要素内のテキストコンテンツに触れることなく空白のみのテキストノードが取り除かれます。
  3. 3
    構造的な統計がカウントされる
    整形されたシリアライズのパス中、走査関数はドキュメント内のすべての要素と属性をカウントし、前後の文字数とともに合計を報告します。これにより、追加の解析ステップなしにXMLの構造的な概要を素早く把握できます。
  4. 4
    任意のJSON変換
    2つ目の再帰関数が解析済みDOMをJSONオブジェクトに変換します:要素の属性は@をプレフィックスとしたキーになり、繰り返される兄弟要素は配列になり、単独のテキストの子要素は単純な文字列値になります。結果はダウンロードやコピー用にJSON.stringifyでシリアライズされます。

関連ツール

よくある質問