# General Translation Platform: isSupersetLocale URL: https://generaltranslation.com/en-US/docs/platform/core/reference/gt-class-methods/locales/is-superset-locale.mdx --- title: isSupersetLocale description: Check whether one locale can represent another more specific locale. API reference for isSupersetLocale. --- Checks whether one locale is a superset of another in the BCP-47 hierarchy, on a [GT](/docs/platform/core/reference/gt-class/constructor) instance. A superset locale is more general and can serve as a fallback for more specific locales. General Translation uses this to reason about locale fallback chains. ## Overview [#overview] Call `isSupersetLocale` on a [`GT`](/docs/platform/core/reference/gt-class/constructor) instance with a candidate superset locale and a candidate subset locale. It returns `true` when the first is a superset of the second. ```typescript const gt = new GT(); console.log(gt.isSupersetLocale('en', 'en-US')); // true console.log(gt.isSupersetLocale('en-US', 'en')); // false ``` Signature: ```typescript isSupersetLocale(superLocale: string, subLocale: string): boolean ``` *Note: `isSupersetLocale` runs locally and does not require an API key. For comparisons without a `GT` instance, see the standalone [`isSupersetLocale`](/docs/platform/core/reference/utility-functions/locales/is-superset-locale).* ## How it works [#how-it-works] - **BCP-47 hierarchy.** Uses the BCP-47 locale hierarchy for comparison. - **Reflexive.** A locale is always a superset of itself. - **Base languages.** Base languages are supersets of their regional variants, but a regional variant is not a superset of its base language. - **Different languages.** Returns `false` for completely different languages. ## Parameters [#parameters] | Parameter | Description | Type | Optional | Default | | --- | --- | --- | --- | --- | | [`superLocale`](#super-locale) | The locale to check as the superset. | `string` | No | — | | [`subLocale`](#sub-locale) | The locale to check as the subset. | `string` | No | — | ### `superLocale` [#super-locale] **Type** `string` · **Required** The locale to check as the superset (the more general locale). ### `subLocale` [#sub-locale] **Type** `string` · **Required** The locale to check as the subset (the more specific locale). ## Returns [#returns] **Type** `boolean` `true` if `superLocale` is a superset of `subLocale`, `false` otherwise. ## Examples [#examples] ```typescript const gt = new GT(); // Base language is superset of regional variant console.log(gt.isSupersetLocale('en', 'en-US')); // true console.log(gt.isSupersetLocale('es', 'es-ES')); // true console.log(gt.isSupersetLocale('zh', 'zh-CN')); // true // Regional variant is NOT superset of base language console.log(gt.isSupersetLocale('en-US', 'en')); // false console.log(gt.isSupersetLocale('es-ES', 'es')); // false // Same locales console.log(gt.isSupersetLocale('en-US', 'en-US')); // true // Different languages console.log(gt.isSupersetLocale('en', 'es-ES')); // false ``` ## Notes [#notes] - Uses the BCP-47 locale hierarchy for comparison. - A locale is always a superset of itself. - Base languages are supersets of their regional variants. - Returns `false` for completely different languages.