> ## 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.

# Ámbito de nombres

> Comprender el ámbito y la duración de los nombres de elementos, constantes y variables en FlexiLayout language.

Los nombres de elementos, constantes y variables solo pueden usarse en determinadas secciones de un programa. A esto se le llama el "ámbito" del nombre. El ámbito de una variable también determina su duración.

El nombre de una variable declarada en cualquier sección del Code Editor solo es accesible dentro de esa sección en particular, y únicamente después del punto de declaración.

Un nombre declarado dentro de un bloque solo es accesible dentro de ese bloque y de los bloques anidados en él, y únicamente después del punto de declaración:

```
{
 Int a; a = 5;
 }
```

<div id="accessing-element-hypotheses">
  ## Acceso a las hipótesis de los elementos
</div>

Se puede acceder a las hipótesis de los elementos mediante los nombres de los elementos. En ambas secciones de la descripción del elemento (**Condiciones de búsqueda** y **Evaluación de hipótesis**), puede acceder a las hipótesis de todos los elementos situados por encima del elemento actual en la misma rama del árbol de hipótesis. Además, la hipótesis formulada para un elemento puede llamarse desde la sección **Evaluación de hipótesis** de ese elemento.

El código de la sección **Condiciones de búsqueda** se ejecuta por separado para cada hipótesis, independientemente de las hipótesis situadas en otras ramas del árbol de hipótesis. Esto significa que, cuando el programa ejecuta el código de una sección concreta de la descripción de un elemento, solo puede acceder a una hipótesis de cada elemento superior; en concreto, la hipótesis situada en la misma rama.

Se accede a las hipótesis de los elementos y a sus propiedades en modo de solo lectura.

<div id="element-naming">
  ## Convenciones de nombres de elementos
</div>

Las hipótesis de un elemento superior se denominan por el nombre completo del elemento, por ejemplo: `SearchObjects.Group1.Group2.FirstItem`. Al acceder a un subelemento de un grupo desde otro subelemento, no es necesario especificar el nombre del grupo. Por ejemplo, en las secciones Advanced del elemento `SearchObjects.Group1.Group2.SecondItem`, puede referirse al elemento `SearchObjects.Group1.Group2.FirstItem` de una de las siguientes maneras: `SearchObjects.Group1.Group2.FirstItem`, `Group1.Group2.FirstItem`, `Group2.FirstItem`, `FirstItem`.

El nombre abreviado siempre hará referencia al elemento más interno.

Supongamos que tenemos el siguiente árbol de elementos:

```
SearchElements
 PrimerElemento
 Grupo1
 PrimerElemento
 SegundoElemento
```

Si estás en `SearchElements.Group1.SecondItem` y usas el nombre `FirstItem`, invocarás el elemento `SearchElements.Group1.FirstItem`, y no el elemento `SearchElements.FirstItem`.
