|
| 1 | +# 11 August 2025 | MessageFormat Working Group Teleconference |
| 2 | + |
| 3 | +Attendees: |
| 4 | + |
| 5 | +- Eemeli Aro \- Mozilla (EAO) |
| 6 | +- Mihai Niță \- Google (MIH) |
| 7 | +- Tim Chevalier \- Igalia (TIM) |
| 8 | +- Shane Carr \- Google (SFC) |
| 9 | +- Richard Gibson \- OpenJSF (RGN) |
| 10 | + |
| 11 | +**Scribe:** MIH |
| 12 | + |
| 13 | +## Mark dataflow-composability design doc as obsolete (PR \#1092) |
| 14 | + |
| 15 | +EAO: Should have merged this a while ago |
| 16 | +Thumbs up from more people. |
| 17 | +Submitted |
| 18 | + |
| 19 | +## Preparations for LDML 48 release (PR \#1096) |
| 20 | + |
| 21 | +EAO: editorial fixes |
| 22 | +This includes scripts that will generate and publish the rendered version of the spec. |
| 23 | + |
| 24 | +MIH: would have been nice to separate the scripts from the spec differences |
| 25 | + |
| 26 | +MIH: also nice to not have PRs showing up over the week-end and submit on Monday. Some people might want to have a week-end 🙂 |
| 27 | + |
| 28 | +Thumbs up from more people. |
| 29 | +Submitted |
| 30 | + |
| 31 | +This is where the rendered spec is now published: [https://unicode-org.github.io/message-format-wg/](https://unicode-org.github.io/message-format-wg/) |
| 32 | + |
| 33 | +## Add :percent (PR \#1094) |
| 34 | + |
| 35 | +_Our primary focus will be on seeing if we can land PR \#1094, adding :percent as a draft function. At this week's meeting, this was identified as the only remaining change we're considering for inclusion in the LDML 48 version of the spec._ |
| 36 | + |
| 37 | +SFC: I reviewed it before other comments and changes, not after. But fine with the direction. |
| 38 | + |
| 39 | +MIH: same as SFC, read it before changes. No blocker from me. |
| 40 | + |
| 41 | +TIM: OK to merge. |
| 42 | + |
| 43 | +Thumbs up from more people. |
| 44 | +Submitted |
| 45 | + |
| 46 | +## LDML 48 |
| 47 | + |
| 48 | +_Anything else blocking publication?_ |
| 49 | + |
| 50 | +EAO: do we have any blockers for 48? |
| 51 | + |
| 52 | +SFC: the :percent and :datetime are both draft, right |
| 53 | + |
| 54 | +EAO: are semantic skeletons getting out of tech preview in LDML 48? |
| 55 | + |
| 56 | +SFC: it is in icu4x, I might push in that direction. But I didn’t have it on my agenda to do. |
| 57 | + |
| 58 | +EAO: we can’t really push semantic skeletons out of draft in MF2 if it is not out of tech preview in LDML |
| 59 | + |
| 60 | +SFC: I will put it on the CLDR agenda |
| 61 | + |
| 62 | +## Looking Forwards |
| 63 | + |
| 64 | +_We need to start looking forwards, and plan our work beyond the LDML 48 release. We have an updated list of [goals](https://github.com/unicode-org/message-format-wg/blob/main/docs/goals.md), and I think it's time to start doing something about these two in particular:_ |
| 65 | + |
| 66 | +- _Define a standard vocabulary for expression attributes and message properties/metadata, to enable better interoperation between translation tools and platforms._ |
| 67 | +- _Incubate and support working groups or interest groups that promote adoption of Unicode MessageFormat, such as the proposed working group to develop a standard message resource format, i.e. a new file format for bundles or collections of messages._ |
| 68 | + |
| 69 | +_We do of course also need to improve our documentation site and fill out the default function set, but we ought to look beyond those as well._ |
| 70 | + |
| 71 | +[https://github.com/unicode-org/message-format-wg/blob/main/docs/goals.md](https://github.com/unicode-org/message-format-wg/blob/main/docs/goals.md) |
| 72 | + |
| 73 | +EAO: What are we going to do next? |
| 74 | +I mentioned a few in the email. |
| 75 | + |
| 76 | +### Machine readable function description |
| 77 | + |
| 78 | +MIH: machine readable function description to be consumed by linters, IDEs, CAT tools |
| 79 | + |
| 80 | +EAO: I have something similar to do for Mozilla, updating tools to parse and validate message sources into a data model. |
| 81 | +Another person that expressed interest was Luca (LCA). |
| 82 | +So there is some opportunity here. |
| 83 | +We ought to figure out a time for EAO / LCA / MIH to get together and decide how to go ahead about that. |
| 84 | +TIM, do you have any interest in this? |
| 85 | + |
| 86 | +TIM: not for now |
| 87 | + |
| 88 | +### Vocabulary for Attributes |
| 89 | + |
| 90 | +EAO: figuring out attributes |
| 91 | +We now allow them in placeholders and markup. |
| 92 | +But the empty namespace is reserved. |
| 93 | +Would be really useful to define some basic meanings that can be used. |
| 94 | + |
| 95 | +EAO: preliminary message bundle work: [https://github.com/eemeli/message-resource-wg/issues/19](https://github.com/eemeli/message-resource-wg/issues/19) |
| 96 | +Message and expression level attributes. |
| 97 | +That connects with validation and linting. |
| 98 | +Attributes like “example”. |
| 99 | + |
| 100 | +MIH: I think most of these attributes belong outside the message, in the “wrapper” (storage) |
| 101 | + |
| 102 | +EAO: for the vast majority of cases I would agree. |
| 103 | + |
| 104 | +MIH: for translator access to attributes: hidden, read-only, enum, free-form, maybe regexp. Relevant for leveraging or not. |
| 105 | +In my mind this kind of stuff belongs in the machine readable function description. |
| 106 | +If this changes per message, probably still outside the message, not inside (think structured comments, or XML attributes, or other existing mechanisms) |
| 107 | + |
| 108 | +EAO: we can collect use cases, then we decide where they belong. |
| 109 | + |
| 110 | +### XLIFF Mapping |
| 111 | + |
| 112 | +MIH: XLIFF mapping, but in a way that is backward compatible with existing CAT tools (that understand XLIFF, but know nothing about MF2). |
| 113 | + |
| 114 | +EAO: I have something in the JS implementation, might be worth taking a look. |
| 115 | + |
| 116 | +### Maintain and develop the documentation |
| 117 | + |
| 118 | +EAO: maintaining doc, links to examples, implementations, etc. |
| 119 | +Can we find some bandwidth to improve things here? |
| 120 | +Hopefully each of us can find a bit of time to |
| 121 | + |
| 122 | +EAO: adoption, promotion |
| 123 | + |
| 124 | +### Compatibility with MF1 |
| 125 | + |
| 126 | +EAO: The people in the room working on ICU, can you take a look at this? |
| 127 | + |
| 128 | +MIH: I will |
| 129 | +But not the next week or two :-) |
| 130 | +Most likely after ICU 78 release. |
| 131 | + |
| 132 | +EAO: create individual issues for everything missing, so that we can close them as we solve them. |
| 133 | + |
| 134 | +### Message resource format incubation |
| 135 | + |
| 136 | +EAO: I have a strong interest in this. |
| 137 | + |
| 138 | +MIH: I have little interest in this. Most likely belongs somewhere like ECMAScript or W3C, or in some tech stack that does not have such a format. |
| 139 | +If the result of that is “amazing” then some other tech stacks will adopt it. |
| 140 | + |
| 141 | +EAO: maybe IETF? |
| 142 | + |
| 143 | +RGN: they would probably not care |
| 144 | + |
| 145 | +MIH: Another option might be OASIS, which had a lot of work done in the l10n standards space (XLIFF, TMX, word counting). |
| 146 | +This is where XLIFF is: [https://github.com/oasis-tcs/xliff-xliff-22](https://github.com/oasis-tcs/xliff-xliff-22) |
| 147 | + |
| 148 | +RGN: maybe ECMA? |
| 149 | + |
| 150 | +### Action Items |
| 151 | + |
| 152 | +ALL: Update the documentation site: [https://github.com/unicode-org/messageformat.dev](https://github.com/unicode-org/messageformat.dev) |
| 153 | + |
| 154 | +MIH: |
| 155 | + |
| 156 | +- Send an email to the XLIFF TC, ask if there is interest in a file format, and mapping MF2 to XLIFF, CC EAO |
| 157 | +- Add links to mapping for HTML, Java Properties, and Windows .RC |
| 158 | + - MIH: faulty memory, was not about Windows RC files, was about gettext .po files: |
| 159 | + - XLIFF 1.2 Representation Guide for Java Resource Bundles: |
| 160 | + [https://docs.oasis-open.org/xliff/v1.2/xliff-profile-java/xliff-profile-java-v1.2.html](https://docs.oasis-open.org/xliff/v1.2/xliff-profile-java/xliff-profile-java-v1.2.html) |
| 161 | + - XLIFF 1.2 Representation Guide for Gettext PO: |
| 162 | + [https://docs.oasis-open.org/xliff/v1.2/xliff-profile-po/xliff-profile-po-1.2.html](https://docs.oasis-open.org/xliff/v1.2/xliff-profile-po/xliff-profile-po-1.2.html) |
| 163 | + - XLIFF 1.2 Representation Guide for HTML: |
| 164 | + [https://docs.oasis-open.org/xliff/v1.2/xliff-profile-html/xliff-profile-html-1.2.html](https://docs.oasis-open.org/xliff/v1.2/xliff-profile-html/xliff-profile-html-1.2.html) |
| 165 | +- Update the ICU4J implementation |
| 166 | + |
| 167 | +TIM: Update the ICU4C implementation |
| 168 | + |
| 169 | +EAO: |
| 170 | + |
| 171 | +- Cancel the meetings scheduled for 2025-08-18 and 2025-09-01 |
| 172 | +- Submit spec for inclusion in LDML 48 |
| 173 | +- Coordinate with MIH & LCA on initial requirements for machine readable registry definition |
| 174 | +- File PR adding preliminary attribute/metadata definitions |
| 175 | +- File PR adding message resource explainer for its incubation |
0 commit comments