Some app strings require ordinal numbers (e.g. "1st", "2nd", "3rd", etc.). Currently, translators may need to append ordinal suffixes directly in translations when numeric placeholders such as %1$d are used.
This approach does not work for Azerbaijani and potentially other languages where ordinal suffixes depend on the number itself. For example, in Azerbaijani:
- 1-ci
- 3-cü
- 6-cı
- 9-cu
A translator cannot reliably write a single suffix after a numeric placeholder because the correct form varies depending on the value.
For example, The Year in Review feature contains strings such as:
We're glad Wikipedia was part of your %1$d! Unlock a special reward in your %2$d Year in Review...
In Azerbaijani, this currently requires hardcoded ordinal suffixes in the translation, which only work for specific years and become grammatically incorrect for others.
MediaWiki core already supports locale-aware ordinal formatting through grammarTransformations and MediaWiki-libs-Leximorph. This allows languages such as Azerbaijani to generate the correct ordinal form automatically (T426082). However, Wikimedia Mobile Apps do not run in a MediaWiki environment and therefore cannot use GRAMMAR:ordinal directly.