Markdown Editor

Localization Brief Template (ISO 17100, XLIFF)

Translation brief: locales, source freeze, scope, termbase and do-not-translate list, style per locale, MT post-editing policy, i18n readiness, LQA, schedule

Documentation & SupportFullISO 17100:2015; ISO 18587:2017; XLIFF 2.1localizationbrief

How to use: Use it when handing a release or content set to translators or a language service provider. Fill locales, source freeze and scope first, and send the termbase with the brief. The main pitfall is skipping revision by a second linguist and i18n readiness checks, which surfaces defects only at LQA.

Preview

Localization Brief: [Product, release or content set]

Brief that a product or documentation team hands to translators, a language service provider (LSP) or an in-house localisation team for one release or content set. It fixes the locales, the source freeze, what is in and out of scope (UI strings, documentation, screenshots, media), terminology and do-not-translate rules, style per locale, the machine translation and post-editing policy, process steps, linguistic quality assurance (LQA), pseudo-localisation, internationalisation (i18n) readiness, schedule and handoff formats. Process step names follow ISO 17100:2015 (translation services, with Amendment 1:2017) and the post-editing policy uses the terms of ISO 18587:2017 (post-editing of machine translation output); file formats include XLIFF 2.1 (OASIS Standard, February 2018) and XLIFF 2.2 (OASIS Committee Specification, March 2025). Replace every [bracketed] value and every row marked Example. Worked examples use Corvid Commerce, a fictional SaaS retailer, localising its checkout UI and developer docs.

Document control

FieldValue
Document ID[L10N-BRIEF-001]
Version[0.1]
Status[Draft / Sent to vendor / Accepted / Closed]
Owner[@l10n-coordinator]
Approvers / reviewers[@product-manager], [@docs-lead], [@engineering-lead], [@vendor-project-manager]
Last updatedYYYY-MM-DD
Classification[Confidential: contains unreleased product information]
Release or content set[Example: Checkout 2026.11, UI plus developer docs]
Language service provider[Vendor name or in-house team]
Source locale[Example: en-US]
Target locales[See section 2]
RelatedTermbase (docs/termbase), Technical Writing Style Guide (docs/style-guide-technical), Docs Contribution Guide (docs/docs-contribution-guide)

Approvals

RoleNameDecisionDate
Localisation coordinator[@name][Approved / Changes requested]YYYY-MM-DD
Product manager[@name][Decision]YYYY-MM-DD
Documentation lead[@name][Decision]YYYY-MM-DD
Vendor project manager[@name][Accepted]YYYY-MM-DD

Revision history

VersionDateAuthorChange summary
0.1YYYY-MM-DD[@name]First draft
0.2YYYY-MM-DD[@name]Example: ar-SA added; schedule moved by one week
1.0YYYY-MM-DD[@name]Example: Accepted by vendor

Contents

1. Purpose and context

This brief requests translation and localisation of [content set] for [Product name] release [version]. It gives the linguists the context they need to make good decisions without asking: who reads the text, what the product does, which words are fixed and how quality will be judged.

ItemValue
Product summary[Example: Corvid Commerce Checkout lets online shops take card and wallet payments and issue refunds]
Audience[Example: shop owners (UI) and developers integrating the Orders API (docs)]
Purpose of this release[Example: new partial refund flow and a refund webhook]
Reference environment[Example: staging tenant corvid-l10n-demo with read-only test accounts]
Previous translations[Example: translation memory from release 2026.08, all locales]
ContactsRequester [@name], technical queries [@name], vendor PM [@name]

Linguists receive access to the reference environment and must not use real customer data. Anything that looks like personal data in the source is a defect: report it as a query instead of translating it.

2. Target locales

Locales are written as BCP 47 language tags (RFC 5646 and RFC 4647), for example pt-BR for Brazilian Portuguese and zh-Hans-CN for Simplified Chinese as used in mainland China.

Locale tagLanguage and marketDirectionContent in scopeLinguist poolPriority
de-DE (Example)German, GermanyLTRUI, docs, screenshotsVendor1
fr-FR (Example)French, FranceLTRUI, docsVendor1
ja-JP (Example)Japanese, JapanLTRUI, docs, screenshotsVendor1
pt-BR (Example)Portuguese, BrazilLTRUI onlyVendor2
ar-SA (Example)Arabic, Saudi ArabiaRTLUI onlyVendor, RTL specialist2

