Currently, CLDR data can only specify date-format-field-specific numbering systems for the standard date formats. In "ja" locale for Japanese calendar, the full/long/medium date formats specify y=jpanyear. How to address this?
Per TC discussion 2019-02-20:
By default, change SimpleDateFormat so if calendar is Japanese and format is not numeric only, use Gannen year numbering
Clients who want the old behavior (using 1 for first year of era) can use NumberFormat APIs that provide date-field-specific number formatter overrides (these exist in J, C++, C), e.g. udat_adoptNumberFormatForFields
No special semantics for numbers keyword.
This does not update if applyPattern subsequently changes the pattern type from numeric to non-numeric or vice-versa; that is a possible future enhancement.
Note: In the process of doing the work for this and https://unicode-org.atlassian.net/browse/ICU-20408, noticed a general problem with RBNF number formatters parsing numeric date fields separated by period, filed a separate issue: https://unicode-org.atlassian.net/browse/ICU-20449