JEP 314: Additional Unicode Language-Tag Extensions

OwnerNaoto Sato
StatusClosed / Delivered
Componentcore-libs / java.util:i18n
Discussioni18n dash dev at openjdk dot java dot net
Reviewed byAlan Bateman, Brian Goetz
Endorsed byBrian Goetz
Created2017/03/24 23:19
Updated2018/03/06 17:15


Enhance java.util.Locale and related APIs to implement additional Unicode extensions of BCP 47 language tags.


Support for BCP 47 language tags was was initially added in Java SE 7, with support for the Unicode locale extension limited to calendars and numbers. This JEP will implement more of the extensions specified in the latest LDML specification, in the relevant JDK classes.


Unicode language-tag extensions other than those described below will be ignored.


As of Java SE 9, the supported BCP 47 U language-tag extensions are ca and nu. This JEP will add support for the following additional extensions:

In order to support these additional extensions, changes will be made to the following APIs:

Risks and Assumptions

The display names returned from Locale::getDisplayName depend on the localized data provided by each locale provider.