An XML translator translates the human-readable text between the tags while preserving the markup itself — so the file that comes back is well-formed XML your system can ingest, in any of 280+ languages.
You tell Smartcat's Software Localization Agent which elements and attributes hold translatable text — by XPath, once — and everything outside those paths is left alone.
We quickly saw that Smartcat offered exactly what we needed: a translation memory, a central hub for our workflow, and no more endless emails or file juggling. Everything—and everyone—now works together in one place.
”Explore Case Study →
XML translation means translating an XML file's text content while leaving its markup machine-readable. Smartcat's Software Localization Agent uses a configurable XML parser rather than guessing.
One structural requirement: the file must contain repeating elements, since each repetition becomes a source segment.
Upload one .xml file or several at once, including recurring exports.
XML carries meaning in places a general-purpose translator cannot tell apart from prose. Four things break:
The failure mode is not a bad translation — it is a file your import rejects at 5 p.m. on release day.
On entity and encoding behavior we would rather test a sample file with you than print a promise. The parser configuration handles the two that are configurable — tag and attribute translation, and CDATA.
Rules You Set Once, by XPath
Point the parser at the segment-forming elements in your file shape, plus separate paths for untranslatable nodes, string IDs, comments and per-segment length limits.
Configure your product feed, CMS dump or help-content export once — every future file of that shape follows the same rules.
Update Segments by ID Without Cancelling Assignments
XML is one of only two format families — with PO/Serge — where a newer version can update segments by ID without cancelling task assignments.
For every other format, replacing a document recovers translations from the translation memory but cancels the tasks, so linguists have to be reassigned. Both updating and re-uploading consume Smartwords for retranslation.
103% Key-ID Translation Memory Matching
String IDs are mapped by their own path and used for 103% key-ID matching, where standard document formats cap at 102% context matching.
Comments can be mapped the same way and surfaced as segment context for reviewers.
280+ Languages, Well-Formed Output
Structure is never edited, so what comes back parses. You choose the target languages; the markup stays as authored.
Element names and attribute names are never translated. Everything else is opt-in by design:
Attribute values — not translated unless you name that attribute as segment-forming, so you point at label and never at id or an enum value.
Text nodes — translated where they are segment-forming, and checked against your translation memory and glossary. Untranslatable inline nodes can be excluded by their own path.
CDATA sections — configurable. With Protect HTML tags in CDATA sections on, HTML inside CDATA is substituted by Smartcat tags; with it off, those tags appear as editable text.
String IDs and comments — each mapped by their own path.
Length limits — settable per segment where a downstream schema caps a field.
Decide the CDATA checkbox deliberately, because off means a translator can edit your markup.
The one structural requirement is repeating elements: each repetition becomes a segment, so a one-off document with no repeating structure is not a fit for the custom parser.
Bring a sample export to a 1:1 with our team.
The Smartcat Marketplace connects you with experienced reviewers in your industry or target market. Use our AI-powered matching or explore profiles by specialization and ratings.
XLIFF and TMX are XML too, and both are supported. XLIFF has its own workflow and its own page, the XLIFF translation editor — and note that Smartcat imports XLIFF 1.2 and 2.0 while export is 1.2 only.
Also localizing JSON or YAML? Same project, same translation memory — linguistic assets attach at project level and apply to every document in it, with one writable TM per language pair.
If you drive this from CI, the API reaches the same 50+ formats the platform does:
XML, Android XML, RESX, LOCJSON, JSON, TJSON, YML, INC, INX, STRINGS and PROPERTIES among them.
The software-localization API additionally exports json, structured-json, yaml, structured-yaml, ios-strings and android-xml.
Executables and scripts are blocked for security.
There is no cap on how many files go into one project, so a full locale export uploads as a single job sharing one glossary and one translation memory.
Splitting is only ever about speed on a very large single file, never about how many files you send.
If you ship the same XML export every release, the difference that matters is what happens on the second upload.
Translations carry over and linguists stay assigned instead of being re-invited each sprint.
Creation, translation, review and delivery stay in one platform, with repetitive steps automated and Smartwords consumed only for retranslation.
Text translated, markup untouched, your own rules about what counts as text — in 280+ languages, with AI agents doing the parse-level work.
Free for 15 days with 15,000 Smartwords and full access to translation capabilities, no credit card.
Smartcat is an AI-powered global content platform built for businesses that need to scale multilingual content across markets.
It unifies AI agents, translation memories and human collaboration into a single system, helping teams translate XML files and other content faster and more accurately.
An XML (Extensible Markup Language) file is a flexible, text-based format that organizes and stores data using custom tags.
It is designed for both humans and machines to read, which makes it useful for structuring everything from app settings to training materials.
XML files are everywhere — from app development and website localization to content management systems (CMS) and eLearning platforms.
They are the workhorse for structuring content and exchanging data across software, platforms and systems.
XML keeps complex data organized and portable, which is why it shows up in app configuration, CMS exports, product feeds, eLearning packages and SCORM content.
The teams translating it are usually engineering, product content and localization teams, working from a file that some other system generates on a schedule.
AI agents are task-specific, workflow-aware automation tools.
Smartcat's agents, like the Software Localization Agent, are built to handle structured formats like XML — preserving tag integrity and applying your glossaries, so localization scales without developer support.
They also learn from human feedback, which drives productivity and quality improvements even in complex enterprise workflows.[1]
Yes, and control is the mechanism rather than a setting bolted on top. In the XML parsing configuration you give an XPath for the segment-forming elements, and a segment-forming node can be an element, an attribute or text.
An attribute is translated only if you point at it — so label becomes a segment while id and enum values never enter the editor. You can also give separate paths for untranslatable nodes, string IDs, comments and length limits.
Upload the file, then define what counts as text.
Structure is never edited by the parse model: element and attribute names are left alone, and only the nodes your XPath points at become editable segments.
The translated text is written back into the original structure, so the download is well-formed XML with the same shape as the file you sent.
Yes. Android XML is a supported format, and in a software-localization project you can import and export strings with their key IDs — the same as for JSON, YAML and iOS .strings — so <string name="checkout_cta"> keeps its name and R.string.checkout_cta resolves in every locale.
Plural keys are supported at project level: a key can be created with all its plural forms, and plurals export as ICU MessageFormat-compatible strings.
Standard XML, Android XML, XLIFF and TMX, plus custom schemas through the XML parsing configuration.
XLIFF import accepts 1.2 and 2.0 while export is 1.2 only, and XLIFF has its own workflow on the XLIFF translation editor page.
For a custom schema, the parser is configured once per file shape rather than guessed at — and it needs repeating elements to segment on.
You decide, with a checkbox: Protect HTML tags in CDATA sections. Checked, the HTML tags inside the CDATA block are substituted by Smartcat tags, so translators can move them but not break them. Unchecked, those tags appear as an editable piece of text. For anything machine-consumed, leave it checked.
No — it is a translator, not a format converter. It translates JSON and XML each in their own format; see the JSON translator for locale files.
Yes — see “Update Segments by ID Without Cancelling Assignments” above for what happens on the second upload.
For pipelines, the Smartcat API uploads files and retrieves translations, works asynchronously with notification callbacks so a build step does not sit and poll, and has a CLI for CI/CD. Three conditions up front:
Every method shares a limit of 4 requests per second, and the docs are public at developers.smartcat.com.
Yes — every edit and revision is tracked in the Smartcat Editor. You can revert to earlier versions or compare updates across language sets, which keeps localization consistent across releases.
Smartcat is SOC 2 Type II compliant. Files are encrypted in transit and at rest, workspaces are isolated per account, and access is role-based. Details are on the security page.
Well-formedness comes from the parse model — structure is never edited.
Schema validity is partly a property of content, and translation changes content: a field your XSD limits to 40 characters can overflow, because German routinely runs longer than English.
There is a real control for exactly that — the parser configuration lets you set length limits on segments, so translators see the cap while they work instead of after the import fails. Run your own schema validation on the first files per language pair.
Translation is metered in Smartwords, with repetitions discounted, and pricing scales with volume rather than with file format.
Every plan starts free for 15 days with 15,000 Smartwords and full access to translation capabilities, no credit card.
Not covered here? Book a demo — a 1:1 with a localization engineer, no commitment.
Yes. Upload and translate XML files directly from your browser with Smartcat's Software Localization Agent — no downloads, no manual setup.
Over 280 languages, including dialects and right-to-left scripts.
The published ceiling is global rather than XML-specific:
The constraint is per-file size, not how many files you send.
MIT News. (2024). MIT researchers develop efficiency training for more reliable AI agents. news.mit.edu