Skip to content

Commit 4ff7de6

Browse files
authored
Rebranding to Unicode MessageFormat (#1064)
* Rebranding to Unicode MessageFormat Rebranding the specification as _Unicode MessageFormat_ in the wake of v47's stable release. Fixes #1058 * Update README.md * Update intro.md * Update (data model) README.md * Update appendices.md * Address comment * Address comments * Update datetime.md * Update tests.schema.json * Update tests.schema.json
1 parent 5cb54d4 commit 4ff7de6

File tree

7 files changed

+35
-28
lines changed

7 files changed

+35
-28
lines changed

README.md

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,16 @@ while providing a framework for increasingly complex features, such as gender, i
1212
Our goal is to provide an interoperable syntax, message data model, and associated processing that is
1313
capable of being adopted by any presentation framework or programming environement.
1414

15-
## MessageFormat 2
15+
## The Unicode MessageFormat Standard
1616

17-
The [MessageFormat 2 specification](./spec/) has been approved by the CLDR Technical Committee
18-
and is now a stable part of
19-
the [LDML](https://www.unicode.org/reports/tr35/) specification.
20-
It is now recommended for implementation and adoption.
17+
The [Unicode MessageFormat Standard](./spec/) is a stable part of CLDR.
18+
It was approved by the CLDR Technical Committee
19+
and is recommended for implementation and adoption.
20+
The normative version of the specification is published as a part of [TR35](https://www.unicode.org/reports/tr35/).
21+
This repository contains the editor's copy.
22+
23+
**Unicode MessageFormat** is sometimes referred to as _MessageFormat 2.0_,
24+
since it replaces earlier message formatting capabilities built into ICU.
2125

2226
Some _default functions_ and items in the `u:` namespace are still in Draft status.
2327
Feedback from users and implementers might result in changes to these capabilities.

spec/README.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
# MessageFormat 2.0 Specification
1+
# The Unicode MessageFormat Standard
22

33
> [!IMPORTANT]
44
> This page is not a part of the specification and is not normative.
55
6-
## What is MessageFormat 2?
6+
## What is Unicode MessageFormat?
77

88
Software needs to construct messages that incorporate various pieces of information.
99
The complexities of the world's languages make this challenging.
10-
MessageFormat 2 defines the data model, syntax, processing, and conformance requirements
10+
_Unicode MessageFormat_ defines the data model, syntax, processing, and conformance requirements
1111
for the next generation of dynamic messages.
1212
It is intended for adoption by programming languages, software libraries, and software localization tooling.
1313
It enables the integration of internationalization APIs (such as date or number formats),
@@ -17,6 +17,10 @@ or message selection logic that add on to the core capabilities.
1717
Its data model provides a means of representing existing syntaxes,
1818
thus enabling gradual adoption by users of older formatting systems.
1919

20+
During its development, _Unicode MessageFormat_ was known as "MessageFormat 2.0",
21+
since the specification supersedes earlier message formatting capabilities
22+
such as those developed in the [ICU](https://icu.unicode.org) project.
23+
2024
The goal is to allow developers and translators to create natural-sounding, grammatically-correct,
2125
user interfaces that can appear in any language and support the needs of diverse cultures.
2226

spec/appendices.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
### Security Considerations
44

5-
MessageFormat _patterns_ are meant to allow a _message_ to include any string value
5+
Unicode MessageFormat _patterns_ are meant to allow a _message_ to include any string value
66
which users might normally wish to use in their environment.
77
Programming languages and other environments vary in what characters are permitted
88
to appear in a valid string.
@@ -45,7 +45,7 @@ In addition, end-users need to be aware of the risks involved.
4545

4646
### Acknowledgements
4747

48-
Special thanks to the following people for their contributions to making MessageFormat 2.0.
48+
Special thanks to the following people for their contributions to making the Unicode MessageFormat Standard.
4949
The following people contributed to our github repo and are listed in order by contribution size:
5050

5151
Addison Phillips,

spec/data-model/README.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,33 @@
11
## Interchange Data Model
22

3-
This section defines a data model representation of MessageFormat 2 _messages_.
3+
This section defines a data model representation of Unicode MessageFormat _messages_.
44

55
Implementations are not required to use this data model for their internal representation of messages.
66
Neither are they required to provide an interface that accepts or produces
77
representations of this data model.
88

99
The major reason this specification provides a data model is to allow interchange of
1010
the logical representation of a _message_ between different implementations.
11-
This includes mapping legacy formatting syntaxes (such as MessageFormat 1)
12-
to a MessageFormat 2 implementation.
11+
This includes mapping legacy formatting syntaxes (such as ICU MessageFormat)
12+
to a Unicode MessageFormat implementation.
1313
Another use would be in converting to or from translation formats without
1414
the need to continually parse and serialize all or part of a message.
1515

1616
Implementations that expose APIs supporting the production, consumption, or transformation of a
1717
_message_ as a data structure are encouraged to use this data model.
1818

1919
This data model provides these capabilities:
20-
- any MessageFormat 2.0 message can be parsed into this representation
20+
- any Unicode MessageFormat _message_ can be parsed into this representation
2121
- this data model representation can be serialized as a well-formed
22-
MessageFormat 2.0 message
23-
- parsing a MessageFormat 2.0 message into a data model representation
22+
Unicode MessageFormat _message_
23+
- parsing a Unicode MessageFormat _message_ into a data model representation
2424
and then serializing it results in an equivalently functional message
2525

2626
This data model might also be used to:
27-
- parse a non-MessageFormat 2 message into a data model
28-
(and therefore re-serialize it as MessageFormat 2).
27+
- parse non Unicode MessageFormat messages into a data model
28+
(and therefore re-serialize it as Unicode MessageFormat).
2929
Note that this depends on compatibility between the two syntaxes.
30-
- re-serialize a MessageFormat 2 message into some other format
30+
- re-serialize a Unicode MessageFormat _message_ into some other format
3131
including (but not limited to) other formatting syntaxes
3232
or translation formats.
3333

@@ -43,7 +43,7 @@ declarations, options, and attributes to be optional rather than required proper
4343

4444
> [!IMPORTANT]
4545
> The data model uses the field name `name` to denote various interface identifiers.
46-
> In the MessageFormat 2 [syntax](/spec/syntax.md), the source for these `name` fields
46+
> In the Unicode MessageFormat [syntax](/spec/syntax.md), the source for these `name` fields
4747
> sometimes uses the production `identifier`.
4848
> This happens when the named item, such as a _function_, supports namespacing.
4949
@@ -100,7 +100,7 @@ interface LocalDeclaration {
100100
In a `SelectMessage`,
101101
the `keys` and `value` of each _variant_ are represented as an array of `Variant`.
102102
For the `CatchallKey`, a string `value` may be provided to retain an identifier.
103-
This is always `'*'` in MessageFormat 2 syntax, but may vary in other formats.
103+
This is always `'*'` in the Unicode MessageFormat syntax, but may vary in other formats.
104104

105105
```ts
106106
interface Variant {

spec/functions/datetime.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ When the offset is not present, implementations SHOULD use a floating time type
234234
For more information, see [Working with Timezones](https://w3c.github.io/timezone).
235235

236236
> [!IMPORTANT]
237-
> The [ABNF](/spec/message.abnf) and [syntax](/spec/syntax.md) of MF2
237+
> The [ABNF](/spec/message.abnf) and [syntax](/spec/syntax.md) of Unicode MessageFormat
238238
> do not formally define date/time literals.
239239
> This means that a _message_ can be syntactically valid but produce
240240
> a _Bad Operand_ error at runtime.

spec/intro.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# MessageFormat 2.0 Specification
1+
# The Unicode MessageFormat Standard Specification
22

33
## Table of Contents
44

@@ -46,8 +46,7 @@ existing internationalization APIs (such as the date and number formats shown ab
4646
grammatical matching (such as plurals or genders),
4747
as well as user-defined formats and message selectors.
4848

49-
The document is the successor to ICU MessageFormat,
50-
henceforth called ICU MessageFormat 1.0.
49+
The document is the successor to ICU MessageFormat.
5150

5251
### Conformance
5352

test/schemas/v0/tests.schema.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
33
"$id": "https://raw.githubusercontent.com/unicode-org/message-format-wg/main/test/schemas/v0/tests.schema.json",
4-
"title": "MessageFormat 2 data-driven tests",
5-
"description": "The main schema for MessageFormat 2 test data.",
4+
"title": "Unicode MessageFormat data-driven tests",
5+
"description": "The main schema for Unicode MessageFormat test data.",
66
"type": "object",
77
"additionalProperties": false,
88
"required": [
@@ -185,7 +185,7 @@
185185
"type": "string"
186186
},
187187
"src": {
188-
"description": "The MF2 syntax source.",
188+
"description": "The message source in the Unicode MessageFormat syntax.",
189189
"type": "string"
190190
},
191191
"bidiIsolation": {

0 commit comments

Comments
 (0)