Skip to content

Commit

Permalink
CLDR-17491 Update LDML Mods section (#3601)
Browse files Browse the repository at this point in the history
  • Loading branch information
macchiati authored Apr 3, 2024
1 parent 88d712f commit b1c3e67
Showing 1 changed file with 32 additions and 50 deletions.
82 changes: 32 additions & 50 deletions docs/ldml/tr35.md
Original file line number Diff line number Diff line change
Expand Up @@ -4096,70 +4096,52 @@ Other contributors to CLDR are listed on the [CLDR Project Page](https://www.uni
**Differences from LDML Version 44.1**

* Part 1: [Core](tr35.md#Contents)
* In [Parent Locales](tr35.md#Parent_Locales), add an additional attribute and value `localeRules="nonlikelyScript"` to allow for algorithmic handling of inheritance so that mixtures of scripts are avoided.
For example, preventing `ru_Latn` from falling back to `ru` (which is Cyrillic script).
Previously, there was a small list of such locales, but they were far from covering all cases.
That list was retained for migration.
* In [Parent Locales](#Parent_Locales), made substantial changes to the way that parentLocales work,
including a new attribute for algorithmic handling of inheritance
that avoids needing a long (and fragile) list of language-script codes
to skip when falling back to root.
That list was retained for migration, but will be withdrawn in the future.
* In [Special Script Codes](#special-script-codes), added a description of special script codes,
such as Jpan and Aran.
* In [Lateral Inheritance](#Lateral_Inheritance), improved the formatting for clarity.
* In [LocaleId Canonicalization:Preprocessing](#preprocessing), restructured the steps for clarity, added more examples.
* In [Likely Subtags](#Likely_Subtags), clarified that language subtags iw, in, and yi are treated specially in the data,
to allow for applications that use them as canonical language subtags.
Also removed the substitution for macroregions,
and noted that some elements could be NOOPs in customized data, but could be misleading.
* In [EBNF](#ebnf), added more differences from W3C EBNF,
and documented use of wfc: and vc: for wellformedness and validity constraints.
Marked clauses with that format where appropriate, and grouped constraints after the relevant EBNF.

* Part 3: [Numbers](tr35-numbers.md#Contents)
* In [Supplemental Currency Data](tr35-numbers.md#Supplemental_Currency_Data), for the `currency` element, added attributes `tz` and `to-tz` to clarify the `from` and `to` dates.
* In [Supplemental Currency Data](tr35-numbers.md#Supplemental_Currency_Data), for the `currency` element,
added attributes `tz` and `to-tz` to clarify the `from` and `to` dates.

* Part 4: [Dates](tr35-dates.md#Contents)
* In [Date Format Patterns](tr35-dates.md#Date_Format_Patterns), reserved date Pattern field lengths of greater than 16
as private use.

* Part 6: [Supplemental](tr35-info.md#Contents)
* In [Mixed Units](tr35-info.md#mixed-units), clarified many aspects of mixed units (such as foot-and-inch),
including how to handle rounding and precision.
* In [Testing](tr35-info.md#testing), listed the additional test files.
* In [Unit Preferences Overrides](tr35-info.md#Unit_Preferences_Overrides), added handling of edge cases,
such as where there is no quantity for a unit, or no preference data for a quantity.
Also clarified how to handle invalid subtags, and the usage of each of the subtags that affect unit preferences.
* In [Testing](tr35-info.html#testing), listed the additional test files.
* In [Unit Preferences Overrides](tr35-info.html#Unit_Preferences_Overrides), made substantial changes including
handling of edge cases, such as where there is no quantity for a unit, or no preference data for a quantity;
how to handle invalid subtags;
negative unit amounts;
the usage of each of the subtags that affect unit preferences, and others.
* In [Conversion Data](tr35-info.md#conversion-data), added the `special` attribute for `convertUnit`, used for handling beaufort.
* In [Unit Prefixes](unit-prefixes), added the SI unit prefixes and the power of 10
(or 2, for binary prefixes) that they represent.

* Part 7: [Keyboards]
* There are substantial changes from v44 to bring the Keyboard 3.0 specification out of Tech Preview, including:
* Part 7: [Keyboards](tr35-keyboards.md#Contents)
* Added substantial changes from v44 to bring the Keyboard 3.0 specification out of Tech Preview, including:
* New sections for Definitions, Notation, and Normalization.
* Many clarifications and modifications in other sections.

* Part 9: [MessageFormat](tr35-messageFormat.md#Contents)
* Added the completely new specification for MessageFormat 2.0 (in Tech Preview)

**Differences from LDML Version 43 to 44.1**

* [Core](#Contents)
* In [Time Zone Identifiers](#Time_Zone_Identifiers), added information on the new `iana` attribute for stability; also see information on `iana` in the section [U Extension Data Files](#Unicode_Locale_Extension_Data_Files).
* [Likely Subtags](#Likely_Subtags): There is a fix to how macroregions are handled by adding likely subtags, such as with `und_419`
* [Unicode Sets](#Unicode_Sets): New sections on the following, with additional clarifications:
* [UnicodeSet syntax](#unicodeset-syntax)
* [Backslash Escapes](#Backslash_Escapes)
* [Variables in UnicodeSets](#Variables_in_UnicodeSets)
* [Unicode Language Identifier](#unicode-language-identifier): clarified constraint on duplicate subtags.
* [Key/Type Definitions](#key-and-type-definitions): clarified definition of `-dx`
* [EBNF](#ebnf): Clarified use of EBNF in LDML
* (44.1)[Key/Type Definitions](#key-and-type-definitions): further clarified the definition of `-dx`

* [General](tr35-general.md#Contents)
* Added new section [Unit Identifier Uniqueness](tr35-general.md#Unit_Identifier_Uniqueness), and added a relevant constraint on base_component in the [Syntax](tr35-general.md#syntax) section.
* Several clarifications were added in [Transform Rules Syntax](tr35-general.md#Transform_Rules_Syntax), and a new section [Transform Syntax Characters](tr35-general.md#transform-syntax-characters) was added with a table of the characters.
* (44.1) [Synthesizing Sequence Names](tr35-general.md#SynthesizingNames) Added handling of derived emoji names and keywords for emoji facing-right sequences.

* [Dates](tr35-dates.md#Contents)
* New section [First Day Overrides](tr35-dates.md#first-day-overrides): Described the various locale ID elements that affect determination of the first day of the week (for week of year calculations), and the order in which they should be considered. Also noted in [Key/Type Definitions](#Key_Type_Definitions) which keys can affect determination of first day.

* [Supplemental](tr35-info.md#Contents)
* In [Conversion Data](tr35-info.md#conversion-data), expanded the list of values for the convertUnit systems attribute.
* Added new section [Derived Unit System](tr35-info.md#derived-unit-system)
* Rewrote and clarified the material in [Unit Preferences Overrides](tr35-info.md#Unit_Preferences_Data)

* [Keyboards](tr35-keyboards.md#Contents)
* Complete rewrite of the specification by the Keyboard Subcommittee. Available as a technical preview in CLDR version 44. See [Part 7: Status](tr35-keyboards.md#status).

* [Person Names](tr35-personNames.md#Contents)
* Added material in [API Implementaion](tr35-personNames.md#api-implementation) on recommended implementation API options.
* Describe new [parameterDefault Element](tr35-personNames.md#parameterdefault-element) element that specifies default formality and length.
* Describe new [nativeSpaceReplacement Element](tr35-personNames.md#nativespacereplacement-element) that specifies how spaces should be handled when the name language is the same as the formatting language.
* In [Modifiers](tr35-personNames.md#modifiers) added the modifiers retain, genitive and vocative.
* Added sections on [Grammatical Modifiers for Names](tr35-personNames.md#grammatical-modifiers-for-names) and [Future Modifiers](tr35-personNames.md#future-modifiers).
* Fixed a problem in [Switch the formatting locale if necessary](tr35-personNames.md#switch-the-formatting-locale-if-necessary), where the full formatting locale wasn't being set correctly when the name object has a locale whose script is incompatibility with name script.
* Rewrote the section on [Setting the spaceReplacement](tr35-personNames.md#setting-the-spacereplacement).

Note that small changes such as typos and link fixes are not listed above.
Modifications in previous versions are listed in those respective versions.
Click on **Previous Version** in the header until you get to the desired version.
Expand Down

0 comments on commit b1c3e67

Please sign in to comment.