Was dieses Werkzeug tut
Es findet das wiederholte Element und macht aus jedem Vorkommen eine Zeile.
<bestellungen>
<bestellung id="1"><kunde>Ada</kunde><summe>42</summe></bestellung>
<bestellung id="2"><kunde>Alan</kunde><summe>17</summe></bestellung>
</bestellungen>
kunde,summe,id
Ada,42,1
Alan,17,2
Hüllen mit einem einzigen Schlüssel werden durchlaufen: <bestellungen><bestellung>… braucht keine Einstellung. Eine Hülle mit eigenem Attribut — <bestellungen anzahl="2"> — ebenfalls: dieses Attribut beschreibt die Sammlung, nicht eine Zeile, und wird daher keine Spalte. Ein Attribut an einer Zeile schon.
Attribute sind Spalten
Ein Bezeichner, der in einem Attribut wohnt, sind Daten wie alle anderen. @_id wird zur Spalte id.
Das Präfix bleibt in genau einem Fall: wenn ein Kindelement diesen Namen schon trägt. <row id="1"><id>x</id></row> ergibt zwei Spalten, id und @_id, denn es sind zwei verschiedene Dinge, und sie zu verschmelzen ließe eines verschwinden. Ein Schalter entfernt Attribute ganz, wenn Ihre Tabelle nur aus den Elementen kommen soll.
Eine Zeile ist eine Tabelle
Ein Export mit einem einzigen Datensatz wandelt wie jeder andere. Das ist erwähnenswert, weil es früher nicht so war: XML nach JSON gibt ein Objekt statt eines Arrays zurück, wenn das Element sich nicht wiederholt, und das Array zu verlangen wies ein völlig gewöhnliches Dokument ab.
Ein Wurzelelement, das nur Text enthält, wird weiterhin abgewiesen: ein Wert ist keine Tabelle, und so zu tun als ob hülfe niemandem.
Zeilen, die einander nicht gleichen
Die Kopfzeile ist die Vereinigung alles Gesehenen, in der Reihenfolge des ersten Auftretens. Einer Zeile, der eine Spalte fehlt, wird eine leere Zelle gegeben:
<r><row><a>1</a></row><row><a>2</a><b>3</b></row></r>
a,b
1,
2,3
Ein unregelmäßiger Export ist normal. Die überzählige Spalte zu verwerfen, oder die Zeile, der sie fehlt, hieße Daten der Ordnung zu opfern.
Was eine Zelle nicht fassen kann
Eine Zelle trägt einen Wert. Enthält ein Element einen Teilbaum, wird dieser als JSON in die Zelle geschrieben, statt über erfundene Spaltennamen verteilt zu werden. Das ist hässlich und ehrlich: nichts geht verloren, und Sie sehen genau, was da war.
Datenschutz ab Werk
Alles läuft lokal in deinem Browser mit JavaScript. Deine Daten werden nie hochgeladen, wodurch das Tool auch für sensible Inhalte sicher ist und offline funktioniert.