|
Abstract : |
Software-engineering aspects of an experimental printed-page reader are described, with emphasis on data-structure choices. This reader performs a wide variety of tasks, including geometric layout analysis, symbol recognition, linguistic contextual analysis, and user-selectable output encoding (e.g. Unicode). We have implemented a single common data structure to support all these tasks. It embraces iconic, geometric, probabilistic, and symbolic data, and can represent the full physical document hierarchy as well as many partial stages of analysis. We illustrate the evolution of this data structure, in the course of reading a page, from purely iconic to purely symbolic form. The data structure can be snapshot in machine- and OS-independent peripheral files. Careful agreement on its semantics allows it to be used as a `blackboard ' in an elegant exploitation of generic UNIX multi-processing. One partly unresolved issue is the best representation for ambiguities spanning several levels of the document hierarchy. 1., |