使い方
入力欄にXMLを貼り付けると、結果が表示されます。「方式」で「整形」を選ぶとタグごとに改行してインデントし、構造が一目でわかるようになります。「圧縮」を選ぶとタグの間の改行と空白だけを取り除き、ファイルサイズを小さくします。整形を選んだ場合は、インデント幅(半角スペース2つ・4つ・タブ)も変更できます。テキストと要素が混在する混合コンテンツ(mixed content)では、「整形」はその間の空白を整えて配置し直しますが、「圧縮」は元の空白をそのまま残します。貼り付けたXMLが整形式(well-formed)でない場合は、結果の代わりにエラーが表示され、可能な場合は何行目・何列目に問題があるかも一緒に示します。
整形式(well-formed)と妥当(valid)は別の概念です
XMLを扱うときによく混同される概念です。「整形式(well-formed)」とは、タグが正しく開閉されているか、属性値が引用符で囲まれているか、ルート要素が1つだけかといった、XML自体の文法を守っているかどうかを指します。一方「妥当(valid)」とは、その文書がDTDやXSDなど特定のスキーマが定める構造(どの要素がどの順序で来るべきか、どの属性が必須かなど)に従っているかどうかを指します。このツールはブラウザ標準のパーサーで整形式かどうかだけを確認し、スキーマの検証は行いません。特定のスキーマに沿っているか確認したい場合は、そのスキーマに対応した別のツールが必要です。
コメント・CDATA・処理命令はそのまま保持されます
整形・圧縮のどちらでも、<!-- コメント -->、<![CDATA[ ... ]]> の区間、<?処理命令?> の内容は変更されません。整形するときはこれらもそれぞれ自分の行にインデントして配置し、圧縮するときは周りの改行だけを取り除いて内容はそのまま残します。<!DOCTYPE ...> 宣言や <?xml version="1.0"?> のようなXML宣言も、変更されずに出力の先頭にそのまま残ります。
XXE(外部実体参照)の心配なく貼り付けられます
サーバー側でXMLを解析する方式は、XXE(XML External Entity)攻撃を受けやすく注意が必要です。しかしこのツールはブラウザ標準のDOMParserをそのまま使っており、このAPIは文書内に書かれた外部DTDや外部実体を実際には取得(フェッチ)しないように作られています。さらに処理そのものがブラウザの中だけで完結し、サーバーには何も送信されないため、出どころのわからないXMLを貼り付けても、それだけでサーバーが攻撃を受けることはありません。
プライバシー
貼り付けたXMLはこのブラウザの中だけで処理され、どこにも保存・送信されません。ページを閉じると入力内容も消えます。