Skip to main content
You can process an unlimited number of fixed and flexible Document Definitions in one FlexiCapture batch (a flexible Document Definition is created from a FlexiLayout).

Align pre-recognition parameters across Document Definitions

If a batch contains several flexible Document Definitions, all the FlexiLayouts which are used to create the flexible Document Definitions should have the same pre-recognition parameters (that is, language, text type, mode). In this case, pre-recognition will be run only once and the pre-recognition results will be used for other Document Definitions. This will reduce the processing time, as pre-recognition usually takes up to 90% of the time required to match the Document Definition. FlexiCapture runs pre-recognition on a page for each set of pre-recognition parameters specified in all of the flexible Document Definitions in the batch. If all the Document Definitions have the same pre-recognition language, pre-recognition is run only once, and the detected objects are saved and used for the other Document Definitions in the batch. If one of the Document Definitions has a different pre-recognition language (or text type, or mode), FlexiCapture will need to pre-recognize the page twice, which will double the time required for Document Definition matching. For this reason, keep the sets of pre-recognition parameters to a minimum.

Skip pre-recognition

In some cases, you can speed up FlexiLayout matching by skipping pre-recognition. Skipping is possible if the FlexiLayout elements include only Separator, Barcode, White Gap, Region, and Object Collection elements, and all the White Gap and Object Collection elements meet one of the following requirements:
  • No text is specified in the element’s search constraints.
  • The UseRawText property of the element is true.

Matching order for fixed and flexible Document Definitions

When fixed and semi-structured documents are processed within one batch, FlexiCapture attempts to match the fixed Document Definitions first. If the fixed Document Definitions are successfully matched with their documents, no FlexiLayouts are applied. If there are no matching fixed Document Definitions, FlexiCapture searches for suitable matches among the FlexiLayouts.

Classifiers for automatic FlexiLayout selection

Classifiers automate the selection of a FlexiLayout or a layout alternative. A Classifier is a special project created in FlexiLayout Studio and imported into FlexiCapture. The project describes the tree-like structure of the classes to which a document may belong, and each class contains a set of elements that identifies a certain type of document. Upon classification, the names of the FlexiLayouts (or layout alternatives) to be used are saved in the properties of each classified page. For more information, see Classifier projects.

Select a FlexiLayout without using a classifier

If no classifiers are used, identifier elements are created in the FlexiLayout to make FlexiCapture’s selection of the appropriate FlexiLayout more reliable and faster. Practically any type of element can be used as an identifier. The only requirement is that it must be reliably detected on all documents of the given type. The most commonly used identifiers are Static Text, Barcode, and Character String elements, and sometimes more than one element is used to identify a document type. The higher the identifier element in the FlexiLayout tree, the faster the Document Definition selection. You can identify a document type in one of the following ways:
  • Clear the Optional element property so that the object corresponding to the element must be present on all of the images. If the object described by the element is not detected, the Document Definition is not matched with the image.
  • Use the DontFind() function in the Advanced pre-search relations field to disable the search for an optional element.
  • Use the Quality property of the element hypothesis. Setting the Quality of any element to 0 in the Advanced post-search relations field (the corresponding code is Quality: 0;) results in failure to match the Document Definition. Before setting the quality of an element to 0, analyze the properties of the elements located above the current element in the FlexiLayout tree.