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

# FlexiLayouts

> FlexiLayouts formally describe document structure with trees of elements and blocks so ABBYY FlexiCapture can locate data fields on document images.

A FlexiLayout is a formalized description of the structure of a document that allows a data capture program to detect image areas that correspond to data fields. A FlexiLayout has a tree-like structure and consists of one block branch and several element branches, each corresponding to a layout alternative.

## FlexiLayout elements

[Elements](/flexi-capture/fls/template/elements) describe image objects that must be detected. To enable a data capture application such as ABBYY FlexiCapture to detect an object, create a FlexiLayout element that corresponds to this object.

In the element's properties, specify the type of the object (that is, whether it is a text fragment, a picture, a barcode, and so on), its geometrical data (length, width, and so on), and the search area where the object is most likely to be found.

## FlexiLayout blocks

[Blocks](/flexi-capture/fls/template/blocks) describe data fields from which data must be captured. The location of the blocks can be either specified relative to the location of elements or directly by entering their presumed coordinates on the document. The purpose of any FlexiLayout is to provide a data capture application with an algorithm of finding blocks.

## Element hierarchy and search order

Blocks of a FlexiLayout are independent of one another. Elements, on the other hand, can be grouped together to form a complex hierarchy where elements are logically interconnected and the location of one element determines the location of another. The order of the elements in the tree determines the order in which they are searched: a data capture program will look for the topmost elements first, find the corresponding objects on the image, and then use this information to locate blocks.

By default, a new FlexiLayout Studio project has the name FlexiLayout. Its elements and blocks branches are empty.

## Related topics

* [FlexiLayout properties](/flexi-capture/fls/template/ftemplate-properties)
* [Auto-create a FlexiLayout](/flexi-capture/fls/template/ftemplate-training)
* [Blocks](/flexi-capture/fls/template/blocks)
* [Elements](/flexi-capture/fls/template/elements)
