A data structure for use in a document processing system corresponds to a document comprised of one or more Pages. Each Page is subdivided into one or more nonoverlapping Areas, each Area in turn being comprised of one or more types of Layers. Each Layer type is expressive of a particular type of information such as text or graphics information. Different Layer types may be superimposed to comprise the contents of an Area.
An improved intermediate spreadsheet structure for representing n-dimensional spreadsheets being interchanged among spreadsheet programs. The intermediate spreadsheet structure represents a spreadsheet as a set of nested segments. Each non-empty cell of the spreadsheet is represented by a cell segment. All of the cells belonging to a first-dimensional element of the spreadsheet such as a row are contained in a vector segment representing the row; All of the vector segments representing elements of a second-dimensional element such as a matrix are contained in a vector segment representing the second-dimensional element. The same type of nesting is used with all higher-dimensional elements. Each segment further contains descriptors which define certain aspects of the segment's content. The cell segments may further contain an expression control and descriptors belonging to the expression control which define an expression. The descriptors belonging to the expression control define the expression's operands and an operator. Operands may be constants, references to other cells of the spreadsheet, or another expression. Nesting of expressions is permitted to any practical depth. Other aspects of the spreadsheet specified by descriptors include the manner in which the spreadsheet and its contents are to be formatted when it is displayed, access control for portions of the spreadsheet, the data types of values, and rules for the order in which have the values of the cells in the spreadsheet are computed.
An improved mixed object editor flows text around and into irregularly shaped graphic objects on a page so that all the "white" space on the page is filled. An irregularly shaped window which generally conforms to the shape of the graphic object is first created. Then the boundaries of text lines which intersect the irregularly shaped window are determined. Text is next placed in the available text space.
A document processor receives a document prepared by a different type of device, recognizes and registers a table in the document. It composes and outputs a document with the original form of the table being maintained.
A system includes one or more databases, a terminal for use by a user and a processor. The databases store data and retrieve the stored data in response to the receipt of a data retrieval request from the processor. The terminal generates an input screen and an output screen. The input screen displays, for the user, data selection criteria identifiers which the user may select to identify data of interest, and functions for processing the data as desired by the user. The output screen displays the processed data. The processor generates, in response to the selected data selection criteria from said terminal, a data retrieval request for processing by the databases. Upon receipt of the retrieved data, the processor processes the retrieved data as called for by the selected function selection criteria to generate processed data, which the processor transmits to the terminal for display on the output screen. In a refinement, the processed data is identified by a data type, and said processor selecting a display type, for example, a line graph, bar graph, or other, based on the data type of the processed data, by which the output screen displays the data.
A multiple document assembly data processing system allows a user to pick and assemble numerous documents (or files) while collecting required variable field information for each of the documents and eliminating duplicate information. The system enables a user in a single data entry operation to prepare each of the documents at substantially the same time by distributing information entered to all the selected documents or files. The system is an interactive, menu-driven system which uses prompt windows in which, for example, documents are selected and entry formats are presented to prompt a user to enter common variable information relating to numerous documents. The documents are stored in a library which is organized into a series of volumes. Each volume is broken down further into a series of chapters. Each chapter, in turn, may store a series of specific documents. Each of the documents includes a series of field names that are required to have data inserted therein to complete the document. Each of these stored documents may be revised, edited, and manipulated in accordance with a conventional word processing system which is resident in the system.