# Attaching a dictionary data source

Eximee allows form components to be populated with data coming from *dictionaries* — that is, predefined lists of values maintained in **the Library** of the platform. Dictionaries are convenient for drop-down lists or radio button groups, as they centrally manage sets of options (e.g. a list of countries, a list of document types). Updating a dictionary in one place can automatically affect all applications using it.

**Step-by-step configuration:**

1. **Preparing the dictionary:** It is necessary to make sure that the required dictionary has been created in the system (in the **Dictionaries** Eximee library module). You need to check whether it contains current keys and values, and if necessary create a new dictionary according to the requirements (e.g. CountryList with codes and country names).
2. **Component selection:** In Eximee Designer, select the component that is to be populated from the dictionary. These may be: **Drop-down list value selector** (Combobox), **Text field**, **Radio group** or **Checkbox group** — all of these types support dictionary sources.
3. **Selecting a dictionary as EDS:** In the **Properties** → **Interactions** component panel, click in the **External data source** field and select **Choose service**. In the list of available sources, find the name of the appropriate dictionary. The dictionary appears on the list just like services. After selecting the dictionary, its name will appear in the **External data source** field.<br>

   <figure><img src="/files/88713cf9b09fe949e04fc9d59dcb21a350162eb9" alt="" width="454"><figcaption><p><em><strong>Figure 1.</strong> External data source selection window with the selected dictionary</em></p></figcaption></figure>
4. **Parameter mapping (conditional dictionaries):** For a standard dictionary (without conditions), no mapping is required — the component automatically retrieves all keys and values. However, if a conditional dictionary is used, the parameters to be mapped will appear in the **Input parameters** tab. These are usually other form fields on which the dictionary content depends (e.g. a Cities dictionary depending on the selected Province). In such a case, the appropriate components should be assigned to the parameters, similarly to service input mapping.<br>

   <figure><img src="/files/d3452a62a6c46becca7d442bd57dd0771adcb59e" alt=""><figcaption><p><em><strong>Figure 2.</strong> Example of mapping input parameters for a dictionary with defined conditions for displaying keys</em></p></figcaption></figure>
5. **Save:** After completing the configuration, save the changes. During the operation of the application, the component will be automatically filled with data from the dictionary. In the case of a conditional dictionary, the list of values will be refreshed automatically when the field on which it depends changes (e.g. changing the Province will reload the Cities list).

### Script integration <a href="#podpiecieslownikowegozrodladanych-podpiecieskryptu" id="podpiecieslownikowegozrodladanych-podpiecieskryptu"></a>

The data source for a component powered by a dictionary source can also be a script service. This solution allows you to write a script that can, for example, calculate dictionary values based on an input parameter or return different values for different languages.

<figure><img src="/files/c1c7456147b92aa3e555b15a6036a1eac17fbb32" alt="" width="563"><figcaption><p align="center"><em><strong>Figure 3.</strong> Example of a script returning a dictionary with input parameters</em></p></figcaption></figure>


---

# Agent Instructions: 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:

```
GET https://docs.eximee.com/documentation/documentation-en/budowanie-aplikacji/interfejs-uzytkownika/formularze/praca-z-komponentami-bazowymi/zasilanie-wartosciami-z-zewnetrznych-zrodel/podpiecie-slownikowego-zrodla-danych.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
