TOML to XML Converter
Convert TOML configuration to XML format with full support for nested tables and arrays.
About TOML to XML Converter
This tool converts TOML (Tom's Obvious, Minimal Language) configuration files to XML format entirely in your browser — no data is sent to any server. TOML sections like [database] become nested XML elements, [[array]] tables become repeated sibling elements, and all primitive types (strings, integers, floats, booleans) are serialized as text content. The output is wrapped in a <config> root element with a standard XML declaration. Useful for integrating TOML-based configurations into systems that expect XML, such as Java frameworks, legacy enterprise tools, or XML-native pipelines.
Built and maintained by Meet Shah · Last updated
What this tool is used for
- Producing XML for a legacy system from a TOML source.
- Converting configuration for a tool that only ingests XML.
- Generating an XML fixture from a readable TOML definition.
- Migrating configuration into an XML-based pipeline.
- Comparing a TOML structure against an XML schema's expectations.
Frequently Asked Questions
- How does a TOML table become XML?
- A `[section]` becomes an element containing its keys as child elements, and an array of tables `[[item]]` becomes repeated sibling elements. Both formats are trees, so the structure maps cleanly — it is the metadata around it that does not.
- Do values become elements or attributes?
- Elements, by default, because TOML has no way to mark a value as attribute-like. XML draws a distinction the source format does not, so any attribute-based output requires a convention layered on top — which is a schema decision rather than a conversion.
- What happens to TOML's types?
- They flatten to text. TOML distinguishes integers, floats, booleans, dates and strings; XML has only character data unless a schema says otherwise. So `port = 8080` and `port = "8080"` produce identical XML, and the type information is gone.
- What has to be escaped?
- `&`, `<` and `>` in element content, plus quotes inside attribute values. A TOML string containing an ampersand — a URL with query parameters is the usual case — produces invalid XML if it is copied through literally.
- Why would anyone need this conversion?
- Legacy interoperability, almost always: a modern tool emitting TOML feeding a system whose configuration or import format is XML. It is rarely a design choice and usually a bridge, which is why the type flattening is acceptable in practice.
Common errors and gotchas
- Producing element names from keys that are not valid XML names.
- Losing the attribute-versus-element distinction, which TOML cannot express.
- Converting an array of tables without a wrapping element, which a schema may reject.
- Losing TOML's typed dates, which XML text content cannot carry as types.
- Emitting a TOML array of tables as repeated elements with no wrapper, which most schemas reject.