From nested exports to usable tables / KitForma

Convert XML to Excel, CSV and related tables online

Open an XML export and decide what belongs in each row. Preserve identifiers, separate repeated child records, and download a workbook you can inspect alongside the original source.

No account neededRuns in your browserFree to use
XML Table BridgeLOCAL WORKSPACE
Choose · review · download
From question to next step

XML Table Bridge

Inspect first, choose the repeating record element, then prepare downloads in the mapping workbench. The built-in example uses the same parser and exporter as your file.

Supported scope: UTF-8 XML 1.0, up to 2 MiB, 20,000 elements, 32 nesting levels and 500 unique element paths. Mapping: 10,000 rows, 32 tables, 256 data columns per table and 250,000 cells. No DTD, external entities, processing instructions, XSD validation or huge-file streaming. Output budget 24 MiB; long Excel values use ordered chunks.

Your XML source

Required fields are marked with an asterisk.

01

UTF-8, up to 2 MiB. The original remains unchanged.

Paste a complete document with one root element. Do not include a DOCTYPE.

Loading the local tool… Your files stay in this browser.

Structure, mapping and downloads

Review your output, then save it to your device.

02

Make the next step clear.

Your findings, assumptions and next steps will appear here after you run the check.

XML Table Bridge · https://xmltables.kitforma.com/ · KitForma

01

Choose the record level

02

Keep exact text and namespaces

03

Related tables without duplicate totals

Good questions

Before you start

Can I choose which XML element becomes a row?

Yes. After inspection, the record selector lists repeated element paths plus the document root. Choose orders, items or another appropriate record level and review its preview before preparing downloads. Different choices produce different table counts.

Will two repeated child lists duplicate my totals?

Related-table mode gives each repeated child group its own table. The $parent value links a child row to its parent’s $id, so two order lines and two payments do not become four multiplied order rows. These are generated source-node IDs, not business keys.

Are leading zeros and large numbers preserved?

XLSX and JSON retain values as strings, including leading zeros, decimal trailing zeros and integers beyond spreadsheet numeric precision. CSV has no cell types; use text columns when importing it. Formula-like CSV values receive a protective apostrophe, while XLSX and JSON retain the original string.

What happens to comments, mixed text and unselected nodes?

Table mapping is not a byte-for-byte XML reconstruction. Direct text and descendants are extracted, while comments, mixed-content ordering, prefix spelling and unselected nodes remain in source.xml in the ZIP and rawXml in JSON. The mapping report identifies affected counts.

What if a value is longer than an Excel cell allows?

Values longer than 32,767 characters become a reference in the data sheet with complete ordered chunks on the Long text sheet. CSV and JSON keep the entire value. The tool reports chunk counts instead of silently truncating text.

Does my XML leave this device or load external resources?

The converter runs locally. DTDs, entity declarations and processing instructions are rejected; XML content is never used as a resource URL. Downloaded workbooks and bundles still contain your source data, so store and share them appropriately.

The evidence behind the check

Sources & assumptions

Formats, algorithms and supported features are documented below. Check the stated scope and inspect your output before using it.

  • W3C: XML 1.0 ↗

    XML character, markup and text-normalization rules; this tool supports a bounded subset without DTDs.

  • W3C: Namespaces in XML ↗

    Namespace URI and local name identify elements and attributes independently of prefix spelling.

  • SheetJS: Cell objects ↗

    The workbook writes text cells and no executable formulas.

  • OWASP: CSV injection ↗

    Spreadsheet applications can interpret CSV text as formulas; protected CSV and literal XLSX have different handling.

Reviewed 2026-10-18. Read our methodology or report an issue.

Essential local storage remembers this choice for up to 180 days. Your choice applies to this subdomain. Global Privacy Control and Do Not Track override optional measurement.

Advertising has a separate choice. Use Advertising preferences in the footer to allow or reject the optional guide-page banner.