For each locale, state whether a single variant serves several markets (for example es-419 for Latin American Spanish) and who decides when a market needs its own variant. Locales marked priority 2 may ship one release later if the schedule in section 13 slips; priority 1 locales ship with the source.

3. Source content and freeze

ItemValue
Source freeze (UI strings)YYYY-MM-DD, [time and time zone]
Source freeze (docs)YYYY-MM-DD
Source repository and commit[Example: corvid/checkout@<commit>, corvid/developer-docs@<commit>]
Word count (new / fuzzy / repetitions)[From the vendor's analysis against the translation memory]
Late change rule[Example: changes after freeze go into a follow-up batch unless they fix a legal or safety issue]

Before the freeze, the source owners confirm that:

  1. Strings have been reviewed for clarity and consistency with the termbase (Termbase (docs/termbase)).
  2. Every string has a stable key and a developer comment where meaning is not obvious (button label versus heading, noun versus verb).
  3. Placeholders are named, not positional ({orderId}, not %s).
  4. Docs pages pass the checks in the Docs Contribution Guide (docs/docs-contribution-guide) and carry translate: true in their front matter.
  5. Text that must not be translated is marked (section 5).

4. Scope by content type

IDContent typeIn scope?FormatVolumeNotes
L10N-SC-01 (Example)UI strings (web app)YesXLIFF 2.1[Example: 1,240 strings]Includes error messages and empty states
L10N-SC-02 (Example)Transactional emailsYesXLIFF 2.1[Example: 18 templates]Keep merge fields unchanged
L10N-SC-03 (Example)Developer docs pagesYesMarkdown[Example: 42 pages]Code blocks not translated; comments in code translated
L10N-SC-04 (Example)Image alt text and captionsYesWithin MarkdownIncluded aboveMust be translated, never left in English
L10N-SC-05 (Example)ScreenshotsYes, priority 1 localesRecaptured from localised staging[Example: 35 images]See section 4.1
L10N-SC-06 (Example)Video subtitlesNoNot applicableNot applicablePlanned for next release
L10N-SC-07 (Example)API reference (generated)NoNot applicableNot applicableStays in English; descriptions only on request
L10N-SC-08 (Example)Legal termsNoNot applicableNot applicableHandled by legal counsel and certified translators

4.1 Screenshots and media

Screenshots are recaptured from the localised staging environment after UI translation is signed off, never edited by hand. The capture script uses the same demo data in every locale so images stay comparable. Text inside diagrams is avoided; where it exists, the editable source is sent with the batch.

5. Terminology and do-not-translate list

The termbase is the single source for approved terms and their equivalents in each locale. Linguists use preferred terms, may use admitted terms where the preferred one does not fit, and never use deprecated terms. New terms found during translation are proposed to the terminologist through the query log, not invented per file.

ItemValue
Termbase export[Example: corvid-termbase-2026-10.tbx (TBX-Basic) and a CSV copy]
Terminology owner[@terminologist]
New term approval time[Example: 2 working days per locale]

Do-not-translate list (keep exactly as written in every locale):

IDTextTypeRule
DNT-001 (Example)Corvid CommerceCompany nameNever translate or transliterate in Latin-script locales; ja-JP uses the approved katakana in the termbase
DNT-002 (Example)Orders APIProduct nameKeep in English
DNT-003 (Example)refund.createdEvent nameCode; keep including punctuation
DNT-004 (Example){orderId}, {amount}PlaceholdersKeep; move within the sentence as grammar requires
DNT-005 (Example)HTTP, JSON, SKUTechnical abbreviationsKeep; expand only where the locale style guide asks

6. Style per locale

Each locale follows its own style sheet. Where no style sheet exists, the vendor proposes one in the first week and the locale reviewer approves it.

LocaleAddress formToneNumber and date formatNotes
de-DE (Example)Formal "Sie"Direct, neutral1.234,56 EUR, 24.10.2026Compound nouns per termbase; avoid anglicisms where a common German term exists
fr-FR (Example)"Vous"Courteous, concise1 234,56 EUR, 24/10/2026Non-breaking space before : ; ! ?
ja-JP (Example)Polite form (desu/masu)Neutral1,234.56, 2026/10/24Full-width punctuation in prose; half-width in code and UI keys
ar-SA (Example)FormalNeutralLocale default from CLDRMirrored layout; Western or Eastern Arabic digits per approved style sheet

General rules for every locale:

  1. Translate meaning, not words; keep UI labels short enough to fit (section 9 gives the expansion allowance).
  2. Use the locale's own conventions for dates, numbers, currencies and units. The product formats them at runtime; do not hard-code formats in translated strings.
  3. Keep the source's level of certainty: "may" stays optional, "must" stays mandatory.
  4. Do not add, remove or reorder steps in procedures.

7. Machine translation and post-editing policy

Machine translation (MT) is allowed only where this table says so. When MT is used, a qualified human post-editor edits every segment; raw MT output is never published.

Content typeMT allowed?EnginePost-editing levelReason
UI strings (Example)NoNot applicableNot applicableShort, context-dependent strings; MT saves little and risks errors
Developer docs (Example)Yes[Approved engine under contract]Full post-editingLarge volume, consistent technical style
Knowledge base updates (Example)Yes[Approved engine]Full post-editingFrequent small updates
Legal or safety text (Example)NoNot applicableNot applicableRequires human translation and specialist review

Terms used in this policy follow ISO 18587:2017. Full post-editing aims at output that is indistinguishable in quality from human translation; light post-editing aims only at comprehensible output. The standard sets requirements for full post-editing and treats light post-editing as informative material only. This brief does not permit light post-editing for any published content.

Data protection rules for MT:

  1. Use only engines approved in the vendor contract, with no retention or training on submitted text.
  2. Never send unreleased product names, credentials, personal data or customer content to a public MT service.
  3. The vendor states in the delivery note which segments were machine translated, so LQA can sample them separately.

Generative AI tools used for translation or terminology suggestions are treated as MT engines under this policy.

8. Process steps and roles

Translation, check, revision, review, proofreading and final verification and release follow ISO 17100:2015; revision is mandatory, while review and proofreading apply when the client specifies them. Preparation and LQA are project steps added by this brief. A different person from the translator performs the revision.

StepPerformed byOutput
Preparation and analysisVendor PMWord count, quote, pretranslation from translation memory, file check
TranslationTranslator (competences and qualifications agreed in the contract, domain experience)Translated files, queries logged
CheckSame translatorSelf-check for meaning, omissions, terms and placeholders
RevisionSecond linguist (reviser) with equal or higher competenceBilingual comparison of source and target, corrections tracked
ReviewDomain reviewer, usually in-country product staffMonolingual review for domain fit and readability
ProofreadingVendor (for typeset or image content only)Corrections on rendered output
Final verification and releaseVendor PM, then localisation coordinatorDelivery note, files returned, sign-off recorded

Roles and competence expectations are set in the vendor contract. The in-house domain reviewer has [Example: 3] working days per batch; silence after that time counts as acceptance only when the contract says so.

9. Internationalisation readiness

Engineering confirms each item before the source freeze. Items not met are listed as risks in section 14.

IDRequirementStatus
I18N-01All user-visible text is externalised; no strings built by concatenation[Met / Not met]
I18N-02Plurals and gender use a message format with plural categories (for example ICU MessageFormat), not if count == 1[Status]
I18N-03Dates, numbers, currencies and lists are formatted at runtime with locale-aware APIs (for example Intl in browsers) using CLDR data[Status]
I18N-04Layout tolerates text expansion of [Example: up to 100% for labels under 10 characters, 50% for short phrases, 30% for sentences] for target languages that expand against an English source (German, Finnish, Russian) without truncation; CJK targets usually contract in width but need more line height[Status]
I18N-05Text input handles input method editors (IME): key handlers ignore events while composition is active (for example event.isComposing in browsers, and also ignore keydown events with keyCode 229, which some browsers send for the key that ends a composition)[Status]
I18N-06RTL locales use logical CSS properties (margin-inline-start), the dir attribute and mirrored icons where direction has meaning[Status]
I18N-07User-supplied or code text inside RTL sentences is isolated (for example <bdi> or Unicode isolate characters)[Status]
I18N-08Fonts cover every target script, including CJK and Arabic, and are served locally[Status]
I18N-09Sorting and search use locale-aware collation[Status]
I18N-10Strings carry developer comments and screenshots or context links for linguists[Status]

9.1 IME and RTL notes for linguists and testers

For Japanese, Chinese and Korean, test typing in search boxes, forms and the editor with a real IME: pressing Enter to confirm a conversion must not submit the form. For Arabic and other RTL scripts, test mixed-direction strings that contain order numbers, email addresses and English product names, and check that punctuation lands on the correct side.

10. Pseudo-localisation

Pseudo-localisation replaces source text with an altered version that stays readable but exposes problems: accented characters reveal encoding and font issues, padding reveals truncation, and brackets reveal concatenated or hard-coded strings.

SettingValue (Example)
Character mappingLatin letters replaced with accented forms (Refund becomes Ŕéƒüñð)
ExpansionPad short strings (under 10 characters) by up to 100% and longer strings by 30%
DelimitersWrap each string in [ and ] so cut-off text is visible
RTL pseudo-localeMirror layout with a test RTL locale to check direction handling
WhereEvery pull request preview for the UI; nightly build for docs

Issues found are filed with the label i18n and must be fixed before the source freeze. A string that shows without brackets in the pseudo-locale is hard-coded and blocks the freeze.

11. Handoff formats and file rules

ContentFormat sentFormat returnedRules
UI stringsXLIFF 2.1 (.xlf)XLIFF 2.1Keep unit id values; keep inline codes; do not add or remove units
Docs pagesMarkdown with front matterMarkdownTranslate title, description and body; keep keys, code blocks, URLs and anchors
TerminologyTBX (TBX-Basic dialect) and CSVTerm proposals in the query logProposals reviewed by the terminologist
Translation memoryTMX export of the previous releaseUpdated TMXVendor returns the memory with the delivery
ScreenshotsPNG captured by scriptNot returnedCaptured by the product team after sign-off

XLIFF 2.1 is the current OASIS Standard version. XLIFF 2.2, approved as an OASIS Committee Specification on 13 March 2025, is designed to stay compatible with 2.0 and 2.1; agree with the vendor before switching, and check the current status at docs.oasis-open.org/xliff.

File rules:

  1. Encoding is UTF-8 for every file; no byte-order mark in Markdown.
  2. File names keep the source name and add the locale folder: docs/de-DE/how-to/retry-refund-webhooks.md.
  3. Placeholders, inline tags and Markdown syntax pass through unchanged; the vendor's QA tool checks tag and placeholder parity before delivery.
  4. Files travel through [the agreed secure transfer method]; never by personal email or public file-sharing links.

12. Linguistic quality assurance

LQA samples delivered content in context (running UI or rendered docs) and scores errors by category and severity. Preferential changes are recorded but do not count as errors.

CategoryExamples
AccuracyMistranslation, omission, addition, untranslated text
TerminologyTerm not matching the termbase, inconsistent terms
LanguageGrammar, spelling, punctuation for the locale
StyleWrong address form, tone or register against the locale style sheet
Locale conventionsWrong date, number, currency or address format
Markup and functionalityBroken placeholder, tag, link or truncation in the UI
SeverityDefinitionWeight (Example)
CriticalCould cause legal, safety or financial harm, or blocks a task10
MajorChanges meaning or confuses the reader, but the task can be completed5
MinorNoticeable but does not change meaning1
RuleValue (Example)
Sample10% of new words per locale, at least 1,000 words, plus all UI strings on the checkout path
ScoreSum of weighted errors per 1,000 words
PassScore at or below 15 and no critical error
FailVendor corrects the full batch, not only the sample, and LQA repeats

LQA results are logged per locale and batch with the ID pattern LQA-<locale>-NNN (for example LQA-de-DE-001 (Example)).

13. Schedule and milestones

MilestoneDateOwner
Brief accepted and quote approvedYYYY-MM-DDLocalisation coordinator
Source freezeYYYY-MM-DDProduct and docs owners
Translated files deliveredYYYY-MM-DDVendor PM
Domain review completeYYYY-MM-DDIn-country reviewers
LQA pass for priority 1 localesYYYY-MM-DDLQA reviewer
ReleaseYYYY-MM-DDRelease manager

14. Queries, risks and acceptance

14.1 Query log

IDLocaleString key or pageQuestionAnswerStatus
Q-001 (Example)Allrefund.partial.ctaIs "Refund" a verb (button) or a noun (heading) here?Verb, button labelClosed
Q-002 (Example)ja-JPdocs/how-to/retry-refund-webhooks.mdTranslate "webhook" or keep in English?Use termbase entry TERM-0007Closed

Answers that affect more than one locale are broadcast to all linguists and, when they concern a term, added to the termbase.

14.2 Risks

IDRiskImpactMitigationOwner
L10N-R-01 (Example)Late UI changes after freezeRework cost, delayFollow-up batch rule in section 3Product manager
L10N-R-02 (Example)RTL layout bugs found during LQAar-SA slips one releasePseudo-RTL testing in section 10Engineering lead
L10N-R-03 (Example)No in-country reviewer for pt-BRReview step missingVendor provides an independent reviewerLocalisation coordinator

14.3 Acceptance

A locale is accepted when final verification is recorded, LQA passes, all queries are closed and the localised build passes the product's functional tests. Acceptance is recorded in the Approvals table of a copy of this brief or in the localisation tracker.

15. Glossary and references

TermMeaning in this brief
Localisation (l10n)Adapting a product or content to a locale, including translation, formats and visuals
Internationalisation (i18n)Designing software so it can be localised without code changes
LocaleA language plus regional conventions, identified by a BCP 47 tag
Translation memory (TM)Database of previously translated segments reused for consistency
TermbaseConcept-oriented database of approved terms and their equivalents
Post-editingEditing machine translation output to reach an agreed quality
RevisionBilingual examination of a translation by a person other than the translator
LQALinguistic quality assurance: scoring a sample against defined error categories
Pseudo-localisationAutomatic text transformation used to find i18n defects before translation
ReferenceUse
ISO 17100:2015, Translation services: Requirements for translation services, with Amendment 1:2017 (a new edition is in preparation)Names of process steps and roles (section 8)
ISO 18587:2017, Translation services: Post-editing of machine translation output: Requirements (a revision, ISO/DIS 18587, was at public enquiry in autumn 2026 and may change the scope and terms; check iso.org)Full and light post-editing terms (section 7)
ISO 30042:2019, Management of terminology resources: TermBase eXchange (TBX)Termbase exchange format (sections 5, 11)
OASIS XLIFF Version 2.1, OASIS Standard, 13 February 2018; XLIFF Version 2.2, Committee Specification 01, 13 March 2025 (docs.oasis-open.org/xliff)File format (section 11)
BCP 47 (RFC 5646, Tags for Identifying Languages, with RFC 4647)Locale tags (section 2)
Unicode CLDR (cldr.unicode.org)Locale formatting data (sections 6, 9)
Termbase (docs/termbase)Terminology source
Glossary (docs/glossary)Reader-facing term list
Docs Contribution Guide (docs/docs-contribution-guide)Source preparation for docs
Technical Writing Style Guide (docs/style-guide-technical)Source style

Standard and licence note

Structure aligned with ISO 17100:2015 (with Amendment 1:2017) and ISO 18587:2017, which are copyrighted by ISO: only process step names and the names of post-editing levels are cited, and every explanation is original. TBX is cited by its standard number and name (ISO 30042:2019). File format details are based on the OASIS XLIFF Version 2.1 Standard and XLIFF Version 2.2 Committee Specification, cited by name and status only. Locale tags follow BCP 47 (IETF). Revisions of ISO 17100, ISO 18587 and ISO 30042 are in development: check the current official versions at iso.org and docs.oasis-open.org before relying on this brief. The error categories, severities, weights and thresholds in section 12 are examples, not requirements of any standard. Corvid Commerce is fictional. Original text written for this collection. Template licence: MIT.

Related templates