Rich data types
First Claim
1. A computer-implemented method for creating an object associated with a first cell of a spreadsheet, comprising:
- receiving a data value in the first cell of the spreadsheet;
creating the object including a plurality of value fields and a plurality of type fields, wherein a value field of the plurality of value fields comprises the data value and a type field of the plurality of type fields comprises a data type of the data value;
identifying the data value as a volatile data value, wherein a volatile data value changes over time;
based on the data type of the data value, identifying at least one established relationship with a remote data source storing data for automatically updating the volatile data value with a current data value at each occurrence of a change;
adding the current data value retrieved from the remote data source to the value field of the object;
associating the object with the first cell of the spreadsheet;
receiving a partial entry of a formula into a second cell, wherein the partial entry of the formula references the object in the first cell;
causing display of a reference menu displaying a reference to each value stored in the plurality of value fields of the object in the first cell;
receiving a selection of a first reference to the current data value;
completing the formula by referencing the current data value within the object; and
performing at least one spreadsheet operation based at least in part on the current data value in the value field of the object retrieved from the remote data source.
1 Assignment
0 Petitions
Accused Products
Abstract
The present disclosure is directed to systems and methods for implementing rich data types in a spreadsheet application. Generally, a value being of a rich data type is as a type of value that has context and established relationships with other types of data. In particular, a rich data type is a data value having associated context, which may be units (e.g., inches, miles, meters, kilograms, seconds, joules, hertz, Fahrenheit, etc.) or other information about the data'"'"'s type (e.g., city, stock, NCAA football team, car, restaurant, school, etc.). Additionally, a value being of a rich data type further includes established relationships with other types of data.
293 Citations
24 Claims
-
1. A computer-implemented method for creating an object associated with a first cell of a spreadsheet, comprising:
-
receiving a data value in the first cell of the spreadsheet; creating the object including a plurality of value fields and a plurality of type fields, wherein a value field of the plurality of value fields comprises the data value and a type field of the plurality of type fields comprises a data type of the data value; identifying the data value as a volatile data value, wherein a volatile data value changes over time; based on the data type of the data value, identifying at least one established relationship with a remote data source storing data for automatically updating the volatile data value with a current data value at each occurrence of a change; adding the current data value retrieved from the remote data source to the value field of the object; associating the object with the first cell of the spreadsheet; receiving a partial entry of a formula into a second cell, wherein the partial entry of the formula references the object in the first cell; causing display of a reference menu displaying a reference to each value stored in the plurality of value fields of the object in the first cell; receiving a selection of a first reference to the current data value; completing the formula by referencing the current data value within the object; and performing at least one spreadsheet operation based at least in part on the current data value in the value field of the object retrieved from the remote data source. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system comprising:
-
at least one processing unit; and at least one memory storing computer executable instructions that, when executed by the at least one processing unit, cause the system to perform a method, the method comprising; identifying a first data value in a first cell of a spreadsheet, wherein a first object associated with the first cell comprises; the first data value in a first value field of a plurality of value fields; and a first data type in a first type field of a plurality of type fields; identifying a second data value as a volatile data value in a second cell of a spreadsheet, wherein the second data value changes over time, wherein a second object associated with the second cell comprises; the second data value in a second value field of a plurality of value fields; and a second data type in a second type field of a plurality of type fields; in response to identifying the second data type, identifying at least one established relationship with a remote data source storing data for automatically updating the second data value with a current data value at each occurrence of a change; adding the current data value retrieved from the remote data source to the second value field of the second object; receiving a partial entry of a formula into a third cell, wherein the partial entry of the formula references the second object in the second cell; causing display of a reference menu displaying a reference to each value stored in the plurality of value fields of the second object in the second cell; receiving a selection of a reference to the current data value; and completing the formula by referencing the current data value within the second object. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A system comprising:
-
at least one processing unit; and at least one memory storing computer executable instructions that, when executed by the at least one processing unit, cause the system to perform a method, the method comprising; identifying a first data value in a first cell of a spreadsheet, wherein a first object associated with the first cell comprises; the first data value in a first value field of a plurality of value fields; and a first data unit in a first unit field of a plurality of unit fields; identifying a second data value as a volatile data value in a second cell of a spreadsheet, wherein the second data value changes over time, wherein a second object associated with the second cell comprises; the second data value in a second value field of a plurality of value fields; and a second data unit in a second unit field of a plurality of unit fields; in response to identifying the second data type, identifying at least one established relationship with a remote data source storing data for automatically updating the second data value with a current data value at each occurrence of a change; adding the current data value retrieved from the remote data source to the second value field of the second object; receiving a partial entry of a formula into a third cell, wherein the partial entry of the formula references the second object in the second cell; causing display of a reference menu displaying a reference to each value stored in the plurality of value fields of the second object in the second cell; receiving a selection of a reference to the current data value; and completing the formula by referencing the current data value within the second object. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24)
-
Specification