Skip to content

Do we allow multiple multi-select messages to nest inside one another? #103

Closed
@echeran

Description

@echeran

This issue is to start (continue) the discussion. Previous discussions have occurred in working group meetings and more recently zbraniecki/message-format-2.0-rs#6

One option proposed in the above linked issue shows the style of nested multi-select messages that is currently supported in ICU MessageFormat, Fluent, etc.

Example: 10 friends from 2 countries liked her profile.:

{ PLURAL($friendsNum) ->
    [one] { $friendsNum } friend
   *[other] { $friendsNum} friends
} from { PLURAL($countriesNum) ->
    [one] { $countriesNum} country
   *[other] { $countriesNum} countries
} liked { GENDER($user) ->
    [masculine] his
    [feminine] her
   *[other] their
} profile.

The issue also links to this issue representing an alternative that has also been discussed during working group meetings: projectfluent/fluent#4 . Applying the alternative to the above example might look like

{ PLURAL($friendsNum), PLURAL($countriesNum), GENDER($user) ->
    [one, one, masculine]     { $friendsNum } friend from { $countriesNum} country liked his profile.}
    [one, one, feminine]      { $friendsNum } friend from { $countriesNum} country liked her profile.}
    [one, one, other]         { $friendsNum } friend from { $countriesNum} country  liked their profile.}
    [one, other, masculine]   { $friendsNum } friend from { $countriesNum} countries liked his profile.}
    [one, other, feminine]    { $friendsNum } friend from { $countriesNum} countries liked her profile.}
    [one, other, other]       { $friendsNum } friend from { $countriesNum} countries liked their profile.}
    [other, one, masculine]   { $friendsNum} friends from { $countriesNum} country liked his profile.}
    [other, one, feminine]    { $friendsNum} friends from { $countriesNum} country liked her profile.}
    [other, one, other]       { $friendsNum} friends from { $countriesNum} country liked their profile.}
    [other, other, masculine] { $friendsNum} friends from { $countriesNum} countries liked his profile.}
    [other, other, feminine]  { $friendsNum} friends from { $countriesNum} countries liked her profile.}
    [other, other, other]     { $friendsNum} friends from { $countriesNum} countries liked their profile.}
}

Other sources, docs, and slide decks have been made for the working group in favor of these options -- feel free to include those here as part of the discussion.

Metadata

Metadata

Assignees

No one assigned

    Labels

    data modelIssues related to the Interchange Data Model

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions