> For the complete documentation index, see [llms.txt](https://coldbox-i18n.ortusbooks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://coldbox-i18n.ortusbooks.com/usage/coding-for-i18n/property-inheritance.md).

# Property inheritance

In many languages there are country or region specific words. You  wonder if you should provide resource bundles for each country while only a small subset of words is different. For this scenario you can use property inheritance which is nicely explained [here](https://www.baeldung.com/java-resourcebundle#inheritance).

So let's say I want to provide translations for english and Dutch. Because we want to provide Dutch translations for both Netherlands and Belgium we want to use the following locales: nl\_NL(dutch) and nl\_BE (flemish). Instead of duplicating the nl\_NL resource file `myResource_nl_NL`.properties to `myResource_nl_BE.properties` we can create a general `myResource_nl.properties` file and specify a `myResource_nl_BE.properties` file which only differs for a few keys. If we retrieve a resource with getResource(resource = "some.key", locale="nl\_BE) it will try to lookup this key in the following order

* `myResource_nl_BE.(properties|json)`
* `myResource_nl.(properties|json)`
* `myResource.(properties|json)`

&#x20;As you can see this lookup order does not stop at myResource.nl.(properties|json). It even goes up to a resource file without language indication. This can be especially useful if you create your app in one language, and only have incomplete translations for other languages. So let's say you create an english language app, you could just create a `myResource.(properties|json)` file and assume your main language is english. If you want to provide French as a second language but don't have the full translation yet (because it is a community effort for example) you can add `myResource.fr.(properties|json)` as a resource file, so you can provide a growing number of translated resource keys.&#x20;

It is even possible to be more specific by adding country variants, e.g `myResource.en_GB_someVariant.properties`


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://coldbox-i18n.ortusbooks.com/usage/coding-for-i18n/property-inheritance.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
