Comparison Profile

Filters and optimizations

Basic Table Optimization

This filter can be used to optimize the comparison of tables with visual borders. The filter will detect the original structure of the table and rearrange the content so that the content will be compared by cell.

Requirement: This filter will only detect a table, if

  • The table has a visible border
  • Each cell has a visible border
  • There is no cell spacing
  • The table has at least two rows and two columns

Filter repeating headers

In case a table does not fit onto a single page it is common to repeat the table header after the page break. Usually i-net PDFC tends to mark such repeated headers as differences since it's content that does not belong to the table data. With this option enabled, the filter will exclude any table header from the comparison that is identical to the header of the last table on the previous page.

Compare tables by

By default, the complete content of each row is used to establish a match for comparison. With the option “First column as key”, only the value in the first column is used as the key for matching rows. When “Auto-detect” is selected, the first 1 to 3 columns are automatically used as the key – provided there are no duplicates within each individual table in those columns.

Comparison Profile

Filters and optimizations

Basic Table Optimization

The GUI documentation for //Optimize Basic Tables// describes the current profile sidebar of i-net PDFC. The options under this filter are enabled only when Optimize Basic Tables is selected.

Raw profile values

The filter is enabled by adding the identifier BASELINETABLE to the comma-separated FILTERS list. The related profile properties are:

Raw keyValue or rangeMeaning and default
FILTERScontains BASELINETABLEEnables BaselineTable processing. If the identifier is absent, the filter is disabled.
IGNORE_REPEATING_HEADERtrue or falseFilters repeated table headers from the comparison data. The default value is true.
TABLE_HEADER_DIFF_RATIOFloating-point value from 0.0 to 1.0Defines the relative tolerance for detecting repeated table headers. The default value is 0.0. The property is evaluated only when IGNORE_REPEATING_HEADER is enabled. It is not exposed as a separate choice in the current profile sidebar.
TABLE_ID_COLUMNfalse, true, auto, 1 through 10Controls table-row matching. The default value is false. The current profile sidebar exposes only false, true, and auto; the numeric raw values are not offered there.
TABLE_USE_TATRtrue or falseEnables optional TATR table detection. The default value is false.

Mapping to the current profile sidebar

The current choice labels and their raw values are:

Raw value in TABLE_ID_COLUMNSidebar choiceMapping
falseWhole table rowThe complete table row is used as the comparison key.
trueFirst column as keyThe first column is used as the key for matching table rows.
autoAuto-detectThe suitable key type is detected automatically for each table.

The Filter repeating headers checkbox maps to IGNORE_REPEATING_HEADER. The Optimize Basic Tables entry maps to the BASELINETABLE identifier in FILTERS. The Compare tables by select maps to TABLE_ID_COLUMN.

The related structure or UI keys are:

Sidebar optionStructure or UI keyRaw profile value
Optimize Basic Tablespdfc.filter.BASELINETABLEFILTERS contains BASELINETABLE
Filter repeating headerspdfc.filter.IGNORE_REPEATING_HEADERIGNORE_REPEATING_HEADER
Compare tables bypdfc.filter.TABLE_ID_COLUMNTABLE_ID_COLUMN
Enable AI table detection (slow)pdfc.filter.USE_TATRTABLE_USE_TATR

Optional TATR usage

i-net PDFC registers a TATR model builder for BaselineTable. The Enable AI table detection (slow) checkbox is visible only when this model builder is active in the configuration. If no TATR model status is present, the option is shown as available. If a model status is present, the option is unavailable; administrators see it disabled together with the status, while it remains hidden for other users. If the model builder is missing or inactive in the configuration, the option is not shown.

The TATR option can be enabled only when Optimize Basic Tables is active. TATR is optional and can help detect tables without visible borders; using it can slow down processing. TABLE_USE_TATR remains false by default.

Profile fragment

A possible XML profile fragment is:

<entry key="FILTERS">BASELINETABLE</entry>
<entry key="IGNORE_REPEATING_HEADER">true</entry>
<entry key="TABLE_HEADER_DIFF_RATIO">0.0</entry>
<entry key="TABLE_ID_COLUMN">auto</entry>
<entry key="TABLE_USE_TATR">false</entry>