XMLフラット化ツール
XMLの要素と属性をパスと値の一覧、CSV、JSONに変換。ブラウザーで結果を確認し、コピーまたはテキストファイルとしてダウンロードできます。
使ってみる
パスの読み方
上の例は@id = 7とname = Adaになります。子要素のパスにルート名userは含まれません。属性には@が付きます。同名の兄弟要素はitem[0]、item[1]のようにゼロ始まりの添字で区別します。最初の要素の属性はitem[0].@codeなどになります。ルートがテキストだけを含む場合は、ルート自身の名前をパスに使います。
3つの出力形式
キー = 値は1行に1組を表示します。CSVはpath,valueの見出しで始まり、両方の列を引用符で囲み、内部の引用符を二重にします。パス区切り文字を変更しても、CSVの列区切りはコンマです。JSONは値がすべて文字列のフラットなオブジェクトになります。名前空間プレフィックスは要素名や属性名に残り、名前空間宣言が属性として出力される場合もあります。
保持されない情報
属性と空でない葉要素のテキストを取り出しますが、テキストの前後の空白は除去します。空要素、コメント、処理命令は値になりません。<p>before<b>inside</b>after</p>ではinsideだけが出力され、beforeとafterは省かれます。この結果から元のXMLを完全に復元することはできません。
パスの衝突と対応範囲
異なるノードが同じパスになる場合は、値を上書きせずエラーで停止します。区切り文字や元の名前を変更して再実行してください。不正なXML、DTD、独自の実体宣言は拒否し、以前のダウンロードを無効にします。parsererrorという名前の正しい要素は扱えます。XMLスキーマの検証、XPath、XSLTには対応していません。
処理上限
貼り付けテキストは16,777,216 UTF-16コード単位まで、選択した1ファイルは別途64 MiBまでです。これらは拒否する上限であり、その規模での性能を保証するものではありません。ルートの下に最大200回の親子階層、属性と葉要素の値を合計100,000件まで扱います。大きい文書や深い文書は小さなサンプルから確認してください。処理と書き出しはブラウザー内で行い、選択ファイルをサーバーにアップロードしません。
引用符は表計算の数式実行を防ぎません。
処理はブラウザ内でローカルに行われます。