# Message architecture & MessageFormat

> Structured messages, variables, selection logic, and authoring rules for grammatical, safe, maintainable multilingual interfaces.

[Internationalization capability](https://admas.net/capabilities/internationalization/index.md)

## The challenge

Concatenated fragments and presentation-only placeholders cannot express plural, gender, case, agreement, or locale-dependent variants reliably—and can expose injection and fallback failures.

We treat a message as a typed interface between code, content, and grammar. Variables, selectors, fallbacks, escaping, and ownership are explicit rather than hidden in prose conventions.

The design can support current ICU-style messages while preparing a controlled path toward MessageFormat 2 where ecosystem maturity permits.

## How Admas works

1. **Audit message construction:** Find concatenation, overloaded keys, untyped variables, unsafe markup, missing variants, and runtime fallback behavior.
2. **Define the message contract:** Specify schemas, selectors, annotations, escaping, fallback, translator context, lint rules, and versioning.
3. **Migrate and prove:** Convert representative flows, add parser and rendering tests, validate difficult languages, and sequence adoption.

## Typical outputs

- Message-system architecture
- Variable and selector conventions
- Migration examples and lint rules
- Multilingual message regression suite

## Frequently asked questions

### What is message architecture & messageformat?

Structured messages, variables, selection logic, and authoring rules for grammatical, safe, maintainable multilingual interfaces. In practice, the work is bounded by a defined product or model decision, named audiences and locales, representative inputs, and acceptance criteria that can be reviewed.

### When does a team need message architecture & messageformat?

Concatenated fragments and presentation-only placeholders cannot express plural, gender, case, agreement, or locale-dependent variants reliably—and can expose injection and fallback failures. The useful starting point is the smallest representative flow that can expose the cause, impact, and ownership of the problem.

### What does a message architecture & messageformat engagement include?

Audit message construction: Find concatenation, overloaded keys, untyped variables, unsafe markup, missing variants, and runtime fallback behavior. Define the message contract: Specify schemas, selectors, annotations, escaping, fallback, translator context, lint rules, and versioning. Migrate and prove: Convert representative flows, add parser and rendering tests, validate difficult languages, and sequence adoption.

### What should we provide before message architecture & messageformat starts?

The most useful inputs are representative repositories and builds, architecture and content-flow documentation, supported and planned locales, design-system components, and known defects and release constraints. Admas can begin with a partial package, but missing context, rights, access, owners, or acceptance criteria will be made visible in the plan rather than treated as harmless assumptions.

### What does Admas deliver for message architecture & messageformat?

Typical outputs include message-system architecture, variable and selector conventions, migration examples and lint rules, and multilingual message regression suite. Deliverables are adapted to the team that must use them, with decisions, evidence, limitations, owners, and next actions made explicit.

### How is the quality of message architecture & messageformat evaluated?

Quality is measured against the real task and risk. Relevant evidence can include locale-sensitive test coverage, severity and recurrence of internationalization defects, script and format correctness, time needed to add a locale, and reduction in one-off code paths. Sampling, severity rules, reviewers, adjudication, and pass or fail thresholds should be agreed before the result is used as a release decision.

### Can AI replace the human work in message architecture & messageformat?

Static analysis, pseudolocalization, property tests, visual regression, and locale-aware fixtures can expose repeatable failures. Engineers and language specialists still have to interpret ambiguous behavior, test real scripts and user journeys, and decide whether the product experience is correct. The right allocation depends on consequence, content stability, available references, language coverage, reversibility, and the cost of a plausible but wrong result.

### How much does message architecture & messageformat cost?

The estimate changes with system and repository size, number of platforms and surfaces, architecture access, locale and script risk, depth of implementation or testing, and required documentation and enablement. Pricing should distinguish setup and discovery, repeatable units, specialist or engineering time, independent review, management, and external costs. A low unit price is not comparable if it excludes the QA cycle or shifts rework back to the buyer.

## Related internationalization services

- [Internationalization architecture audit](https://admas.net/capabilities/internationalization/architecture-audit/index.md): A code-to-interface review that exposes locale assumptions and turns them into an actionable engineering plan.
- [Unicode & complex-script support](https://admas.net/capabilities/internationalization/unicode-script-support/index.md): Correct storage, transformation, input, rendering, and directionality for the scripts your users actually use.
- [Locale-ready product design](https://admas.net/capabilities/internationalization/locale-ready-design/index.md): Interfaces and content patterns designed for expansion, bidirectionality, local formats, and variable language length.
- [Automated internationalization testing](https://admas.net/capabilities/internationalization/automated-i18n-testing/index.md): Build and runtime tests for locale-sensitive code, multilingual data, layout, input, formatting, and message behavior.

## Start a project

- [Build a project brief](https://admas.net/start-a-project/index.md?focus=internationalization): Tell Admas what you are building, which modalities and languages matter, and where progress is blocked.
