Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 19 additions & 4 deletions exploration/default-registry-and-mf1-compatibility.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Default Registry and MF1 Compatibility

Status: **Proposed**
Status: **Accepted**

<details>
<summary>Metadata</summary>
Expand All @@ -23,6 +23,12 @@ along with their _operands_ and _options_.
It also contains a section comparing MF1 (as embodied by ICU4J) and MF2
to ensure that we don't forget something.

Implementations MAY provide other selectors or formatters using the mechanisms defined by MF2
but these will not be considered for the LDML45 default registry.
The default registry is a foundational set of selectors and formatters that an implementation
claiming MF2 compatibility is required to supply.
Therefore, addition to this list requires a higher level of rigor.

## Default Registry Entries

### Numbers
Expand All @@ -31,8 +37,6 @@ Function name: `:number`

Aliases:
- `:integer` (implies: `maximumFractionDigits=0`)
- `:currency` (implies: `style=currency`)
- `:percent` (implies: `style=percent`)
- `:plural` (no format, implies `select=plural` which is default)
- `:ordinal` (implies: `select=ordinal`; we are missing `style=ordinal`)

Expand Down Expand Up @@ -64,7 +68,8 @@ Options:
Function name: `:datetime`

Aliases:
- (none currently; should there be `:date` and `:time` aliases to shorthand getting particularly timeStyle?)
- `:date` (with `style=...` option corresponding to `:datetime dateStyle=...`)
- `:time` (with `style=...` option corresponding to `:datetime timeStyle=...`)

Operand: "iso8601"

Expand Down Expand Up @@ -105,6 +110,16 @@ Options:
### Other


### Deliberately Excluded

The following functionality was deliberately excluded:
* Spellout
* Duration
* ChoiceFormat
* Percent (as an alias of `:number`)
* Currency (as an alias of `:number`)


## Compatibility Matrix

How to write an MF1 format or selector in MF2:
Expand Down