diff --git a/exploration/0000-design-proposal-template.md b/exploration/0000-design-proposal-template.md deleted file mode 100644 index 00804c8df..000000000 --- a/exploration/0000-design-proposal-template.md +++ /dev/null @@ -1,91 +0,0 @@ -# Design Proposal Template - -Status: **Accepted** - -_Use the status **Proposed** when creating a design proposal._ -_The status will be changed to **Accepted** when the design proposal is accepted as working group consensus._ -_The status will be changed to **Rejected** if the design proposal ultimately is not adopted by the working group._ -_This is intended to allow new design documents to be first proposed and then iterated over time,_ -_rather than needing to have all their details agreed in a single PR._ - -
- Metadata -
-
Contributors
-
@username
-
First proposed
-
1970-01-01
-
Pull Request
-
#000
-
-
- -## Objective - -_What is this proposal trying to achieve?_ - -Decide how to interpolate data in patterns, in order to be able to display dynamic information like numbers, dates, and names inside translatable messages. - -## Background - -_What context is helpful to understand this proposal?_ - -Translatable messages need to interpolate data... -Such data must be formatted and positioned inside translation patterns... -There's prior art in other translation and templating solutions... - -## Use-Cases - -_What use-cases do we see? Ideally, quote concrete examples._ - -- Numbers representing counts, e.g. `{You have {$count} new messages}`... -- Strings representing usernames, e.g. `{Hello, {$userName}!}`... -- Selection based on numbers, e.g. `match {$count} when 1 {One thing} when * {Many things}`... - -## Requirements - -_What properties does the solution have to manifest to enable the use-cases above?_ - -- Be able to use a variable more than once in a pattern... -- Be able to use a variable in a selector... -- Be able to reorder a variable... -- Be able to tell what a variable refers to... -- Make migration from ICU MF1 possible... - -## Constraints - -_What prior decisions and existing conditions limit the possible design?_ - -- A syntactical prefix must not collide with `nmtoken`, to avoid parsing ambiguities with unquoted literals... - -## Proposed Design - -_Describe the proposed solution. Consider syntax, formatting, errors, registry, tooling, interchange._ - -... - -## Alternatives Considered - -_What other solutions are available?_ -_How do they compare against the requirements?_ -_What other properties they have?_ - -### Use unnamed placeholders... - -For example: `{Hello, {$}!}`... - -- **Use more than once?** No. -- **Use in selectors?** No. -- **Reorder?** No. -- **Clear what the variable refers to?** No. -- **Migration from MF1 possible?** Yes. - -### Use indexed placeholders... - -For example: `{Hello, {$1}!}`... - -- **Use more than once?** Yes. -- **Use in selectors?** Yes. -- **Reorder?** Yes. -- **Clear what the variable refers to?** No. -- **Migration from MF1 possible?** Yes. diff --git a/exploration/TEMPLATE.md b/exploration/TEMPLATE.md new file mode 100644 index 000000000..7376ba56b --- /dev/null +++ b/exploration/TEMPLATE.md @@ -0,0 +1,45 @@ +# Design Proposal Template + +Status: **Proposed** + +
+ Metadata +
+
Contributors
+
@username
+
First proposed
+
2023-01-01
+
Pull Requests
+
#000
+
+
+ +## Objective + +_What is this proposal trying to achieve?_ + +## Background + +_What context is helpful to understand this proposal?_ + +## Use-Cases + +_What use-cases do we see? Ideally, quote concrete examples._ + +## Requirements + +_What properties does the solution have to manifest to enable the use-cases above?_ + +## Constraints + +_What prior decisions and existing conditions limit the possible design?_ + +## Proposed Design + +_Describe the proposed solution. Consider syntax, formatting, errors, registry, tooling, interchange._ + +## Alternatives Considered + +_What other solutions are available?_ +_How do they compare against the requirements?_ +_What other properties they have?_ diff --git a/exploration/0001-builtin-registry-capabilities.md b/exploration/builtin-registry-capabilities.md similarity index 100% rename from exploration/0001-builtin-registry-capabilities.md rename to exploration/builtin-registry-capabilities.md diff --git a/exploration/0002-expression-attributes.md b/exploration/expression-attributes.md similarity index 100% rename from exploration/0002-expression-attributes.md rename to exploration/expression-attributes.md