Did you know ... Search Documentation:
Pack odf_sheet -- prolog/ods/recognise.pl
PublicShow source
To be done
- Use constraints for types? E.g., allow for float or empty
 anchor(:DataSource, ?Type) is nondet
True when the top-level of DataSource is an anchor of Type. This implies it is a cell the given Type and the cells left and above it are of different types.

The anchor/2 predicate is used to generate candidates for creating larger units of cells. For example, to generate all blocks of floats, use this:

?- anchor(D, float), once(block(D, float)).
 unassigned_anchor(:DataSource, ?Type) is nondet
 block(:DataSource, ?Type) is nondet
 block(?Sheet, ?SX, ?SY, ?EX, ?EY, ?Type) is nondet
A block is the largest rectangular area of cells of the same Type that starts at SX,SY. A block consists minimally of two cells, stacked either horizontally or vertically.
 cell_class(:Sheet, ?X, ?Y, ?Class) is nondet
Classification of cells. Defined classes are:
  • string
  • float
  • percentage
  • empty
  • style(Style)
 sheet_bb(:Sheet, ?DS) is nondet
True if DS is a datasource that describes all cells in Sheet. Fails of the sheet is empty.

Undocumented predicates

The following predicates are exported, but not or incorrectly documented.

 row(Arg1, Arg2)
 col(Arg1, Arg2)
 row(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6)
 col(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6)