System and method for processing data in an electronic spreadsheet in accordance with a data type
First Claim
1. A computer-based data processing system suitable for performing analytical operations on complex data objects, said system being extensible to recognize and operate upon new data object types, said system comprising:
- visual presentation display means for displaying a visual presentation to a user, the visual presentation including;
at least one cell matrix including columns, rows and cells, the cells being formed at intersections of the columns and the rows, wherein at least one cell contains a representation of a complex data object comprising reference information to data maintained in a data structure defined in an external computer system, said reference information incorporating characteristics of said externally stored data to enable the data processing system to perform operations on the complex data object; and
at least one text edit field capable of receiving information pertaining to objects and formulas entered by a user through input means;
first associating means for associating objects represented by a cell in the visual presentation and formulas received from a user with said cell;
scanning means for scanning a formula and an object associated with said formula by the first associating means, said scanning means defining permissible operators that may be applied to said object by said formula, said scanning means ensuring that the formula conforms to a preferred cell reference syntax, said scanning means translating each formula not in conformity with such syntax into the preferred cell reference syntax so that the formula can be processed by the system;
evaluating means for evaluating each formula associated with an object, wherein said evaluating means assigns a functional meaning to the operators in each formula in accordance with the object type of the object being operated upon by each formula, wherein at least one such operator is a polymorphic operator capable of assigning different functional meanings contingent on the type of data object being evaluated, said evaluating means further comprising;
means for re-evaluating each formula if a value within the at least one object changes; and
means for re-associating the result of each formula with each cell containing each formula operating on the at least one object whose value has changed;
second associating means for associating a result produced by said evaluating means with each cell associated with each formula operating on the at least one object;
representation producing means for producing at least one visual representation of at least one result produced by the evaluating means, said at least one visual representation being selectable by the user; and
instructing means for instructing the system to recognize new objects and new operators defined by a user.
9 Assignments
0 Petitions
Accused Products
Abstract
An electronic spreadsheet, formed in accordance with the present invention, providing a user with improved data processing capability, includes displaying a visual presentation to the user, the visual presentation including a matrix, the matrix including columns, rows and cells, the cells being formed at intersections of the columns and the rows. The electronic spreadsheet associates objects and formulas with the cells, each object having an object type, each formula receiving an object as an argument, each formula having an operator for operating on the object received as the argument. Further, the electronic spreadsheet evaluates each formula, which includes assigning to the operator in each formula an operative expression selected in accordance with the object type of the object received as the argument of each formula. Still further, the electronic spreadsheet associates a result, obtained during the evaluating procedure, with each cell associated with each formula operating on the object. An additional feature of the invention is that it can be programmed to recognize new data types through user programming or other means. In addition, the invention has been implemented in a client-server computing environment, and in such a way to take advantage of the Java programming environment.
-
Citations
40 Claims
-
1. A computer-based data processing system suitable for performing analytical operations on complex data objects, said system being extensible to recognize and operate upon new data object types, said system comprising:
-
visual presentation display means for displaying a visual presentation to a user, the visual presentation including; at least one cell matrix including columns, rows and cells, the cells being formed at intersections of the columns and the rows, wherein at least one cell contains a representation of a complex data object comprising reference information to data maintained in a data structure defined in an external computer system, said reference information incorporating characteristics of said externally stored data to enable the data processing system to perform operations on the complex data object; and at least one text edit field capable of receiving information pertaining to objects and formulas entered by a user through input means; first associating means for associating objects represented by a cell in the visual presentation and formulas received from a user with said cell; scanning means for scanning a formula and an object associated with said formula by the first associating means, said scanning means defining permissible operators that may be applied to said object by said formula, said scanning means ensuring that the formula conforms to a preferred cell reference syntax, said scanning means translating each formula not in conformity with such syntax into the preferred cell reference syntax so that the formula can be processed by the system; evaluating means for evaluating each formula associated with an object, wherein said evaluating means assigns a functional meaning to the operators in each formula in accordance with the object type of the object being operated upon by each formula, wherein at least one such operator is a polymorphic operator capable of assigning different functional meanings contingent on the type of data object being evaluated, said evaluating means further comprising; means for re-evaluating each formula if a value within the at least one object changes; and means for re-associating the result of each formula with each cell containing each formula operating on the at least one object whose value has changed; second associating means for associating a result produced by said evaluating means with each cell associated with each formula operating on the at least one object; representation producing means for producing at least one visual representation of at least one result produced by the evaluating means, said at least one visual representation being selectable by the user; and instructing means for instructing the system to recognize new objects and new operators defined by a user. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method of data processing, utilizing a computer-based system, said system being suitable for performing analytical operations on complex data objects and being extensible to recognize and operate upon new data object types, the method comprising the steps of:
-
displaying a visual presentation to a user, the visual presentation including at least one matrix, the at least one matrix including columns, rows and cells, the cells being formed at intersections of the columns and the rows, each cell representing an object, at least one cell representing a complex data object, said complex data object corresponding to a representation in data of characteristics of a financial instrument; associating objects and formulas with the cells, each object having an object type, each formula receiving at least one object as an argument, each formula having at least one operator for operating on the at least one object received as the argument, at least one formula being polymorphic in relation to its ability to perform operations on an object based on the characteristics of said object; evaluating each formula, the evaluating step including assigning to the at least one operator in each formula one of a plurality of operative expressions selected in accordance with the object type of the at least one object received as the argument of each formula, said evaluating step further including the step of re-evaluating each formula if a value within the at least one object is changed; and associating a result, obtained during the evaluating step, with each cell associated with each formula operating on the at least one object. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
Specification