Skip to content

Commit 3be7b11

Browse files
committed
Document goals and non-goals
1 parent 5e363f7 commit 3be7b11

File tree

1 file changed

+73
-0
lines changed

1 file changed

+73
-0
lines changed

guidelines/goals.md

+73
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# Goals and Non-Goals
2+
3+
## Goals
4+
5+
The goals define the purpose of the Message Format Working Group (MFWG) and
6+
inform the decisions about the scope and the priorities of its efforts.
7+
8+
### Data model for defining translations
9+
10+
- Create a description of a data model representing translation units
11+
(_messages_). The data model will be agnostic with respect to the file
12+
format and the programming environment.
13+
14+
- Design the data model for representing collections of translation
15+
units (_resources_).
16+
17+
- Make it possible to express complex grammatical features, such as plurals,
18+
genders, and inflections, catalogued in the CLDR.
19+
20+
- Make it possible to express other variance in translation, due to
21+
other linguistic and regional features not listed in the CLDR, as well as
22+
due to the presentation media, context, circumstance, and other factors.
23+
24+
### Canonical syntax representing the data model
25+
26+
- Design the canonical text representation of the data model, with well
27+
defined rules for handling text, special characters, escape sequences,
28+
whitespace, and markup.
29+
30+
- Define parsing errors and the requirements for how to handle them.
31+
32+
- Allow other representations of the data model, optimized for other uses and
33+
audiences, to coexist with the canonical syntax.
34+
35+
### Compatibility with the localization industry practices
36+
37+
- Ensure that the data model is interoperable with existing interchange
38+
formats. In particular, specify how to losslessly convert translations to
39+
and from XLIFF.
40+
41+
- Ensure that the data model allows the use of machine translation and
42+
translation memory solutions for authoring translations.
43+
44+
### Runtime interpolation and formatting
45+
46+
- Specify the steps involved in resolving translations at runtime to allow
47+
their use in building localized experiences for users.
48+
49+
- Define the data types which can be interpolated in translations, and
50+
specify how they're interpolated. Define the error scenarios and error
51+
handling.
52+
53+
- Enable a wide range of user space solutions building on top of the data
54+
model and the runtime specification, manifesting different ideas and
55+
programming paradigms.
56+
57+
58+
## Non-Goals
59+
60+
The following is a list of potential goals which are explicitly excluded from
61+
the scope of the MFWG.
62+
63+
- Design a __general interchange format__ for storing and transferring
64+
translations.
65+
66+
- Support __all grammatical features of all languages__.
67+
68+
- Create an __automated engine__ capable of transforming parts of speech in
69+
a grammatically-correct fashion.
70+
71+
- Create optimized and efficient __implementations of the standard__.
72+
73+
- Build a __framework for localizing software__.

0 commit comments

Comments
 (0)