> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Portée des noms

> Portée des noms dans le langage FlexiLayout : où les variables, les constantes et les hypothèses d&#39;élément sont accessibles dans les sections Advanced et dans l&#39;arborescence des éléments.

Les noms des éléments, des constantes et des variables ne peuvent être utilisés que dans certaines sections d'un programme. C'est ce qu'on appelle la « portée » du nom. La portée d'une variable détermine également sa durée de vie.

Le nom d'une variable déclarée dans la section **Expression de Region**, **Relations avancées de pré-recherche** ou **Advanced post-search relations** est accessible dans cette section, et uniquement après son point de déclaration.

Un nom déclaré dans un bloc n'est accessible qu'à l'intérieur de ce bloc et des blocs qu'il contient, et uniquement après son point de déclaration :

```text theme={null}
{
 Int a; a = 5;
}
```

<div id="access-to-element-hypotheses">
  ## Accès aux hypothèses d’élément
</div>

Les hypothèses d’élément sont accessibles à l’aide des noms des éléments.

La section dans laquelle vous vous trouvez détermine les hypothèses auxquelles vous pouvez accéder :

| Section                                        | Hypothèses accessibles                                                                                                             |
| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| **relations avancées de pré-recherche**        | Hypothèses de tous les éléments situés au-dessus de l’élément actuel dans l’arborescence FlexiLayout                               |
| **Advanced post-search relations**             | Hypothèses de tous les éléments situés au-dessus de l’élément actuel, ainsi que l’hypothèse établie pour l’élément actuel lui-même |
| **Expression de Region** (description du bloc) | Hypothèses de tous les éléments situés sur la « meilleure branche » de l’arbre des hypothèses                                      |

Le code de la section **relations avancées de pré-recherche** est exécuté séparément pour chaque hypothèse, indépendamment des hypothèses situées sur les autres branches de l’arbre des hypothèses. Cela signifie que, lorsque FlexiLayout Studio exécute le code d’une section particulière de la description d’un élément, il ne peut accéder qu’à une seule hypothèse pour chaque élément parent, à savoir l’hypothèse située sur la même branche.

Les hypothèses d’élément et leurs propriétés sont accessibles en lecture seule.

<div id="full-and-shortcut-element-names">
  ## Noms complets et abrégés des éléments
</div>

Les hypothèses d’un élément parent sont désignées par le nom complet de l’élément, par exemple : `SearchObjects.Group1.Group2.FirstItem`. Lorsque vous accédez à un sous-élément d’un groupe depuis un autre sous-élément, il n’est pas nécessaire d’indiquer le nom du groupe. Par exemple, dans les sections Advanced… de l’élément `SearchObjects.Group1.Group2.SecondItem`, vous pouvez appeler l’élément `SearchObjects.Group1.Group2.FirstItem` de l’une des façons suivantes : `SearchObjects.Group1.Group2.FirstItem`, `Group1.Group2.FirstItem`, `Group2.FirstItem`, `FirstItem`.

Le nom abrégé renverra toujours à l’élément le plus imbriqué.

Supposons que vous ayez l’arborescence d’éléments suivante :

```text theme={null}
SearchElements
 FirstItem
 Group1
  FirstItem
  SecondItem
```

Si vous êtes dans `SearchElements.Group1.SecondItem` et utilisez le nom `FirstItem`, vous appellerez l’élément `SearchElements.Group1.FirstItem`, et non `SearchElements.FirstItem`.
